changeset 1113:0ffcf74fb8ad

entered into RCS
author Jim Blandy <jimb@redhat.com>
date Sun, 13 Sep 1992 11:44:06 +0000
parents 1dba066c1e0a
children 903883eed4de
files lisp/frame.el lisp/loadup.el lisp/mouse.el src/.gdbinit src/=Makefile.in src/gnu.h src/keyboard.h src/m/mips.h src/m/pmax.h src/s/bsd4-3.h src/s/newsos5.h src/s/osf1.h src/sinkmask.h
diffstat 13 files changed, 253 insertions(+), 253 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/frame.el	Sun Sep 13 10:54:38 1992 +0000
+++ b/lisp/frame.el	Sun Sep 13 11:44:06 1992 +0000
@@ -115,10 +115,14 @@
 (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 @@
 	      (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))
--- a/lisp/loadup.el	Sun Sep 13 10:54:38 1992 +0000
+++ b/lisp/loadup.el	Sun Sep 13 11:44:06 1992 +0000
@@ -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
--- a/lisp/mouse.el	Sun Sep 13 10:54:38 1992 +0000
+++ b/lisp/mouse.el	Sun Sep 13 11:44:06 1992 +0000
@@ -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 @@
   "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 @@
   "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 @@
 (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 @@
 (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"
--- a/src/.gdbinit	Sun Sep 13 10:54:38 1992 +0000
+++ b/src/.gdbinit	Sun Sep 13 11:44:06 1992 +0000
@@ -8,6 +8,10 @@
 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 @@
 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 @@
 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 @@
 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 @@
 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 @@
 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 @@
 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 @@
 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
--- a/src/=Makefile.in	Sun Sep 13 10:54:38 1992 +0000
+++ b/src/=Makefile.in	Sun Sep 13 11:44:06 1992 +0000
@@ -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 @@
 #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
--- a/src/gnu.h	Sun Sep 13 10:54:38 1992 +0000
+++ b/src/gnu.h	Sun Sep 13 11:44:06 1992 +0000
@@ -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};
--- a/src/keyboard.h	Sun Sep 13 10:54:38 1992 +0000
+++ b/src/keyboard.h	Sun Sep 13 11:44:06 1992 +0000
@@ -66,3 +66,6 @@
 /* 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;
+
--- a/src/m/mips.h	Sun Sep 13 10:54:38 1992 +0000
+++ b/src/m/mips.h	Sun Sep 13 11:44:06 1992 +0000
@@ -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 @@
    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 @@
 
 #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 @@
    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 @@
 
 #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 @@
 #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 @@
 #define HAVE_SYSVIPC
 
 #define HAVE_TIMEVAL
-#if defined(emacs)
+#if defined(emacs) && !defined(INHIBIT_BSD_TIME)
 #include <bsd/sys/time.h>
 #endif
 
@@ -198,7 +234,7 @@
 /* ??? */
 #define IRIS
 
-#endif
+#endif /* USG */
 
 #ifdef BSD
 #define COFF
@@ -206,3 +242,5 @@
 #undef MAIL_USE_FLOCK  /* Someone should check this.  */
 #undef HAVE_UNION_WAIT
 #endif /* BSD */
+
+#endif /* not NEWSOS5 */
--- a/src/m/pmax.h	Sun Sep 13 10:54:38 1992 +0000
+++ b/src/m/pmax.h	Sun Sep 13 11:44:06 1992 +0000
@@ -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
--- a/src/s/bsd4-3.h	Sun Sep 13 10:54:38 1992 +0000
+++ b/src/s/bsd4-3.h	Sun Sep 13 11:44:06 1992 +0000
@@ -23,12 +23,14 @@
  *	Define all the symbols that apply correctly.
  */
 
+/* We give these symbols the numeric values found in <sys/param.h> 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.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/s/newsos5.h	Sun Sep 13 11:44:06 1992 +0000
@@ -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
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/s/osf1.h	Sun Sep 13 11:44:06 1992 +0000
@@ -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
--- a/src/sinkmask.h	Sun Sep 13 10:54:38 1992 +0000
+++ b/src/sinkmask.h	Sun Sep 13 11:44:06 1992 +0000
@@ -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};