Files
Digital-Research-Source-Code/CPM OPERATING SYSTEMS/CPM 86/CONCURRENT/CCPM-86 2.0 SOURCE/asm86/pseud2.lst
Sepp J Morris 31738079c4 Upload
Digital Research
2020-11-06 18:50:37 +01:00

721 lines
35 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 1
ISIS-II PL/M-86 V2.0 COMPILATION OF MODULE PSEUDOM
OBJECT MODULE PLACED IN PSEUD2.OBJ
COMPILER INVOKED BY: :F0: PSEUD2.PLM DEBUG OPTIMIZE(2) DATE(10/5/81) PAGEWIDTH(100) XREF
$title ('PSEUDO INSTRUCTION MODULE-2')
1 pseudom:
do;
/*
modified 3/28/81 R. Silberstein
modified 4/1/81 R. Silberstein
modified 4/9/81 R. Silberstein
modified 4/15/81 R. Silberstein
modified 7/24/81 R. Silberstein
modified 9/2/81 R. Silberstein
*/
/*
This is the module to perform the decoding of
all legal pseudo instructions of the assembler.
There is one subroutine for each corresponding
pseudoinstruction.
*/
$include (:f1:macro.lit)
= $nolist
$include (:f1:struc.lit)
= $nolist
$include (:f1:equals.lit)
= $nolist
$include (:f1:ermod.lit)
= $nolist
$include (:f1:files.ext)
= $nolist
$include (:f1:subr1.ext)
= $nolist
$include (:f1:subr2.ext)
= $nolist
$include (:f1:scan.ext)
= $nolist
$include (:f1:print.ext)
= $nolist
$include (:f1:expr.ext)
= $nolist
$include (:f1:ermod.ext)
= $nolist
$include (:f1:pseud2.x86)
= $nolist
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 2
$eject
/*************** COMMON SUBROUTINES *************/
/* routine to test if rest of line is either a comment or empty -
if not, print error message - skip rest of line */
139 1 test$emptyline: proc;
140 2 if not emptyline then call errmsg(end$of$line$err);
142 2 call skip$rest$of$line;
143 2 end test$emptyline;
/* perform handling for PAGEWIDTH- and PAGESIZE-routine */
144 1 sizewidth: proc(p);
145 2 dcl oper operandstruc at (.operands(0)),p address,dest based p byte;
146 2 if pass=0 then$do
148 3 call skip$rest$of$line; /* do nothing in pass 0 */
149 3 else$do
151 3 if expression(.oper) then$do
153 4 if oper.stype = number then$do
155 5 dest=oper.offset;
156 5 call test$emptyline;
157 5 return;
158 5 end$if;
end$if;
160 3 call errmsg(pseudooperr);
161 3 call skip$rest$of$line;
162 3 end$if;
163 2 end sizewidth;
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 3
$eject
/***************** PSEUDO SUBROUTINES **************/
164 1 IFrout: proc public;
165 2 DECLARE IFNESTMAX LIT '5'; /* MAX LEVEL OF IF NEXTING */
166 2 dcl oper operandstruc at (.operands(0)),bool byte;
167 2 IFerr: proc;
168 3 call errmsg(ifparerr);
169 3 call skip$rest$of$line;
170 3 end IFerr;
171 2 skip$until$ENDIF: proc;
172 3 dcl pseudotype byte at (.token.value);
173 3 DECLARE LOCIFLEVEL BYTE;
174 3 DECLARE TEMP BYTE;
175 3 LOCIFLEVEL = IFLEVEL + 1;
176 3 IF PRINTON AND NOT IFLIST THEN$DO
178 4 CALL PRINTSOURCELINE;
179 4 PRINTON = FALSE;
180 4 TEMP = TRUE;
181 4 ELSE$DO
183 4 TEMP = FALSE;
184 4 END$IF;
185 3 do while not eofset; /* (forever) */
186 4 call scan;
187 4 IF TOKEN.TYPE = PSEUDO THEN$DO
189 5 IF PSEUDOTYPE = PENDIF THEN$DO
191 6 LOCIFLEVEL = LOCIFLEVEL - 1;
192 6 IF LOCIFLEVEL = 0 THEN$DO
194 7 CALL SCAN;
195 7 CALL TESTEMPTYLINE;
196 7 IF TEMP THEN PRINTON = TRUE;
198 7 RETURN;
199 7 END$IF;
ELSE$DO
202 6 IF PSEUDOTYPE = PIF THEN$DO
204 7 LOCIFLEVEL = LOCIFLEVEL + 1;
205 7 END$IF;
END$IF;
207 5 END$IF;
208 4 call skip$rest$of$line;
209 4 end$while;
210 3 end skip$until$ENDIF;
211 2 IF IFLEVEL = IFNESTMAX THEN$DO
213 3 call errmsg(nestediferr);
214 3 call skip$rest$of$line;
215 3 else$do
217 3 if not noforwardexpr(.oper) then$do
219 4 call IFerr;
220 4 else$do
222 4 if oper.stype <> number then$do
224 5 call IFerr;
225 5 else$do
227 5 bool=oper.offset;
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 4
228 5 if bool <> 0 then$do
230 6 IFLEVEL = IFLEVEL + 1;
231 6 call test$emptyline;
232 6 else$do
234 6 call skip$rest$of$line;
235 6 call skip$until$ENDIF;
236 6 end$if;
237 5 end$if;
238 4 end$if;
239 3 end$if;
240 2 end IFrout;
241 1 ENDIFrout: proc public;
242 2 IF IFLEVEL > 0 THEN$DO
244 3 IFLEVEL = IFLEVEL - 1;
245 3 call test$emptyline;
246 3 else$do
248 3 call errmsg(missiferr);
249 3 call skip$rest$of$line;
250 3 end$if;
251 2 end ENDIFrout;
252 1 INCLUDErout: proc public;
253 2 dcl (disk,i,errflag) byte,filname(11) byte,filtype(3) byte at (.filname (8));
254 2 syntaxerr: proc;
255 3 call errmsg(filesynterr);
256 3 errflag=true;
257 3 end syntaxerr;
258 2 accum$not$alpha: proc byte;
259 3 i=0ffh;
260 3 do while (i:=i+1) < acclen;
261 4 if not alphanumeric(accum(i)) then return true;
end$while;
264 3 return false;
265 3 end accum$not$alpha;
266 2 if include$on then$do
268 3 call errmsg(nestedincludeerr);
269 3 call skip$rest$of$line;
270 3 return;
271 3 end$if;
272 2 errflag=false;
273 2 disk=include$default; /* default disk is current one */
274 2 CALL FILL (SPACE, SIZE (FILNAME), .FILNAME);
275 2 if (acclen=1) and (nextch=':') and (letter(accum(0))) then$do
/* disk name found */
277 3 disk=accum(0)-'A';
278 3 call scan; /* skip : */
279 3 call scan; /* get filename */
280 3 end$if;
/* test syntax of filename */
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 5
281 2 if (acclen > 8) or accum$not$alpha then$do
283 3 call syntaxerr; /* illegal filename */
284 3 else$do
286 3 call copy(acclen,.accum(0),.filname); /* pick up filename */
287 3 call scan; /* skip filename */
/* test if filetype - if so, pick it up */
288 3 if specialtoken('.') then$do
290 4 call scan; /* skip . */
291 4 if (acclen > 3) or accum$not$alpha then$do
293 5 call syntaxerr;
294 5 else$do
296 5 call copy(acclen,.accum(0),.filtype(0));
297 5 call scan;
298 5 end$if;
299 4 ELSE$DO
301 4 CALL COPY (3, .('A86'), .FILTYPE); /* DEFAULT FILE TYPE */
302 4 end$if;
303 3 end$if;
304 2 if errflag then$do
306 3 call skip$rest$of$line;
307 3 else$do
/* try to open include file */
309 3 call i$file$setup(disk,.filname,.filtype);
310 3 CALL OPEN$INCLUDE;
311 3 call test$emptyline;
312 3 include$on=true;
313 3 end$if;
314 2 end INCLUDErout;
315 1 ENDrout: proc public;
316 2 call test$emptyline;
317 2 eofset=true;
318 2 end ENDrout;
319 1 PAGESIZErout: proc public;
320 2 call sizewidth(.pagesize);
321 2 end PAGESIZErout;
322 1 PAGEWIDTHrout: proc public;
323 2 call sizewidth(.maxcol);
324 2 end PAGEWIDTHrout;
325 1 TITLErout: proc public;
326 2 do case pass;
327 3 do; /* pass 0 */
328 4 if token.type=string then$do
330 5 call fill(0,length(title),.title(0));
331 5 if acclen > length(title) then acclen=length(title);
333 5 call copy(acclen,.accum(0),.title(0));
334 5 end$if;
335 4 call skip$rest$of$line;
336 4 end;
337 3 do; /* do nothing in pass 1 */
338 4 call skip$rest$of$line;
339 4 end;
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 6
340 3 do; /* pass 2 */
341 4 if token.type=string then$do
343 5 call scan;
344 5 call test$emptyline;
345 5 else$do
347 5 call errmsg(pseudooperr);
348 5 call skip$rest$of$line;
349 5 end$if;
350 4 end;
351 3 end$case;
352 2 end TITLErout;
353 1 EJECTrout: proc public;
354 2 if print$on then call printnewpage;
356 2 call test$emptyline;
357 2 end EJECTrout;
358 1 SIMFORMrout: proc public;
359 2 simform=true;
360 2 call test$emptyline;
361 2 end SIMFORMrout;
362 1 LISTrout: proc public;
363 2 call test$emptyline;
364 2 if printswitchoff then$do
366 3 printswitchoff=false;
367 3 print$on=true;
368 3 sourceptr=0;
369 3 end$if;
370 2 end LISTrout;
371 1 NOLISTrout: proc public;
372 2 if print$on then$do
374 3 call test$emptyline;
375 3 call printsourceline;
376 3 printswitchoff=true;
377 3 print$on=false;
378 3 else$do
380 3 call test$emptyline;
381 3 end$if;
382 2 end NOLISTrout;
383 1 IFLISTROUT: PROC PUBLIC;
384 2 CALL TESTEMPTYLINE;
385 2 IFLIST = TRUE;
386 2 END IFLISTROUT;
387 1 NOIFLISTROUT: PROC PUBLIC;
388 2 CALL TESTEMPTYLINE;
389 2 IFLIST = FALSE;
390 2 END NOIFLISTROUT;
391 1 end$module pseudom;
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 7
CROSS-REFERENCE LISTING
-----------------------
DEFN ADDR SIZE NAME, ATTRIBUTES, AND REFERENCES
----- ------ ----- --------------------------------
138 0000H 1 ACCLEN . . . . . . BYTE EXTERNAL(62) 260 275 281 286 291
296 331 332 333
138 0000H 80 ACCUM. . . . . . . BYTE ARRAY(80) EXTERNAL(63) 261 275 277
286 296 333
258 0240H 47 ACCUMNOTALPHA. . . PROCEDURE BYTE STACK=0006H 281 291
2 ADDR . . . . . . . LITERALLY 46 51 54 57 60 66 84
87 90 93 138 145 166
74 0000H ALPHANUMERIC . . . PROCEDURE BYTE EXTERNAL(26) STACK=0000H 261
77 0000H ASCIICHAR. . . . . PROCEDURE BYTE EXTERNAL(27) STACK=0000H
166 0008H 1 BASEINDEX. . . . . BYTE MEMBER(OPER)
138 0008H 1 BASEINDEX. . . . . BYTE MEMBER(OPERANDS)
145 0008H 1 BASEINDEX. . . . . BYTE MEMBER(OPER)
3 BASEREGBIT . . . . LITERALLY
3 BASEREGCOUNT . . . LITERALLY
166 0000H 1 BOOL . . . . . . . BYTE 227 228
3 BREGBIT. . . . . . LITERALLY
3 BREGCOUNT. . . . . LITERALLY
5 BYT. . . . . . . . LITERALLY
16 0000H 1 CH . . . . . . . . BYTE PARAMETER 17
65 0000H 1 CH . . . . . . . . BYTE PARAMETER 66
13 0000H 1 CH . . . . . . . . BYTE PARAMETER 14
10 0000H 1 CH . . . . . . . . BYTE PARAMETER 11
71 0000H 1 CH . . . . . . . . BYTE PARAMETER 72
68 0000H 1 CH . . . . . . . . BYTE PARAMETER 69
109 0000H 1 CH . . . . . . . . BYTE PARAMETER 110
74 0000H 1 CH . . . . . . . . BYTE PARAMETER 75
77 0000H 1 CH . . . . . . . . BYTE PARAMETER 78
80 0000H 1 CH . . . . . . . . BYTE PARAMETER 81
39 0000H CLOSEHEX . . . . . PROCEDURE EXTERNAL(13) STACK=0000H
37 0000H CLOSEINCLUDE . . . PROCEDURE EXTERNAL(12) STACK=0000H
41 0000H CLOSEPRINT . . . . PROCEDURE EXTERNAL(14) STACK=0000H
33 0000H CLOSESOURCE. . . . PROCEDURE EXTERNAL(10) STACK=0000H
43 0000H CLOSESYMBOL. . . . PROCEDURE EXTERNAL(15) STACK=0000H
4 CODE . . . . . . . LITERALLY
9 CODEMACROERR . . . LITERALLY
3 CODEMACROHEAD. . . LITERALLY
56 0000H COPY . . . . . . . PROCEDURE EXTERNAL(20) STACK=0000H 286 296
301 333
2 CR . . . . . . . . LITERALLY
83 0000H 2 D. . . . . . . . . WORD PARAMETER 84
86 0000H 2 D. . . . . . . . . WORD PARAMETER 87
56 0000H 2 D. . . . . . . . . WORD PARAMETER 57
89 0000H 2 D. . . . . . . . . WORD PARAMETER 90
92 0000H 2 D. . . . . . . . . WORD PARAMETER 93
2 DCL. . . . . . . . LITERALLY
92 0000H DECOUT . . . . . . PROCEDURE EXTERNAL(32) STACK=0000H
4 DELETEDSYMB. . . . LITERALLY
138 0001H 1 DESCR. . . . . . . BYTE MEMBER(TOKEN)
145 0000H 1 DEST . . . . . . . BYTE BASED(P) 155
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 8
45 0000H 1 DEV. . . . . . . . BYTE PARAMETER 46
68 0000H DIGIT. . . . . . . PROCEDURE BYTE EXTERNAL(24) STACK=0000H
253 0003H 1 DISK . . . . . . . BYTE 273 277 309
4 DOUBLEDEFINED. . . LITERALLY
9 DOUBLEDEFLAB . . . LITERALLY
9 DOUBLEDEFSYMB. . . LITERALLY
9 DOUBLEDEFVAR . . . LITERALLY
5 DWRD . . . . . . . LITERALLY
123 0000H EJECT. . . . . . . PROCEDURE EXTERNAL(45) STACK=0000H
353 02F5H 18 EJECTROUT. . . . . PROCEDURE PUBLIC STACK=000AH
2 ELSEDO . . . . . . LITERALLY 199
107 0000H EMPTYLINE. . . . . PROCEDURE BYTE EXTERNAL(38) STACK=0000H 140
2 ENDCASE. . . . . . LITERALLY
2 ENDDO. . . . . . . LITERALLY
2 ENDFOREVER . . . . LITERALLY
2 ENDIF. . . . . . . LITERALLY 158 205
241 0119H 30 ENDIFROUT. . . . . PROCEDURE PUBLIC STACK=000AH
2 ENDMODULE. . . . . LITERALLY
2 ENDOFFILE. . . . . LITERALLY
9 ENDOFLINEERR . . . LITERALLY 141
2 ENDPROC. . . . . . LITERALLY
315 026FH 13 ENDROUT. . . . . . PROCEDURE PUBLIC STACK=000AH
2 ENDWHILE . . . . . LITERALLY 262
138 0000H 1 EOFSET . . . . . . BYTE EXTERNAL(64) 185 317
83 0000H EQUAL. . . . . . . PROCEDURE BYTE EXTERNAL(29) STACK=0000H
253 0005H 1 ERRFLAG. . . . . . BYTE 256 272 304
135 0000H ERRMSG . . . . . . PROCEDURE EXTERNAL(50) STACK=0000H 141 160
168 213 248 255 268 347
135 0000H 1 ERRNO. . . . . . . BYTE PARAMETER 136
4 ERROR. . . . . . . LITERALLY
129 0000H EXPRESSION . . . . PROCEDURE BYTE EXTERNAL(48) STACK=0000H 151
2 FALSE. . . . . . . LITERALLY 179 183 264 272 366 377 389
62 0000H 2 FCBADR . . . . . . WORD PARAMETER 63
62 0000H FILEABORT. . . . . PROCEDURE EXTERNAL(22) STACK=0000H
3 FILEISTRUCTURE . . LITERALLY
3 FILEOSTRUCTURE . . LITERALLY
48 0000H FILESETUP. . . . . PROCEDURE BYTE EXTERNAL(17) STACK=0000H
9 FILESYNTERR. . . . LITERALLY 255
65 0000H FILL . . . . . . . PROCEDURE EXTERNAL(23) STACK=0000H 274 330
45 0000H 2 FILNAM . . . . . . WORD PARAMETER 46
253 0006H 11 FILNAME. . . . . . BYTE ARRAY(11) 253 274 286 309
45 0000H 2 FILTYP . . . . . . WORD PARAMETER 46
253 000EH 3 FILTYPE. . . . . . BYTE ARRAY(3) AT 296 301 309
9 FIRSTITEM. . . . . LITERALLY
2 FOREVER. . . . . . LITERALLY
2 FORMFEED . . . . . LITERALLY
86 0000H HEX1OUT. . . . . . PROCEDURE EXTERNAL(30) STACK=0000H
89 0000H HEX2OUT. . . . . . PROCEDURE EXTERNAL(31) STACK=0000H
253 0004H 1 I. . . . . . . . . BYTE 259 260 261
4 IDENT. . . . . . . LITERALLY
167 0099H 14 IFERR. . . . . . . PROCEDURE STACK=0006H 219 224
45 0000H IFILESETUP . . . . PROCEDURE EXTERNAL(16) STACK=0000H 309
138 0000H 1 IFLEVEL. . . . . . BYTE EXTERNAL(66) 175 211 230 242 244
138 0000H 1 IFLIST . . . . . . BYTE EXTERNAL(54) 176 385 389
383 0353H 13 IFLISTROUT . . . . PROCEDURE PUBLIC STACK=000AH
165 IFNESTMAX. . . . . LITERALLY 211
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 9
9 IFPARERR . . . . . LITERALLY 168
164 004DH 76 IFROUT . . . . . . PROCEDURE PUBLIC STACK=000EH
9 ILLEGALMACRO . . . LITERALLY
9 ILLEGALPSEUDO. . . LITERALLY
9 ILLEXPRELEM. . . . LITERALLY
9 ILLIOPER . . . . . LITERALLY
138 0000H 1 INCLUDEDEFAULT . . BYTE EXTERNAL(68) 273
138 0000H 1 INCLUDEON. . . . . BYTE EXTERNAL(65) 266 312
252 0137H 249 INCLUDEROUT. . . . PROCEDURE PUBLIC STACK=000CH
3 INDEXREGBIT. . . . LITERALLY
3 INDEXREGCOUNT. . . LITERALLY
21 0000H ININCLUDEBYTE. . . PROCEDURE BYTE EXTERNAL(4) STACK=0000H
2 INIT . . . . . . . LITERALLY
19 0000H INSOURCEBYTE . . . PROCEDURE BYTE EXTERNAL(3) STACK=0000H
9 INSTRERR . . . . . LITERALLY
3 IREGBIT. . . . . . LITERALLY
3 IREGCOUNT. . . . . LITERALLY
4 LAB. . . . . . . . LITERALLY
9 LABOUTOFRANGE. . . LITERALLY
8 LEFTBRACKET. . . . LITERALLY
145 0000H 2 LENGTH . . . . . . WORD MEMBER(OPER)
138 0000H 2 LENGTH . . . . . . WORD MEMBER(OPERANDS)
166 0000H 2 LENGTH . . . . . . WORD MEMBER(OPER)
LENGTH . . . . . . BUILTIN 330 331 332
71 0000H LETTER . . . . . . PROCEDURE BYTE EXTERNAL(25) STACK=0000H 275
2 LF . . . . . . . . LITERALLY
362 0314H 30 LISTROUT . . . . . PROCEDURE PUBLIC STACK=000AH
2 LIT. . . . . . . . LITERALLY 2 3 4 5 6 7 8
9 165
173 0001H 1 LOCIFLEVEL . . . . BYTE 175 191 192 204
138 0000H 1 MAXCOL . . . . . . BYTE EXTERNAL(55) 323
9 MISSIFERR. . . . . LITERALLY 248
9 MISSINGPSEUDO. . . LITERALLY
9 MISSINSTR. . . . . LITERALLY
9 MISSSEGMINFO . . . LITERALLY
9 MISSTYPEINFO . . . LITERALLY
92 0000H 2 N. . . . . . . . . WORD PARAMETER 93
89 0000H 2 N. . . . . . . . . WORD PARAMETER 90
86 0000H 1 N. . . . . . . . . BYTE PARAMETER 87
83 0000H 1 N. . . . . . . . . BYTE PARAMETER 84
65 0000H 1 N. . . . . . . . . BYTE PARAMETER 66
56 0000H 1 N. . . . . . . . . BYTE PARAMETER 57
53 0000H 2 N. . . . . . . . . WORD PARAMETER 54
4 NEGLECTED. . . . . LITERALLY
9 NEGLECTERR . . . . LITERALLY
9 NESTEDIFERR. . . . LITERALLY 213
9 NESTEDINCLUDEERR . LITERALLY 268
138 0000H 1 NEXTCH . . . . . . BYTE EXTERNAL(61) 275
5 NIL. . . . . . . . LITERALLY
132 0000H NOFORWARDEXPR. . . PROCEDURE BYTE EXTERNAL(49) STACK=0000H 217
127 0000H NOFORWARDOPER. . . PROCEDURE BYTE EXTERNAL(47) STACK=0000H
387 0360H 13 NOIFLISTROUT . . . PROCEDURE PUBLIC STACK=000AH
371 0332H 33 NOLISTROUT . . . . PROCEDURE PUBLIC STACK=000AH
3 NOOVERCOUNT. . . . LITERALLY
3 NOOVERRIDEBIT. . . LITERALLY
4 NUMBER . . . . . . LITERALLY 153 222
8 OAND . . . . . . . LITERALLY
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 10
8 OEQ. . . . . . . . LITERALLY
145 0006H 2 OFFSET . . . . . . WORD MEMBER(OPER) 155
138 0006H 2 OFFSET . . . . . . WORD MEMBER(OPERANDS)
166 0006H 2 OFFSET . . . . . . WORD MEMBER(OPER) 227
8 OGE. . . . . . . . LITERALLY
8 OGT. . . . . . . . LITERALLY
8 OLAST. . . . . . . LITERALLY
8 OLE. . . . . . . . LITERALLY
8 OLENGTH. . . . . . LITERALLY
8 OLT. . . . . . . . LITERALLY
8 OMOD . . . . . . . LITERALLY
8 ONE. . . . . . . . LITERALLY
8 ONOT . . . . . . . LITERALLY
8 OOFFSET. . . . . . LITERALLY
8 OOR. . . . . . . . LITERALLY
27 0000H OPENHEX. . . . . . PROCEDURE EXTERNAL(7) STACK=0000H
25 0000H OPENINCLUDE. . . . PROCEDURE EXTERNAL(6) STACK=0000H 310
29 0000H OPENPRINT. . . . . PROCEDURE EXTERNAL(8) STACK=0000H
23 0000H OPENSOURCE . . . . PROCEDURE EXTERNAL(5) STACK=0000H
31 0000H OPENSYMBOL . . . . PROCEDURE EXTERNAL(9) STACK=0000H
145 0000H 9 OPER . . . . . . . STRUCTURE EXTERNAL(67) AT 151 153 155
166 0000H 9 OPER . . . . . . . STRUCTURE EXTERNAL(67) AT 217 222 227
125 0000H OPERAND. . . . . . PROCEDURE BYTE EXTERNAL(46) STACK=0000H
138 0000H 36 OPERANDS . . . . . STRUCTURE ARRAY(4) EXTERNAL(67) 145 166
3 OPERANDSTRUC . . . LITERALLY 138 145 166
4 OPERATOR . . . . . LITERALLY
9 OPMISMATCH . . . . LITERALLY
8 OPTR . . . . . . . LITERALLY
8 OSEG . . . . . . . LITERALLY
8 OSHL . . . . . . . LITERALLY
8 OSHORT . . . . . . LITERALLY
8 OSHR . . . . . . . LITERALLY
8 OTYPE. . . . . . . LITERALLY
10 0000H OUTHEXBYTE . . . . PROCEDURE EXTERNAL(0) STACK=0000H
13 0000H OUTPRINTBYTE . . . PROCEDURE EXTERNAL(1) STACK=0000H
16 0000H OUTSYMBOLBYTE. . . PROCEDURE EXTERNAL(2) STACK=0000H
59 0000H OUTTEXT. . . . . . PROCEDURE EXTERNAL(21) STACK=0000H
8 OXOR . . . . . . . LITERALLY
144 0004H 2 P. . . . . . . . . WORD PARAMETER AUTOMATIC 145 155
138 0000H 1 PAGESIZE . . . . . BYTE EXTERNAL(57) 320
319 027CH 12 PAGESIZEROUT . . . PROCEDURE PUBLIC STACK=0010H
322 0288H 12 PAGEWIDTHROUT. . . PROCEDURE PUBLIC STACK=0010H
138 0000H 1 PASS . . . . . . . BYTE EXTERNAL(51) 146 326
7 PCODEMACRO . . . . LITERALLY
7 PCSEG. . . . . . . LITERALLY
7 PDB. . . . . . . . LITERALLY
7 PDBIT. . . . . . . LITERALLY
7 PDD. . . . . . . . LITERALLY
7 PDSEG. . . . . . . LITERALLY
7 PDW. . . . . . . . LITERALLY
7 PEJECT . . . . . . LITERALLY
7 PEND . . . . . . . LITERALLY
7 PENDIF . . . . . . LITERALLY 189
7 PENDM. . . . . . . LITERALLY
7 PEQU . . . . . . . LITERALLY
7 PESEG. . . . . . . LITERALLY
7 PIF. . . . . . . . LITERALLY 202
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 11
7 PIFLIST. . . . . . LITERALLY
7 PINCLUDE . . . . . LITERALLY
7 PLIST. . . . . . . LITERALLY
7 PMODRM . . . . . . LITERALLY
7 PNOIFLIST. . . . . LITERALLY
7 PNOLIST. . . . . . LITERALLY
7 PNOSEGFIX. . . . . LITERALLY
7 PORG . . . . . . . LITERALLY
7 PPAGESIZE. . . . . LITERALLY
7 PPAGEWIDTH . . . . LITERALLY
7 PRB. . . . . . . . LITERALLY
7 PRELB. . . . . . . LITERALLY
7 PRELW. . . . . . . LITERALLY
112 0000H PRINTCRLF. . . . . PROCEDURE EXTERNAL(40) STACK=0000H
118 0000H PRINTINIT. . . . . PROCEDURE EXTERNAL(43) STACK=0000H
114 0000H PRINTNEWPAGE . . . PROCEDURE EXTERNAL(41) STACK=0000H 355
138 0000H 1 PRINTON. . . . . . BYTE EXTERNAL(52) 176 179 197 354 367
372 377
109 0000H PRINTSINGLEBYTE. . PROCEDURE EXTERNAL(39) STACK=0000H
116 0000H PRINTSOURCELINE. . PROCEDURE EXTERNAL(42) STACK=0000H 178 375
138 0000H 1 PRINTSWITCHOFF . . BYTE EXTERNAL(53) 364 366 376
120 0000H PRINTTERMINATE . . PROCEDURE EXTERNAL(44) STACK=0000H
2 PROC . . . . . . . LITERALLY 10 13 16 19 21 23 25
27 29 31 33 35 37 39 41 43 45
48 50 53 74 77 86 89 92 95 97
99 101 104 107 109 112 114 116 118 120
123 125 127 129 132 135 139 144 164 167
171 241 252 254 258 315 319 322 325 353
358 362 371 383 387
7 PRS. . . . . . . . LITERALLY
7 PRW. . . . . . . . LITERALLY
7 PSEGFIX. . . . . . LITERALLY
4 PSEUDO . . . . . . LITERALLY 187
1 0000H PSEUDOM. . . . . . PROCEDURE STACK=0000H
9 PSEUDOOPERR. . . . LITERALLY 160 347
172 0002H 1 PSEUDOTYPE . . . . BYTE EXTERNAL(60) AT 189 202
7 PSIMFORM . . . . . LITERALLY
7 PSSEG. . . . . . . LITERALLY
132 0000H 2 PT . . . . . . . . WORD PARAMETER 133
129 0000H 2 PT . . . . . . . . WORD PARAMETER 130
65 0000H 2 PT . . . . . . . . WORD PARAMETER 66
7 PTITLE . . . . . . LITERALLY
6 RAH. . . . . . . . LITERALLY
6 RAL. . . . . . . . LITERALLY
6 RAX. . . . . . . . LITERALLY
6 RBH. . . . . . . . LITERALLY
6 RBL. . . . . . . . LITERALLY
6 RBP. . . . . . . . LITERALLY
6 RBX. . . . . . . . LITERALLY
6 RCH. . . . . . . . LITERALLY
6 RCL. . . . . . . . LITERALLY
6 RCS. . . . . . . . LITERALLY
6 RCX. . . . . . . . LITERALLY
6 RDH. . . . . . . . LITERALLY
6 RDI. . . . . . . . LITERALLY
6 RDL. . . . . . . . LITERALLY
6 RDS. . . . . . . . LITERALLY
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 12
6 RDX. . . . . . . . LITERALLY
2 REENT. . . . . . . LITERALLY
4 REG. . . . . . . . LITERALLY
6 RES. . . . . . . . LITERALLY
35 0000H REWINDSOURCE . . . PROCEDURE EXTERNAL(11) STACK=0000H
8 RIGHTBRACKET . . . LITERALLY
6 RSI. . . . . . . . LITERALLY
6 RSP. . . . . . . . LITERALLY
6 RSS. . . . . . . . LITERALLY
83 0000H 2 S. . . . . . . . . WORD PARAMETER 84
56 0000H 2 S. . . . . . . . . WORD PARAMETER 57
97 0000H SCAN . . . . . . . PROCEDURE EXTERNAL(34) STACK=0000H 186 194
278 279 287 290 297 343
95 0000H SCANINIT . . . . . PROCEDURE EXTERNAL(33) STACK=0000H
3 SEGMBIT. . . . . . LITERALLY
3 SEGMCOUNT. . . . . LITERALLY
166 0004H 2 SEGMENT. . . . . . WORD MEMBER(OPER)
145 0004H 2 SEGMENT. . . . . . WORD MEMBER(OPER)
138 0004H 2 SEGMENT. . . . . . WORD MEMBER(OPERANDS)
3 SEGTYPEBIT . . . . LITERALLY
3 SEGTYPECOUNT . . . LITERALLY
166 0003H 1 SFLAG. . . . . . . BYTE MEMBER(OPER)
145 0003H 1 SFLAG. . . . . . . BYTE MEMBER(OPER)
138 0003H 1 SFLAG. . . . . . . BYTE MEMBER(OPERANDS)
138 0000H 1 SIMFORM. . . . . . BYTE EXTERNAL(58) 359
358 0307H 13 SIMFORMROUT. . . . PROCEDURE PUBLIC STACK=000AH
SIZE . . . . . . . BUILTIN 274
144 0017H 54 SIZEWIDTH. . . . . PROCEDURE STACK=000CH 320 323
99 0000H SKIPRESTOFLINE . . PROCEDURE EXTERNAL(35) STACK=0000H 142 148
161 169 208 214 234 249 269 306 335 338
348
104 0000H SKIPUNTIL. . . . . PROCEDURE BYTE EXTERNAL(37) STACK=0000H
171 00A7H 114 SKIPUNTILENDIF . . PROCEDURE STACK=000AH 235
138 0000H 1 SOURCEPTR. . . . . BYTE EXTERNAL(59) 368
2 SPACE. . . . . . . LITERALLY 274
4 SPEC . . . . . . . LITERALLY
101 0000H SPECIALTOKEN . . . PROCEDURE BYTE EXTERNAL(36) STACK=0000H 288
4 STRING . . . . . . LITERALLY 328 341
2 STRUC. . . . . . . LITERALLY 138 145 166
166 0002H 1 STYPE. . . . . . . BYTE MEMBER(OPER) 222
145 0002H 1 STYPE. . . . . . . BYTE MEMBER(OPER) 153
138 0002H 1 STYPE. . . . . . . BYTE MEMBER(OPERANDS)
4 SYMBOL . . . . . . LITERALLY
3 SYMBOLHEAD . . . . LITERALLY
3 SYMBOLSTRUC. . . . LITERALLY 138 145 166
254 0230H 16 SYNTAXERR. . . . . PROCEDURE STACK=0006H 283 293
59 0000H 2 T. . . . . . . . . WORD PARAMETER 60
2 TAB. . . . . . . . LITERALLY
174 0002H 1 TEMP . . . . . . . BYTE 180 183 196
139 0000H 23 TESTEMPTYLINE. . . PROCEDURE STACK=0006H 156 195 231 245
311 316 344 356 360 363 374 380 384 388
62 0000H 2 TEXTADR. . . . . . WORD PARAMETER 63
2 THENDO . . . . . . LITERALLY 146 151 153 176 187 189 192
202 211 217 222 228 242 266 275 281 288
291 304 328 341 364 372
138 0000H 30 TITLE. . . . . . . BYTE ARRAY(30) EXTERNAL(56) 330 331 332
333
PL/M-86 COMPILER PSEUDO INSTRUCTION MODULE-2 10/5/81 PAGE 13
325 0294H 97 TITLEROUT. . . . . PROCEDURE PUBLIC STACK=000AH
104 0000H 1 TOK. . . . . . . . BYTE PARAMETER 105
101 0000H 1 TOK. . . . . . . . BYTE PARAMETER 102
138 0000H 4 TOKEN. . . . . . . STRUCTURE EXTERNAL(60) 172 187 328 341
2 TRUE . . . . . . . LITERALLY 180 197 256 262 312 317 359
367 376 385
138 0000H 1 TYPE . . . . . . . BYTE MEMBER(TOKEN) 187 328 341
3 TYPEBIT. . . . . . LITERALLY
50 0000H TYPECALC . . . . . PROCEDURE BYTE EXTERNAL(18) STACK=0000H
3 TYPECOUNT. . . . . LITERALLY
4 UDEFSYMB . . . . . LITERALLY
9 UDEFSYMBOL . . . . LITERALLY
80 0000H UPPER. . . . . . . PROCEDURE BYTE EXTERNAL(28) STACK=0000H
120 0000H 1 USEFACT. . . . . . BYTE PARAMETER 121
50 0000H 2 VAL. . . . . . . . WORD PARAMETER 51
138 0002H 2 VALUE. . . . . . . WORD MEMBER(TOKEN) 172
4 VARIABLE . . . . . LITERALLY
5 WRD. . . . . . . . LITERALLY
53 0000H WRDTEST. . . . . . PROCEDURE BYTE EXTERNAL(19) STACK=0000H
MODULE INFORMATION:
CODE AREA SIZE = 036DH 877D
CONSTANT AREA SIZE = 0003H 3D
VARIABLE AREA SIZE = 0011H 17D
MAXIMUM STACK SIZE = 0010H 16D
862 LINES READ
0 PROGRAM ERROR(S)
END OF PL/M-86 COMPILATION