Commit | Line | Data |
---|---|---|
f10d52e6 JO |
1 | #include "tdef.h" |
2 | char obuf[OBUFSZ]; | |
3 | char *obufp = obuf; | |
4 | int r[NN] = { | |
5 | PAIR('%',0), | |
6 | PAIR('n','l'), | |
7 | PAIR('y','r'), | |
8 | PAIR('h','p'), | |
9 | PAIR('c','t'), | |
10 | PAIR('d','n'), | |
11 | PAIR('m','o'), | |
12 | PAIR('d','y'), | |
13 | PAIR('d','w'), | |
14 | PAIR('l','n'), | |
15 | PAIR('d','l'), | |
16 | PAIR('s','t'), | |
17 | PAIR('s','b'), | |
18 | PAIR('c','.')}; | |
19 | int pto = 10000; | |
20 | int pfrom = 1; | |
21 | int print = 1; | |
22 | char nextf[NS] = "/usr/lib/tmac/tmac.xxxxx"; | |
23 | int nfi = 19; | |
24 | #ifdef NROFF | |
25 | char termtab[NS] = "/usr/lib/term/tab37"; | |
26 | int tti = 17; | |
27 | #endif | |
28 | #ifndef NROFF | |
29 | int oldbits = -1; | |
30 | #endif | |
31 | int init = 1; | |
32 | int fc = IMP; | |
33 | int eschar = '\\'; | |
34 | int pl = 11*INCH; | |
35 | int po = PO; | |
36 | int dfact = 1; | |
37 | int dfactd = 1; | |
38 | int res = 1; | |
39 | int smnt = 4; | |
40 | int ascii = ASCII; | |
41 | int ptid = PTID; | |
42 | char ptname[] = "/dev/cat"; | |
43 | int lg = LG; | |
44 | int pnlist[NPN] = {-1}; | |
45 | int *pnp = pnlist; | |
46 | int npn = 1; | |
47 | int npnflg = 1; | |
48 | int xflg = 1; | |
49 | int dpn = -1; | |
50 | int totout = 1; | |
51 | int ulfont = 1; | |
52 | int ulbit = 1<<9; | |
53 | int tabch = TAB; | |
54 | int ldrch = LEADER; | |
55 | int xxx; | |
56 | extern caseds(), caseas(), casesp(), caseft(), caseps(), casevs(), | |
57 | casenr(), caseif(), casepo(), casetl(), casetm(), casebp(), casech(), | |
58 | casepn(), tbreak(), caseti(), casene(), casenf(), casece(), casefi(), | |
59 | casein(), caseli(), casell(), casens(), casemk(), casert(), caseam(), | |
60 | casede(), casedi(), caseda(), casewh(), casedt(), caseit(), caserm(), | |
61 | casern(), casead(), casers(), casena(), casepl(), caseta(), casetr(), | |
62 | caseul(), caselt(), casenx(), caseso(), caseig(), casetc(), casefc(), | |
63 | caseec(), caseeo(), caselc(), caseev(), caserd(), caseab(), casefl(), | |
64 | done(), casess(), casefp(), casecs(), casebd(), caselg(), casehc(), | |
65 | casehy(), casenh(), casenm(), casenn(), casesv(), caseos(), casels(), | |
66 | casecc(), casec2(), caseem(), caseaf(), casehw(), casemc(), casepm(), | |
67 | casecu(), casepi(), caserr(), caseuf(), caseie(), caseel(), casepc(), | |
68 | caseht(); | |
69 | #ifndef NROFF | |
70 | extern casefz(); | |
71 | #endif | |
72 | extern casecf(); | |
73 | struct contab { | |
74 | int rq; | |
75 | /* | |
76 | union { | |
77 | */ | |
78 | int (*f)(); | |
79 | /* | |
80 | unsigned mx; | |
81 | }x; | |
82 | */ | |
83 | }contab[NM]= { | |
84 | PAIR('d','s'),caseds, | |
85 | PAIR('a','s'),caseas, | |
86 | PAIR('s','p'),casesp, | |
87 | PAIR('f','t'),caseft, | |
88 | PAIR('p','s'),caseps, | |
89 | PAIR('v','s'),casevs, | |
90 | PAIR('n','r'),casenr, | |
91 | PAIR('i','f'),caseif, | |
92 | PAIR('i','e'),caseie, | |
93 | PAIR('e','l'),caseel, | |
94 | PAIR('p','o'),casepo, | |
95 | PAIR('t','l'),casetl, | |
96 | PAIR('t','m'),casetm, | |
97 | PAIR('b','p'),casebp, | |
98 | PAIR('c','h'),casech, | |
99 | PAIR('p','n'),casepn, | |
100 | PAIR('b','r'),tbreak, | |
101 | PAIR('t','i'),caseti, | |
102 | PAIR('n','e'),casene, | |
103 | PAIR('n','f'),casenf, | |
104 | PAIR('c','e'),casece, | |
105 | PAIR('f','i'),casefi, | |
106 | PAIR('i','n'),casein, | |
107 | PAIR('l','i'),caseli, | |
108 | PAIR('l','l'),casell, | |
109 | PAIR('n','s'),casens, | |
110 | PAIR('m','k'),casemk, | |
111 | PAIR('r','t'),casert, | |
112 | PAIR('a','m'),caseam, | |
113 | PAIR('d','e'),casede, | |
114 | PAIR('d','i'),casedi, | |
115 | PAIR('d','a'),caseda, | |
116 | PAIR('w','h'),casewh, | |
117 | PAIR('d','t'),casedt, | |
118 | PAIR('i','t'),caseit, | |
119 | PAIR('r','m'),caserm, | |
120 | PAIR('r','r'),caserr, | |
121 | PAIR('r','n'),casern, | |
122 | PAIR('a','d'),casead, | |
123 | PAIR('r','s'),casers, | |
124 | PAIR('n','a'),casena, | |
125 | PAIR('p','l'),casepl, | |
126 | PAIR('t','a'),caseta, | |
127 | PAIR('t','r'),casetr, | |
128 | PAIR('u','l'),caseul, | |
129 | PAIR('c','u'),casecu, | |
130 | PAIR('l','t'),caselt, | |
131 | PAIR('n','x'),casenx, | |
132 | PAIR('s','o'),caseso, | |
133 | PAIR('i','g'),caseig, | |
134 | PAIR('t','c'),casetc, | |
135 | PAIR('f','c'),casefc, | |
136 | PAIR('e','c'),caseec, | |
137 | PAIR('e','o'),caseeo, | |
138 | PAIR('l','c'),caselc, | |
139 | PAIR('e','v'),caseev, | |
140 | PAIR('r','d'),caserd, | |
141 | PAIR('a','b'),caseab, | |
142 | PAIR('f','l'),casefl, | |
143 | PAIR('e','x'),done, | |
144 | PAIR('s','s'),casess, | |
145 | PAIR('f','p'),casefp, | |
146 | PAIR('c','s'),casecs, | |
147 | PAIR('b','d'),casebd, | |
148 | PAIR('l','g'),caselg, | |
149 | PAIR('h','c'),casehc, | |
150 | PAIR('h','y'),casehy, | |
151 | PAIR('n','h'),casenh, | |
152 | PAIR('n','m'),casenm, | |
153 | PAIR('n','n'),casenn, | |
154 | PAIR('s','v'),casesv, | |
155 | PAIR('o','s'),caseos, | |
156 | PAIR('l','s'),casels, | |
157 | PAIR('c','c'),casecc, | |
158 | PAIR('c','2'),casec2, | |
159 | PAIR('e','m'),caseem, | |
160 | PAIR('a','f'),caseaf, | |
161 | PAIR('h','w'),casehw, | |
162 | PAIR('m','c'),casemc, | |
163 | PAIR('p','m'),casepm, | |
164 | #ifdef NROFF | |
165 | PAIR('p','i'),casepi, | |
166 | #endif | |
167 | PAIR('u','f'),caseuf, | |
168 | PAIR('p','c'),casepc, | |
169 | PAIR('h','t'),caseht, | |
170 | #ifndef NROFF | |
171 | PAIR('f','z'),casefz, | |
172 | #endif | |
173 | PAIR('c', 'f'),casecf, | |
174 | }; | |
175 | ||
176 | /* | |
177 | troff environment block | |
178 | */ | |
179 | ||
180 | int block = 0; | |
181 | int ics = ICS; | |
182 | int ic = 0; | |
183 | int icf = 0; | |
184 | int chbits = 0; | |
185 | int spbits = 0; | |
186 | int nmbits = 0; | |
187 | int apts = PS; | |
188 | int apts1 = PS; | |
189 | int pts = PS; | |
190 | int pts1 = PS; | |
191 | int font = FT; | |
192 | int font1 = FT; | |
193 | int sps = SPS; | |
194 | int spacesz = SS; | |
195 | int lss = VS; | |
196 | int lss1 = VS; | |
197 | int ls = 1; | |
198 | int ls1 = 1; | |
199 | int ll = LL; | |
200 | int ll1 = LL; | |
201 | int lt = LL; | |
202 | int lt1 = LL; | |
203 | int ad = 1; | |
204 | int nms = 1; | |
205 | int ndf = 1; | |
206 | int fi = 1; | |
207 | int cc = '.'; | |
208 | int c2 = '\''; | |
209 | int ohc = OHC; | |
210 | int tdelim = IMP; | |
211 | int hyf = 1; | |
212 | int hyoff = 0; | |
213 | int un1 = -1; | |
214 | int tabc = 0; | |
215 | int dotc = '.'; | |
216 | int adsp = 0; | |
217 | int adrem = 0; | |
218 | int lastl = 0; | |
219 | int nel = 0; | |
220 | int admod = 0; | |
221 | int *wordp = 0; | |
222 | int spflg = 0; | |
223 | int *linep = 0; | |
224 | int *wdend = 0; | |
225 | int *wdstart = 0; | |
226 | int wne = 0; | |
227 | int ne = 0; | |
228 | int nc = 0; | |
229 | int nb = 0; | |
230 | int lnmod = 0; | |
231 | int nwd = 0; | |
232 | int nn = 0; | |
233 | int ni = 0; | |
234 | int ul = 0; | |
235 | int cu = 0; | |
236 | int ce = 0; | |
237 | int in = 0; | |
238 | int in1 = 0; | |
239 | int un = 0; | |
240 | int wch = 0; | |
241 | int pendt = 0; | |
242 | int *pendw = 0; | |
243 | int pendnf = 0; | |
244 | int spread = 0; | |
245 | int it = 0; | |
246 | int itmac = 0; | |
247 | int lnsize = LNSIZE; | |
248 | int *hyptr[NHYP] = {0}; | |
249 | int tabtab[NTAB] = {DTAB,DTAB*2,DTAB*3,DTAB*4,DTAB*5,DTAB*6,DTAB*7,DTAB*8, | |
250 | DTAB*9,DTAB*10,DTAB*11,DTAB*12,DTAB*13,DTAB*14,DTAB*15,0}; | |
251 | int line[LNSIZE] = {0}; | |
252 | int word[WDSIZE] = {0}; | |
253 | int blockxxx[EVS-68-NHYP-NTAB-WDSIZE-LNSIZE] = {0}; | |
254 | /*spare 5 words*/ | |
255 | int oline[LNSIZE+1]; |