]> code.delx.au - gnu-emacs/blob - src/m/dual.h
e46178904ce930030ba49ae2bbcfcad9e436ae46
[gnu-emacs] / src / m / dual.h
1 /* machine description file for Dual machines using unisoft port.
2 Copyright (C) 1985 Free Software Foundation, Inc.
3
4 This file is part of GNU Emacs.
5
6 GNU Emacs is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
9 any later version.
10
11 GNU Emacs is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with GNU Emacs; see the file COPYING. If not, write to
18 the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
19
20 /* The following line tells the configuration script what sort of
21 operating system this machine is likely to run.
22 USUAL-OPSYS="note"
23
24 NOTE-START
25 Dual running System V (-machine=dual -opsystem=usg5-2)
26
27 As of 17.46, this works except for a few changes
28 needed in unexec.c.
29
30 Dual running Uniplus (-machine=dual -opsystem=unipl5-2)
31
32 Works, as of 17.51.
33 NOTE-END */
34
35
36 /* The following three symbols give information on
37 the size of various data types. */
38
39 #define SHORTBITS 16 /* Number of bits in a short */
40
41 #define INTBITS 32 /* Number of bits in an int */
42
43 #define LONGBITS 32 /* Number of bits in a long */
44
45 /* XINT must explicitly sign-extend */
46
47 #define EXPLICIT_SIGN_EXTEND
48
49 /* Use type int rather than a union, to represent Lisp_Object */
50
51 #define NO_UNION_TYPE
52
53 /* Now define a symbol for the cpu type, if your compiler
54 does not define it automatically:
55 vax, m68000, ns16000 are the ones defined so far. */
56
57 #ifndef m68000
58 #define m68000
59 #endif
60
61 /* Data type of load average, as read out of kmem. */
62 /* These are commented out since it does not really work in uniplus */
63
64 /* #define LOAD_AVE_TYPE long */
65
66 /* Convert that into an integer that is 100 for a load average of 1.0 */
67
68 /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0) */
69
70 /* Change some things to avoid bugs in compiler */
71
72 #define SWITCH_ENUM_BUG 1