aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJim Blandy <[email protected]>1992-09-13 11:44:06 +0000
committerJim Blandy <[email protected]>1992-09-13 11:44:06 +0000
commitec558adcceffa21d313410a6d8ebfe11b47d083b (patch)
tree2d78afc1cf127cc5eb02f12d39a623f297f7cbda
parentb7cceaf12a73559df9c2fcf135983b4c03b48061 (diff)
entered into RCS
-rw-r--r--lisp/frame.el16
-rw-r--r--lisp/loadup.el6
-rw-r--r--lisp/mouse.el18
-rw-r--r--src/.gdbinit43
-rw-r--r--src/Makefile.in6
-rw-r--r--src/gnu.h141
-rw-r--r--src/keyboard.h3
-rw-r--r--src/m/mips.h68
-rw-r--r--src/m/pmax.h30
-rw-r--r--src/s/bsd4-3.h6
-rw-r--r--src/s/newsos5.h37
-rw-r--r--src/s/osf1.h14
-rw-r--r--src/sinkmask.h118
13 files changed, 253 insertions, 253 deletions
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 <bsd/sys/time.h>
#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 <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.
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};