xref: /original-bsd/old/roff/common_source/tdef.h (revision 963f8367)
1 /*-
2  * Copyright (c) 1991 The Regents of the University of California.
3  * All rights reserved.
4  *
5  * %sccs.include.proprietary.c%
6  *
7  *	@(#)tdef.h	4.9 (Berkeley) 04/18/91
8  */
9 
10 #include <sys/param.h>
11 #undef CMASK			/* XXX */
12 #undef BIG			/* XXX */
13 #define MAXPTR (-1)		/* max value of any pointer variable */
14 #ifdef NROFF	/*NROFF*/
15 #define EM t.Em
16 #define HOR t.Hor
17 #define VERT t.Vert
18 #define INCH 240	/*increments per inch*/
19 #define SPS INCH/10	/*space size*/
20 #define SS INCH/10	/* " */
21 #define TRAILER 0
22 #define UNPAD 0227
23 #define PO 0 /*page offset*/
24 #define ASCII 1
25 #define PTID 1
26 #define LG 0
27 #define DTAB 0	/*set at 8 Ems at init time*/
28 #define ICS 2*SPS
29 #define TEMP 256	/*65K*/
30 #endif
31 #ifndef NROFF	/*TROFF*/
32 #define INCH 432	/*troff resolution*/
33 #define SPS 20	/*space size at 10pt; 1/3 Em*/
34 #define SS 12	/*space size in 36ths of an em*/
35 #define TRAILER 6048	/*144*14*3 = 14 inches*/
36 #define UNPAD 027
37 #define PO 416 /*page offset 26/27ths inch*/
38 #define HOR 1
39 #define VERT 3
40 #define EM (6*(pts&077))
41 #define ASCII 0
42 #define PTID 0
43 #define LG 1
44 #define DTAB (INCH/2)
45 #define ICS 3*SPS
46 #define TEMP 512	/*128K*/
47 #endif
48 
49 #include <signal.h>
50 #define NARSP 0177	/*narrow space*/
51 #define HNSP 0226	/*half narrow space*/
52 #define PS 10	/*default point size*/
53 #define FT 0	/*default font position*/
54 #define LL 65*INCH/10	/*line length; 39picas=6.5in*/
55 #define VS INCH/6	/*vert space; 12points*/
56 #ifdef VMUNIX
57 #define NN 528	/*number registers*/
58 #else
59 #define NN 132	/*number registers*/
60 #endif
61 /* #define NN 200	*/
62 #define NNAMES 14 /*predefined reg names*/
63 #define NIF 15	/*if-else nesting*/
64 #define NS 64	/*name buffer*/
65 #define NTM 256	/*tm buffer*/
66 #define NEV 3	/*environments*/
67 #define EVLSZ 10	/*size of ev stack*/
68 /* #define EVS 4*256	*/
69 #ifdef VMUNIX
70 #define NM 600
71 #define EVS 6*256	/*environment size in words*/
72 #else
73 #define NM 300	/*requests + macros*/
74 #define EVS 3*256	/*environment size in words*/
75 #endif
76 #define DELTA 512	/*delta core bytes*/
77 #define NHYP 10	/*max hyphens per word*/
78 #define NHEX 128	/*byte size of exception word list*/
79 #define NTAB 35	/*tab stops*/
80 #define NSO 5	/*"so" depth*/
81 #ifdef VMUNIX
82 #define WDSIZE 340	/*word buffer size*/
83 #define LNSIZE 960	/*line buffer size*/
84 #else
85 #define WDSIZE 170	/*word buffer size*/
86 #define LNSIZE 480	/*line buffer size*/
87 #endif
88 /* #define LNSIZE 680	*/
89 #define NDI 5	/*number of diversions*/
90 #define DBL 0100000	/*double size indicator*/
91 #define MOT 0100000	/*motion character indicator*/
92 #define MOTV 0160000	/*clear for motion part*/
93 #define VMOT 0040000	/*vert motion bit*/
94 #define NMOT 0020000	/* negative motion indicator*/
95 #define MMASK 0100000	/*macro mask indicator*/
96 #define CMASK 0100377
97 #define ZBIT 0400	/*zero width char*/
98 #define BMASK 0377
99 #define BYTE 8
100 #define IMP 004	/*impossible char*/
101 #define FILLER 037
102 #define PRESC 026
103 #define HX 0376	/*High-order part of xlss*/
104 #define LX 0375	/*low-order part of xlss*/
105 #define CONT 025
106 #define COLON 013
107 #define XPAR 030
108 #define ESC 033
109 #define FLSS 031
110 #define RPT 014
111 #define JREG 0374
112 #define NTRAP 20	/*number of traps*/
113 #define NPN 20	/*numbers in "-o"*/
114 #define T_PAD 0101	/*cat padding*/
115 #define T_INIT 0100
116 #define T_IESC 16 /*initial offset*/
117 #define T_STOP 0111
118 #define NPP 10	/*pads per field*/
119 #ifdef VMUNIX
120 #define FBUFSZ 1024
121 #else
122 #define FBUFSZ 256	/*field buf size words*/
123 #endif
124 #define OBUFSZ 8192	/*bytes*/
125 #define IBUFSZ 8192	/*bytes*/
126 #define NC 256	/*cbuf size words*/
127 #define NOV 10	/*number of overstrike chars*/
128 #define TDELIM 032
129 #define LEFT 035
130 #define RIGHT 036
131 #define LEADER 001
132 #define TAB 011
133 #define TMASK  037777
134 #define RTAB 0100000
135 #define CTAB 0040000
136 #define OHC 024
137 
138 #define PAIR(A,B) (A|(B<<BYTE))
139 
140 #define BLK  128	/*alloc block words*/
141 
142 #ifdef VMUNIX
143 #define	BIG 1024
144 #endif VMUNIX
145 
146 #ifdef BIG
147 typedef long filep;
148 #define NBLIST BIG	/*allocation , BIG = 256 per 65k*/
149 #define BLKBITS 7	/*for BLK=128*/
150 #endif
151 #ifndef BIG
152 typedef unsigned filep;
153 #define NBLIST TEMP	/*allocation list, TEMP<=512*/
154 /* BLK*NBLIST<=65536 words, if filep=unsigned */
155 #define BLKBITS 0
156 #endif
157