1/* machine description file for tek4300.
2   Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005,
3                 2006, 2007  Free Software Foundation, Inc.
4
5This file is part of GNU Emacs.
6
7GNU Emacs is free software; you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation; either version 2, or (at your option)
10any later version.
11
12GNU Emacs is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with GNU Emacs; see the file COPYING.  If not, write to
19the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20Boston, MA 02110-1301, USA.  */
21
22
23/* The following line tells the configuration script what sort of
24   operating system this machine is likely to run.
25   USUAL-OPSYS="bsd4-3"  */
26
27/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
28   is the most significant byte.  */
29
30#define WORDS_BIG_ENDIAN
31
32/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
33 * group of arguments and treat it as an array of the arguments.  */
34
35#undef 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
40#undef WORD_MACHINE
41
42/* Now define a symbol for the cpu type, if your compiler
43   does not define it automatically.  */
44
45#ifndef tek4300
46#define tek4300
47#endif
48
49/* Use type int rather than a union, to represent Lisp_Object */
50
51#define NO_UNION_TYPE
52
53/* Data type of load average, as read out of kmem.  */
54
55#define LOAD_AVE_TYPE long
56
57/* Convert that into an integer that is 100 for a load average of 1.0  */
58
59#define LOAD_AVE_CVT(x) (x)
60
61/* Define NO_REMAP if memory segmentation makes it not work well
62   to change the boundary between the text section and data section
63   when Emacs is dumped.  If you define this, the preloaded Lisp
64   code will not be sharable; but that's better than failing completely.  */
65
66#define NO_REMAP
67
68/* setjmp and longjmp can safely replace _setjmp and _longjmp, */
69
70#define _longjmp longjmp
71#define _setjmp setjmp
72
73/* The text segment always starts at a fixed address.
74   This way we don't need to have a label _start defined.  */
75
76#define TEXT_START 0
77
78/* The Tektronix exec struct for ZMAGIC files is struct zexec */
79
80#define EXEC_HDR_TYPE struct zexec
81
82/* The entry-point label (start of text segment) is `start', not `__start'.  */
83
84#define DEFAULT_ENTRY_ADDRESS start
85
86/* Use the system's malloc calls, gmalloc.c won't work for us. */
87
88#define SYSTEM_MALLOC
89
90/* In building xmakefile, "cc -E -g" forcibly reads from stdin.  Since we
91   can't remove the CFLAGS from that "cc -E" invocation, make sure we
92   never pass -g.  If you want to debug, remove the following, and fix
93   src/Makefile.in so it doesn't pass ${CFLAGS} when creating xmakefile. */
94
95#define C_DEBUG_SWITCH
96
97/* eirik@elf.ithaca.ny.us said this was needed in 19.22.  */
98#define NO_MODE_T
99
100/* Process groups work in the traditional BSD manner.  */
101
102#define BSD_PGRPS
103
104/* arch-tag: afa06e53-094c-4a19-9219-155f8ba4bbcc
105   (do not change this comment) */
106