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
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
|
/* asmfcn.h -- include file for microsoft 80x86 assembler
**
** microsoft (r) macro assembler
** copyright (c) microsoft corp 1986. all rights reserved
**
** randy nevin
*/
// Included here because allocs are mapped depending on target
#include <malloc.h>
#ifdef FCNDEF
#define PARMS(p) p
#else
#define PARMS(p) /* no argument checking */
#endif
// UCHAR *strncpy PARMS((UCHAR *, UCHAR *, int));
// UCHAR *strcat PARMS((UCHAR *, UCHAR *));
// UCHAR *strdup PARMS((UCHAR *));
// UCHAR *strcpy PARMS((UCHAR *, UCHAR *));
// int strcmp PARMS((UCHAR *, UCHAR *));
// int strlen PARMS((UCHAR *));
// UCHAR *malloc PARMS(( size_t) );
// UCHAR *calloc PARMS(( USHORT, USHORT) );
// VOID free PARMS(( UCHAR *) );
// UCHAR *realloc PARMS(( UCHAR *, USHORT) );
UCHAR FAR * PASCAL CODESIZE talloc PARMS(( USHORT) );
DSCREC * PASCAL CODESIZE dalloc PARMS((void));
VOID PASCAL CODESIZE macroexpand PARMS((struct MC_s *));
char * PASCAL CODESIZE passatom PARMS((char *));
char * PASCAL CODESIZE radixconvert PARMS(( OFFSET, char *));
char * PASCAL CODESIZE xxradixconvert PARMS(( OFFSET, char *));
VOID PASCAL CODESIZE readfile PARMS(( void) );
char * PASCAL CODESIZE scanvalue PARMS((char *));
char * PASCAL CODESIZE storetrans PARMS((UCHAR, char *, char *));
VOID PASCAL CODESIZE addLocal PARMS ((SYMBOL FARSYM *));
UCHAR PASCAL CODESIZE argblank PARMS(( void) );
VOID PASCAL CODESIZE buildFrame PARMS(( void) );
VOID PASCAL CODESIZE catstring PARMS(( void ));
UCHAR PASCAL CODESIZE checkendm PARMS(( void) );
UCHAR PASCAL CODESIZE checkline PARMS(( UCHAR) );
VOID PASCAL CODESIZE commDefine PARMS(( void ));
UCHAR PASCAL CODESIZE createequ PARMS(( UCHAR));
VOID PASCAL CODESIZE doLine PARMS((char *));
UCHAR PASCAL CODESIZE emitcleanq PARMS(( UCHAR) );
UCHAR PASCAL CODESIZE emitdup PARMS((struct duprec FARSYM *));
VOID PASCAL CODESIZE emit66 PARMS ((struct psop *,struct psop *));
VOID PASCAL emit67 PARMS ((struct psop *,struct psop *));
char PASCAL emitroomfor PARMS((UCHAR));
VOID PASCAL CODESIZE endCurSeg PARMS(( void) );
UCHAR PASCAL CODESIZE endstring PARMS(( void) );
void PASCAL CODESIZE evalconst PARMS((void));
char PASCAL CODESIZE evalstring PARMS((void));
UCHAR PASCAL CODESIZE fixroom PARMS(( UCHAR) );
char CODESIZE inset PARMS((char, char *));
char PASCAL CODESIZE opcodesearch PARMS((void));
SHORT PASCAL CODESIZE shortrange PARMS((struct parsrec *));
char PASCAL CODESIZE symsearch PARMS((void));
char CODESIZE symsrch PARMS((void));
UCHAR PASCAL CODESIZE testlist PARMS(( void) );
UCHAR PASCAL CODESIZE test4TM PARMS(( void) );
VOID PASCAL CODESIZE addglist PARMS(( void) );
VOID PASCAL CODESIZE addseglist PARMS((SYMBOL FARSYM *));
USHORT PASCAL CODESIZE argscan PARMS(( UCHAR *));
VOID PASCAL assignlinknum PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE assignvalue PARMS(( void) );
VOID PASCAL CODESIZE assumeitem PARMS(( void) );
VOID PASCAL bcddigit PARMS((struct realrec *));
VOID PASCAL bcdeval PARMS((struct realrec *));
VOID PASCAL CODESIZE begdupdisplay PARMS((struct duprec FARSYM *));
VOID PASCAL bumpline PARMS(( void) );
VOID PASCAL CODESIZE byteimmcheck PARMS((struct psop *));
VOID PASCAL CODESIZE checkmatch PARMS((DSCREC *, DSCREC *));
SHORT PASCAL CODESIZE checkRes PARMS((void));
SHORT PASCAL CODESIZE checksize PARMS((struct parsrec *));
VOID PASCAL CODESIZE emitnop PARMS((void));
VOID PASCAL CODESIZE chkheading PARMS(( USHORT) );
VOID PASCAL closeOpenFiles PARMS(( void ) );
VOID PASCAL CODESIZE comdir PARMS(( void) );
VOID PASCAL CODESIZE commentbuild PARMS(( void) );
VOID PASCAL CODESIZE conddir PARMS(( void) );
VOID PASCAL CODESIZE copyascii PARMS(( void) );
VOID PASCAL CODESIZE copystring PARMS((char *));
VOID PASCAL CODESIZE copytext PARMS((char *));
VOID PASCAL CODESIZE createitem PARMS(( UCHAR, UCHAR));
VOID PASCAL CODESIZE createMC PARMS(( USHORT) );
VOID PASCAL CODESIZE createsym PARMS((void));
VOID PASCAL CODESIZE createStack PARMS(( void) );
VOID PASCAL crefdef PARMS(( void) );
VOID PASCAL crefline PARMS(( void) );
VOID PASCAL crefnew PARMS(( UCHAR) );
VOID PASCAL crefout PARMS(( void) );
VOID PASCAL CODESIZE datacon PARMS((struct dsr *));
VOID PASCAL CODESIZE datadb PARMS((struct dsr *));
VOID PASCAL CODESIZE datadefine PARMS(( void) );
VOID PASCAL CODESIZE dataitem PARMS((struct datarec *));
VOID PASCAL definesym PARMS(( UCHAR *) );
VOID PASCAL defwordsize PARMS( (void) );
VOID PASCAL CODESIZE defineLocals PARMS(( void) );
VOID PASCAL CODESIZE deletemacro PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE dfree PARMS((UCHAR *));
VOID PASCAL dispdatasize PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE displength PARMS(( OFFSET) );
VOID PASCAL CODESIZE displlong PARMS((struct duprec FARSYM *));
VOID PASCAL CODESIZE dispstandard PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE dispsym PARMS(( USHORT, SYMBOL FARSYM *));
VOID PASCAL CODESIZE disptab PARMS(( void) );
VOID PASCAL CODESIZE dispword PARMS((OFFSET ));
VOID PASCAL dopass PARMS(( void) );
VOID PASCAL dumpname PARMS((void));
VOID PASCAL dumpCodeview PARMS(( void ));
VOID PASCAL CODESIZE dupdisplay PARMS((struct duprec FARSYM *));
VOID CODESIZE ebuffer PARMS(( USHORT, UCHAR *, UCHAR *));
VOID PASCAL CODESIZE edupitem PARMS((struct duprec FARSYM *));
VOID PASCAL CODESIZE elsedir PARMS(( void) );
VOID PASCAL CODESIZE emitOP PARMS((struct psop *));
VOID PASCAL CODESIZE emitcall PARMS((UCHAR, UCHAR, UCHAR, UCHAR, struct parsrec *));
VOID PASCAL CODESIZE emitcbyte PARMS(( UCHAR) );
VOID PASCAL CODESIZE emitcword PARMS(( OFFSET) );
VOID PASCAL emitEndPass1 PARMS((void));
VOID PASCAL emitdone PARMS((DSCREC *));
VOID PASCAL CODESIZE emitdumpdata PARMS(( UCHAR) );
VOID PASCAL CODESIZE emitescape PARMS((DSCREC *, UCHAR));
VOID PASCAL CODESIZE emitextern PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE emitfixup PARMS((struct psop *));
VOID PASCAL CODESIZE emitfltfix PARMS(( USHORT, USHORT, USHORT *));
VOID PASCAL CODESIZE emitgetspec PARMS((SYMBOL FARSYM * *, SYMBOL FARSYM * *, struct psop *));
VOID PASCAL CODESIZE emitglobal PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE emitgroup PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE emitlong PARMS((struct duprec FARSYM *));
VOID PASCAL CODESIZE emitlname PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE emitline PARMS((void));
VOID PASCAL CODESIZE emitmodrm PARMS(( USHORT, USHORT, USHORT) );
VOID PASCAL CODESIZE emitmove PARMS((UCHAR, char, struct parsrec *));
VOID PASCAL CODESIZE emitname PARMS((NAME FAR *));
VOID PASCAL CODESIZE emitobject PARMS((struct psop *));
VOID PASCAL CODESIZE emitopcode PARMS((UCHAR));
VOID PASCAL CODESIZE emitrest PARMS((DSCREC *));
VOID PASCAL CODESIZE emitsegment PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE emitsetrecordtype PARMS(( UCHAR) );
VOID PASCAL CODESIZE emitsindex PARMS(( USHORT) );
VOID PASCAL CODESIZE emitsize PARMS((USHORT));
VOID PASCAL CODESIZE emitsword PARMS(( USHORT) );
VOID PASCAL CODESIZE emitSymbol PARMS((SYMBOL FARSYM *));
VOID PASCAL makedefaultdsc PARMS(( void) );
VOID PASCAL CODESIZE emodule PARMS((NAME FAR *));
VOID PASCAL CODESIZE enddir PARMS(( void) );
VOID PASCAL CODESIZE enddupdisplay PARMS(( void) );
VOID PASCAL CODESIZE endifdir PARMS(( void) );
VOID PASCAL CODESIZE equdefine PARMS(( void) );
VOID PASCAL CODESIZE equtext PARMS((USHORT));
VOID PASCAL CODESIZE error PARMS(( USHORT, UCHAR *) );
VOID PASCAL CODESIZE errorc PARMS(( USHORT) );
VOID PASCAL CODESIZE errorcSYN PARMS(( void) );
VOID PASCAL CODESIZE errorn PARMS(( USHORT) );
VOID PASCAL error_line PARMS((struct _iobuf *, UCHAR *, short) );
VOID PASCAL errordisplay PARMS(( void) );
VOID PASCAL CODESIZE errorforward PARMS((DSCREC *));
VOID PASCAL CODESIZE errorimmed PARMS((DSCREC *));
VOID PASCAL CODESIZE errorover PARMS((char));
VOID PASCAL CODESIZE errorsegreg PARMS((DSCREC *));
VOID PASCAL CODESIZE evaltop PARMS((struct evalrec *));
VOID PASCAL CODESIZE errdir PARMS(( void) );
VOID PASCAL CODESIZE evendir PARMS(( SHORT) );
VOID PASCAL CODESIZE exitmdir PARMS(( void) );
VOID CODESIZE expandTM PARMS((char *));
VOID PASCAL CODESIZE externflag PARMS(( UCHAR, UCHAR) );
VOID PASCAL CODESIZE externitem PARMS(( void) );
VOID PASCAL ferrorc PARMS (( USHORT ));
VOID PASCAL CODESIZE fltmodrm PARMS(( USHORT, struct fltrec *));
VOID PASCAL CODESIZE fltopcode PARMS(( void) );
VOID PASCAL CODESIZE fltscan PARMS((struct fltrec *));
VOID PASCAL CODESIZE fltwait PARMS(( UCHAR) );
VOID PASCAL CODESIZE flushbuffer PARMS(( void) );
VOID PASCAL CODESIZE flushfixup PARMS(( void) );
SHORT PASCAL CODESIZE fndir PARMS((void));
SHORT PASCAL CODESIZE fndir2 PARMS((void));
SHORT PASCAL CODESIZE fnoper PARMS((void));
SHORT PASCAL CODESIZE fnPtr PARMS((SHORT));
SHORT PASCAL CODESIZE fnsize PARMS((void));
SHORT PASCAL CODESIZE fnspar PARMS((void));
VOID PASCAL CODESIZE foldsigns PARMS((struct exprec *));
VOID PASCAL CODESIZE forceaccum PARMS((DSCREC *));
VOID PASCAL CODESIZE forceimmed PARMS((DSCREC *));
VOID CODESIZE fMemcpy PARMS((void FAR *, void FAR *, SHORT));
VOID PASCAL CODESIZE forcesize PARMS((DSCREC *));
int PASCAL CODESIZE freeAFileHandle PARMS( (void) );
VOID PASCAL CODESIZE getinvenv PARMS(( void) );
char * PASCAL CODESIZE getTMstring PARMS ((void));
SHORT PASCAL getprec PARMS((char));
VOID PASCAL CODESIZE groupdefine PARMS(( void) );
VOID PASCAL CODESIZE groupitem PARMS(( void) );
VOID PASCAL CODESIZE idxcheck PARMS(( UCHAR, struct exprec *));
VOID PASCAL CODESIZE includeLib PARMS(( void) );
VOID PASCAL CODESIZE includedir PARMS(( void) );
VOID PASCAL initproc PARMS(( void) );
VOID PASCAL CODESIZE initrs PARMS((struct dsr *));
VOID PASCAL CODESIZE instring PARMS((void));
VOID PASCAL CODESIZE irpcopy PARMS(( void) );
VOID PASCAL CODESIZE irpxbuild PARMS(( void) );
VOID PASCAL CODESIZE irpxdir PARMS(( void) );
VOID PASCAL CODESIZE itemdisplay PARMS((struct duprec FARSYM *));
VOID PASCAL CODESIZE labelcreate PARMS((USHORT, char));
SHORT CODESIZE langFet PARMS(( void));
VOID CODESIZE lineExpand PARMS((struct MC_s *, char FAR *));
VOID PASCAL CODESIZE linkfield PARMS((struct duprec FARSYM *));
VOID PASCAL CODESIZE listfree PARMS((TEXTSTR FAR *));
VOID PASCAL listline PARMS(( void) );
VOID PASCAL listopen PARMS(( void) );
VOID CODESIZE lineprocess PARMS(( char, MC *));
VOID PASCAL longeval PARMS(( USHORT, struct realrec *) );
VOID PASCAL CODESIZE macrobuild PARMS(( void) );
VOID PASCAL CODESIZE macrocall PARMS(( void) );
VOID PASCAL CODESIZE macrodefine PARMS(( void) );
VOID PASCAL macrolist PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE makeGrpRel PARMS((struct psop *));
VOID main PARMS(( int, char **) );
VOID PASCAL CODESIZE model PARMS(( void) );
VOID PASCAL CODESIZE mapFixup PARMS((struct psop *));
VOID PASCAL CODESIZE moveaccum PARMS((char, struct parsrec *));
VOID PASCAL CODESIZE movecreg PARMS((char, struct parsrec *));
VOID PASCAL CODESIZE movereg PARMS((char, struct parsrec *));
VOID PASCAL CODESIZE movesegreg PARMS((char, struct parsrec *));
VOID PASCAL CODESIZE muldef PARMS((void));
VOID PASCAL CODESIZE namedir PARMS(( void) );
VOID PASCAL newpage PARMS(( void) );
VOID PASCAL CODESIZE numeric PARMS((SHORT, SHORT));
SHORT PASCAL oblitdata PARMS((struct duprec FARSYM *));
VOID PASCAL CODESIZE oblitdup PARMS((struct duprec FARSYM *));
VOID PASCAL CODESIZE oblititem PARMS((DSCREC *));
SHORT PASCAL CODESIZE opcode PARMS((void));
VOID PASCAL CODESIZE opdisplay PARMS(( UCHAR) );
VOID PASCAL CODESIZE openSeg PARMS(( void) );
VOID PASCAL CODESIZE orgdir PARMS(( void) );
VOID PASCAL CODESIZE outdir PARMS(( void) );
VOID PASCAL pageheader PARMS(( void) );
VOID PASCAL CODESIZE deleteMC PARMS((struct MC_s *));
VOID PASCAL CODESIZE parith PARMS((struct parsrec *));
VOID PASCAL CODESIZE parpl PARMS((struct parsrec *));
SHORT PASCAL CODESIZE firstDirect PARMS((void));
VOID PASCAL CODESIZE secondDirect PARMS((void));
VOID PASCAL CODESIZE parselong PARMS((struct dsr *));
VOID PASCAL CODESIZE parse PARMS((void));
VOID PASCAL CODESIZE parsl PARMS((struct parsrec *));
struct BCB * FAR PASCAL pBCBalloc PARMS((USHORT));
VOID PASCAL CODESIZE pbound PARMS((struct parsrec *));
VOID PASCAL CODESIZE pcdisplay PARMS(( void) );
VOID PASCAL CODESIZE pclts PARMS((void));
VOID PASCAL CODESIZE pdescrtbl PARMS((struct parsrec *));
VOID PASCAL CODESIZE pdttrsw PARMS((struct parsrec *));
VOID PASCAL CODESIZE penter PARMS((struct parsrec *));
VOID PASCAL CODESIZE pesc PARMS((struct parsrec *));
VOID PASCAL CODESIZE pgenarg PARMS((struct parsrec *));
VOID PASCAL CODESIZE pincdec PARMS((struct parsrec *));
VOID PASCAL CODESIZE pinout PARMS((struct parsrec *));
VOID PASCAL CODESIZE pint PARMS((struct parsrec *));
SHORT PASCAL CODESIZE pSHORT PARMS((struct parsrec *));
VOID PASCAL CODESIZE pjump PARMS((struct parsrec *));
VOID PASCAL CODESIZE pload PARMS((struct parsrec *));
VOID PASCAL CODESIZE pmov PARMS((struct parsrec *));
VOID PASCAL CODESIZE pnoargs PARMS((void));
VOID PASCAL CODESIZE preljmp PARMS((struct parsrec *));
VOID PASCAL CODESIZE prepeat PARMS((struct parsrec *));
VOID PASCAL CODESIZE preturn PARMS((struct parsrec *));
VOID PASCAL CODESIZE procdefine PARMS((void));
SHORT PASCAL CODESIZE procend PARMS((void));
VOID PASCAL CODESIZE pshift PARMS((struct parsrec *));
VOID PASCAL CODESIZE pstack PARMS((struct parsrec *));
VOID PASCAL CODESIZE pstr PARMS((struct parsrec *));
VOID PASCAL CODESIZE ptends PARMS((void));
VOID PASCAL CODESIZE publicitem PARMS(( void) );
VOID PASCAL CODESIZE purgemacro PARMS(( void) );
VOID PASCAL CODESIZE pushpar PARMS((struct evalrec *));
VOID PASCAL CODESIZE pver PARMS((struct parsrec *));
VOID PASCAL CODESIZE pxchg PARMS((struct parsrec *));
VOID PASCAL CODESIZE pxlat PARMS((struct parsrec *));
VOID PASCAL CODESIZE radixdir PARMS(( void) );
VOID PASCAL CODESIZE rangecheck PARMS((USHORT *, UCHAR));
VOID PASCAL CODESIZE valuecheck PARMS((OFFSET *, USHORT));
VOID PASCAL realeval PARMS((struct realrec *));
VOID PASCAL CODESIZE recorddefine PARMS((void));
VOID PASCAL CODESIZE recordinit PARMS((void));
VOID PASCAL CODESIZE reptdir PARMS(( void) );
VOID PASCAL CODESIZE resetobjidx PARMS(( void) );
SHORT PASCAL CODESIZE scanatom PARMS( (char) );
SHORT PASCAL CODESIZE scanArgs PARMS(( void) );
VOID PASCAL CODESIZE scandummy PARMS(( void) );
VOID PASCAL CODESIZE scandup PARMS((struct duprec FARSYM *, VOID (PASCAL CODESIZE *)(struct duprec FARSYM *)));
VOID PASCAL scanextern PARMS((SYMBOL FARSYM *));
VOID PASCAL scangroup PARMS((SYMBOL FARSYM *));
VOID PASCAL scanglobal PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE scanlist PARMS((struct duprec FARSYM *, VOID (PASCAL CODESIZE *)(struct duprec FARSYM *)));
VOID PASCAL scanorder PARMS((SYMBOL FARSYM *, SHORT (PASCAL *)(SYMBOL FARSYM *)));
VOID PASCAL scanSorted PARMS((SYMBOL FARSYM *, SHORT (PASCAL *)(SYMBOL FARSYM *)));
VOID PASCAL CODESIZE scanparam PARMS(( UCHAR) );
VOID PASCAL scansegment PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE scanstruc PARMS((struct duprec FARSYM *, VOID (PASCAL CODESIZE *)(struct duprec FARSYM *)));
VOID PASCAL scansymbols PARMS((SHORT (PASCAL *)(SYMBOL FARSYM *)));
VOID PASCAL CODESIZE segalign PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE segclass PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE segcreate PARMS(( UCHAR) );
VOID PASCAL CODESIZE segdefine PARMS(( void) );
VOID PASCAL CODESIZE segdisplay PARMS(( USHORT, SYMBOL FARSYM *));
VOID PASCAL seglist PARMS((void));
VOID PASCAL CODESIZE setpage PARMS((void));
VOID PASCAL CODESIZE setsegment PARMS(( void) );
VOID PASCAL CODESIZE setsymbol PARMS(( UCHAR) );
SHORT PASCAL settext PARMS((void));
VOID PASCAL showresults PARMS((struct _iobuf *, char, char *) );
VOID PASCAL CODESIZE signadjust PARMS(( UCHAR, struct exprec *));
VOID PASCAL CODESIZE sizestring PARMS((void ));
UCHAR CODESIZE skipblanks PARMS(( void) );
VOID PASCAL CODESIZE skipline PARMS(( void) );
VOID PASCAL sortalpha PARMS((SYMBOL FARSYM *));
SHORT PASCAL sortsymbols PARMS((void));
VOID storeline PARMS((void));
VOID storelinepb PARMS((void));
VOID PASCAL storetitle PARMS((char *));
SHORT strffcmp PARMS((char FAR *, char FAR *));
USHORT PASCAL strflen PARMS((char FAR *));
SHORT PASCAL CODESIZE strfncpy PARMS((char FAR *, char *));
SHORT CODESIZE strnfcmp PARMS((char *, char FAR *));
VOID PASCAL strnfcpy PARMS((char *, char FAR *));
VOID PASCAL CODESIZE strucbuild PARMS((void));
VOID PASCAL CODESIZE strucdefine PARMS((void));
VOID PASCAL CODESIZE strucfill PARMS((void));
VOID PASCAL CODESIZE strucinit PARMS((void));
VOID PASCAL struclist PARMS((SYMBOL FARSYM *));
VOID PASCAL CODESIZE subr1 PARMS((struct dsr *));
VOID PASCAL CODESIZE substituteTMs PARMS((void));
VOID PASCAL CODESIZE substring PARMS((void));
VOID CODESIZE switchname PARMS((void));
VOID PASCAL symbollist PARMS((void));
VOID PASCAL CODESIZE symcreate PARMS((UCHAR, char));
char PASCAL CODESIZE symFet PARMS((void));
char PASCAL CODESIZE symFetNoXref PARMS((void));
VOID PASCAL CODESIZE tfree PARMS((UCHAR FAR *, UINT) );
VOID terminate PARMS((SHORT, char *, char *, char * ));
SHORT PASCAL CODESIZE tokenIS PARMS ((char *));
int PASCAL CODESIZE tryOneFile PARMS((UCHAR *));
SHORT PASCAL CODESIZE typeFet PARMS( (USHORT) );
SHORT PASCAL pfree PARMS((char FAR *));
VOID UserInterface ( int, char **, char * );
VOID PASCAL CODESIZE valcheck PARMS(( UCHAR, UCHAR, struct exprec *));
VOID PASCAL CODESIZE valconst PARMS((DSCREC *));
VOID PASCAL offsetAscii PARMS(( OFFSET ));
SHORT PASCAL writeobj PARMS((UCHAR));
VOID PASCAL CODESIZE xchgaccum PARMS((char, struct parsrec *));
VOID PASCAL CODESIZE xchgreg PARMS((char, struct parsrec *));
VOID PASCAL CODESIZE xcrefitem PARMS(( void) );
DSCREC * PASCAL CODESIZE defaultdsc PARMS(( void) );
DSCREC * PASCAL CODESIZE expreval PARMS((UCHAR *));
VOID PASCAL CODESIZE flteval PARMS((void));
DSCREC * PASCAL CODESIZE regcheck PARMS((DSCREC *, UCHAR, struct exprec *));
struct duprec FARSYM * PASCAL CODESIZE createduprec PARMS((void));
struct duprec FARSYM * PASCAL CODESIZE datadup PARMS((struct dsr *));
struct duprec FARSYM * PASCAL CODESIZE datascan PARMS((struct datarec *));
struct duprec FARSYM * PASCAL CODESIZE nodecreate PARMS((void));
struct duprec FARSYM * PASCAL CODESIZE strucerror PARMS((SHORT, struct duprec FARSYM *));
struct duprec FARSYM * PASCAL CODESIZE strucparse PARMS((void));
UCHAR PASCAL CODESIZE efixdat PARMS((SYMBOL FARSYM *, SYMBOL FARSYM *, OFFSET) );
OFFSET PASCAL CODESIZE calcsize PARMS((struct duprec FARSYM *));
OFFSET PASCAL CODESIZE checkvalue PARMS((SHORT, char, OFFSET));
OFFSET PASCAL CODESIZE exprconst PARMS(( void) );
OFFSET PASCAL CODESIZE exprsmag PARMS((char *));
OFFSET PASCAL CODESIZE recordparse PARMS((void));
USHORT PASCAL CODESIZE segdefault PARMS((char));
OFFSET PASCAL CODESIZE shiftoper PARMS((struct exprec *));
USHORT PASCAL CODESIZE valuesize PARMS((DSCREC *));
NAME FAR * PASCAL CODESIZE createname PARMS((char *));
NAME * PASCAL CODESIZE creatlname PARMS((char *));
SYMBOL FARSYM * PASCAL CODESIZE chasealias PARMS((SYMBOL FARSYM *));
VOID init386(short);
USHORT CODESIZE isdirect(struct psop *);
VOID initregs(struct mreg *);
int PASCAL CODESIZE emitFpo ();
int PASCAL CODESIZE fpoRecord ();
# ifdef DEBUG
SHORT PASCAL hatoi PARMS((char *));
# endif
# ifdef XENIX286
VOID PASCAL nextarg PARMS((char *));
VOID PASCAL usage PARMS((SHORT));
# endif
# ifdef M8086
# ifdef MSDOS
VOID farwrite PARMS((int, UCHAR FAR *, SHORT));
# endif /* MSDOS */
// VOID _ffree PARMS(( UCHAR FAR *) );
// VOID _nfree PARMS(( UCHAR *) );
// extern UCHAR FAR * _fmalloc PARMS(( USHORT) );
// extern UCHAR *_nmalloc PARMS(( USHORT) );
// USHORT _freect PARMS(());
// USHORT _memavl PARMS((void));
SHORT CODESIZE getatom PARMS((void));
SHORT CODESIZE getatomend PARMS((void));
VOID CODESIZE getline PARMS((void));
VOID PASCAL outofmem PARMS((void));
UCHAR * CODESIZE PASCAL nearalloc PARMS(( USHORT) );
UCHAR FAR * CODESIZE PASCAL faralloc PARMS(( USHORT) );
# else
SHORT PASCAL PASCAL outofmem PARMS((char *));
VOID PASCAL PASCAL scanatom PARMS(( char) );
UCHAR * CODESIZE PASCAL nearalloc PARMS(( USHORT, char *) );
# endif /* M8086 */
#if defined FLATMODEL
# define STRFNCPY(a,b) strcpy((a),(b))
# define STRNFCPY(a,b) strcpy((a),(b))
# define STRNFCMP(a,b) strcmp((a),(b))
# define STRFFCMP(a,b) strcmp((a),(b))
# define STRFLEN(a) strlen(a)
# define memerror(a) outofmem()
# define nalloc(a,b) nearalloc(a)
# define falloc(a,b) faralloc(a)
# define _fmalloc(a) malloc(a) /* _fmalloc doesn't exist in clib */
# define _ffree(a) free(a) /* _ffree doesn't exist in clib */
# define _fmemchr(a,b,c) memchr((a),(b),(c)) /* _fmemchr doesn't exist in clib */
# define fMemcpy(a,b,c) memcpy((a),(b),(c)) /* fMemcpy isn't needed */
#else
# define STRFNCPY(a,b) strfncpy((a),(b))
# define STRNFCPY(a,b) strnfcpy((a),(b))
# define STRNFCMP(a,b) strnfcmp((a),(b))
# define STRFFCMP(a,b) strffcmp((a),(b))
# define STRFLEN(a) strflen(a)
# define memerror(a) outofmem()
# define nalloc(a,b) nearalloc(a)
# define falloc(a,b) faralloc(a)
#endif
#ifndef M8086OPT
# define getatom() scanatom(SCSKIP)
# define getatomend() scanatom(SCEND)
#endif /* M8086OPT */
#ifdef FLATMODEL
/* Map message functions */
# define __NMSG_TEXT NMsgText
# define __FMSG_TEXT FMsgText
UCHAR NEAR * PASCAL NMsgText( USHORT );
UCHAR FAR * PASCAL FMsgText( USHORT );
#else
/* These two functions are internal C library functions */
/* They are also included in nmsghdr.c and fmsghdr.c for Xenix */
UCHAR NEAR * PASCAL __NMSG_TEXT( USHORT );
UCHAR FAR * PASCAL __FMSG_TEXT( USHORT );
#endif /* FLATMODEL */
|