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