aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/troff/fns.h
blob: 6bd94ada6d478a7ac4b580a24285575888f84363 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
/*
 * other
 */
int	pclose(FILE*);
long	filesize(int fd);
int	open(char *, int);
int	read(int, char *, int);
int	lseek(int, long, int);
int	close(int);
int	getpid(void);

/*
 * c1.c
 */
void	init0(void);
void	init2(void);
void	cvtime(void);
void	errprint(void);
int	control(int a, int b);
void	casept(void);
int	getrq(void);
Tchar	getch(void);
void	setxon(void);
Tchar	getch0(void);
Tchar	get1ch(FILE *);
void	pushback(Tchar *b);
void	cpushback(char *b);
int	nextfile(void);
int	popf(void);
void	flushi(void);
int	getach(void);
void	casenx(void);
int	getname(void);
void	caseso(void);
void	caself(void);
void	casecf(void);
void	getline(char *s, int n);
void	casesy(void);
void	getpn(char *a);
void	setrpt(void);

/*
 * n2.c
 */
int	pchar(Tchar i);
void	pchar1(Tchar i);
int	pchar2(Tchar i);
int	flusho(void);
void	casedone(void);
void	caseex(void);
void	done(int x);
void	done1(int x);
void	done2(int x);
void	done3(int x);
void	edone(int x);
void	casepi(void);

/*
 * c3.c
 */
void	blockinit(void);
char*	grow(char *, int, int);
void	mnspace(void);
void	caseig(void);
void	casern(void);
void	maddhash(Contab *rp);
void	munhash(Contab *mp);
void	mrehash(void);
void	caserm(void);
void	caseas(void);
void	caseds(void);
void	caseam(void);
void	casede(void);
int	findmn(int i);
void	clrmn(int i);
Offset	finds(int mn);
int	skip(void);
int	copyb(void);
void	copys(void);
Offset	alloc(void);
void	ffree(Offset i);
void	wbf(Tchar i);
Tchar	rbf(void);
Tchar	popi(void);
Offset	pushi(Offset newip, int mname);
void*	setbrk(int x);
int	getsn(void);
Offset	setstr(void);
void	collect(void);
void	seta(void);
void	caseda(void);
void	casegd(void);
void	casedi(void);
void	casedt(void);
void	casetl(void);
void	casepc(void);
void	casepm(void);
void	stackdump(void);

/*
 * c4.c
 */
void	setn(void);
int	wrc(Tchar i);
void	setn1(int i, int form, Tchar bits);
void	nnspace(void);
void	nrehash(void);
void	nunhash(Numtab *rp);
int	findr(int i);
int	usedr(int i);
int	fnumb(int i, int (*f)(Tchar));
int	decml(int i, int (*f)(Tchar));
int	roman(int i, int (*f)(Tchar));
int	roman0(int i, int (*f)(Tchar), char *onesp, char *fivesp);
int	abc(int i, int (*f)(Tchar));
int	abc0(int i, int (*f)(Tchar));
long	atoi0(void);
long	ckph(void);
long	atoi1(Tchar ii);
void	caserr(void);
void	casenr(void);
void	caseaf(void);
void	setaf(void);
int	vnumb(int *i);
int	hnumb(int *i);
int	inumb(int *n);
int	quant(int n, int m);

/*
 * c5.c
 */
void	casead(void);
void	casena(void);
void	casefi(void);
void	casenf(void);
void	casers(void);
void	casens(void);
int	chget(int c);
void	casecc(void);
void	casec2(void);
void	casehc(void);
void	casetc(void);
void	caselc(void);
void	casehy(void);
int	max(int aa, int bb);
void	casenh(void);
void	casece(void);
void	casein(void);
void	casell(void);
void	caselt(void);
void	caseti(void);
void	casels(void);
void	casepo(void);
void	casepl(void);
void	casewh(void);
void	casech(void);
int	findn(int i);
void	casepn(void);
void	casebp(void);
void	casextm(void);
void	casetm(void);
void	casefm(void);
void	casetm1(int ab, FILE *out);
void	casesp(void);
void	casesp1(int a);
void	casert(void);
void	caseem(void);
void	casefl(void);
void	caseev(void);
void	envcopy(Env *e1, Env *e2);
void	caseel(void);
void	caseie(void);
void	casexif(void);
void	caseif(void);
void	caseif1(int);
void	eatblk(int inblk);
int	cmpstr(Tchar c);
void	caserd(void);
int	rdtty(void);
void	caseec(void);
void	caseeo(void);
void	caseta(void);
void	casene(void);
void	casetr(void);
void	casecu(void);
void	caseul(void);
void	caseuf(void);
void	caseit(void);
void	casemc(void);
void	casemk(void);
void	casesv(void);
void	caseos(void);
void	casenm(void);
void	getnm(int *p, int min);
void	casenn(void);
void	caseab(void);
void	save_tty(void);
void	restore_tty(void);
void	set_tty(void);
void	echo_off(void);
void	echo_on(void);

/*
 * t6.c
 */
int	t_width(Tchar j);
void	zapwcache(int s);
int	onfont(int n, int f);
int	getcw(int i);
void	xbits(Tchar i, int bitf);
Tchar	t_setch(int c);
Tchar	t_setabs(void);
int	t_findft(int i);
void	caseps(void);
void	casps1(int i);
int	findps(int i);
void	t_mchbits(void);
void	t_setps(void);
Tchar	t_setht(void);
Tchar	t_setslant(void);
void	caseft(void);
void	t_setfont(int a);
void	t_setwd(void);
Tchar	t_vmot(void);
Tchar	t_hmot(void);
Tchar	t_mot(void);
Tchar	t_sethl(int k);
Tchar	t_makem(int i);
Tchar	getlg(Tchar i);
void	caselg(void);
void	casefp(void);
char	*strdupl(const char *);
int	setfp(int pos, int f, char *truename, int print);
void	casecs(void);
void	casebd(void);
void	casevs(void);
void	casess(void);
Tchar	t_xlss(void);
Uchar*	unpair(int i);
void	outascii(Tchar i);

/*
 * c7.c
 */
void	tbreak(void);
void	donum(void);
void	text(void);
void	nofill(void);
void	callsp(void);
void	ckul(void);
void	storeline(Tchar c, int w);
void	newline(int a);
int	findn1(int a);
void	chkpn(void);
int	findt(int a);
int	findt1(void);
void	eject(Stack *a);
int	movword(void);
void	horiz(int i);
void	setnel(void);
int	getword(int x);
void	storeword(Tchar c, int w);
Tchar	gettch(void);

/*
 * c8.c
 */
void	hyphen(Tchar *wp);
int	punct(Tchar i);
int	alph(int i);
void	caseha(void);
void	caseht(void);
void	casehw(void);
int	exword(void);
int	suffix(void);
int	maplow(int i);
int	vowel(int i);
Tchar*	chkvow(Tchar *w);
void	digram(void);
int	dilook(int a, int b, char t[26][13]);

/*
 * c9.c
 */
Tchar	setz(void);
void	setline(void);
int	eat(int c);
void	setov(void);
void	setbra(void);
void	setvline(void);
void	setdraw(void);
void	casefc(void);
Tchar	setfield(int x);

/*
 * t10.c
 */
void	t_ptinit(void);
void	t_specnames(void);
void	t_ptout(Tchar i);
int	ptout0(Tchar *pi);
void	ptchname(int);
void	ptflush(void);
void	ptps(void);
void	ptfont(void);
void	ptfpcmd(int f, char *s, char *fn);
void	t_ptlead(void);
void	ptesc(void);
void	ptpage(int n);
void	pttrailer(void);
void	ptstop(void);
void	t_ptpause(void);

/*
 * t11.c
 */
int	getdesc(char *name);
int	getfont(char *name, int pos);
int	chadd(char *s, int, int);
char*	chname(int n);
int	getlig(FILE *fin);

/*
 * n6.c
 */
int	n_width(Tchar j);
Tchar	n_setch(int c);
Tchar	n_setabs(void);
int	n_findft(int i);
void	n_mchbits(void);
void	n_setps(void);
Tchar	n_setht(void);
Tchar	n_setslant(void);
void	n_caseft(void);
void	n_setfont(int a);
void	n_setwd(void);
Tchar	n_vmot(void);
Tchar	n_hmot(void);
Tchar	n_mot(void);
Tchar	n_sethl(int k);
Tchar	n_makem(int i);
void	n_casefp(void);
void	n_casebd(void);
void	n_casevs(void);
Tchar	n_xlss(void);

/*
 * n10.c
 */
void	n_ptinit(void);
char*	skipstr(char *s);
char*	getstr(char *s, char *t);
char*	getint(char *s, int *pn);
void	twdone(void);
void	n_specnames(void);
int	findch(char *s);
void	n_ptout(Tchar i);
void	ptout1(void);
char*	plot(char *x);
void	move(void);
void	n_ptlead(void);
void	n_ptpause(void);

/*
 * indirect calls on TROFF/!TROFF.  these are variables!
 */
extern Tchar	(*hmot)(void);
extern Tchar	(*makem)(int i);
extern Tchar	(*setabs)(void);
extern Tchar	(*setch)(int c);
extern Tchar	(*sethl)(int k);
extern Tchar	(*setht)(void);
extern Tchar	(*setslant)(void);
extern Tchar	(*vmot)(void);
extern Tchar	(*xlss)(void);
extern int	(*findft)(int i);
extern int	(*width)(Tchar j);
extern void	(*mchbits)(void);
extern void	(*ptlead)(void);
extern void	(*ptout)(Tchar i);
extern void	(*ptpause)(void);
extern void	(*setfont)(int a);
extern void	(*setps)(void);
extern void	(*setwd)(void);