*** empty log message ***
[emacs.git] / src / m / sun1.h
blob68a113747e8bbc60ede1da82108c01b2e4af094e
1 /* machine description file for Sun 68000's
2 Copyright (C) 1985, 1986 Free Software Foundation, Inc.
4 This file is part of GNU Emacs.
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.
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.
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, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
22 /* The following line tells the configuration script what sort of
23 operating system this machine is likely to run.
24 USUAL-OPSYS="note"
26 NOTE-START
27 Sun 1, 2 and 3 (-machine=sun1, -machine=sun2, -machine=sun3;
28 -opsystem=bsd4-2 or -opsystem=sunos4)
30 Whether you should use sun1, sun2 or sun3 depends on the
31 VERSION OF THE OPERATING SYSTEM
32 you have. There are three machine types for different versions of
33 SunOS. All are derived from Berkeley 4.2, meaning that you should
34 use -opsystem=bsd4-2. Emacs 17 has run on all of them. You will
35 need to use sun3 on Sun 2's running SunOS release 3.
37 For SunOS release 4 on a Sun 3, use -machine=sun3 and
38 -opsystem=sunos4. See the file share-lib/SUNBUG for how to solve
39 problems caused by bugs in the "export" version of SunOS 4.
40 NOTE-END */
42 /* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
43 is the most significant byte. */
45 #define WORDS_BIG_ENDIAN
47 /* Say this machine is a 68000 */
49 #define m68000
51 /* Use type int rather than a union, to represent Lisp_Object */
53 #define NO_UNION_TYPE
55 /* Sun can't write competent compilers */
56 #define COMPILER_REGISTER_BUG
58 /* XINT must explicitly sign-extend */
60 #define EXPLICIT_SIGN_EXTEND
62 /* Data type of load average, as read out of kmem. */
64 #define LOAD_AVE_TYPE long
66 /* Convert that into an integer that is 100 for a load average of 1.0 */
68 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
70 /* Must use the system's termcap. It does special things. */
72 #define LIBS_TERMCAP -ltermcap
74 /* Mask for address bits within a memory segment */
76 #define SEGMENT_MASK (SEGSIZ - 1)