From ec558adcceffa21d313410a6d8ebfe11b47d083b Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Sun, 13 Sep 1992 11:44:06 +0000 Subject: entered into RCS --- lisp/frame.el | 16 ++++++- lisp/loadup.el | 6 +-- lisp/mouse.el | 18 ++++---- src/.gdbinit | 43 +++++++++++------ src/Makefile.in | 6 ++- src/gnu.h | 141 ++++++++++++-------------------------------------------- src/keyboard.h | 3 ++ src/m/mips.h | 68 +++++++++++++++++++++------ src/m/pmax.h | 30 ++++++++++-- src/s/bsd4-3.h | 6 ++- src/s/newsos5.h | 37 +++++++++++++++ src/s/osf1.h | 14 ++++++ src/sinkmask.h | 118 +++++++++++------------------------------------ 13 files changed, 253 insertions(+), 253 deletions(-) create mode 100644 src/s/newsos5.h create mode 100644 src/s/osf1.h diff --git a/lisp/frame.el b/lisp/frame.el index 2a59877824..36d4898f35 100644 --- a/lisp/frame.el +++ b/lisp/frame.el @@ -115,10 +115,14 @@ These supercede the values given in default-frame-alist.") (defun frame-notice-user-settings () (if frame-initial-frame (progn - ;; If the user wants a minibuffer-only frame, we'll have to ;; make a new one; you can't remove or add a root window to/from ;; an existing frame. + ;; NOTE: default-frame-alist was nil when we created the + ;; existing frame. We need to explicitly include + ;; default-frame-alist in the parameters of the screen we + ;; create here, so that its new value, gleaned from the user's + ;; .emacs file, will be applied to the existing screen. (if (eq (cdr (or (assq 'minibuffer initial-frame-alist) '(minibuffer . t))) 'only) @@ -126,10 +130,18 @@ These supercede the values given in default-frame-alist.") (setq default-minibuffer-frame (new-frame (append initial-frame-alist + default-frame-alist (frame-parameters frame-initial-frame)))) + + ;; Redirect events enqueued at this frame to the new frame. + ;; Is this a good idea? + (redirect-frame-focus frame-initial-frame + default-minibuffer-frame) + (delete-frame frame-initial-frame)) (modify-frame-parameters frame-initial-frame - initial-frame-alist)))) + (append initial-frame-alist + default-frame-alist))))) ;; Make sure the initial frame can be GC'd if it is ever deleted. (makunbound 'frame-initial-frame)) diff --git a/lisp/loadup.el b/lisp/loadup.el index f995996686..f13f6c7cc1 100644 --- a/lisp/loadup.el +++ b/lisp/loadup.el @@ -119,11 +119,9 @@ (setq name (concat (expand-file-name "../etc/DOC-") name)) (if (file-exists-p name) (delete-file name)) - (copy-file (expand-file-name "../etc/DOC") - name - t) + (copy-file (expand-file-name "../etc/DOC") name t) (Snarf-documentation (file-name-nondirectory name))) - (Snarf-documentation "DOC")) + (Snarf-documentation "DOC")) (message "Finding pointers to doc strings...done") ;Note: You can cause additional libraries to be preloaded diff --git a/lisp/mouse.el b/lisp/mouse.el index bc3f8c1744..1297325186 100644 --- a/lisp/mouse.el +++ b/lisp/mouse.el @@ -40,13 +40,13 @@ (defun mouse-delete-window (click) "Delete the window clicked on. This must be bound to a mouse click." - (interactive "K") + (interactive "e") (delete-window (event-window click))) (defun mouse-delete-other-windows (click) "Select Emacs window clicked on, then kill all other Emacs windows. This must be bound to a mouse click." - (interactive "K") + (interactive "e") (select-window (event-window click)) (delete-other-windows)) @@ -54,14 +54,14 @@ This must be bound to a mouse click." "Select Emacs window mouse is on, then split it vertically in half. The window is split at the line clicked on. This command must be bound to a mouse click." - (interactive "K") + (interactive "e") (select-window (event-window click)) (split-window-vertically (1+ (cdr (mouse-coords click))))) (defun mouse-set-point (click) "Move point to the position clicked on with the mouse. This must be bound to a mouse click." - (interactive "K") + (interactive "e") (select-window (event-window click)) (if (numberp (event-point click)) (goto-char (event-point click)))) @@ -70,7 +70,7 @@ This must be bound to a mouse click." "Set mark at the position clicked on with the mouse. Display cursor at that position for a second. This must be bound to a mouse click." - (interactive "K") + (interactive "e") (let ((point-save (point))) (unwind-protect (progn (mouse-set-point click) @@ -81,7 +81,7 @@ This must be bound to a mouse click." (defun mouse-kill (click) "Kill the region between point and the mouse click. The text is saved in the kill ring, as with \\[kill-region]." - (interactive "K") + (interactive "e") (let ((click-posn (event-point click))) (if (numberp click-posn) (kill-region (min (point) click-posn) @@ -90,20 +90,20 @@ The text is saved in the kill ring, as with \\[kill-region]." (defun mouse-yank-at-click (click arg) "Insert the last stretch of killed text at the position clicked on. Prefix arguments are interpreted as with \\[yank]." - (interactive "K\nP") + (interactive "e\nP") (mouse-set-point click) (yank arg)) (defun mouse-kill-ring-save (click) "Copy the region between point and the mouse click in the kill ring. This does not delete the region; it acts like \\[kill-ring-save]." - (interactive "K") + (interactive "e") (mouse-set-mark click) (call-interactively 'kill-ring-save)) (defun mouse-buffer-menu (event) "Pop up a menu of buffers for selection with the mouse." - (interactive "K") + (interactive "e") (let ((menu (list "Buffer Menu" (cons "Select Buffer" diff --git a/src/.gdbinit b/src/.gdbinit index a046876405..f75d7532a7 100644 --- a/src/.gdbinit +++ b/src/.gdbinit @@ -8,6 +8,10 @@ Print the emacs s-expression which is $. Works only when an inferior emacs is executing. end +# Set this to the same thing as the DATA_SEG_BITS macro in your +# machine-description files. +set $data_seg_bits = 0 + define xtype output (enum Lisp_Type) (($ >> 24) & 0x7f) echo \n @@ -24,14 +28,14 @@ Print $, assuming it is an Elisp integer. This gets the sign right. end define xptr -print (void *) ($ & 0x00ffffff) +print (void *) (($ & 0x00ffffff) | $data_seg_bits) end document xptr Print the pointer portion of $, assuming it is an Elisp value. end define xwindow -print (struct window *) ($ & 0x00ffffff) +print (struct window *) (($ & 0x00ffffff) | $data_seg_bits) printf "%dx%d+%d+%d\n", $->width, $->height, $->left, $->top end document xwindow @@ -40,15 +44,15 @@ Print the window's position as "WIDTHxHEIGHT+LEFT+TOP". end define xmarker -print (struct Lisp_Marker *) ($ & 0x00ffffff) +print (struct Lisp_Marker *) (($ & 0x00ffffff) | $data_seg_bits) end document xmarker Print $ as a marker pointer, assuming it is an Elisp marker value. end define xbuffer -print (struct buffer *) ($ & 0x00ffffff) -output &((struct Lisp_String *) (($->name) & 0x00ffffff))->data +print (struct buffer *) (($ & 0x00ffffff) | $data_seg_bits) +output &((struct Lisp_String *) ((($->name) & 0x00ffffff) | $data_seg_bits))->data echo \n end document xbuffer @@ -57,7 +61,7 @@ Print the name of the buffer. end define xsymbol -print (struct Lisp_Symbol *) ($ & 0x00ffffff) +print (struct Lisp_Symbol *) (($ & 0x00ffffff) | $data_seg_bits) output &$->name->data echo \n end @@ -67,7 +71,7 @@ This command assumes that $ is an Elisp symbol value. end define xstring -print (struct Lisp_String *) ($ & 0x00ffffff) +print (struct Lisp_String *) (($ & 0x00ffffff) | $data_seg_bits) output ($->size > 10000) ? "big string" : ($->data[0])@($->size) echo \n end @@ -77,7 +81,7 @@ This command assumes that $ is an Elisp string value. end define xvector -print (struct Lisp_Vector *) ($ & 0x00ffffff) +print (struct Lisp_Vector *) (($ & 0x00ffffff) | $data_seg_bits) output ($->size > 1000) ? "big vector" : ($->contents[0])@($->size) echo \n end @@ -86,15 +90,15 @@ Print the contents and address of the vector $. This command assumes that $ is an Elisp vector value. end -define xscreen -print (struct screen *) ($ & 0x00ffffff) +define xframe +print (struct frame *) (($ & 0x00ffffff) | $data_seg_bits) end -document xwindow -Print $ as a screen pointer, assuming it is an Elisp screen value. +document xframe +Print $ as a frame pointer, assuming it is an Elisp frame value. end define xcons -print (struct Lisp_Cons *) ($ & 0x00ffffff) +print (struct Lisp_Cons *) (($ & 0x00ffffff) | $data_seg_bits) output *$ echo \n end @@ -103,19 +107,28 @@ Print the contents of $, assuming it is an Elisp cons. end define xcar -print ((($ >> 24) & 0x7f) == Lisp_Cons ? ((struct Lisp_Cons *) ($ & 0x00ffffff))->car : 0) +print ((($ >> 24) & 0x7f) == Lisp_Cons ? ((struct Lisp_Cons *) (($ & 0x00ffffff) | $data_seg_bits))->car : 0) end document xcar Print the car of $, assuming it is an Elisp pair. end define xcdr -print ((($ >> 24) & 0x7f) == Lisp_Cons ? ((struct Lisp_Cons *) ($ & 0x00ffffff))->cdr : 0) +print ((($ >> 24) & 0x7f) == Lisp_Cons ? ((struct Lisp_Cons *) (($ & 0x00ffffff) | $data_seg_bits))->cdr : 0) end document xcdr Print the cdr of $, assuming it is an Elisp pair. end +define xsubr +print (struct Lisp_Subr *) (($ & 0x00ffffff) | $data_seg_bits) +output *$ +echo \n +end +document xsubr +Print the address of the subr which the Lisp_Object $ points to. +end + set print pretty on unset environment TERMCAP diff --git a/src/Makefile.in b/src/Makefile.in index 6e27031c40..045d3a439e 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -1,3 +1,7 @@ +# DIST: This is the distribution Makefile for Emacs. configure can +# DIST: make most of the changes to this file you might want, so try +# DIST: that first. + MAKE = make # BSD doesn't have it as a default. @@ -16,7 +20,7 @@ doall: #This is used in making a distribution. #Do not use it on development directories! distclean: - -rm -f paths.h config.h machine.h system.h emacs-* temacs xemacs xmakefile core *~ \#* *.o + -rm -f paths.h config.h machine.h system.h emacs-* temacs xemacs xmakefile core *~ m/*~ s/*~ \#* *.o clean: -rm -f temacs xemacs xmakefile* core \#* *.o diff --git a/src/gnu.h b/src/gnu.h index 3985c406d2..b699ffe460 100644 --- a/src/gnu.h +++ b/src/gnu.h @@ -1,114 +1,33 @@ -#ifdef HAVE_X11 #define gnu_width 50 #define gnu_height 50 static char gnu_bits[] = { - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xfe, 0xff, 0xff, - 0xff, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xf1, - 0xff, 0xff, 0xf3, 0xff, 0x8f, 0xff, 0xe1, 0xff, 0xff, 0xf9, 0x3f, 0x22, - 0xfe, 0xcb, 0xff, 0xff, 0xf8, 0xc3, 0xf8, 0xfc, 0xcb, 0xff, 0x7f, 0xfc, - 0xe0, 0xf9, 0xf9, 0xdb, 0xff, 0x7f, 0xfc, 0xf0, 0xfb, 0xf3, 0xd9, 0xff, - 0x3f, 0x7e, 0xf8, 0xff, 0xf7, 0xcc, 0xff, 0x9f, 0x3e, 0x1c, 0x7f, 0x44, - 0xce, 0xff, 0xcf, 0x1e, 0xcc, 0x01, 0x00, 0xe7, 0xff, 0xef, 0x0e, 0xce, - 0x38, 0x1c, 0xe0, 0xff, 0xef, 0x0e, 0x27, 0xfe, 0xfa, 0xc3, 0xff, 0xef, - 0x7c, 0x93, 0xff, 0xe5, 0xbf, 0xff, 0xef, 0x99, 0xc9, 0xab, 0x2a, 0x00, - 0xff, 0xcf, 0xc3, 0x24, 0x54, 0xc5, 0xd5, 0xff, 0x9f, 0x7f, 0x16, 0xab, - 0xca, 0xff, 0xff, 0x1f, 0x1f, 0x93, 0x46, 0x95, 0xff, 0xff, 0x7f, 0xc8, - 0x49, 0x99, 0x8a, 0xff, 0xff, 0xff, 0xf0, 0x49, 0x4b, 0x95, 0xff, 0xff, - 0xff, 0xf9, 0x4c, 0x88, 0x8a, 0xff, 0xff, 0xff, 0x1e, 0xe6, 0x58, 0x95, - 0xff, 0xff, 0x3f, 0x00, 0xe6, 0xb7, 0x0a, 0xff, 0xff, 0xbf, 0x8a, 0xea, - 0x50, 0x15, 0xff, 0xff, 0xff, 0x8f, 0xca, 0x99, 0x2a, 0xff, 0xff, 0xff, - 0xa7, 0x95, 0x7f, 0x15, 0xff, 0xff, 0xff, 0x23, 0x55, 0x7f, 0x2a, 0xfe, - 0xff, 0xff, 0x63, 0xd8, 0xfc, 0x14, 0xfe, 0xff, 0xff, 0x43, 0x9a, 0xfb, - 0x2b, 0xfe, 0xff, 0xff, 0xc3, 0xaa, 0x12, 0x94, 0xfc, 0xff, 0xff, 0xc1, - 0x32, 0xd5, 0xc1, 0xfd, 0xff, 0xff, 0x81, 0x46, 0xd5, 0x47, 0xfc, 0xff, - 0xff, 0x83, 0x6c, 0xc2, 0x6e, 0xfc, 0xff, 0xff, 0x83, 0x89, 0x88, 0x69, - 0xfe, 0xff, 0xff, 0x07, 0x92, 0x09, 0x3b, 0xfe, 0xff, 0xff, 0x07, 0x22, - 0x01, 0x3c, 0xfe, 0xff, 0xff, 0x0f, 0x4e, 0x02, 0x03, 0xfe, 0xff, 0xff, - 0x2f, 0xd0, 0x18, 0x3e, 0xff, 0xff, 0xff, 0x3f, 0xb0, 0x19, 0x9e, 0xff, - 0xff, 0xff, 0x7f, 0x00, 0x09, 0x80, 0xff, 0xff, 0xff, 0x7f, 0x01, 0xe3, - 0xc1, 0xff, 0xff, 0xff, 0xff, 0x05, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, - 0x07, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0xfd, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff}; -#else /* X10 */ -#define sink_width 48 -#define sink_height 48 -#define sink_mask_width 48 -#define sink_mask_height 48 -short sink_bits[] = { - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0x9f80, 0xffff, 0xffff, - 0x9f9f, 0xffff, 0xffff, 0x8000, - 0xffff, 0x7fff, 0xbffe, 0xffff, - 0x7fff, 0xa003, 0xffff, 0x7fff, - 0xaffd, 0xffff, 0x3fff, 0xaff9, - 0xffff, 0xffff, 0xafff, 0xffff, - 0xffff, 0xaffc, 0xffff, 0x7fff, - 0xaff8, 0xffff, 0xffff, 0xaffc, - 0xffff, 0xffff, 0xafff, 0xffff, - 0xbfff, 0xaff7, 0xffff, 0x3fff, - 0xaff3, 0xffff, 0xffff, 0xaffc, - 0x003f, 0x0000, 0x2000, 0x007f, - 0x0000, 0xe000, 0xf8df, 0xffff, - 0x07ff, 0xf9cf, 0xff0f, 0xe7ff, - 0xf9cf, 0xfff7, 0xe7ff, 0xf9ff, - 0x63f7, 0xe7fb, 0xf9ff, 0x5a37, - 0xe7fb, 0xf9cf, 0x5af7, 0xe7fb, - 0xf9cf, 0x5af7, 0xe7f9, 0xf9ef, - 0xdb0f, 0xe7fa, 0xf9ff, 0xffff, - 0xe7ff, 0xf9df, 0xffff, 0xe7ff, - 0x19cf, 0xfffc, 0xe7ff, 0xd9cf, - 0xffff, 0xe7ff, 0xd9ff, 0xce47, - 0xe673, 0x19ff, 0xb5b6, 0xe7ad, - 0xd9cf, 0xb5b7, 0xe67d, 0xd9c7, - 0xb5b7, 0xe5ed, 0x19ef, 0x4db4, - 0xe673, 0xf1ff, 0xffff, 0xe3ff, - 0x03ff, 0x0380, 0xf000, 0x07ef, - 0x0100, 0xf800, 0xffc7, 0xf93f, - 0xffff, 0xffe7, 0xfd7f, 0xffe0, - 0xffff, 0x7d7f, 0xffdf, 0xffff, - 0xbd7f, 0xffb1, 0xffff, 0xbb7f, - 0xffae, 0xffef, 0xdaff, 0xffae, - 0xffc7, 0x66ff, 0xffaf, 0xffe7, - 0xbdff, 0xffaf, 0xffff, 0xc3ff, - 0xffaf, 0xffff, 0xffff, 0xffaf}; -short sink_mask_bits[] = { - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff}; -#endif /* X10 */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x03, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x0e, + 0x00, 0x00, 0x0c, 0x00, 0x70, 0x00, 0x1e, 0x00, 0x00, 0x06, 0xc0, 0xdd, + 0x01, 0x34, 0x00, 0x00, 0x07, 0x3c, 0x07, 0x03, 0x34, 0x00, 0x80, 0x03, + 0x1f, 0x06, 0x06, 0x24, 0x00, 0x80, 0x03, 0x0f, 0x04, 0x0c, 0x26, 0x00, + 0xc0, 0x81, 0x07, 0x00, 0x08, 0x33, 0x00, 0x60, 0xc1, 0xe3, 0x80, 0xbb, + 0x31, 0x00, 0x30, 0xe1, 0x33, 0xfe, 0xff, 0x18, 0x00, 0x10, 0xf1, 0x31, + 0xc7, 0xe3, 0x1f, 0x00, 0x10, 0xf1, 0xd8, 0x01, 0x05, 0x3c, 0x00, 0x10, + 0x83, 0x6c, 0x00, 0x1a, 0x40, 0x00, 0x10, 0x66, 0x36, 0x54, 0xd5, 0xff, + 0x00, 0x30, 0x3c, 0xdb, 0xab, 0x3a, 0x2a, 0x00, 0x60, 0x80, 0xe9, 0x54, + 0x35, 0x00, 0x00, 0xe0, 0xe0, 0x6c, 0xb9, 0x6a, 0x00, 0x00, 0x80, 0x37, + 0xb6, 0x66, 0x75, 0x00, 0x00, 0x00, 0x0f, 0xb6, 0xb4, 0x6a, 0x00, 0x00, + 0x00, 0x06, 0xb3, 0x77, 0x75, 0x00, 0x00, 0x00, 0xe1, 0x19, 0xa7, 0x6a, + 0x00, 0x00, 0xc0, 0xff, 0x19, 0x48, 0xf5, 0x00, 0x00, 0x40, 0x75, 0x15, + 0xaf, 0xea, 0x00, 0x00, 0x00, 0x70, 0x35, 0x66, 0xd5, 0x00, 0x00, 0x00, + 0x58, 0x6a, 0x80, 0xea, 0x00, 0x00, 0x00, 0xdc, 0xaa, 0x80, 0xd5, 0x01, + 0x00, 0x00, 0x9c, 0x27, 0x03, 0xeb, 0x01, 0x00, 0x00, 0xbc, 0x65, 0x04, + 0xd4, 0x01, 0x00, 0x00, 0x3c, 0x55, 0xed, 0x6b, 0x03, 0x00, 0x00, 0x3e, + 0xcd, 0x2a, 0x3e, 0x02, 0x00, 0x00, 0x7e, 0xb9, 0x2a, 0xb8, 0x03, 0x00, + 0x00, 0x7c, 0x93, 0x3d, 0x91, 0x03, 0x00, 0x00, 0x7c, 0x76, 0x77, 0x96, + 0x01, 0x00, 0x00, 0xf8, 0x6d, 0xf6, 0xc4, 0x01, 0x00, 0x00, 0xf8, 0xdd, + 0xfe, 0xc3, 0x01, 0x00, 0x00, 0xf0, 0xb1, 0xfd, 0xfc, 0x01, 0x00, 0x00, + 0xd0, 0x2f, 0xe7, 0xc1, 0x00, 0x00, 0x00, 0xc0, 0x4f, 0xe6, 0x61, 0x00, + 0x00, 0x00, 0x80, 0xff, 0xf6, 0x7f, 0x00, 0x00, 0x00, 0x80, 0xfe, 0x1c, + 0x3e, 0x00, 0x00, 0x00, 0x00, 0xfa, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf8, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00}; diff --git a/src/keyboard.h b/src/keyboard.h index d1cb78d782..66e7e10eec 100644 --- a/src/keyboard.h +++ b/src/keyboard.h @@ -66,3 +66,6 @@ extern Lisp_Object Qscrollbar_click; /* Symbols to use for non-text mouse positions. */ extern Lisp_Object Qmode_line, Qvertical_line; +/* User-supplied string to translate input characters through. */ +extern Lisp_Object Vkeyboard_translate_table; + diff --git a/src/m/mips.h b/src/m/mips.h index e41f11f8fe..bd4466ee9b 100644 --- a/src/m/mips.h +++ b/src/m/mips.h @@ -1,11 +1,11 @@ -/* machine description file for Mips machines. - Copyright (C) 1987, 1990 Free Software Foundation, Inc. +/* m- file for Mips machines. + Copyright (C) 1987, 1992 Free Software Foundation, Inc. This file is part of GNU Emacs. GNU Emacs is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 1, or (at your option) +the Free Software Foundation; either version 2, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, @@ -23,8 +23,8 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ USUAL-OPSYS="note" NOTE-START -Use -opsystem=usg5-2-2 normally, or -opsystem=bsd4-3 with the BSD -world. +Use m-mips4.h for RISCOS version 4; use s-bsd4-3.h with the BSD world. +Note that the proper m- file for the Decstation is m-pmax.h. NOTE-END */ /* The following three symbols give information on @@ -51,6 +51,11 @@ NOTE-END */ #undef WORD_MACHINE +/* Define how to take a char and sign-extend into an int. + On machines where char is signed, this is a no-op. */ + +#define SIGN_EXTEND_CHAR(c) ((signed char)(c)) + /* Now define a symbol for the cpu type, if your compiler does not define it automatically: Ones defined so far include vax, m68000, ns16000, pyramid, @@ -102,8 +107,11 @@ NOTE-END */ Define neither one if an assembler-language alloca in the file alloca.s should be used. */ +#ifdef __GNUC__ +#define HAVE_ALLOCA +#else #define C_ALLOCA -/* #define HAVE_ALLOCA */ +#endif /* Define NO_REMAP if memory segmentation makes it not work well to change the boundary between the text section and data section @@ -126,13 +134,32 @@ NOTE-END */ #ifdef BSD -/* Supposedly the dec machine doesn't have this library. +/* DECstations don't have this library. #define LIBS_MACHINE -lmld */ #define LD_SWITCH_MACHINE -D 800000 #define LIBS_DEBUG +#define LINKER /bsd43/bin/ld + +#else /* not BSD */ +#ifdef NEWSOS5 + +#define LIBS_MACHINE -lmld +#define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o +#define LIB_STANDARD -lsocket -lnsl -lc /usr/ccs/lib/crtn.o /usr/ccs/lib/values-Xt.o + +#ifdef __GNUC__ +#define C_DEBUG_SWITCH -g +#define C_OPTIMIZE_SWITCH -g -O +#define LD_SWITCH_MACHINE -g -Xlinker -D -Xlinker 800000 #else +#define C_DEBUG_SWITCH -g3 +#define C_OPTIMIZE_SWITCH -g3 +#define LD_SWITCH_MACHINE -g3 -D 800000 +#endif + +#else /* not NEWSOS5 */ #define LIBS_MACHINE -lmld #define LD_SWITCH_MACHINE -D 800000 -g3 @@ -140,27 +167,36 @@ NOTE-END */ #define LIB_STANDARD -lbsd -lc /usr/lib/crtn.o #define LIBS_TERMCAP -lcurses -#define C_SWITCH_SYSTEM -I/usr/include/bsd +#define C_SWITCH_MACHINE -I/usr/include/bsd #define C_DEBUG_SWITCH -O -g3 #if defined(HAVE_X_WINDOWS) && defined(HAVE_X11) #define HAVE_VFORK /* Graciously provided by libX.a */ #endif -#endif + +#endif /* not NEWSOS5 */ +#endif /* not BSD */ /* The standard definitions of these macros would work ok, but these are faster because the constants are short. */ -#define XUINT(a) (((unsigned)(a) << INTBITS-VALBITS) >> INTBITS-VALBITS) +#define XUINT(a) (((unsigned)(a) << (INTBITS-VALBITS)) >> (INTBITS-VALBITS)) -#define XSET(var, type, ptr) \ - ((var) = ((int)(type) << VALBITS) + (((unsigned) (ptr) << INTBITS-VALBITS) >> INTBITS-VALBITS)) +#define XSET(var, type, ptr) \ + ((var) = \ + ((int)(type) << VALBITS) \ + + (((unsigned) (ptr) << (INTBITS-VALBITS)) >> (INTBITS-VALBITS))) #define XSETINT(a, b) XSET(a, XTYPE(a), b) #define XSETUINT(a, b) XSET(a, XTYPE(a), b) #define XSETPNTR(a, b) XSET(a, XTYPE(a), b) -#define XUNMARK(a) ((a) = (((unsigned)(a) << INTBITS-GCTYPEBITS-VALBITS) >> INTBITS-GCTYPEBITS-VALBITS)) +#define XUNMARK(a) \ + ((a) = \ + (((unsigned)(a) << (INTBITS-GCTYPEBITS-VALBITS)) \ + >> (INTBITS-GCTYPEBITS-VALBITS))) + +#ifndef NEWSOS5 #ifdef USG /* Cancel certain parts of standard sysV support. */ @@ -177,7 +213,7 @@ NOTE-END */ #define HAVE_SYSVIPC #define HAVE_TIMEVAL -#if defined(emacs) +#if defined(emacs) && !defined(INHIBIT_BSD_TIME) #include #endif @@ -198,7 +234,7 @@ NOTE-END */ /* ??? */ #define IRIS -#endif +#endif /* USG */ #ifdef BSD #define COFF @@ -206,3 +242,5 @@ NOTE-END */ #undef MAIL_USE_FLOCK /* Someone should check this. */ #undef HAVE_UNION_WAIT #endif /* BSD */ + +#endif /* not NEWSOS5 */ diff --git a/src/m/pmax.h b/src/m/pmax.h index 393b7351a6..71e0fbb18b 100644 --- a/src/m/pmax.h +++ b/src/m/pmax.h @@ -1,14 +1,25 @@ +/* Machine description file for DEC MIPS machines. */ + #include "mips.h" /* The following line tells the configuration script what sort of operating system this machine is likely to run. - USUAL-OPSYS="bsd4-2" */ + USUAL-OPSYS="note" + +NOTE-START +Use -opsystem=osf1 for OSF/1, and -opsystem=bsd4-3 otherwise. +NOTE-END */ #undef BIG_ENDIAN -#define LIBS_DEBUG +#undef LIB_STANDARD +#undef START_FILES +#undef COFF +#undef TERMINFO +#define MAIL_USE_FLOCK +#define HAVE_UNION_WAIT /* This line starts being needed with ultrix 4.0. */ -/* You may need to delete it on version 3.1. */ +/* You must delete it for version 3.1. */ #define START_FILES pre-crt0.o /usr/lib/cmplrs/cc/crt0.o /* Supposedly the following will overcome a kernel bug. */ @@ -20,3 +31,16 @@ /* In Ultrix 4.1, XvmsAlloc.o in libX11.a seems to insist on defining malloc itself. This should avoid conflicting with it. */ #define SYSTEM_MALLOC + +/* Override what m-mips.h says about this. */ +#undef LINKER + +/* Ultrix 4.2 (perhaps also 4.1) implements O_NONBLOCK + but it doesn't work right; + and it causes hanging in read_process_output. */ +#define BROKEN_O_NONBLOCK + +#ifdef OSF1 +#undef C_ALLOCA +#define HAVE_ALLOCA +#endif diff --git a/src/s/bsd4-3.h b/src/s/bsd4-3.h index 583e6eb05a..22330ba85b 100644 --- a/src/s/bsd4-3.h +++ b/src/s/bsd4-3.h @@ -23,12 +23,14 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ * Define all the symbols that apply correctly. */ +/* We give these symbols the numeric values found in to + avoid warnings about redefined macros. */ #ifndef BSD4_3 -#define BSD4_3 +#define BSD4_3 1 #endif /* BSD4_3 */ #ifndef BSD -#define BSD +#define BSD 43 #endif /* BSD */ /* SYSTEM_TYPE should indicate the kind of system you are using. diff --git a/src/s/newsos5.h b/src/s/newsos5.h new file mode 100644 index 0000000000..8a37cb0f68 --- /dev/null +++ b/src/s/newsos5.h @@ -0,0 +1,37 @@ +/* Definitions file for GNU Emacs running on Sony's NEWS-OS 5.0.1 + Copyright (C) 1992 Free Software Foundation, Inc. + +This file is part of GNU Emacs. + +GNU Emacs is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 1, or (at your option) +any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs; see the file COPYING. If not, write to +the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + +/* Use the SysVr4 file for at least base configuration. */ + +#include "s-usg5-4.h" + +#define NEWSOS5 + +/* These will be defined by "m-mips.h". */ +#undef START_FILES +#undef LIB_STANDARD + +/* Disable use of "unexelf.c" and shared libraries, + because NEWS-OS on MIPS doesn't support ELF. */ +#undef UNEXEC +#undef USG_SHARED_LIBRARIES + +#ifndef HAVE_SOCKETS +#define HAVE_SOCKETS +#endif diff --git a/src/s/osf1.h b/src/s/osf1.h new file mode 100644 index 0000000000..65e80861cc --- /dev/null +++ b/src/s/osf1.h @@ -0,0 +1,14 @@ +#include "s-bsd4-3.h" + +/* Identify OSF1 for the m- files. */ + +#define OSF1 + +/* Define _BSD to tell the inlcude files we're running under + the BSD universe and not the SYSV universe. */ + +#define C_SWITCH_SYSTEM -D_BSD +#define LIBS_SYSTEM -lbsd +#define LD_SWITCH_SYSTEM -non_shared + +#define SYSV_SYSTEM_DIR diff --git a/src/sinkmask.h b/src/sinkmask.h index 1ad645df82..6453cfbd6f 100644 --- a/src/sinkmask.h +++ b/src/sinkmask.h @@ -1,91 +1,27 @@ -#define sink_mask_width 48 -#define sink_mask_height 48 -#ifdef HAVE_X11 -static char sink_mask_bits[] = { - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, - 0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; -#else -short sink_mask_bits[] = { - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff, - 0xffff, 0xffff, 0xffff, 0xffff}; -#endif /* HAVE_X11 */ +#define sinkmask_width 48 +#define sinkmask_height 48 +static char sinkmask_bits[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x60, + 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, + 0x00, 0x00, 0x00, 0x80, 0x01, 0x40, 0x00, 0x00, 0x00, 0x80, 0xfc, 0x5f, + 0x00, 0x00, 0x00, 0x80, 0x02, 0x50, 0x00, 0x00, 0x00, 0xc0, 0x06, 0x50, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, 0x03, 0x50, + 0x00, 0x00, 0x00, 0x80, 0x07, 0x50, 0x00, 0x00, 0x00, 0x00, 0x03, 0x50, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x40, 0x08, 0x50, + 0x00, 0x00, 0x00, 0xc0, 0x0c, 0x50, 0x00, 0x00, 0x00, 0x00, 0x03, 0x50, + 0xc0, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x80, 0xff, 0xff, 0xff, 0xff, 0x1f, + 0x20, 0x07, 0x00, 0x00, 0x00, 0xf8, 0x30, 0x06, 0xf0, 0x00, 0x00, 0x18, + 0x30, 0x06, 0x08, 0x00, 0x00, 0x18, 0x00, 0x06, 0x08, 0x9c, 0x04, 0x18, + 0x00, 0x06, 0xc8, 0xa5, 0x04, 0x18, 0x30, 0x06, 0x08, 0xa5, 0x04, 0x18, + 0x30, 0x06, 0x08, 0xa5, 0x06, 0x18, 0x10, 0x06, 0xf0, 0x24, 0x05, 0x18, + 0x00, 0x06, 0x00, 0x00, 0x00, 0x18, 0x20, 0x06, 0x00, 0x00, 0x00, 0x18, + 0x30, 0xe6, 0x03, 0x00, 0x00, 0x18, 0x30, 0x26, 0x00, 0x00, 0x00, 0x18, + 0x00, 0x26, 0xb8, 0x31, 0x8c, 0x19, 0x00, 0xe6, 0x49, 0x4a, 0x52, 0x18, + 0x30, 0x26, 0x48, 0x4a, 0x82, 0x19, 0x38, 0x26, 0x48, 0x4a, 0x12, 0x1a, + 0x10, 0xe6, 0x4b, 0xb2, 0x8c, 0x19, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x1c, + 0x00, 0xfc, 0x7f, 0xfc, 0xff, 0x0f, 0x10, 0xf8, 0xff, 0xfe, 0xff, 0x07, + 0x38, 0x00, 0xc0, 0x06, 0x00, 0x00, 0x18, 0x00, 0x80, 0x02, 0x1f, 0x00, + 0x00, 0x00, 0x80, 0x82, 0x20, 0x00, 0x00, 0x00, 0x80, 0x42, 0x4e, 0x00, + 0x00, 0x00, 0x80, 0x44, 0x51, 0x00, 0x10, 0x00, 0x00, 0x25, 0x51, 0x00, + 0x38, 0x00, 0x00, 0x99, 0x50, 0x00, 0x18, 0x00, 0x00, 0x42, 0x50, 0x00, + 0x00, 0x00, 0x00, 0x3c, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00}; -- cgit v1.2.3