annotate src/m/pfa50.h @ 1717:aa7d6d57504b

* frame.h (struct frame): New fields `can_have_scrollbars' and `has_vertical_scrollbars'. (FRAME_CAN_HAVE_SCROLLBARS, FRAME_HAS_VERTICAL_SCROLLBARS): New accessors, for both the MULTI_FRAME and non-MULTI_FRAME. (VERTICAL_SCROLLBAR_WIDTH, WINDOW_VERTICAL_SCROLLBAR, WINDOW_VERTICAL_SCROLLBAR_COLUMN, WINDOW_VERTICAL_SCROLLBAR_HEIGHT): New macros. * window.h (struct window): New field `vertical_scrollbar'. * xterm.h (struct x_display): vertical_scrollbars, judge_timestamp, vertical_scrollbar_extra: New fields. (struct scrollbar): New struct. (VERTICAL_SCROLLBAR_PIXEL_WIDTH, VERTICAL_SCROLLBAR_PIXEL_HEIGHT, VERTICAL_SCROLLBAR_LEFT_BORDER, VERTICAL_SCROLLBAR_RIGHT_BORDER, VERTICAL_SCROLLBAR_TOP_BORDER, VERTICAL_SCROLLBAR_BOTTOM_BORDER, CHAR_TO_PIXEL_WIDTH, CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): New accessors and macros. * frame.c (make_frame): Initialize the `can_have_scrollbars' and `has_vertical_scrollbars' fields of the frame. * term.c (term_init): Note that TERMCAP terminals don't support scrollbars. (mouse_position_hook): Document new args. (set_vertical_scrollbar_hook, condemn_scrollbars_hook, redeem_scrollbar_hook, judge_scrollbars_hook): New hooks. * termhooks.h: Declare and document them. (enum scrollbar_part): New type. (struct input_event): Describe the new form of the scrollbar_click event type. Change `part' from a Lisp_Object to an enum scrollbar_part. Add a new field `scrollbar'. * keyboard.c (kbd_buffer_get_event): Pass appropriate new parameters to *mouse_position_hook, and make_lispy_movement. * xfns.c (x_set_vertical_scrollbar): New function. (x_figure_window_size): Use new macros to calculate frame size. (Fx_create_frame): Note that X Windows frames do support scroll bars. Default to "yes". * xterm.c: #include <X11/cursorfont.h> and "window.h". (x_vertical_scrollbar_cursor): New variable. (x_term_init): Initialize it. (last_mouse_bar, last_mouse_bar_frame, last_mouse_part, last_mouse_scroll_range_start, last_mouse_scroll_range_end): New variables. (XTmouse_position): Use them to return scrollbar movement events. Take new arguments, for that purpose. (x_window_to_scrollbar, x_scrollbar_create, x_scrollbar_set_handle, x_scrollbar_remove, x_scrollbar_move, XTset_scrollbar, XTcondemn_scrollbars, XTredeem_scrollbar, XTjudge_scrollbars, x_scrollbar_expose, x_scrollbar_background_expose, x_scrollbar_handle_click, x_scrollbar_handle_motion): New functions to implement scrollbars. (x_term_init): Set the termhooks.h hooks to point to them. (x_set_window_size): Use new macros to calculate frame size. Set vertical_scrollbar_extra field. (x_make_frame_visible): Use the frame accessor FRAME_HAS_VERTICAL_SCROLLBARS to decide if we need to map the frame's subwindows as well. (XTread_socket): Use new size-calculation macros from xterm.h when processing ConfigureNotify events. (x_wm_set_size_hint): Use PIXEL_TO_CHAR_WIDTH and PIXEL_TO_CHAR_HEIGHT macros. * ymakefile (xdisp.o): This now depends on termhooks.h. (xterm.o): This now depends on window.h.
author Jim Blandy <jimb@redhat.com>
date Thu, 24 Dec 1992 06:17:18 +0000
parents 1ffd52c765c7
children 571142b03bf4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
579
e2782df984a2 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 471
diff changeset
1 /* Machine description file for PFU A-series.
471
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
2 Copyright (C) 1988 Free Software Foundation, Inc.
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
4 This file is part of GNU Emacs.
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
5
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
6 GNU Emacs is distributed in the hope that it will be useful,
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
7 but WITHOUT ANY WARRANTY. No author or distributor
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
8 accepts responsibility to anyone for the consequences of using it
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
9 or for whether it serves any particular purpose or works at all,
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
10 unless he says so in writing. Refer to the GNU Emacs General Public
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
11 License for full details.
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
12
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
13 Everyone is granted permission to copy, modify and redistribute
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
14 GNU Emacs, but only under the conditions described in the
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
15 GNU Emacs General Public License. A copy of this license is
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
16 supposed to have been given to you along with GNU Emacs so you
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
17 can know your rights and responsibilities. It should be in a
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
18 file named COPYING. Among other things, the copyright notice
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
19 and this notice must be preserved on all copies. */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
20
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
21
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
22 /* The following three symbols give information on
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
23 the size of various data types. */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
24
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
25 #define SHORTBITS 16 /* Number of bits in a short */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
26
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
27 #define INTBITS 32 /* Number of bits in an int */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
28
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
29 #define LONGBITS 32 /* Number of bits in a long */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
30
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
31 /* 68000 has lowest-numbered byte as most significant */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
32
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
33 #define BIG_ENDIAN
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
34
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
35 /* Say this machine is a 68000 */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
36
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
37 #define m68000
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
38 #define mc68000 1
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
39
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
40 /* Use type int rather than a union, to represent Lisp_Object */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
41
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
42 #define NO_UNION_TYPE
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
43
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
44 /* XINT must explicitly sign-extend */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
45
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
46 #define EXPLICIT_SIGN_EXTEND
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
47
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
48 /* The symbol FIONREAD is defined, but the feature does not work. */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
49
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
50 #define BROKEN_FIONREAD
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
51
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
52 /* Define NO_REMAP if memory segmentation makes it not work well
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
53 to change the boundary between the text section and data section
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
54 when Emacs is dumped. If you define this, the preloaded Lisp
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
55 code will not be sharable; but that's better than failing completely. */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
56
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
57 #define NO_REMAP
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
58
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
59 /* Define TEXT_START_ADDR if your linker don't set execute point to _start.
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
60 If it needed, temacs always CORE-DUMP. */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
61
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
62 #define TEXT_START_ADDR __start
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
63
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
64 /* Define START_FILES if your machine used _start.
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
65 */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
66
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
67 #define START_FILES crt0.o
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
68
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
69 /* Define LD_SWITCH_MACHINE if your linker need it.
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
70 */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
71
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
72 #define LD_SWITCH_MACHINE -e __start
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
73
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
74 #if pfa50 || pfa70
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
75
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
76 /* On A-50/60/70/80, data space has high order byte use. */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
77 #define VALMASK (((1<<VALBITS) - 1) | 0x60000000)
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
78 #define XTYPE(a) ((enum Lisp_Type) (((a) >> VALBITS) & 0x1f))
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
79 #define XGCTYPE(a) ((enum Lisp_Type) (((a) >> VALBITS) & 0x1f))
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
80
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
81 #endif /* pfa50, pfa70 */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
82
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
83 /* SX/A has alloca in the PW library. */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
84
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
85 #define LIB_STANDARD -lPW -lc
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
86 #define HAVE_ALLOCA
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
87
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
88 /* SX/A uses terminfo and lib/curses */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
89
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
90 #define TERMINFO
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
91
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
92 #define HAVE_TIMEVAL
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
93 #define HAVE_SELECT
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
94 #define HAVE_PTYS
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
95 #define HAVE_SOCKETS
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
96 #define HAVE_RENAME
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
97
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
98 /* SX/A use SystemV style getdents/readdir. */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
99 #define HAVE_CLOSEDIR
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
100
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
101 /* SX/A does not have sigblock(2) */
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
102 #define sigblock(mask) (0)
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
103
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
104 #define USG_SYS_TIME
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
105 #define USE_UTIME
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
106
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
107 #define NO_SIOCTL_H
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
108
259595b59f93 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
109 #undef SIGIO