|
|
1.1 ! root 1: /* m- file for gec63 ! 2: Copyright (C) 1986 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 1, 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: ! 21: /* The following three symbols give information on ! 22: the size of various data types. */ ! 23: ! 24: #define SHORTBITS 16 /* Number of bits in a short */ ! 25: ! 26: #define INTBITS 32 /* Number of bits in an int */ ! 27: ! 28: #define LONGBITS 32 /* Number of bits in a long */ ! 29: ! 30: /* GEC63 is big-endian: lowest numbered byte is most significant. */ ! 31: ! 32: #define BIG_ENDIAN ! 33: ! 34: /* Define how to take a char and sign-extend into an int. ! 35: On machines where char is signed, this is a no-op. */ ! 36: ! 37: #define SIGN_EXTEND_CHAR(c) (((c)<<24)>>24) ! 38: ! 39: /* Say this machine is a 68000 */ ! 40: ! 41: #define gec63 ! 42: ! 43: /* Use an int to represent Lisp_Object */ ! 44: ! 45: #define NO_UNION_TYPE ! 46: ! 47: /* GEC63 has alloca in the PW/ux63 library. */ ! 48: #define LIB_STANDARD -lPW -lc ! 49: #define HAVE_ALLOCA ! 50: ! 51: /* Do not define LOAD_AVE_TYPE or LOAD_AVE_CVT ! 52: since there is no /dev/kmem */ ! 53: ! 54: #undef ADDR_CORRECT(x) ! 55: #define NO_ARG_ARRAY ! 56: ! 57: #undef TERMCAP ! 58: #define TERMINFO ! 59: ! 60: /* Define sizes of portions of a Lisp_Object. */ ! 61: #define VALBITS 22 ! 62: #define GCTYPEBITS 5 ! 63: ! 64: #define VALAMASK (((1<<VALBITS) - 1)| 0xF0000000L) ! 65: ! 66: #define XTYPE(a) ((enum Lisp_Type) (((a) >> VALBITS) & GCTYPEMASK)) ! 67: #define XSETTYPE(a, b) ((a) = ((a) & VALAMASK) + ((int)(b) << VALBITS)) ! 68: ! 69: #define XPNTR(a) ((a) & VALAMASK) ! 70: #define XSETPNTR(a, b) ((a) = ((a) & ~VALAMASK) + ((b) & VALAMASK)) ! 71: ! 72: #define XSET(var, type, ptr) \ ! 73: ((var) = ((int)(type) << VALBITS) + ((int) (ptr) & VALAMASK)) ! 74: ! 75: /* Move some garbage-collector flag bits to different bit positions. */ ! 76: #define ARRAY_MARK_FLAG (1 << 27) ! 77: #define DONT_COPY_FLAG (1 << 26) ! 78: ! 79: #define NO_REMAP
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.