mirror of
https://github.com/SEPPDROID/Digital-Research-Source-Code.git
synced 2025-10-26 01:44:21 +00:00
821 lines
39 KiB
Plaintext
821 lines
39 KiB
Plaintext
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 1
|
||
|
||
|
||
ISIS-II PL/M-86 V2.0 COMPILATION OF MODULE CM1
|
||
OBJECT MODULE PLACED IN CM.OBJ
|
||
COMPILER INVOKED BY: :F0: CM.PLM DEBUG OPTIMIZE(2) DATE(10/5/81) PAGEWIDTH(100) XREF
|
||
|
||
|
||
|
||
$title ('codemacro module 1')
|
||
1 cm1:
|
||
do;
|
||
|
||
/*
|
||
|
||
modified 7/24/81 R. Silberstein
|
||
|
||
*/
|
||
|
||
/* This is the module to build new instructions
|
||
which is not present in the already existing
|
||
system. */
|
||
|
||
$include (:f1:macro.lit)
|
||
= $nolist
|
||
$include (:f1:equals.lit)
|
||
= $nolist
|
||
$include (:f1:struc.lit)
|
||
= $nolist
|
||
$include (:f1:cmacd.lit)
|
||
= $nolist
|
||
$include (:f1:ermod.lit)
|
||
= $nolist
|
||
$include (:f1:scan.ext)
|
||
= $nolist
|
||
$include (:f1:ermod.ext)
|
||
= $nolist
|
||
$include (:f1:cm2.ext)
|
||
= $nolist
|
||
$include (:f1:cm.lit)
|
||
= $nolist
|
||
$include (:f1:global.ext)
|
||
= $nolist
|
||
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 2
|
||
|
||
|
||
$eject
|
||
|
||
/* Subroutines: */
|
||
|
||
59 1 more$left$on$line: PROC byte;
|
||
60 2 if accum(0) <> cr then return true;
|
||
62 2 else return false;
|
||
63 2 end$proc more$left$on$line;
|
||
|
||
64 1 modrm$rout: PROC;
|
||
65 2 dcl nopar byte;
|
||
66 2 if token.type = number then$do
|
||
68 3 call put$b(mmodrm1);
|
||
69 3 if token.value > 7 then$do
|
||
71 4 cm$error=true; /* legal values are 0,1,.. .,7 */
|
||
72 4 return;
|
||
73 4 else$do
|
||
75 4 call put$b(token.value);
|
||
76 4 end$if;
|
||
77 3 else$do
|
||
79 3 if token.type = ident then$do
|
||
81 4 if legal$parameter(acclen,.accum(0),.nopar) then$do
|
||
83 5 call put$b(mmodrm2);
|
||
84 5 call put$b(nopar);
|
||
85 5 else$do /* error, parameter mismatch */
|
||
87 5 cm$error=true;
|
||
88 5 return;
|
||
89 5 end$if;
|
||
90 4 else$do /* error, expected parameter */
|
||
92 4 cm$error=true;
|
||
93 4 return;
|
||
94 4 end$if;
|
||
95 3 end$if;
|
||
96 2 call scan;
|
||
97 2 if accum(0) <> comma then$do
|
||
/* error, expected comma */
|
||
99 3 cm$error=true;
|
||
100 3 return;
|
||
101 3 end$if;
|
||
102 2 call scan;
|
||
103 2 if token.type = ident then$do
|
||
105 3 if legal$parameter(acclen,.accum(0),.nopar) then$do
|
||
107 4 call put$b(nopar);
|
||
108 4 call scan;
|
||
109 4 return;
|
||
110 4 else$do /* error, parameter mismatch */
|
||
112 4 cm$error=true;
|
||
113 4 return;
|
||
114 4 end$if;
|
||
115 3 else$do /* error, expected parameter */
|
||
117 3 cm$error=true;
|
||
118 3 return;
|
||
119 3 end$if;
|
||
120 2 end$proc modrm$rout;
|
||
|
||
121 1 db$dw$common$rout: PROC(directive);
|
||
122 2 dcl (directive,nopar) byte;
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 3
|
||
|
||
|
||
123 2 if token.type = number then$do
|
||
125 3 call put$b(directive);
|
||
126 3 if directive = mdwn then$do
|
||
128 4 call put$w(token.value);
|
||
129 4 else$do
|
||
131 4 if token.value > 0ffh then cm$error=true;
|
||
133 4 else call put$b(token.value);
|
||
134 4 end$if;
|
||
135 3 call scan;
|
||
136 3 return;
|
||
137 3 else$do
|
||
139 3 if token.type = ident then$do
|
||
141 4 if legal$parameter(acclen,.accum(0),.nopar) then$do
|
||
143 5 call put$b(directive+1);
|
||
144 5 call put$b(nopar);
|
||
145 5 call scan;
|
||
146 5 return;
|
||
147 5 else$do /* error, parameter mismatch */
|
||
149 5 cm$error=true;
|
||
150 5 return;
|
||
151 5 end$if;
|
||
152 4 else$do /* error, expected parameter */
|
||
154 4 cm$error=true;
|
||
155 4 return;
|
||
156 4 end$if;
|
||
157 3 end$if;
|
||
158 2 end$proc db$dw$common$rout;
|
||
|
||
159 1 d$s$rb$rw$rout: PROC(directive);
|
||
160 2 dcl (directive,nopar) byte;
|
||
161 2 if token.type = ident then$do
|
||
163 3 if legal$parameter(acclen,.accum(0),.nopar) then$do
|
||
165 4 call put$b(directive);
|
||
166 4 call put$b(nopar);
|
||
167 4 call scan;
|
||
168 4 return;
|
||
169 4 else$do /* error, parameter mismatch */
|
||
171 4 cm$error=true;
|
||
172 4 return;
|
||
173 4 end$if;
|
||
174 3 else$do /* error, expected parameter */
|
||
176 3 cm$error=true;
|
||
177 3 return;
|
||
178 3 end$if;
|
||
179 2 end$proc d$s$rb$rw$rout;
|
||
|
||
180 1 nosegfix$rout: PROC;
|
||
181 2 dcl nopar byte;
|
||
182 2 call put$b(mnosegfix);
|
||
183 2 do case legal$seg$reg;
|
||
184 3 do; /* error, no segment register specified */
|
||
185 4 cm$error=true;
|
||
186 4 return;
|
||
187 4 end;
|
||
188 3 call put$b(res);
|
||
189 3 call put$b(rcs);
|
||
190 3 call put$b(rss);
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 4
|
||
|
||
|
||
191 3 call put$b(rds);
|
||
192 3 end$case;
|
||
193 2 call scan;
|
||
194 2 if accum(0) <> comma then$do
|
||
/* error, expected comma */
|
||
196 3 cm$error=true;
|
||
197 3 return;
|
||
198 3 end$if;
|
||
199 2 call scan; /* skip comma */
|
||
200 2 if legal$parameter(acclen,.accum(0),.nopar) then$do
|
||
202 3 call put$b(nopar);
|
||
203 3 call scan;
|
||
204 3 else$do
|
||
206 3 cm$error=true;
|
||
207 3 return;
|
||
208 3 end$if;
|
||
209 2 end$proc nosegfix$rout;
|
||
|
||
210 1 dbit$rout: PROC;
|
||
211 2 call put$b(mdbit);
|
||
212 2 end$proc dbit$rout;
|
||
|
||
213 1 field$descr$rout: PROC;
|
||
214 2 dcl nopar byte,cm$b$var based cmpt byte;
|
||
215 2 do forever;
|
||
216 3 if token.type <> number or token.value > 0fh then$do
|
||
/* error, expected numberdef. */
|
||
218 4 cm$error=true;
|
||
219 4 return;
|
||
220 4 end$if;
|
||
221 3 call put$b(mnumberbits);
|
||
222 3 call put$b(token.value);
|
||
223 3 call scan;
|
||
224 3 if accum(0) <> leftpar then$do
|
||
/* error, expected left paranthesis */
|
||
226 4 cm$error=true;
|
||
227 4 return;
|
||
228 4 end$if;
|
||
229 3 call scan; /* skip left paranthesis */
|
||
230 3 if token.type = ident then$do
|
||
232 4 if not legal$parameter(acclen,.accum(0),.nopar) then$do
|
||
/* error, parameter mismatch */
|
||
234 5 cm$error=true;
|
||
235 5 return;
|
||
236 5 end$if;
|
||
237 4 cmpt=cmpt-2;
|
||
238 4 cm$b$var=cm$b$var-1; /* it was a parameter, not a number */
|
||
239 4 cmpt=cmpt+2;
|
||
240 4 call put$b(nopar);
|
||
241 4 call scan;
|
||
242 4 if accum(0) <> leftpar then$do
|
||
/* error, expected left paranthesis */
|
||
244 5 cm$error=true;
|
||
245 5 return;
|
||
246 5 end$if;
|
||
247 4 call scan; /* skip left paranthesis */
|
||
248 4 end$if;
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 5
|
||
|
||
|
||
249 3 if token.type <> number or token.value > 0ffh then$do
|
||
/* error, expected numberdef.(byte) or parameter */
|
||
251 4 cm$error=true;
|
||
252 4 return;
|
||
253 4 end$if;
|
||
254 3 call put$b(token.value);
|
||
255 3 call scan;
|
||
256 3 if accum(0) <> rightpar then$do
|
||
/* error,expected right paranthesis */
|
||
258 4 cm$error=true;
|
||
259 4 return;
|
||
260 4 end$if;
|
||
261 3 call scan; /* skip right paranthesis */
|
||
262 3 cmpt=cmpt-4;
|
||
263 3 if cm$b$var = mformalbits and
|
||
accum(0) = rightpar then call scan;
|
||
265 3 cmpt=cmpt+4;
|
||
266 3 if accum(0) <> comma then return;
|
||
268 3 call scan;
|
||
269 3 end$forever;
|
||
270 2 end$proc field$descr$rout;
|
||
|
||
271 1 enddbit$rout: PROC;
|
||
272 2 call put$b(mendbit);
|
||
273 2 end$proc enddbit$rout;
|
||
|
||
274 1 endm$rout: PROC;
|
||
275 2 call put$b(mendm);
|
||
276 2 end$proc endm$rout;
|
||
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 6
|
||
|
||
|
||
$eject
|
||
|
||
/* level 1 in the syntax-tree of codemacrobuilding */
|
||
|
||
277 1 COMMON$CM$ROUT: PROC (TYPE);
|
||
278 2 DECLARE TYPE BYTE;
|
||
279 2 if pass = 1 then$do
|
||
281 3 call skip$rest$of$line;
|
||
282 3 return;
|
||
283 3 end$if;
|
||
284 2 cm$error=false;
|
||
285 2 if not codemacro$flag then$do
|
||
/* error, codemacro directive outside codemacrobodydef. */
|
||
287 3 cm$error=true;
|
||
288 3 end$if;
|
||
289 2 DO CASE TYPE;
|
||
290 3 call db$dw$common$rout(mdbn);
|
||
291 3 call db$dw$common$rout(mdwn);
|
||
292 3 call d$s$rb$rw$rout(mddf);
|
||
293 3 call d$s$rb$rw$rout(msegfix);
|
||
294 3 call nosegfix$rout;
|
||
295 3 call modrm$rout;
|
||
296 3 call d$s$rb$rw$rout(mrelb);
|
||
297 3 call d$s$rb$rw$rout(mrelw);
|
||
298 3 DO;
|
||
299 4 call dbit$rout;
|
||
300 4 call field$descr$rout;
|
||
301 4 call enddbit$rout;
|
||
302 4 END;
|
||
303 3 END$CASE;
|
||
304 2 if cm$error or more$left$on$line then$do
|
||
/* error */
|
||
306 3 global$cm$error=true;
|
||
307 3 call errmsg(codemacroerr);
|
||
308 3 end$if;
|
||
309 2 call skip$rest$of$line;
|
||
310 2 END COMMON$CM$ROUT;
|
||
|
||
311 1 codemacro$rout: PROC public;
|
||
312 2 if pass = 1 then$do
|
||
314 3 codemacro$flag=true;
|
||
315 3 call skip$rest$of$line;
|
||
316 3 return;
|
||
317 3 end$if;
|
||
318 2 cm$error=false;
|
||
319 2 global$cm$error=false;
|
||
320 2 if codemacro$flag then$do
|
||
/* error, nested codemacrodefinition */
|
||
322 3 cm$error=true;
|
||
323 3 end$if;
|
||
324 2 call init$cm$rout; /* clearing all temp. working storages */
|
||
325 2 codemacro$flag=true;
|
||
326 2 if not name$rout then$do
|
||
/* error, expected codemacroname */
|
||
328 3 cm$error=true;
|
||
329 3 end$if;
|
||
330 2 call formal$list$rout;
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 7
|
||
|
||
|
||
331 2 if cm$error or more$left$on$line$ then$do
|
||
/* error */
|
||
333 3 global$cm$error=true;
|
||
334 3 call errmsg(codemacroerr);
|
||
335 3 end$if;
|
||
336 2 call skip$rest$of$line;
|
||
337 2 end$proc codemacro$rout;
|
||
|
||
338 1 db$cm$rout: PROC public;
|
||
339 2 CALL COMMON$CM$ROUT (0);
|
||
340 2 end$proc db$cm$rout;
|
||
|
||
341 1 dw$cm$rout: PROC public;
|
||
342 2 CALL COMMON$CM$ROUT (1);
|
||
343 2 end$proc dw$cm$rout;
|
||
|
||
344 1 dd$cm$rout: PROC public;
|
||
345 2 CALL COMMON$CM$ROUT (2);
|
||
346 2 end$proc dd$cm$rout;
|
||
|
||
347 1 segfix$cm$rout: PROC public;
|
||
348 2 CALL COMMON$CM$ROUT (3);
|
||
349 2 end$proc segfix$cm$rout;
|
||
|
||
350 1 nosegfix$cm$rout: PROC public;
|
||
351 2 CALL COMMON$CM$ROUT (4);
|
||
352 2 end$proc nosegfix$cm$rout;
|
||
|
||
353 1 modrm$cm$rout: PROC public;
|
||
354 2 CALL COMMON$CM$ROUT (5);
|
||
355 2 end$proc modrm$cm$rout;
|
||
|
||
356 1 relb$cm$rout: PROC public;
|
||
357 2 CALL COMMON$CM$ROUT (6);
|
||
358 2 end$proc relb$cm$rout;
|
||
|
||
359 1 relw$cm$rout: PROC public;
|
||
360 2 CALL COMMON$CM$ROUT (7);
|
||
361 2 end$proc relw$cm$rout;
|
||
|
||
362 1 dbit$cm$rout: PROC public;
|
||
363 2 CALL COMMON$CM$ROUT (8);
|
||
364 2 end$proc dbit$cm$rout;
|
||
|
||
365 1 end$cm$rout: PROC public;
|
||
366 2 if pass = 1 then$do
|
||
368 3 call skip$rest$of$line;
|
||
369 3 codemacro$flag=false;
|
||
370 3 return;
|
||
371 3 end$if;
|
||
372 2 cm$error=false;
|
||
373 2 if not codemacro$flag then$do
|
||
/* error, terminating a not yet started codemacro */
|
||
375 3 cm$error=true;
|
||
376 3 end$if;
|
||
377 2 call endm$rout;
|
||
378 2 if pass = 0 then call terminate$cm$rout;
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 8
|
||
|
||
|
||
380 2 if cm$error or more$left$on$line or cm$list$overflow then$do
|
||
/* error */
|
||
382 3 call errmsg(codemacroerr);
|
||
383 3 end$if;
|
||
384 2 call skip$rest$of$line;
|
||
385 2 global$cm$error=false;
|
||
386 2 codemacro$flag=false;
|
||
387 2 end$proc end$cm$rout;
|
||
|
||
388 1 end$module cm1;
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 9
|
||
|
||
|
||
CROSS-REFERENCE LISTING
|
||
-----------------------
|
||
|
||
|
||
DEFN ADDR SIZE NAME, ATTRIBUTES, AND REFERENCES
|
||
----- ------ ----- --------------------------------
|
||
|
||
|
||
56 0000H 4 ABSADDR. . . . . . BYTE ARRAY(4) EXTERNAL(51)
|
||
56 0000H 1 ACCLEN . . . . . . BYTE EXTERNAL(55) 81 105 141 163 200
|
||
232
|
||
56 0000H 1 ACCLENSAVE . . . . BYTE EXTERNAL(58)
|
||
56 0000H 80 ACCUM. . . . . . . BYTE ARRAY(80) EXTERNAL(56) 60 81 97
|
||
105 141 163 194 200 224 232 242 256 263
|
||
266
|
||
56 0000H 80 ACCUMSAVE. . . . . BYTE ARRAY(80) EXTERNAL(57)
|
||
2 ADDR . . . . . . . LITERALLY 56
|
||
49 0000H 1 B. . . . . . . . . BYTE PARAMETER 50
|
||
56 0008H 1 BASEINDEX. . . . . BYTE MEMBER(OPERANDS)
|
||
56 0008H 1 BASEINDEX. . . . . BYTE MEMBER(CURRENTSYMBOL)
|
||
8 BASEREGBIT . . . . LITERALLY
|
||
8 BASEREGCOUNT . . . LITERALLY
|
||
8 BREGBIT. . . . . . LITERALLY
|
||
8 BREGCOUNT. . . . . LITERALLY
|
||
4 BYT. . . . . . . . LITERALLY
|
||
56 0000H 2 CIP. . . . . . . . WORD EXTERNAL(20)
|
||
1 0000H CM1. . . . . . . . PROCEDURE STACK=0000H
|
||
214 0000H 1 CMBVAR . . . . . . BYTE BASED(CMPT) 238 263
|
||
35 0000H 1 CMERROR. . . . . . BYTE EXTERNAL(7) 71 87 92 99 112
|
||
117 132 149 154 171 176 185 196 206 218
|
||
226 234 244 251 258 284 287 304 318 322
|
||
328 331 372 375 380
|
||
35 0000H 1 CMLISTOVERFLOW . . BYTE EXTERNAL(9) 380
|
||
35 0000H 2 CMPT . . . . . . . WORD EXTERNAL(10) 214 237 238 239 262
|
||
263 265
|
||
3 CODE . . . . . . . LITERALLY
|
||
17 CODEMACROERR . . . LITERALLY 307 334 382
|
||
56 0000H 1 CODEMACROFLAG. . . BYTE EXTERNAL(77) 285 314 320 325 369
|
||
373 386
|
||
8 CODEMACROHEAD. . . LITERALLY
|
||
56 0000H 2 CODEMACROPTR . . . WORD EXTERNAL(72)
|
||
311 0313H 91 CODEMACROROUT. . . PROCEDURE PUBLIC STACK=0006H
|
||
55 COLON. . . . . . . LITERALLY
|
||
55 COMMA. . . . . . . LITERALLY 97 194 266
|
||
277 0286H 141 COMMONCMROUT . . . PROCEDURE STACK=0012H 339 342 345 348
|
||
351 354 357 360 363
|
||
2 CR . . . . . . . . LITERALLY 60
|
||
56 0000H 2 CSCIP. . . . . . . WORD EXTERNAL(25)
|
||
56 0000H 1 CSEGSPEC . . . . . BYTE EXTERNAL(23)
|
||
56 0000H 1 CSEGTYPE . . . . . BYTE EXTERNAL(21)
|
||
56 0000H 2 CSEGVALUE. . . . . WORD EXTERNAL(22)
|
||
12 CSOVER . . . . . . LITERALLY
|
||
56 0000H 1 CSPEC. . . . . . . BYTE EXTERNAL(32)
|
||
56 0000H 2 CURCSEG. . . . . . WORD EXTERNAL(28)
|
||
56 0000H 2 CURDSEG. . . . . . WORD EXTERNAL(29)
|
||
56 0000H 2 CURESEG. . . . . . WORD EXTERNAL(31)
|
||
56 0000H 9 CURRENTSYMBOL. . . STRUCTURE EXTERNAL(68)
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 10
|
||
|
||
|
||
56 0000H 2 CURSSEG. . . . . . WORD EXTERNAL(30)
|
||
338 036EH 11 DBCMROUT . . . . . PROCEDURE PUBLIC STACK=0016H
|
||
121 0092H 108 DBDWCOMMONROUT . . PROCEDURE STACK=000CH 290 291
|
||
362 03C6H 11 DBITCMROUT . . . . PROCEDURE PUBLIC STACK=0016H
|
||
210 019EH 11 DBITROUT . . . . . PROCEDURE STACK=0006H 299
|
||
2 DCL. . . . . . . . LITERALLY
|
||
344 0384H 11 DDCMROUT . . . . . PROCEDURE PUBLIC STACK=0016H
|
||
56 0000H 1 DEFAULTDRIVE . . . BYTE EXTERNAL(75)
|
||
3 DELETEDSYMB. . . . LITERALLY
|
||
56 0001H 1 DESCR. . . . . . . BYTE MEMBER(TOKEN)
|
||
121 0004H 1 DIRECTIVE. . . . . BYTE PARAMETER AUTOMATIC 122 125 126 143
|
||
159 0004H 1 DIRECTIVE. . . . . BYTE PARAMETER AUTOMATIC 160 165
|
||
3 DOUBLEDEFINED. . . LITERALLY
|
||
17 DOUBLEDEFLAB . . . LITERALLY
|
||
17 DOUBLEDEFSYMB. . . LITERALLY
|
||
17 DOUBLEDEFVAR . . . LITERALLY
|
||
16 DOUBLERANGE. . . . LITERALLY
|
||
56 0000H 2 DSCIP. . . . . . . WORD EXTERNAL(27)
|
||
12 DSOVER . . . . . . LITERALLY
|
||
56 0000H 1 DSPEC. . . . . . . BYTE EXTERNAL(33)
|
||
159 00FEH 56 DSRBRWROUT . . . . PROCEDURE STACK=000CH 292 293 296 297
|
||
341 0379H 11 DWCMROUT . . . . . PROCEDURE PUBLIC STACK=0016H
|
||
4 DWRD . . . . . . . LITERALLY
|
||
2 ELSEDO . . . . . . LITERALLY
|
||
30 0000H EMPTYLINE. . . . . PROCEDURE BYTE EXTERNAL(5) STACK=0000H
|
||
2 ENDCASE. . . . . . LITERALLY
|
||
365 03D1H 83 ENDCMROUT. . . . . PROCEDURE PUBLIC STACK=000AH
|
||
271 0270H 11 ENDDBITROUT. . . . PROCEDURE STACK=0006H 301
|
||
2 ENDDO. . . . . . . LITERALLY
|
||
2 ENDFOREVER . . . . LITERALLY
|
||
2 ENDIF. . . . . . . LITERALLY
|
||
2 ENDMODULE. . . . . LITERALLY
|
||
274 027BH 11 ENDMROUT . . . . . PROCEDURE STACK=0006H 377
|
||
2 ENDOFFILE. . . . . LITERALLY
|
||
17 ENDOFLINEERR . . . LITERALLY
|
||
2 ENDPROC. . . . . . LITERALLY
|
||
2 ENDWHILE . . . . . LITERALLY
|
||
56 0000H 1 EOFSET . . . . . . BYTE EXTERNAL(59)
|
||
32 0000H ERRMSG . . . . . . PROCEDURE EXTERNAL(6) STACK=0000H 307 334
|
||
382
|
||
32 0000H 1 ERRNO. . . . . . . BYTE PARAMETER 33
|
||
3 ERROR. . . . . . . LITERALLY
|
||
56 0000H 1 ERRORPRINTED . . . BYTE EXTERNAL(62)
|
||
56 0000H 2 ERRORS . . . . . . WORD EXTERNAL(52)
|
||
56 0000H 2 ESCIP. . . . . . . WORD EXTERNAL(24)
|
||
12 ESOVER . . . . . . LITERALLY
|
||
56 0000H 1 ESPEC. . . . . . . BYTE EXTERNAL(35)
|
||
2 FALSE. . . . . . . LITERALLY 62 284 318 319 369 372 385
|
||
386
|
||
213 01A9H 199 FIELDDESCRROUT . . PROCEDURE STACK=000AH 300
|
||
8 FILEISTRUCTURE . . LITERALLY
|
||
8 FILEOSTRUCTURE . . LITERALLY
|
||
17 FILESYNTERR. . . . LITERALLY
|
||
55 FIRST. . . . . . . LITERALLY
|
||
17 FIRSTITEM. . . . . LITERALLY
|
||
56 0000H 2 FIRSTMACROPTR. . . WORD EXTERNAL(63)
|
||
2 FOREVER. . . . . . LITERALLY 215
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 11
|
||
|
||
|
||
40 0000H FORMALLISTROUT . . PROCEDURE EXTERNAL(13) STACK=0000H 330
|
||
2 FORMFEED . . . . . LITERALLY
|
||
56 0000H 1 FULLSYMBTAB. . . . BYTE EXTERNAL(65)
|
||
35 0000H 1 GLOBALCMERROR. . . BYTE EXTERNAL(8) 306 319 333 385
|
||
57 0000H GLOBALINIT . . . . PROCEDURE EXTERNAL(78) STACK=0000H
|
||
56 0000H 5 HELP . . . . . . . BYTE ARRAY(5) EXTERNAL(73)
|
||
56 0000H 1 I. . . . . . . . . BYTE EXTERNAL(74)
|
||
3 IDENT. . . . . . . LITERALLY 79 103 139 161 230
|
||
56 0000H 1 IFLEVEL. . . . . . BYTE EXTERNAL(67)
|
||
56 0000H 1 IFLIST . . . . . . BYTE EXTERNAL(38)
|
||
17 IFPARERR . . . . . LITERALLY
|
||
17 ILLEGALMACRO . . . LITERALLY
|
||
17 ILLEGALPSEUDO. . . LITERALLY
|
||
17 ILLEXPRELEM. . . . LITERALLY
|
||
17 ILLIOPER . . . . . LITERALLY
|
||
56 0000H 1 INCLUDEDEFAULT . . BYTE EXTERNAL(76)
|
||
56 0000H 1 INCLUDEON. . . . . BYTE EXTERNAL(66)
|
||
8 INDEXREGBIT. . . . LITERALLY
|
||
8 INDEXREGCOUNT. . . LITERALLY
|
||
2 INIT . . . . . . . LITERALLY
|
||
36 0000H INITCMROUT . . . . PROCEDURE EXTERNAL(11) STACK=0000H 324
|
||
17 INSTRERR . . . . . LITERALLY
|
||
56 0000H 1 INTELHEXON . . . . BYTE EXTERNAL(60)
|
||
8 IREGBIT. . . . . . LITERALLY
|
||
8 IREGCOUNT. . . . . LITERALLY
|
||
3 LAB. . . . . . . . LITERALLY
|
||
17 LABOUTOFRANGE. . . LITERALLY
|
||
7 LEFTBRACKET. . . . LITERALLY
|
||
55 LEFTPAR. . . . . . LITERALLY 224 242
|
||
44 0000H LEGALPARAMETER . . PROCEDURE BYTE EXTERNAL(15) STACK=0000H 81
|
||
105 141 163 200 232
|
||
47 0000H LEGALSEGREG. . . . PROCEDURE BYTE EXTERNAL(16) STACK=0000H 183
|
||
56 0000H 2 LENGTH . . . . . . WORD MEMBER(CURRENTSYMBOL)
|
||
56 0000H 2 LENGTH . . . . . . WORD MEMBER(OPERANDS)
|
||
2 LF . . . . . . . . LITERALLY
|
||
44 0000H 1 LG . . . . . . . . BYTE PARAMETER 45
|
||
2 LIT. . . . . . . . LITERALLY 2 3 4 5 6 7 8
|
||
9 10 11 12 13 14 15 16 17 55
|
||
|
||
56 0000H 2 MACROPTR . . . . . WORD EXTERNAL(64)
|
||
56 0000H 1 MAXCOL . . . . . . BYTE EXTERNAL(39)
|
||
9 MDBF . . . . . . . LITERALLY
|
||
9 MDBIT. . . . . . . LITERALLY 211
|
||
9 MDBN . . . . . . . LITERALLY 290
|
||
9 MDDF . . . . . . . LITERALLY 292
|
||
9 MDWF . . . . . . . LITERALLY
|
||
9 MDWN . . . . . . . LITERALLY 126 291
|
||
9 MENDBIT. . . . . . LITERALLY 272
|
||
9 MENDM. . . . . . . LITERALLY 275
|
||
9 MFORMALBITS. . . . LITERALLY 263
|
||
17 MISSIFERR. . . . . LITERALLY
|
||
17 MISSINGPSEUDO. . . LITERALLY
|
||
17 MISSINSTR. . . . . LITERALLY
|
||
17 MISSSEGMINFO . . . LITERALLY
|
||
17 MISSTYPEINFO . . . LITERALLY
|
||
9 MMODRM1. . . . . . LITERALLY 68
|
||
9 MMODRM2. . . . . . LITERALLY 83
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 12
|
||
|
||
|
||
9 MNOSEGFIX. . . . . LITERALLY 182
|
||
9 MNUMBERBITS. . . . LITERALLY 221
|
||
11 MODB . . . . . . . LITERALLY
|
||
11 MODD . . . . . . . LITERALLY
|
||
15 MODLETTERBIT . . . LITERALLY
|
||
15 MODLETTERCOUNT . . LITERALLY
|
||
353 03A5H 11 MODRMCMROUT. . . . PROCEDURE PUBLIC STACK=0016H
|
||
64 0012H 128 MODRMROUT. . . . . PROCEDURE STACK=000AH 295
|
||
11 MODSB. . . . . . . LITERALLY
|
||
11 MODW . . . . . . . LITERALLY
|
||
59 0000H 18 MORELEFTONLINE . . PROCEDURE BYTE STACK=0002H 304 331 380
|
||
9 MRELB. . . . . . . LITERALLY 296
|
||
9 MRELW. . . . . . . LITERALLY 297
|
||
9 MSEGFIX. . . . . . LITERALLY 293
|
||
38 0000H NAMEROUT . . . . . PROCEDURE BYTE EXTERNAL(12) STACK=0000H 326
|
||
3 NEGLECTED. . . . . LITERALLY
|
||
17 NEGLECTERR . . . . LITERALLY
|
||
17 NESTEDIFERR. . . . LITERALLY
|
||
17 NESTEDINCLUDEERR . LITERALLY
|
||
56 0000H 1 NEXTCH . . . . . . BYTE EXTERNAL(54)
|
||
4 NIL. . . . . . . . LITERALLY
|
||
56 0000H 1 NOERROR. . . . . . BYTE EXTERNAL(61)
|
||
11 NOMOD. . . . . . . LITERALLY
|
||
56 0000H 1 NOOPER . . . . . . BYTE EXTERNAL(70)
|
||
8 NOOVERCOUNT. . . . LITERALLY
|
||
8 NOOVERRIDEBIT. . . LITERALLY
|
||
214 0004H 1 NOPAR. . . . . . . BYTE 232 240
|
||
181 0003H 1 NOPAR. . . . . . . BYTE 200 202
|
||
160 0002H 1 NOPAR. . . . . . . BYTE 163 166
|
||
122 0001H 1 NOPAR. . . . . . . BYTE 141 144
|
||
65 0000H 1 NOPAR. . . . . . . BYTE 81 84 105 107
|
||
13 NOPARAND . . . . . LITERALLY
|
||
16 NORANGE. . . . . . LITERALLY
|
||
350 039AH 11 NOSEGFIXCMROUT . . PROCEDURE PUBLIC STACK=0016H
|
||
180 0136H 104 NOSEGFIXROUT . . . PROCEDURE STACK=000AH 294
|
||
3 NUMBER . . . . . . LITERALLY 66 123 216 249
|
||
16 NUMBERRANGE. . . . LITERALLY
|
||
7 OAND . . . . . . . LITERALLY
|
||
7 OEQ. . . . . . . . LITERALLY
|
||
56 0006H 2 OFFSET . . . . . . WORD MEMBER(OPERANDS)
|
||
56 0006H 2 OFFSET . . . . . . WORD MEMBER(CURRENTSYMBOL)
|
||
7 OGE. . . . . . . . LITERALLY
|
||
7 OGT. . . . . . . . LITERALLY
|
||
7 OLAST. . . . . . . LITERALLY
|
||
7 OLE. . . . . . . . LITERALLY
|
||
7 OLENGTH. . . . . . LITERALLY
|
||
7 OLT. . . . . . . . LITERALLY
|
||
7 OMOD . . . . . . . LITERALLY
|
||
7 ONE. . . . . . . . LITERALLY
|
||
7 ONOT . . . . . . . LITERALLY
|
||
7 OOFFSET. . . . . . LITERALLY
|
||
7 OOR. . . . . . . . LITERALLY
|
||
56 0000H 36 OPERANDS . . . . . STRUCTURE ARRAY(4) EXTERNAL(71)
|
||
8 OPERANDSTRUC . . . LITERALLY 56
|
||
3 OPERATOR . . . . . LITERALLY
|
||
17 OPMISMATCH . . . . LITERALLY
|
||
7 OPTR . . . . . . . LITERALLY
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 13
|
||
|
||
|
||
7 OSEG . . . . . . . LITERALLY
|
||
7 OSHL . . . . . . . LITERALLY
|
||
7 OSHORT . . . . . . LITERALLY
|
||
7 OSHR . . . . . . . LITERALLY
|
||
7 OTYPE. . . . . . . LITERALLY
|
||
7 OXOR . . . . . . . LITERALLY
|
||
56 0000H 1 PAGESIZE . . . . . BYTE EXTERNAL(45)
|
||
56 0000H 1 PASS . . . . . . . BYTE EXTERNAL(19) 279 312 366 378
|
||
6 PCODEMACRO . . . . LITERALLY
|
||
6 PCSEG. . . . . . . LITERALLY
|
||
6 PDB. . . . . . . . LITERALLY
|
||
6 PDBIT. . . . . . . LITERALLY
|
||
6 PDD. . . . . . . . LITERALLY
|
||
6 PDSEG. . . . . . . LITERALLY
|
||
6 PDW. . . . . . . . LITERALLY
|
||
6 PEJECT . . . . . . LITERALLY
|
||
6 PEND . . . . . . . LITERALLY
|
||
6 PENDIF . . . . . . LITERALLY
|
||
6 PENDM. . . . . . . LITERALLY
|
||
6 PEQU . . . . . . . LITERALLY
|
||
6 PESEG. . . . . . . LITERALLY
|
||
6 PIF. . . . . . . . LITERALLY
|
||
6 PIFLIST. . . . . . LITERALLY
|
||
6 PINCLUDE . . . . . LITERALLY
|
||
6 PLIST. . . . . . . LITERALLY
|
||
6 PMODRM . . . . . . LITERALLY
|
||
6 PNOIFLIST. . . . . LITERALLY
|
||
6 PNOLIST. . . . . . LITERALLY
|
||
6 PNOSEGFIX. . . . . LITERALLY
|
||
6 PORG . . . . . . . LITERALLY
|
||
6 PPAGESIZE. . . . . LITERALLY
|
||
6 PPAGEWIDTH . . . . LITERALLY
|
||
6 PRB. . . . . . . . LITERALLY
|
||
56 0000H 240 PREFIX . . . . . . BYTE ARRAY(240) EXTERNAL(49)
|
||
13 PREFIXAND. . . . . LITERALLY
|
||
14 PREFIXON . . . . . LITERALLY
|
||
56 0000H 1 PREFIXPTR. . . . . BYTE EXTERNAL(50)
|
||
6 PRELB. . . . . . . LITERALLY
|
||
6 PRELW. . . . . . . LITERALLY
|
||
56 0000H 1 PRINTDEVICE. . . . BYTE EXTERNAL(42)
|
||
56 0000H 1 PRINTON. . . . . . BYTE EXTERNAL(36)
|
||
56 0000H 1 PRINTSWITCHOFF . . BYTE EXTERNAL(37)
|
||
2 PROC . . . . . . . LITERALLY 18 20 22 24 27 30 32
|
||
36 38 40 42 44 47 49 52 59 64
|
||
121 159 180 210 213 271 274 277 311 338
|
||
341 344 347 350 353 356 359 362 365
|
||
6 PRS. . . . . . . . LITERALLY
|
||
6 PRW. . . . . . . . LITERALLY
|
||
6 PSEGFIX. . . . . . LITERALLY
|
||
3 PSEUDO . . . . . . LITERALLY
|
||
17 PSEUDOOPERR. . . . LITERALLY
|
||
6 PSIMFORM . . . . . LITERALLY
|
||
6 PSSEG. . . . . . . LITERALLY
|
||
6 PTITLE . . . . . . LITERALLY
|
||
44 0000H 2 PTR. . . . . . . . WORD PARAMETER 45
|
||
44 0000H 2 PTR2 . . . . . . . WORD PARAMETER 45
|
||
49 0000H PUTB . . . . . . . PROCEDURE EXTERNAL(17) STACK=0000H 68 75
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 14
|
||
|
||
|
||
83 84 107 125 133 143 144 165 166 182
|
||
188 189 190 191 202 211 221 222 240 254
|
||
272 275
|
||
52 0000H PUTW . . . . . . . PROCEDURE EXTERNAL(18) STACK=0000H 128
|
||
5 RAH. . . . . . . . LITERALLY
|
||
5 RAL. . . . . . . . LITERALLY
|
||
16 RANGEAND . . . . . LITERALLY
|
||
15 RANGESPECBIT . . . LITERALLY
|
||
15 RANGESPECCOUNT . . LITERALLY
|
||
16 RANGETYPEAND . . . LITERALLY
|
||
5 RAX. . . . . . . . LITERALLY
|
||
5 RBH. . . . . . . . LITERALLY
|
||
5 RBL. . . . . . . . LITERALLY
|
||
5 RBP. . . . . . . . LITERALLY
|
||
5 RBX. . . . . . . . LITERALLY
|
||
5 RCH. . . . . . . . LITERALLY
|
||
5 RCL. . . . . . . . LITERALLY
|
||
5 RCS. . . . . . . . LITERALLY 189
|
||
5 RCX. . . . . . . . LITERALLY
|
||
5 RDH. . . . . . . . LITERALLY
|
||
5 RDI. . . . . . . . LITERALLY
|
||
5 RDL. . . . . . . . LITERALLY
|
||
5 RDS. . . . . . . . LITERALLY 191
|
||
5 RDX. . . . . . . . LITERALLY
|
||
2 REENT. . . . . . . LITERALLY
|
||
3 REG. . . . . . . . LITERALLY
|
||
16 REGISTERRANGE. . . LITERALLY
|
||
356 03B0H 11 RELBCMROUT . . . . PROCEDURE PUBLIC STACK=0016H
|
||
359 03BBH 11 RELWCMROUT . . . . PROCEDURE PUBLIC STACK=0016H
|
||
5 RES. . . . . . . . LITERALLY 188
|
||
7 RIGHTBRACKET . . . LITERALLY
|
||
55 RIGHTPAR . . . . . LITERALLY 256 263
|
||
5 RSI. . . . . . . . LITERALLY
|
||
5 RSP. . . . . . . . LITERALLY
|
||
5 RSS. . . . . . . . LITERALLY 190
|
||
56 0000H 12 SAVESOURCE . . . . BYTE ARRAY(12) EXTERNAL(41)
|
||
20 0000H SCAN . . . . . . . PROCEDURE EXTERNAL(1) STACK=0000H 96 102
|
||
108 135 145 167 193 199 203 223 229 241
|
||
247 255 261 264 268
|
||
18 0000H SCANINIT . . . . . PROCEDURE EXTERNAL(0) STACK=0000H
|
||
55 SECOND . . . . . . LITERALLY
|
||
347 038FH 11 SEGFIXCMROUT . . . PROCEDURE PUBLIC STACK=0016H
|
||
8 SEGMBIT. . . . . . LITERALLY
|
||
8 SEGMCOUNT. . . . . LITERALLY
|
||
56 0004H 2 SEGMENT. . . . . . WORD MEMBER(OPERANDS)
|
||
56 0004H 2 SEGMENT. . . . . . WORD MEMBER(CURRENTSYMBOL)
|
||
8 SEGTYPEBIT . . . . LITERALLY
|
||
8 SEGTYPECOUNT . . . LITERALLY
|
||
56 0003H 1 SFLAG. . . . . . . BYTE MEMBER(OPERANDS)
|
||
56 0003H 1 SFLAG. . . . . . . BYTE MEMBER(CURRENTSYMBOL)
|
||
56 0000H 1 SIMFORM. . . . . . BYTE EXTERNAL(46)
|
||
16 SINGLERANGE. . . . LITERALLY
|
||
22 0000H SKIPRESTOFLINE . . PROCEDURE EXTERNAL(2) STACK=0000H 281 309
|
||
315 336 368 384
|
||
27 0000H SKIPUNTIL. . . . . PROCEDURE BYTE EXTERNAL(4) STACK=0000H
|
||
56 0000H 80 SOURCEBUF. . . . . BYTE ARRAY(80) EXTERNAL(47)
|
||
56 0000H 12 SOURCENAME . . . . BYTE ARRAY(12) EXTERNAL(40)
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 15
|
||
|
||
|
||
56 0000H 1 SOURCEPTR. . . . . BYTE EXTERNAL(48)
|
||
2 SPACE. . . . . . . LITERALLY
|
||
3 SPEC . . . . . . . LITERALLY
|
||
10 SPECA. . . . . . . LITERALLY
|
||
10 SPECC. . . . . . . LITERALLY
|
||
10 SPECD. . . . . . . LITERALLY
|
||
10 SPECE. . . . . . . LITERALLY
|
||
24 0000H SPECIALTOKEN . . . PROCEDURE BYTE EXTERNAL(3) STACK=0000H
|
||
10 SPECM. . . . . . . LITERALLY
|
||
10 SPECR. . . . . . . LITERALLY
|
||
10 SPECS. . . . . . . LITERALLY
|
||
10 SPECX. . . . . . . LITERALLY
|
||
56 0000H 2 SSCIP. . . . . . . WORD EXTERNAL(26)
|
||
12 SSOVER . . . . . . LITERALLY
|
||
56 0000H 1 SSPEC. . . . . . . BYTE EXTERNAL(34)
|
||
3 STRING . . . . . . LITERALLY
|
||
2 STRUC. . . . . . . LITERALLY 56
|
||
56 0002H 1 STYPE. . . . . . . BYTE MEMBER(OPERANDS)
|
||
56 0002H 1 STYPE. . . . . . . BYTE MEMBER(CURRENTSYMBOL)
|
||
3 SYMBOL . . . . . . LITERALLY
|
||
56 0000H 1 SYMBOLDEVICE . . . BYTE EXTERNAL(43)
|
||
8 SYMBOLHEAD . . . . LITERALLY
|
||
8 SYMBOLSTRUC. . . . LITERALLY 56
|
||
56 0000H 2 SYMBTABADR . . . . WORD EXTERNAL(69)
|
||
2 TAB. . . . . . . . LITERALLY
|
||
42 0000H TERMINATECMROUT. . PROCEDURE EXTERNAL(14) STACK=0000H 379
|
||
2 THENDO . . . . . . LITERALLY 66 69 79 81 97 103 105
|
||
123 126 139 141 161 163 194 200 216 224
|
||
230 232 242 249 256 279 285 304 312 320
|
||
326 331 366 373 380
|
||
56 0000H 30 TITLE. . . . . . . BYTE ARRAY(30) EXTERNAL(44)
|
||
27 0000H 1 TOK. . . . . . . . BYTE PARAMETER 28
|
||
24 0000H 1 TOK. . . . . . . . BYTE PARAMETER 25
|
||
56 0000H 4 TOKEN. . . . . . . STRUCTURE EXTERNAL(53) 66 69 75 79
|
||
103 123 128 131 133 139 161 216 222 230
|
||
249 254
|
||
2 TRUE . . . . . . . LITERALLY 61 71 87 92 99 112 117
|
||
132 149 154 171 176 185 196 206 215 218
|
||
226 234 244 251 258 287 306 314 322 325
|
||
328 333 375
|
||
277 0004H 1 TYPE . . . . . . . BYTE PARAMETER AUTOMATIC 278 289
|
||
56 0000H 1 TYPE . . . . . . . BYTE MEMBER(TOKEN) 66 79 103 123 139
|
||
161 216 230 249
|
||
8 TYPEBIT. . . . . . LITERALLY
|
||
8 TYPECOUNT. . . . . LITERALLY
|
||
3 UDEFSYMB . . . . . LITERALLY
|
||
17 UDEFSYMBOL . . . . LITERALLY
|
||
56 0002H 2 VALUE. . . . . . . WORD MEMBER(TOKEN) 69 75 128 131 133
|
||
216 222 249 254
|
||
3 VARIABLE . . . . . LITERALLY
|
||
52 0000H 2 W. . . . . . . . . WORD PARAMETER 53
|
||
4 WRD. . . . . . . . LITERALLY
|
||
|
||
|
||
|
||
MODULE INFORMATION:
|
||
PL/M-86 COMPILER CODEMACRO MODULE 1 10/5/81 PAGE 16
|
||
|
||
|
||
CODE AREA SIZE = 0424H 1060D
|
||
CONSTANT AREA SIZE = 0000H 0D
|
||
VARIABLE AREA SIZE = 0005H 5D
|
||
MAXIMUM STACK SIZE = 0016H 22D
|
||
936 LINES READ
|
||
0 PROGRAM ERROR(S)
|
||
|
||
END OF PL/M-86 COMPILATION
|