aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJim Blandy1993-05-29 20:57:51 +0000
committerJim Blandy1993-05-29 20:57:51 +0000
commit171ae04e80388561e4751457b7383dd6c6fe036f (patch)
tree9725fa38bcb5f21eb4a78e01140207828355b86a /src
parent41423a801208c7b6c9a6fa2b3b2070473f44a16c (diff)
downloademacs-171ae04e80388561e4751457b7383dd6c6fe036f.tar.gz
emacs-171ae04e80388561e4751457b7383dd6c6fe036f.zip
Initial revision
Diffstat (limited to 'src')
-rw-r--r--src/m/tekxd88.h184
1 files changed, 184 insertions, 0 deletions
diff --git a/src/m/tekxd88.h b/src/m/tekxd88.h
new file mode 100644
index 00000000000..d2847b018ad
--- /dev/null
+++ b/src/m/tekxd88.h
@@ -0,0 +1,184 @@
1+/* m- file for Tektronix XD88 running UTekV 3.2e to be used with s-usg5-3.h,
2+ contributed by Kaveh Ghazi (ghazi@caip.rutgers.edu) 1/15/93.
3+ You probably need to use gnu make (version 3.63 or higher.)
4+ Copyright (C) 1993 Free Software Foundation, Inc.
5+
6+This file is part of GNU Emacs.
7+
8+GNU Emacs is distributed in the hope that it will be useful,
9+but WITHOUT ANY WARRANTY. No author or distributor
10+accepts responsibility to anyone for the consequences of using it
11+or for whether it serves any particular purpose or works at all,
12+unless he says so in writing. Refer to the GNU Emacs General Public
13+License for full details.
14+
15+Everyone is granted permission to copy, modify and redistribute
16+GNU Emacs, but only under the conditions described in the
17+GNU Emacs General Public License. A copy of this license is
18+supposed to have been given to you along with GNU Emacs so you
19+can know your rights and responsibilities. It should be in a
20+file named COPYING. Among other things, the copyright notice
21+and this notice must be preserved on all copies. */
22+
23+/* The following three symbols give information on
24+ the size of various data types. */
25+#define SHORTBITS 16 /* Number of bits in a short */
26+#define INTBITS 32 /* Number of bits in an int */
27+#define LONGBITS 32 /* Number of bits in a long */
28+
29+/* Define BIG_ENDIAN iff lowest-numbered byte in a word
30+ is the most significant byte. */
31+#define BIG_ENDIAN
32+
33+/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
34+ * group of arguments and treat it as an array of the arguments. */
35+#define NO_ARG_ARRAY
36+
37+/* Define WORD_MACHINE if addresses and such have
38+ * to be corrected before they can be used as byte counts. */
39+/* #define WORD_MACHINE */
40+
41+/* Now define a symbol for the cpu type, if your compiler
42+ does not define it automatically:
43+ Ones defined so far include vax, m68000, ns16000, pyramid,
44+ orion, tahoe, APOLLO and many others */
45+#ifndef m88000 /* Some 88k C compilers already define this */
46+#define m88000
47+#endif
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+#define SIGN_EXTEND_CHAR(c) (c)
52+
53+/* Now define a symbol for the cpu type, if your compiler
54+ does not define it automatically. */
55+
56+
57+/* Use type int rather than a union, to represent Lisp_Object */
58+/* This is desirable for most machines. */
59+#define NO_UNION_TYPE
60+
61+/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
62+ the 24-bit bit field into an int. In other words, if bit fields
63+ are always unsigned.
64+
65+ If you use NO_UNION_TYPE, this flag does not matter. */
66+/* #define EXPLICIT_SIGN_EXTEND */
67+
68+/* Data type of load average, as read out of kmem. */
69+/* No load average on XD88 machines. */
70+/* #define LOAD_AVE_TYPE double */
71+
72+/* Convert that into an integer that is 100 for a load average of 1.0 */
73+/* #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) */
74+
75+/* Define CANNOT_DUMP on machines where unexec does not work.
76+ Then the function dump-emacs will not be defined
77+ and temacs will do (load "loadup") automatically unless told otherwise. */
78+#define CANNOT_DUMP /* oh well, maybe someday ... */
79+
80+/* Define VIRT_ADDR_VARIES if the virtual addresses of
81+ pure and impure space as loaded can vary, and even their
82+ relative order cannot be relied on.
83+
84+ Otherwise Emacs assumes that text space precedes data space,
85+ numerically. */
86+/* #define VIRT_ADDR_VARIES */
87+
88+/* Define NO_REMAP if memory segmentation makes it not work well
89+ to change the boundary between the text section and data section
90+ when Emacs is dumped. If you define this, the preloaded Lisp
91+ code will not be sharable; but that's better than failing completely. */
92+#define NO_REMAP
93+
94+/* Define C_ALLOCA if this machine does not support a true alloca
95+ and the one written in C should be used instead.
96+ Define HAVE_ALLOCA to say that the system provides a properly
97+ working alloca function and it should be used.
98+ Define neither one if an assembler-language alloca
99+ in the file alloca.s should be used. */
100+#ifdef __GNUC__
101+# define alloca __builtin_alloca /* Use the gcc builtin alloca() ... */
102+# define HAVE_ALLOCA /* ... and be sure that no other ones are tried out. */
103+# undef C_ALLOCA
104+# define C_OPTIMIZE_SWITCH -O2
105+#else /* not __GNUC__ */
106+# undef HAVE_ALLOCA
107+# define C_ALLOCA /* Use the alloca() supplied in alloca.c. */
108+# define STACK_DIRECTION -1 /* The stack grows towards lower addresses. */
109+# define C_OPTIMIZE_SWITCH -O
110+#endif /* __GNUC__ */
111+
112+/*#define C_DEBUG_SWITCH C_OPTIMIZE_SWITCH*/ /* Uncomment this to optimize */
113+
114+/* XD88 SysV has PTYs. Not all usg3-5 systems do, so this is defined here. */
115+#define HAVE_PTYS
116+#define SYSV_PTYS /* Requires <termios.h> */
117+
118+/* we have job control */
119+#undef NOMULTIPLEJOBS
120+
121+/*
122+ * sockets are available
123+ */
124+#define HAVE_SOCKETS
125+
126+/*
127+ * we have Berkeley style <sys/time.h>
128+ */
129+#define HAVE_TIMEVAL
130+
131+/* XD88 has select(). */
132+#define HAVE_SELECT
133+#define BROKEN_FIONREAD /* is this needed ? */
134+
135+/*
136+ * don't use utimes, we ain't got one - use utime() instead
137+ */
138+#define USE_UTIME
139+
140+#define NO_SIOCTL_H
141+
142+/* We need HAVE_TCATTR to prevent Ctrl-Z from suspending Emacs before
143+ suspend-emacs has been called. */
144+/*#define HAVE_TCATTR*/
145+/* TCATTR gives bogus baud rates. Use the following for OSPEED instead. */
146+/*#define OSPEED(str) (cfgetospeed(&(str)))*/
147+#define HAVE_TERMIOS
148+#undef HAVE_TERMIO
149+
150+#define BSTRING /* its in libc but not declared in any <*.h> file. */
151+#define HAVE_TZSET
152+#define HAVE_SETSID
153+#define HAVE_RENAME
154+
155+#ifdef ghs /* Stands for "Green Hills Software", defined in /bin/cc */
156+/* Only required for use with the Green Hills compiler:
157+ -X18 Do not allocate programmer-defined local variables to a
158+ register unless they are declared register. (From building
159+ perl-4.036 Green Hills hints. Might be needed for setjmp.)
160+ */
161+#define C_SWITCH_MACHINE -X18
162+/* We need /lib/default.ld so the bundled ld can read its link directives. */
163+#define LD_SWITCH_SYSTEM /lib/default.ld
164+#endif /* ghs */
165+
166+/* XD88 does not have the random() and srandom() calls in the base system,
167+ but they exist in libX11.a. So, if you are building with X11 then you
168+ will need to define HAVE_RANDOM. */
169+#ifdef HAVE_X_WINDOWS
170+#define HAVE_RANDOM
171+#undef LIB_X11_LIB /* don't use the shared library default from usg5-3.h */
172+#undef LIBX11_SYSTEM
173+#endif /* HAVE_X_WINDOWS */
174+
175+/*#define SYSTEM_MALLOC*/
176+
177+#ifndef UTEKV
178+#define UTEKV /* system specific symbol */
179+#endif /* !UTEKV */
180+
181+/* stuff to hopefully someday get dumping working ... */
182+/*#define SECTION_ALIGNMENT 0x1ff*/
183+/*#define SEGMENT_MASK 0xff*/
184+/*#define A_TEXT_OFFSET(HDR) sizeof(HDR)*/