|
|
1.1 root 1: /***************************************************************************
2: * This program is Copyright (C) 1986, 1987, 1988 by Jonathan Payne. JOVE *
3: * is provided to you without charge, and with no warranty. You may give *
4: * away copies of JOVE, including sources, provided that this notice is *
5: * included in all the files. *
6: ***************************************************************************/
7:
8: #define TUNED /* don't touch this */
9:
10: /*#define MAC 1 /* alas, there is no command line for this */
11:
12: #ifdef MAC
13: # define defined(x) (x) /* take this out and you're in trouble... */
14: #endif
15:
16:
17: /* The operating system (MSDOS or MAC) must be defined by this point.
18: IBMPC is defined in the Makefile. All MAC defines should be
19: numerical (i.e. #define MAC 1) so that defined() will work. */
20:
21: #if !(defined(MSDOS) || defined(MAC))
22: # define UNIX
23: #endif
24:
25:
26: #ifdef UNIX
27: /* pick your version of Unix */
28: # define BSD4_2 /* Berkeley 4.2 BSD */
29: # define BSD4_3 /* Berkeley 4.3 BSD and 2.10 BSD */
30: /*# define SYSV /* for (System III/System V) UNIX systems */
31: /*# define SYSVR2 /* system 5, rel. 2 */
32: /* M_XENIX is defined by the Compiler */
33: #endif /* UNIX */
34:
35: #ifdef SYSVR2
36: # ifndef SYSV
37: # define SYSV /* SYSV is a subset of SYSVR2 */
38: # endif
39: #endif
40:
41: #ifdef BSD4_3
42: # ifndef BSD4_2
43: # define BSD4_2 /* 4.3 is 4.2 only different. */
44: # endif
45: #endif
46:
47: #ifdef M_XENIX
48: # define iAPX286 1 /* we have segments. */
49: #endif
50:
51: #ifdef MSDOS
52: # ifdef M_I86LM /* large memory model */
53: # define NBUF 64
54: # else
55: # define NBUF 3
56: # define SMALL
57: # endif
58: # define BUFSIZ 512 /* or 1024 */
59: #endif
60:
61: #ifdef UNIX
62: # if vax || sel || sun || pyr || mc68000 || tahoe || iAPX286 || GOULD_NP1 || u3b2 || accel
63: # define VMUNIX /* Virtual Memory UNIX */
64: # define BUFSIZ 1024
65: # if iAPX286
66: # define NBUF 48 /* NBUF*BUFSIZ must be less than 64 kB */
67: # else
68: # define NBUF 64 /* number of disk buffers */
69: # endif /* iAPX286 */
70: # else
71: # define SMALL
72: # define BUFSIZ 512 /* or 1024 */
73: # define NBUF 3
74: # endif
75: #
76: # define LOAD_AV /* Use the load average for various commands.
77: # Do not define this if you lack a load average
78: # system call and kmem is read protected. */
79: #
80: # define JOB_CONTROL /* if you have job stopping */
81: #
82: # ifdef JOB_CONTROL
83: # define MENLO_JCL
84: # define IPROCS /* Interactive processes only work with JOB_CONTROL. */
85: # endif
86: #
87: # define SUBPROCS /* only on UNIX systems (NOT INCORPORATED YET) */
88: #endif /* UNIX */
89:
90:
91: #ifdef SMALL
92: typedef unsigned short disk_line;
93: #else
94: # if defined(iAPX286) || defined(MSDOS) || defined(MAC)
95: typedef long disk_line;
96: # else
97: typedef int disk_line;
98: # endif /* iAPX286 */
99: #endif /* SMALL */
100:
101: #define BACKUPFILES /* enable the backup files code */
102: #define F_COMPLETION /* filename completion */
103: #define ABBREV /* word abbreviation mode */
104: #if !(defined(IBMPC) || defined(MAC))
105: # define ANSICODES /* extra commands that process ANSI codes */
106: # define ID_CHAR /* include code to IDchar */
107: # define WIRED_TERMS /* include code for wired terminals */
108: #endif
109: #define CHDIR /* cd command and absolute pathnames */
110: #define LISP /* include the code for Lisp Mode */
111: #define CMT_FMT /* include the comment formatting routines */
112:
113: #ifdef UNIX
114: # define BIFF /* if you have biff (or the equivalent) */
115: # define KILL0 /* kill(pid, 0) returns 0 if proc exists */
116: # define SPELL /* spell words and buffer commands */
117: #if !sun && !iAPX286
118: # define MY_MALLOC /* use more memory efficient malloc (not on suns) */
119: #endif
120: #endif
121:
122: #define DFLT_MODE 0666 /* file will be created with this mode */
123:
124: #ifdef BSD4_3
125: # define RESHAPING /* enable windows to handle reshaping */
126: #endif
127:
128: #ifdef BSD4_2 /* byte_copy(from, to, len) */
129: # define byte_copy bcopy /* use fast assembler version */
130: #endif
131:
132: #ifdef IPROCS
133: # ifdef BSD4_2
134: # define INPUT_SIG SIGIO
135: # else
136: # define PIPEPROCS /* do it with pipes */
137: # define INPUT_SIG SIGTINT
138: # endif
139: #endif
140:
141: #if defined(SYSV) || defined(MSDOS) || defined(M_XENIX)
142: # define byte_copy(s2, s1, n) memcpy(s1, s2, n)
143: # define bzero(s, n) memset(s, 0, n)
144: # define index strchr
145: # define rindex strrchr
146: #endif
147:
148: #ifdef MAC
149: # undef F_COMPLETION /* can't do it with spaces in filenames */
150: # undef CHDIR
151: # define CHDIR 1
152: # define rindex strrchr
153: # define index strchr
154: # define bzero(s,n) setmem(s,n,0)
155: # define LINT_ARGS
156: # define NBUF 64
157: # define BUFSIZ 1024
158: #endif
159:
160: /* These are here since they define things in tune.c. If you add things to
161: tune.c, add them here too, if necessary. */
162:
163: #ifndef NOEXTERNS
164: extern char
165: *d_tempfile,
166: *p_tempfile,
167: *Recover,
168: *Joverc,
169:
170: #ifdef PIPEPROCS
171: *Portsrv,
172: #endif
173:
174: #ifdef MSDOS
175: CmdDb[],
176: #else
177: *CmdDb,
178: #endif
179:
180: TmpFilePath[],
181: Shell[],
182: ShFlags[];
183: #endif /* NOEXTERNS */
184:
185:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.