|
|
1.1 root 1: /* m- file for SEQUENT BALANCE machines
2: Copyright (C) 1985, 1986 Free Software Foundation, Inc.
3:
4: This file is part of GNU Emacs.
5:
6: GNU Emacs is distributed in the hope that it will be useful,
7: but WITHOUT ANY WARRANTY. No author or distributor
8: accepts responsibility to anyone for the consequences of using it
9: or for whether it serves any particular purpose or works at all,
10: unless he says so in writing. Refer to the GNU Emacs General Public
11: License for full details.
12:
13: Everyone is granted permission to copy, modify and redistribute
14: GNU Emacs, but only under the conditions described in the
15: GNU Emacs General Public License. A copy of this license is
16: supposed to have been given to you along with GNU Emacs so you
17: can know your rights and responsibilities. It should be in a
18: file named COPYING. Among other things, the copyright notice
19: and this notice must be preserved on all copies. */
20:
21:
22: /* NOTE: this file works for DYNIX release 2.0
23: (not tested on 1.3) on NS32000's */
24:
25: /* The following three symbols give information on
26: the size of various data types. */
27:
28: #define SHORTBITS 16 /* Number of bits in a short */
29:
30: #define INTBITS 32 /* Number of bits in an int */
31:
32: #define LONGBITS 32 /* Number of bits in a long */
33:
34: /* Define BIG_ENDIAN iff lowest-numbered byte in a word
35: is the most significant byte. */
36:
37: /* #define BIG_ENDIAN */
38:
39: /* Define NO_ARG_ARRAY if you cannot take the address of the first of a
40: * group of arguments and treat it as an array of the arguments. */
41:
42: /* #define NO_ARG_ARRAY */
43:
44: /* Define WORD_MACHINE if addresses and such have
45: * to be corrected before they can be used as byte counts. */
46:
47: /* #define WORD_MACHINE */
48:
49: /* Define how to take a char and sign-extend into an int.
50: On machines where char is signed, this is a no-op. */
51:
52: #define SIGN_EXTEND_CHAR(c) (c)
53:
54: /* Now define a symbol for the cpu type, if your compiler
55: does not define it automatically:
56: vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO
57: are the ones defined so far. */
58:
59: /* BTW: DYNIX defines sequent, ns32000, and ns16000 (GENIX compatibility) */
60: #ifndef sequent /* pre DYNIX 2.1 releases */
61: # define sequent
62: #endif
63:
64: /* Use type int rather than a union, to represent Lisp_Object */
65: /* This is desirable for most machines. */
66:
67: #define NO_UNION_TYPE
68:
69: /* crt0.c should use the vax-bsd style of entry, with these dummy args. */
70:
71: #define CRT0_DUMMIES bogus_fp,
72:
73: /* crt0.c should define a symbol `start' and do .globl with a dot. */
74:
75: #define DOT_GLOBAL_START
76:
77: /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
78: the 24-bit bit field into an int. In other words, if bit fields
79: are always unsigned.
80:
81: If you use NO_UNION_TYPE, this flag does not matter. */
82:
83: #define EXPLICIT_SIGN_EXTEND
84:
85: /* Data type of load average, as read out of kmem. */
86:
87: #define LOAD_AVE_TYPE unsigned long
88:
89: /* Convert that into an integer that is 100 for a load average of 1.0 */
90:
91: #define FSCALE 1000.0
92: #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
93:
94: /* Define CANNOT_DUMP on machines where unexec does not work.
95: Then the function dump-emacs will not be defined
96: and temacs will do (load "loadup") automatically unless told otherwise. */
97:
98: /* #define CANNOT_DUMP */
99:
100: /* Define VIRT_ADDR_VARIES if the virtual addresses of
101: pure and impure space as loaded can vary, and even their
102: relative order cannot be relied on.
103:
104: Otherwise Emacs assumes that text space precedes data space,
105: numerically. */
106:
107: /* #define VIRT_ADDR_VARIES */
108:
109: /* Define C_ALLOCA if this machine does not support a true alloca
110: and the one written in C should be used instead.
111: Define HAVE_ALLOCA to say that the system provides a properly
112: working alloca function and it should be used.
113: Define neither one if an assembler-language alloca
114: in the file alloca.s should be used. */
115:
116: /* #define C_ALLOCA */
117: #define HAVE_ALLOCA
118:
119: /* Name of file the to look in
120: for the kernel symbol table (for load average) */
121:
122: #undef KERNEL_FILE
123: #define KERNEL_FILE "/dynix"
124:
125: /* Avoids a compiler bug */
126:
127: #define TAHOE_REGISTER_BUG
128:
129: /* Say that the text segment of a.out includes the header;
130: the header actually occupies the first few bytes of the text segment
131: and is counted in hdr.a_text. Furthermore, the value written
132: in the a_text in the file must have N_ADDRADJ added to it. */
133:
134: #define A_TEXT_OFFSET(HDR) (sizeof (HDR) + N_ADDRADJ (HDR))
135:
136: /* (short) negative-int doesn't sign-extend correctly */
137: #define SHORT_CAST_BUG
138:
139: /* Cause compilations to be done in parallel in ymakefile. */
140: #define MAKE_PARALLEL &
141:
142: /* Define how to search all pty names.
143: This is for Dynix 3.0; delete next 5 definitions for older systems. */
144:
145: #define PTY_MAJOR "pqrstuvwPQRSTUVW"
146: #define PTY_MINOR "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
147: #define PTY_ITERATION \
148: register int ma, mi; \
149: for (ma = 0; ma < sizeof(PTY_MAJOR) - 1; ma++) \
150: for (mi = 0; mi < sizeof(PTY_MINOR) - 1; mi++)
151: #define PTY_NAME_SPRINTF \
152: sprintf (ptyname, "/dev/pty%c%c", PTY_MAJOR[ma], PTY_MINOR[mi]);
153: #define PTY_TTY_NAME_SPRINTF \
154: sprintf (ptyname, "/dev/tty%c%c", PTY_MAJOR[ma], PTY_MINOR[mi]);
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.