Annotation of 43BSD/ucb/lisp/franz/h/config.h, revision 1.1.1.1

1.1       root        1: /*                                     -[Thu Mar  3 15:57:51 1983 by jkf]-
                      2:  *     config.h                        $Locker:  $
                      3:  * configuration dependent info
                      4:  *
                      5:  * $Header: config.h,v 1.15 85/03/24 11:06:27 sklower Exp $
                      6:  *
                      7:  * (c) copyright 1982, Regents of the University of California
                      8:  */
                      9:  
                     10: /* 
                     11:  * this file contains parameters which each site is likely to modify
                     12:  * in order to personalize the configuration of Lisp at their site.
                     13:  * The typical things to modifiy are:
                     14:  *    [optionally] turn on GCSTRINGS
                     15:  *    [optionally] provide a value for SITE 
                     16:  */
                     17: 
                     18: /*
                     19:  * The type of machine and os this is to run on will come from
                     20:  * the file lconf.h.  The lconf.h file is created by the shell script
                     21:  * 'lispconf' in the directory ../..
                     22:  * lconf.h will define exactly one of these symbols:
                     23:  *  vax_4_2 vax_4_1c vax_4_1a vax_4_1 vax_unix_ts vax_eunice_vms
                     24:  *  sun_4_2 sun_4_1c sun_unisoft dual_unisoft pixel_unisoft lisa_unisys3
                     25:  *  mc500_2_0
                     26:  */
                     27: #include "lconf.h"
                     28: 
                     29: 
                     30: /* GCSTRINGS - define this if you want the garbage collector to reclaim
                     31:  *  strings.  It is not normally set because in typical applications the
                     32:  *  expense of collecting strings is not worth the amount of space
                     33:  *  retrieved
                     34:  */
                     35:  
                     36: /* #define GCSTRINGS */
                     37: 
                     38: /*
                     39:  * set up the global defines based on the choice above
                     40:  * the global names are
                     41:  * operating system:
                     42:  *               os_unix
                     43:  *                  os_4_1, os_4_1a, os_4_1c, os_4_2, os_unix_ts
                     44:  *               os_vms
                     45:  */
                     46: 
                     47: /* OFFSET -  this is the offset to the users address space. */
                     48: /* NB: this is not necessarily tied to the hardware.  Pixel
                     49:    informs us that when they put up 4.1 the offsetis likely
                     50:    to change */
                     51: 
                     52: #if vax_4_1 || vax_4_1a || vax_4_1c || vax_4_2 || vax_4_3 || vax_unix_ts || vax_eunice_vms
                     53: #define m_vax 1
                     54: #endif
                     55: 
                     56: #if sun_4_2beta || sun_4_2 || sun_4_1c
                     57: #define m_68k          1
                     58: #define OFFSET         0x8000
                     59: #endif
                     60: 
                     61: #if sun_unisoft
                     62: #define m_68k          1
                     63: #define        OFFSET          0x40000
                     64: #endif
                     65: 
                     66: #if dual_unisoft
                     67: #define m_68k          1
                     68: #define m_68k_dual     1
                     69: #define OFFSET         0x800000
                     70: #endif
                     71: 
                     72: #if pixel_unisoft
                     73: #define m_68k          1
                     74: #define OFFSET         0x20000
                     75: #endif
                     76: 
                     77: #if lisa_unisys3
                     78: #define m_68k          1
                     79: #define OFFSET         0x20000
                     80: #define unisys3botch   1
                     81: #define os_unix_ts     1
                     82: #endif
                     83: 
                     84: #if mc500_2_0
                     85: #define OFFSET 0
                     86: #define m_68k 1
                     87: #define os_masscomp 1
                     88: #endif
                     89: 
                     90: /* next the operating system */
                     91: #if vax_4_1 || vax_4_1a || vax_4_1c || vax_4_2 || vax_4_3 || vax_unix_ts || m_68k
                     92: #define os_unix                1
                     93: #endif
                     94: 
                     95: #if vax_4_1
                     96: #define os_4_1         1
                     97: #endif
                     98: #if vax_4_1a
                     99: #define os_4_1a                1
                    100: #endif
                    101: #if vax_4_1c || sun_4_1c
                    102: #define os_4_1c        1
                    103: #endif
                    104: #if vax_4_2 || sun_4_2 || sun_4_2beta
                    105: #define os_4_2         1
                    106: #endif
                    107: #if vax_4_3
                    108: #define os_4_3         1
                    109: #endif
                    110: #if vax_unix_ts
                    111: #define os_unix_ts     1
                    112: #endif
                    113: #if vax_eunice_vms
                    114: #define os_vms         1
                    115: #endif
                    116: 
                    117: #if sun_unisoft || dual_unisoft || pixel_unisoft
                    118: #define os_unisoft 1
                    119: #endif
                    120: 
                    121: /* MACHINE -  this is put on the (status features) list */
                    122: #if m_68k
                    123: #define MACHINE "68k"
                    124: #define PORTABLE
                    125: #endif
                    126: 
                    127: /* RTPORTS -- this O.S. allocates FILE *'s at run-time */
                    128: #if os_4_3
                    129: #define RTPORTS 1
                    130: #endif
                    131: 
                    132: #if m_vax
                    133: #define MACHINE "vax"
                    134: #define NILIS0 1
                    135: #endif
                    136: 
                    137: /*
                    138: ** NILIS0 -- for any UNIX implementation in which the users
                    139: **     address space starts at 0 (like m_vax, above). 
                    140: **
                    141: ** NPINREG -- for the verison if lisp that keeps np and lbot in global
                    142: **     registers.  On the 68000, there is a special `hacked' version
                    143: **     of the C compiler that is needed to do this.
                    144: **
                    145: ** #define NILIS0              1
                    146: ** #define NPINREG             1
                    147: */
                    148: 
                    149: /*
                    150:  * SPISFP -- this is to indicate that the stack and frame pointer
                    151:  * are the same, or at least that you can't pull the same shenanigans
                    152:  * as on the vax or sun by pushing error frames at the end of C
                    153:  * frames and using alloca.  This should make life easier for
                    154:  * a native VMS version or IBM or RIDGE or Bellmac-32.
                    155:  * #define SPISFP 1
                    156:  */
                    157: 
                    158: #if sun_4_2beta
                    159: #define SPISFP 1
                    160: #endif
                    161: 
                    162: #if m_vax
                    163: #define OFFSET         0x0
                    164: #define NPINREG                1
                    165: #endif
                    166: 
                    167: 
                    168: 
                    169: 
                    170: /* OS -  this is put on the (status features) list */
                    171: #if os_unix
                    172: #define OS      "unix"
                    173: #endif
                    174: #if os_vms
                    175: #define OS     "vms"
                    176: #endif
                    177: 
                    178: /* DOMAIN - this is put on the (status features) list and
                    179:  *     is the value of (status domain)
                    180:  */
                    181: #define DOMAIN  "ucb"
                    182: 
                    183: /* SITE - the name of the particular machine this lisp is running on
                    184:  *    this value is available via (sys:gethostname).
                    185:  *    On 4.1a systems it is possible to determine this dynamically cheaply
                    186:  */
                    187: #if ! (os_4_1a || os_4_1c || os_4_2 || os_4_3)
                    188: #define SITE    "unknown-site"
                    189: #endif
                    190: 
                    191: 
                    192: /*  TTSIZ is the absolute limit, in pages (both text and data), of the
                    193:  * size to which the lisp system may grow.
                    194:  * If you change this, you must recompile alloc.c and data.c.
                    195:  */
                    196: #if (sun_4_2 || sun_4_2beta || HOLE)
                    197: #define TTSIZE 10216
                    198: #else
                    199: #define TTSIZE 6120
                    200: #endif
                    201: 
                    202: #if m_vms 
                    203: #undef TTSIZE
                    204: #define TTSIZE 10216
                    205: #define FREESIZE 512 * 10000
                    206: #endif 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.