XEmacs 21.2-b1
[chise/xemacs-chise.git.1] / src / m / gould-np1.h
1 /* Synched up with: FSF 19.31. */
2
3 /* machine description file for Gould NP1 with UTX/32 3.0 (first release for NP1). */
4
5 /* The following line tells the configuration script what sort of 
6    operating system this machine is likely to run.
7    USUAL-OPSYS="bsd4-3"  */
8
9 /* If your system uses COFF (Common Object File Format) then define the
10    preprocessor symbol "COFF". */
11 /* UTX 3.0 uses a cross between COFF and a.out format, but closer to COFF. */
12 /* at least currently, already defined by cpp, but make sure */
13 #ifndef COFF
14 #define COFF
15 #endif COFF
16
17 #include "gould.h"
18
19 /* undefine what gould.h defined */
20 #undef ADJUST_EXEC_HEADER
21
22 /* If your system uses COFF (Common Object File Format) then define the
23    preprocessor symbol "COFF". */
24 /* UTX 3.0 uses a cross between COFF and a.out format, but closer to COFF. */
25 #ifndef COFF    /* at least currently, already defined by cpp */
26 #define COFF
27 #endif COFF
28
29 /* make Gould NP1 and PN COFF look like USG COFF */
30 /* NP1 COFF */
31 #undef aouthdr /* Since gould.h already defined these */
32 #undef a_dtbase
33
34 #ifdef IN_UNEXEC
35 #define aouthdr exec
36 #define ADJUST_TEXT_SCNHDR_SIZE
37
38 /* Gould COFF - these are already defined in gould.h */
39 /*
40  * #define COFF_WITH_BSD_SYMTAB
41  * #define HEADER_INCL_IN_TEXT
42  * #define magic a_magic
43  * #define tsize a_text
44  * #define dsize a_data
45  * #define bsize a_bss
46  * #define entry a_entry
47  * #define text_start a_txbase
48  * #define data_start a_dtbase
49 */
50 /* End Gould COFF */
51 #endif /* IN_UNEXEC */
52
53 /* NP1 supports a slightly different set than PowerNode */
54 #define BAUD_CONVERT    { 0, 50, 75, 110, 134, 150, 300, 450, 600, 1200, \
55                               1800, 2000, 2400, 3600, 4800, 7200, 9600, \
56                                   19200, 38400 }
57
58 #define LD_SWITCH_SYSTEM "-BS -e start"
59
60 /* Undef C_DEBUG_SWITCH because it may have been set in gould.h */
61 /* It will compile and load and works with dbx. Runs under an incomplete
62    port of gdb, but gdb doesn't always find things correctly. */
63 #undef C_DEBUG_SWITCH
64 #define C_DEBUG_SWITCH "-g"
65 #define LIBS_DEBUG "-lg"
66
67
68 /* The data segment in this machine always starts at address 0x1000000 = 16M.
69    An address of data cannot be stored correctly in a Lisp object;
70    we always lose the high bits.  We must tell XPNTR to add them back.  */
71
72 #define DATA_SEG_BITS 0x1000000
73 #define DATA_START    0x1000000
74
75 /* The text segment always starts at 0.
76    This way we don't need to have a label _start defined.  */
77 #define TEXT_START 0
78
79 /* Data isn't right next to text on an NP1 */
80 #define NO_REMAP
81
82 #ifndef GOULD_NP1
83 #define GOULD_NP1
84 #endif
85
86