Line | Address | Object Code
| Label | F1 | N1 | B | F2 | N2 | Comments | Check
|
---|
1 | 0 | | ; tape1.d/declare.t2 |
|
2 | 0 | | ;------------------- |
|
3 | 0 | | ; |
|
4 | 0 | | =1196 | |
|
5 | 1196 | | declaration:: | ; | |
|
6 | 1196 | | .loop: | ; | |
|
7 | 1196 | | ;.1196: |
|
8 | 1196 | | | call | | | | | ; | @1196
|
8+1 | 1196 | 7322411004503 | | lnk | advance.lnk | : | jmp | advance.ent | |
|
9 | 1197 | | declns.ent: | ; | |
|
10 | 1197 | 0602175 | | lod | bit39 | | | | ;mark as local to current block |
|
11 | 1197+ | 0402162 | | sto | typeinfo | | | | ;declaration type |
|
12 | 1198 | 0600600 | | lod | token | | | | ;token | @1198
|
13 | 1198+ | 1022261 | | jn | .err2 | | | | ;constant |
|
14 | 1199 | 0122176 | | sub | K9a | | | | ;=9 |
|
15 | 1199+ | 1022334 | | jn | .stat | | | | ;statement starter |
|
16 | 1200 | 0122200 | | sub | K8a | | | | ;=8 | @1200
|
17 | 1200+ | 1022263 | | jn | .decl | | | | ;declarer |
|
18 | 1201 | 0000000 | .err2: | o00 | 0 | | | | ; | @1201
|
19 | 1201+ | 1661044 | _err02: | lnk | errlnk | | | | ;error 2: bad start or end to statement, or |
|
20 | 1202 | | | ;symbol following own not real,int,bool,array, | |
|
21 | 1202 | | | ;or proc decl not followed by ;, or | |
|
22 | 1202 | | | ;name in decl not folowed by , or ;, or | |
|
23 | 1202 | | | ;decl following proc decl not proc decl. | |
|
24 | 1202 | | Error2: | ; | |
|
25 | 1202 | 0602205 | | lod | K2a | | | | ;=2 |
|
26 | 1202+ | 1001070 | | jmp | Error | | | | ; |
|
27 | 1203 | | ; |
|
28 | 1203 | | ;token is valid start for declaration |
|
29 | 1203 | | ; |
|
30 | 1203 | | .decl: | ; | |
|
31 | 1203 | 0003003002330 | | o00 | token | / | jmp | declsw-10 | ;switch on declarer |
|
32 | 1204 | | ; |
|
33 | 1204 | | ; own declaration |
|
34 | 1204 | | ; |
|
35 | 1204 | | .own: | ; | |
|
36 | 1204 | | | call | | | | | ;get next token | @1204
|
36+1 | 1204 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
37 | 1205 | 0600600 | | lod | token | | | | ;token |
|
38 | 1205+ | 0122231 | | sub | K11 | | | | ;should be int,real,boolean,array |
|
39 | 1206 | 1022261 | | jn | .err2 | | | | ;error if less |
|
40 | 1206+ | 0122211 | | sub | K4 | | | | ; |
|
41 | 1207 | 0003003022330 | | o00 | token | / | jn | declsw-10 | ; |
|
42 | 1208 | 1002261 | | jmp | .err2 | | | | ;not valid with own | @1208
|
43 | 1208+ | | ; |
|
44 | 1208+ | | ; boolean, integer or real keyword |
|
45 | 1208+ | | ; ACC contains mode bits |
|
46 | 1208+ | | ; |
|
47 | 1208+ | 0402163 | .svar: | sto | W1139 | | | | ;save type | @1208+
|
48 | 1209 | | | call | | | | | ;get next token |
|
48+1 | 1209 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
49 | 1210 | 0600600 | | lod | token | | | | ;load token | @1210
|
50 | 1210+ | 1042321 | | jz | .ident | | | | ;zero->identifier list |
|
51 | 1211 | 0122230 | | sub | K14 | | | | ;=14, [ARRAY] |
|
52 | 1211+ | 1043062 | | jz | L1586 | | | | ;yes, do array declaration |
|
53 | 1212 | 0122205 | | sub | K2a | | | | ;=2, [PROCEDURE] | @1212
|
54 | 1212+ | 1142275 | | jz | .tproc | | | | ;yes, do procedure declaration |
|
55 | 1213 | 1002261 | | jmp | .err2 | | | | ;otherwise error |
|
56 | 1213+ | | ; |
|
57 | 1213+ | | ; type procedure declaration |
|
58 | 1213+ | | ; |
|
59 | 1213+ | | .tproc: | ; | |
|
60 | 1213+ | 0602162 | | lod | typeinfo | | | | ; |
|
61 | 1214 | 1042261 | | jz | .err2 | | | | ;zero, error (own int proc) | @1214
|
62 | 1214+ | 0602163 | | lod | W1139 | | | | ;get type |
|
63 | 1215 | 0102232 | .proc: | add | procbit | | | | ;=02000000000000 add proc bit | @1215
|
64 | 1215+ | 0402163 | | sto | W1139 | | | | ;store updated type |
|
65 | 1216 | 1110637 | | jmp | .skip1 | | | | ;-->> | @1216
|
66 | 1216+ | | =4511+ | |
|
67 | 4511+ | | .skip1: | ; | |
|
68 | 4511+ | 0040000 | | o02 | 0 | | | | ;=1 |
|
69 | 4512 | 0410621 | | sto | W4497 | | | | ;set recovery flag=+1 | @4512
|
70 | 4512+ | 0602160 | | lod | dicpt | | | | ; |
|
71 | 4513 | 0410625 | | sto | W4501 | | | | ; |
|
72 | 4513+ | 1010626 | | jmp | statement.4502 | | | | ; |
|
73 | 4514 | | ; |
|
74 | 4514 | | =1216+ | |
|
75 | 1216+ | | .resumeproc: | ; | |
|
76 | 1216+ | 0040000 | | o02 | 0 | | | | ;=1 | @1216+
|
77 | 1217 | | | call | | | | | ;generate code? |
|
77+1 | 1217 | 7307175001640 | | lnk | GenInst.lnk | : | jmp | GenInst.ent | |
|
78 | 1218 | 1002470 | | jmp | .procparam | | | | ; | @1218
|
79 | 1218+ | | ; |
|
80 | 1218+ | | | pad | | | | | ; |
|
80+1 | 1218+ | 0000000 | | 00 | 0 | | | | |
|
81 | 1219 | | ;-------------------------------------------------------------------- |
|
82 | 1219 | | ; |
|
83 | 1219 | | .recover: | ; | |
|
84 | 1219 | 0600600 | | lod | token | | | | ; | @1219
|
85 | 1219+ | 0122200 | | sub | K8a | | | | ;=8 ['] |
|
86 | 1220 | 1042306 | | jz | .semicolon | | | | ; |
|
87 | 1220+ | 1002261 | | jmp | .err2 | | | | ; |
|
88 | 1221 | | ; |
|
89 | 1221 | | .comment: | ; | |
|
90 | 1221 | | | call | | | | | ;skip over comment |
|
90+1 | 1221 | 7312031002420 | | lnk | skipcomment.lnk | : | jmp | skipcomment.ent | |
|
91 | 1222 | | .semicolon: | ; | |
|
92 | 1222 | | | call | | | | | ;discard semicolon, get next |
|
92+1 | 1222 | 7322411004503 | | lnk | advance.lnk | : | jmp | advance.ent | |
|
93 | 1223 | 0600600 | | lod | token | | | | ; |
|
94 | 1223+ | 1022261 | | jn | .err2 | | | | ;constant not a good starter |
|
95 | 1224 | 0122176 | | sub | K9a | | | | ;=9 | @1224
|
96 | 1224+ | 1022333 | | jn | .stat2 | | | | ;statement starter |
|
97 | 1225 | 0122200 | | sub | K8a | | | | ;=8 |
|
98 | 1225+ | 1022313 | | jn | .decl2 | | | | ;declaration starter |
|
99 | 1226 | 1002261 | | jmp | .err2 | | | | ;others |
|
100 | 1226+ | | ; |
|
101 | 1226+ | 0000000 | | o00 | 0 | | | | ; |
|
102 | 1227 | | ; |
|
103 | 1227 | | ; keyword for declaration, switch to appropriate point |
|
104 | 1227 | | .decl2: | ; | |
|
105 | 1227 | 0003003002340 | | o00 | token | / | jmp | decl2sw-9 | ;switch on token | @1227
|
106 | 1228 | | ;-------------------------------------------------------------------- |
|
107 | 1228 | | ; param type: int, bool, real |
|
108 | 1228 | | ; |
|
109 | 1228 | | .pvar: | ; | |
|
110 | 1228 | 0102232 | | add | procbit | | | | ; | @1228
|
111 | 1228+ | 0402163 | | sto | W1139 | | | | ; |
|
112 | 1229 | | | call | | | | | ; |
|
112+1 | 1229 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
113 | 1230 | 0600600 | | lod | token | | | | ; | @1230
|
114 | 1230+ | 0122245 | | sub | K16 | | | | ;=16 [PROCEDURE] |
|
115 | 1231 | 1042470 | | jz | .procparam | | | | ; |
|
116 | 1231+ | 1002261 | | jmp | .err2 | | | | ; |
|
117 | 1232 | | ; |
|
118 | 1232 | | ; param type: procedure |
|
119 | 1232 | | ; |
|
120 | 1232 | 0402163 | .prp: | sto | W1139 | | | | ; | @1232
|
121 | 1232+ | 1002470 | | jmp | .procparam | | | | ; |
|
122 | 1233 | | ; |
|
123 | 1233 | | .ident: | ; | |
|
124 | 1233 | | | call | | | | | ;compile id list? | @1233
|
124+1 | 1233 | 7310725110636 | | lnk | L4510.lnk | : | jmp | L4510.ent | |
|
125 | 1234 | | .idlst: | ; recovery point from errors | |
|
126 | 1234 | 0602162 | | lod | typeinfo | | | | ; |
|
127 | 1234+ | 1142325 | | jz | .own2 | | | | ;own variables? -> |
|
128 | 1235 | 0602164 | | lod | idcount | | | | ;number of ids |
|
129 | 1235+ | 0502161 | | ads | wsptr | | | | ;add to workspace pointer |
|
130 | 1236 | 0602161 | | lod | wsptr | | | | ;pass current workspace pointer |
|
131 | 1236+ | 1002327 | | jmp | .define | | | | ;->to add it to dic info |
|
132 | 1237 | | ; |
|
133 | 1237 | 0000000 | | o00 | 0 | | | | |
|
134 | 1237+ | | ; |
|
135 | 1237+ | 0602164 | .own2: | lod | idcount | | | | ;number of ids in list | @1237+
|
136 | 1238 | 0502143 | | ads | W1123 | | | | ;add to global wksp size |
|
137 | 1238+ | 0602143 | | lod | W1123 | | | | ;pass current global pointer |
|
138 | 1239 | | ; |
|
139 | 1239 | | .define: | ; | |
|
140 | 1239 | 0102177 | | add | MaxInt | | | | ;=03777777777777 | @1239
|
141 | 1239+ | 0102163 | | add | W1139 | | | | ;idtype |
|
142 | 1240 | | | call | | | | | ;add to dictionary | @1240
|
142+1 | 1240 | 7312031002407 | | lnk | addtodic.lnk | : | jmp | addtodic.ent | |
|
143 | 1241 | 0600600 | .done: | lod | token | | | | ;token |
|
144 | 1241+ | 0122200 | | sub | K8a | | | | ;=8 ['] |
|
145 | 1242 | 1042254 | | jz | .loop | | | | ; apostrophe (semicolon) -> | @1242
|
146 | 1242+ | 1002261 | | jmp | .err2 | | | | ;error? |
|
147 | 1243 | | ;-------------------------------------------------------------------- |
|
148 | 1243 | | ; next token is statement - end of declarations |
|
149 | 1243 | | ; |
|
150 | 1243 | | .stat2: | ; | |
|
151 | 1243 | | | call | | | | | ; |
|
151+1 | 1243 | 7306371101531 | | lnk | putcode6.lnk | : | jmp | putcode6.ent | |
|
152 | 1244 | | .stat: | ; | |
|
153 | 1244 | 0602161 | | lod | wsptr | | | | ; | @1244
|
154 | 1244+ | 0122147 | | sub | W1127 | | | | ;wsplim |
|
155 | 1245 | 1022336 | | jn | .under | | | | ; |
|
156 | 1245+ | 0502147 | | ads | W1127 | | | | ; |
|
157 | 1246 | | .under: | ; | |
|
158 | 1246 | | | ret | | | | | ; | @1246
|
158+1 | 1246 | 0010643000001 | | o00 | declaration.lnk | / | jmp | 1 | |
|
159 | 1247 | | ; o00 Link15a /jmp 1 ;return |
|
160 | 1247 | | ;-------------------------------------------------------------------- |
|
161 | 1247 | | .comm2: | call | | | | | ;no longer referenced |
|
161+1 | 1247 | 7312031002420 | | lnk | skipcomment.lnk | : | jmp | skipcomment.ent | |
|
162 | 1248 | 1002254 | | jmp | .loop | | | | ; | @1248
|
163 | 1248+ | | ; |
|
164 | 1248+ | 0000000 | | o00 | 0 | | | | ; |
|
165 | 1249 | | ; |
|
166 | 1249 | | ;.1249: ;no longer referenced |
|
167 | 1249 | 1002337 | | jmp | .comm2 | | | | ; | @1249
|
168 | 1249+ | | ; |
|
169 | 1249+ | 0000000 | | o00 | 0 | | | | ; |
|
170 | 1250 | | ;-------------------------------------------------------------------- |
|
171 | 1250 | | ; switch list referenced at 1203 above, based on declarer |
|
172 | 1250 | | ; |
|
173 | 1250 | | declsw: | ; | |
|
174 | 1250 | 2610711002264 | | cls | typeinfo | : | jmp | .own | ; +10 own | @1250
|
175 | 1251 | 3011055102270 | | lod | boolbit | : | jmp | .svar | ; +11 boolean 0100000000000 |
|
176 | 1252 | 3011061102270 | | lod | intbit | : | jmp | .svar | ; +12 integer 0200000000000 | @1252
|
177 | 1253 | 3011065102270 | | lod | realbit | : | jmp | .svar | ; +13 real 0300000000000 |
|
178 | 1254 | 3011015003061 | | lod | rarrbit | : | jmp | L1585 | ; +14 array | @1254
|
179 | 1255 | 4012200000000 | | jmp | .switch | : | o00 | 0 | ; +15 switch |
|
180 | 1256 | 0600001002277 | | cla | 0 | : | jmp | .proc | ; +16 procedure | @1256
|
181 | 1257 | | ; |
|
182 | 1257 | | decl2sw: | ; | |
|
183 | 1257 | 4011424000000 | | jmp | .comment | : | o00 | 0 | ; +09 comment |
|
184 | 1258 | 4011304000000 | | jmp | .err2 | : | o00 | 0 | ; +10 own | @1258
|
185 | 1259 | 3011055002314 | | lod | boolbit | : | jmp | .pvar | ; +11 boolean |
|
186 | 1260 | 3011061002314 | | lod | intbit | : | jmp | .pvar | ; +12 integer | @1260
|
187 | 1261 | 3011065002314 | | lod | realbit | : | jmp | .pvar | ; +13 real |
|
188 | 1262 | 4011304000000 | | jmp | .err2 | : | o00 | 0 | ; +14 array | @1262
|
189 | 1263 | 4011304000000 | | jmp | .err2 | : | o00 | 0 | ; +15 switch |
|
190 | 1264 | 3011151002320 | | lod | procbit | : | jmp | .prp | ; +16 procedure | @1264
|
191 | 1265 | | ;-------------------------------------------------------------------- |
|
192 | 1265 | | ; switch declaration |
|
193 | 1265 | | ; |
|
194 | 1265 | | =1312 | |
|
195 | 1312 | | .switch: | ; | |
|
196 | 1312 | | | call | | | | | ;save stkp, then call gettoken | @1312
|
196+1 | 1312 | 7305105010635 | | lnk | L4509.lnk | : | jmp | L4509.ent | |
|
197 | 1313 | | | call | | | | | ;read ids |
|
197+1 | 1313 | 7310725002361 | | lnk | declid.lnk | : | jmp | declid.ent | |
|
198 | 1314 | 0602164 | | lod | idcount | | | | ;number of ids in list | @1314
|
199 | 1314+ | 0122207 | | sub | K1c | | | | ;=1 |
|
200 | 1315 | 1142444 | | jz | .idok | | | | ; |
|
201 | 1315+ | 1661044 | _err05: | lnk | errlnk | | | | ;error 5: missing := in switch |
|
202 | 1316 | 1002262 | | jmp | Error2 | | | | ; | @1316
|
203 | 1316+ | | ; |
|
204 | 1316+ | 0042201 | .idok: | o02 | K42 | | | | ;=42+1=>43 [:=] |
|
205 | 1317 | 0120600 | | sub | token | | | | ; |
|
206 | 1317+ | 1042447 | | jz | .swok | | | | ;OK, skip |
|
207 | 1318 | 1661044 | _err06: | lnk | errlnk | | | | ;error 6: missing := in switch | @1318
|
208 | 1318+ | 1002262 | | jmp | Error2 | | | | ;call error rtne |
|
209 | 1319 | | ; |
|
210 | 1319 | 0602144 | .swok: | lod | W1124 | | | | ; |
|
211 | 1319+ | 1320027 | | sll | 23 | | | | ; |
|
212 | 1320 | 0102216 | | add | swchbit | | | | ;=04400000000000 | @1320
|
213 | 1320+ | 0102143 | | add | W1123 | | | | ; |
|
214 | 1321 | | | call | | | | | ;add type info to dic |
|
214+1 | 1321 | 7312031002407 | | lnk | addtodic.lnk | : | jmp | addtodic.ent | |
|
215 | 1322 | 0602160 | | lod | dicpt | | | | ; | @1322
|
216 | 1322+ | 0342171 | | stc | W1145 | | | | ; |
|
217 | 1323 | | | call | | | | | ;add to dic |
|
217+1 | 1323 | 7312031002407 | | lnk | addtodic.lnk | : | jmp | addtodic.ent | |
|
218 | 1324 | | | call | | | | | ;discard :=, get 1st id | @1324
|
218+1 | 1324 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
219 | 1325 | | | call | | | | | ;read list of ids |
|
219+1 | 1325 | 7310725002361 | | lnk | declid.lnk | : | jmp | declid.ent | |
|
220 | 1326 | 0602164 | | lod | idcount | | | | ;number of ids in list | @1326
|
221 | 1326+ | 0502143 | | ads | W1123 | | | | ; |
|
222 | 1327 | 0602144 | | lod | W1124 | | | | ; |
|
223 | 1327+ | 1320027 | | sll | 23 | | | | ; |
|
224 | 1328 | 0102217 | | add | swlabit | | | | ;=04477777777777 | @1328
|
225 | 1328+ | 0102143 | | add | W1123 | | | | ; |
|
226 | 1329 | | | call | | | | | ; |
|
226+1 | 1329 | 7312031002407 | | lnk | addtodic.lnk | : | jmp | addtodic.ent | |
|
227 | 1330 | 0602164 | | lod | idcount | | | | ;number of ids in list | @1330
|
228 | 1330+ | 0102177 | | add | MaxInt | | | | ; |
|
229 | 1331 | 0010746400000 | | o00 | W1145 | / | sto | 0 | ; |
|
230 | 1332 | 1002331 | | jmp | declaration.done | | | | ;finished, check for semicolon | @1332
|
231 | 1332+ | | ; |
|
232 | 1332+ | 0000000 | | o00 | 0 | | | | ; |
|
233 | 1333 | | ;-------------------------------------------------------------------- |
|
234 | 1333 | | =1336 | |
|
235 | 1336 | | ; |
|
236 | 1336 | | .procparam: | ; | |
|
237 | 1336 | | | call | | | | | ;stack something, then gettoken | @1336
|
237+1 | 1336 | 7305105003014 | | lnk | L1548.lnk | : | jmp | L1548.ent | |
|
238 | 1337 | | | call | | | | | ; |
|
238+1 | 1337 | 7310725002361 | | lnk | declid.lnk | : | jmp | declid.ent | |
|
239 | 1338 | 0602160 | | lod | dicpt | | | | ; | @1338
|
240 | 1338+ | 0402171 | | sto | W1145 | | | | ; |
|
241 | 1339 | 0602163 | | lod | W1139 | | | | ; |
|
242 | 1339+ | 0102161 | | add | wsptr | | | | ; |
|
243 | 1340 | 0102175 | | add | bit39 | | | | ; | @1340
|
244 | 1340+ | 0102234 | | add | Bit32 | | | | ;=00020000000000 |
|
245 | 1341 | | | call | | | | | ; |
|
245+1 | 1341 | 7312031002407 | | lnk | addtodic.lnk | : | jmp | addtodic.ent | |
|
246 | 1342 | | | call | | | | | ;call 940 | @1342
|
246+1 | 1342 | 7307255001654 | | lnk | putNop.lnk | : | jmp | putNop.ent | |
|
247 | 1343 | 0602175 | | lod | bit39 | | | | ; |
|
248 | 1343+ | 0102145 | | add | ObjPC | | | | ; |
|
249 | 1344 | | | call | | | | | ; | @1344
|
249+1 | 1344 | 7312031002407 | | lnk | addtodic.lnk | : | jmp | addtodic.ent | |
|
250 | 1345 | 0602175 | | lod | bit39 | | | | ; |
|
251 | 1345+ | 0402172 | | sto | Link15c | | | | ; |
|
252 | 1346 | 0402173 | | sto | W1147 | | | | ; | @1346
|
253 | 1346+ | 0442161 | | inc | wsptr | | | | ; |
|
254 | 1347 | 0602160 | | lod | dicpt | | | | ; |
|
255 | 1347+ | 0402174 | | sto | W1148 | | | | ; |
|
256 | 1348 | 0600600 | | lod | token | | | | ; | @1348
|
257 | 1348+ | 0122200 | | sub | K8a | | | | ;=8, ['] |
|
258 | 1349 | 1042655 | | jz | .lp3k | | | | ;yes, no formal parameters |
|
259 | 1349+ | 0122235 | | sub | K39b | | | | ;=39, =>[(] |
|
260 | 1350 | 1042507 | | jz | .params | | | | ;yes, get parameter list | @1350
|
261 | 1350+ | 1002541 | | jmp | _err07 | | | | ; |
|
262 | 1351 | | ; |
|
263 | 1351 | | ; process parameter list |
|
264 | 1351 | | ; |
|
265 | 1351 | | .params: | ; | |
|
266 | 1351 | | | call | | | | | ;discard [(] | @1351
|
266+1 | 1351 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
267 | 1352 | | | call | | | | | ;get id list (formal params) |
|
267+1 | 1352 | 7310725003000 | | lnk | declid1.lnk | : | jmp | declid1.ent | |
|
268 | 1353 | | .1353: | ; | |
|
269 | 1353 | 0042204 | | o02 | K47a | | | | ;=47+1=>48, [)] |
|
270 | 1353+ | 0120600 | | sub | token | | | | ;check closing delimiter |
|
271 | 1354 | 1042513 | | jz | .closeOK | | | | ;OK, skip | @1354
|
272 | 1354+ | 1002541 | | jmp | _err07 | | | | ;missing ) in param list |
|
273 | 1355 | | ; |
|
274 | 1355 | | .closeOK: | ; | |
|
275 | 1355 | | | call | | | | | ;discard ), get next token | @1355
|
275+1 | 1355 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
276 | 1356 | 0600600 | | lod | token | | | | ;check for semicolon |
|
277 | 1356+ | 0122200 | | sub | K8a | | | | ;=8, ['] |
|
278 | 1357 | 1042516 | | jz | .semiOK | | | | ;OK, skip | @1357
|
279 | 1357+ | 1003010 | | jmp | .1544 | | | | ;missing semicolon? |
|
280 | 1358 | | ; |
|
281 | 1358 | | .semiOK: | ; | |
|
282 | 1358 | 0602164 | | lod | idcount | | | | ;number of params in list | @1358
|
283 | 1358+ | 0125036 | | sub | W2590 | | | | ; |
|
284 | 1359 | 1022520 | | jn | .idsOK | | | | ; |
|
285 | 1359+ | 1102751 | | jmp | _err08a | | | | ; |
|
286 | 1360 | | ; |
|
287 | 1360 | | .idsOK: | ; | |
|
288 | 1360 | 0602164 | | lod | idcount | | | | ;number of params | @1360
|
289 | 1360+ | 1320034 | | sll | 28 | | | | ; |
|
290 | 1361 | 0010762500001 | | o00 | W1148 | / | ads | 1 | ; |
|
291 | 1362 | 0602174 | | lod | W1148 | | | | ; | @1362
|
292 | 1362+ | 0402166 | | sto | W1142 | | | | ; |
|
293 | 1363 | 0042160 | | o02 | dicpt | | | | ; |
|
294 | 1363+ | 0402167 | | sto | W1143 | | | | ; |
|
295 | 1364 | | .ploop: | ; | |
|
296 | 1364 | 0010732600000 | | o00 | W1142 | / | lod | 0 | ; | @1364
|
297 | 1365 | | | call | | | | | ; |
|
297+1 | 1365 | 7312031002407 | | lnk | addtodic.lnk | : | jmp | addtodic.ent | |
|
298 | 1366 | 0642161 | | lis | wsptr | | | | ; | @1366
|
299 | 1366+ | 0102236 | | add | Bit33 | | | | ; |
|
300 | 1367 | | | call | | | | | ; |
|
300+1 | 1367 | 7312031102613 | | lnk | L1419P.lnk | : | jmp | L1419P.ent | |
|
301 | 1368 | 0040000 | | o02 | 0 | | | | ; | @1368
|
302 | 1368+ | 0762166 | | o37 | W1142 | | | | ; |
|
303 | 1369 | 0162167 | | bus | W1143 | | | | ; |
|
304 | 1369+ | 1022524 | | jn | .ploop | | | | ; |
|
305 | 1370 | 0040000 | | o02 | 0 | | | | ;=1 | @1370
|
306 | 1370+ | 0000000 | | o00 | 0 | | | | ; |
|
307 | 1371 | 0010736420000 | | o00 | W1143 | / | stn | 0 | ; |
|
308 | 1372 | | .specs: | ; | |
|
309 | 1372 | | | call | | | | | ;get token following ' | @1372
|
309+1 | 1372 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
310 | 1373 | 0600600 | | lod | token | | | | ; |
|
311 | 1373+ | 0122237 | | sub | K19b | | | | ;=19 [VALUE] |
|
312 | 1374 | 1042537 | | jz | .value | | | | ;yes, process value list | @1374
|
313 | 1374+ | 1102760 | | jmp | .1520P | | | | ;check for type specs |
|
314 | 1375 | | ; |
|
315 | 1375 | | .value: | ; | |
|
316 | 1375 | | | call | | | | | ;discard VALUE/comma, get next token | @1375
|
316+1 | 1375 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
317 | 1376 | 0600600 | | lod | token | | | | ; | @1376
|
318 | 1376+ | 1042543 | | jz | .valid | | | | ;identifier, ->OK |
|
319 | 1377 | 1661044 | _err07: | lnk | errlnk | | | | ;error 7: in a procedure declaration: |
|
320 | 1377+ | | | ;a) item after proc name not ( or ; | |
|
321 | 1377+ | | | ;b) not ; or ) after formal params | |
|
322 | 1377+ | | | ;c) list in value of spec has bad form | |
|
323 | 1377+ | | | ;d) spec before value part | |
|
324 | 1377+ | 1002262 | | jmp | Error2 | | | | ;call error rtne |
|
325 | 1378 | 1002542 | .halt: | jmp | .halt | | | | ;dynamic halt | @1378
|
326 | 1378+ | | ; |
|
327 | 1378+ | | | pad | | | | | ; |
|
327+1 | 1378+ | 0000000 | | 00 | 0 | | | | |
|
328 | 1379 | | ; |
|
329 | 1379 | | ; identifier in VALUE list |
|
330 | 1379 | | ; |
|
331 | 1379 | | .valid: | ; | |
|
332 | 1379 | | | call | | | | | ; lookup identifier | @1379
|
332+1 | 1379 | 7316111003423 | | lnk | lookupid.lnk | : | jmp | lookupid.ent | |
|
333 | 1380 | 1142754 | | jz | _err10a | | | | ;identifier not found |
|
334 | 1380+ | 0042236 | | o02 | Bit33 | | | | ; |
|
335 | 1381 | 0116142457777 | | neg | W1816 | / | ans | -1 | ; |
|
336 | 1382 | | .errrec: | ; | |
|
337 | 1382 | | | call | | | | | ;get next token | @1382
|
337+1 | 1382 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
338 | 1383 | 0040600 | | o02 | token | | | | ;token+1 |
|
339 | 1383+ | 0122201 | | sub | K42 | | | | ;=42, [,]+1 |
|
340 | 1384 | 1042537 | | jz | .value | | | | ;comma, back for more | @1384
|
341 | 1384+ | 0102241 | | add | K33 | | | | ;=33, [']+1 |
|
342 | 1385 | 1042552 | | jz | .valsemi | | | | ;semicolon, check for other specs |
|
343 | 1385+ | 1002541 | | jmp | _err07 | | | | ;otherwise, error |
|
344 | 1386 | | ; |
|
345 | 1386 | | ; end of specification list, see if more specs follow |
|
346 | 1386 | | ; |
|
347 | 1386 | | .valsemi: | ; | |
|
348 | 1386 | | ;.1386: |
|
349 | 1386 | | | call | | | | | ;discard ', get next token | @1386
|
349+1 | 1386 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
350 | 1387 | | .1387: | ; | |
|
351 | 1387 | 0600600 | | lod | token | | | | ; |
|
352 | 1387+ | 1022541 | | jn | _err07 | | | | ;constant |
|
353 | 1388 | 0122237 | | sub | K19b | | | | ;=19 | @1388
|
354 | 1388+ | 1122555 | | jn | .valok | | | | ;declaration or statement |
|
355 | 1389 | 1002541 | | jmp | _err07 | | | | ;error |
|
356 | 1389+ | | ; |
|
357 | 1389+ | | .valok: | ; | |
|
358 | 1389+ | 0102240 | | add | K10b | | | | ;=10 |
|
359 | 1390 | 1022606 | | jn | .stat3 | | | | ;statement | @1390
|
360 | 1390+ | | | pad | | | | | ; |
|
360+1 | 1390+ | 0000000 | | 00 | 0 | | | | |
|
361 | 1391 | 0003003002755 | | o00 | token | / | jmp | specsw-9 | ;switch on declarer |
|
362 | 1392 | | ; |
|
363 | 1392 | | | pad | | | | | |
|
363+1 | 1392 | 0000000 | | 00 | 0 | | | | |
|
364 | 1392+ | | ; |
|
365 | 1392+ | | ; boolean, integer, real (simple) specification |
|
366 | 1392+ | | ; |
|
367 | 1392+ | | .ssp: | ; | |
|
368 | 1392+ | 0402162 | | sto | typeinfo | | | | ;store type | @1392+
|
369 | 1393 | | | call | | | | | ;get next token |
|
369+1 | 1393 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
370 | 1394 | 0600600 | | lod | token | | | | ; | @1394
|
371 | 1394+ | 0122230 | | sub | K14 | | | | ;=14, [ARRAY]? |
|
372 | 1395 | 1042564 | | jz | .aspec | | | | ;yes, ->typed array spec. |
|
373 | 1395+ | 1002567 | | jmp | .sspec | | | | ;scalar type spec |
|
374 | 1396 | | ; |
|
375 | 1396 | | ; handle array declaration |
|
376 | 1396 | | ; |
|
377 | 1396 | 0602202 | .aspec: | lod | arrbit | | | | ;add array bit | @1396
|
378 | 1396+ | 0502162 | | ads | typeinfo | | | | ;into type |
|
379 | 1397 | 1002566 | | jmp | .cspec | | | | ;join common section |
|
380 | 1397+ | | ; |
|
381 | 1397+ | | ; array or string |
|
382 | 1397+ | | .asp: | ; | |
|
383 | 1397+ | 0402162 | | sto | typeinfo | | | | ;store type bits |
|
384 | 1398 | | .cspec: | ; | |
|
385 | 1398 | | | call | | | | | ;discard type keyword | @1398
|
385+1 | 1398 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
386 | 1399 | | .sspec: | ; | |
|
387 | 1399 | 0600600 | | lod | token | | | | ;get next token |
|
388 | 1399+ | 1042571 | | jz | .idspec | | | | ;identifier |
|
389 | 1400 | 1002541 | | jmp | _err07 | | | | ;error | @1400
|
390 | 1400+ | | ; |
|
391 | 1400+ | 0000000 | | o00 | 0 | | | | |
|
392 | 1401 | | ; |
|
393 | 1401 | | .idspec: | ; | |
|
394 | 1401 | | | call | | | | | ;lookup identifier | @1401
|
394+1 | 1401 | 7316111003423 | | lnk | lookupid.lnk | : | jmp | lookupid.ent | |
|
395 | 1402 | 1142756 | | jz | _err11a | | | | ; |
|
396 | 1402+ | 0602221 | | lod | typbits | | | | ;=03700000000000 |
|
397 | 1403 | 0016142057777 | | o00 | W1816 | / | and | -1 | ; | @1403
|
398 | 1404 | 1142575 | | jz | .idspok | | | | ; |
|
399 | 1404+ | 0040000 | | o02 | 0 | | | | ;=1 |
|
400 | 1405 | 1002757 | | jmp | _err11 | | | | ;name not a param | @1405
|
401 | 1405+ | | ; |
|
402 | 1405+ | | .idspok: | ; | |
|
403 | 1405+ | 0602162 | | lod | typeinfo | | | | ; |
|
404 | 1406 | 0016142677777 | | o00 | W1816 | / | las | -1 | ; | @1406
|
405 | 1407 | 0102162 | | add | typeinfo | | | | ; |
|
406 | 1407+ | 0403427 | | sto | idptr | | | | ; |
|
407 | 1408 | 0063023 | | and | W1555 | | | | ;=03777740000000 | @1408
|
408 | 1408+ | 0122252 | | sub | strbit | | | | ;string bits |
|
409 | 1409 | 1103016 | | jmp | .skip2 | | | | ; |
|
410 | 1409+ | | =1550+ | |
|
411 | 1550+ | | .skip2: | ; | |
|
412 | 1550+ | 1142751 | | jz | _err08a | | | | ;type not allowed as param |
|
413 | 1551 | 0102236 | | add | Bit33 | | | | ;=00040000000000 | @1551
|
414 | 1551+ | 0062243 | | and | MskArgTp | | | | ;=03740000000000 |
|
415 | 1552 | 1142751 | | jz | _err08a | | | | ;more than 64 params |
|
416 | 1552+ | 0603427 | | lod | idptr | | | | ; |
|
417 | 1553 | 0062242 | | and | W1186 | | | | ;=03440000000000 |
|
418 | 1553+ | 0122236 | | sub | Bit33 | | | | ;=00040000000000 |
|
419 | 1554 | 1142601 | | jz | .sp1 | | | | ; | @1554
|
420 | 1554+ | 1002602 | | jmp | .sp2 | | | | ; |
|
421 | 1555 | | ; |
|
422 | 1555 | | =1409+ | |
|
423 | 1409+ | | ; |
|
424 | 1409+ | | .sp1: | ; | |
|
425 | 1409+ | 0542172 | | cls | Link15c | | | | ; |
|
426 | 1410 | | .sp2: | ; | |
|
427 | 1410 | | | call | | | | | ;get next token | @1410
|
427+1 | 1410 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
428 | 1411 | 0040600 | | o02 | token | | | | ;token+1 |
|
429 | 1411+ | 0122201 | | sub | K42 | | | | ;=42, [,]+1 |
|
430 | 1412 | 1042566 | | jz | .cspec | | | | ;comma, get another ident | @1412
|
431 | 1412+ | 0102241 | | add | K33 | | | | ;=33, =>[']+1 |
|
432 | 1413 | 1042552 | | jz | .valsemi | | | | ;semicolon, end of specification |
|
433 | 1413+ | 1002541 | | jmp | _err07 | | | | ;otherwise error |
|
434 | 1414 | | ;-------------------------------------------------------------------- |
|
435 | 1414 | | ; statement starter after specifications |
|
436 | 1414 | | ; first check all parameters are specified |
|
437 | 1414 | | ; |
|
438 | 1414 | | .stat3: | ; | |
|
439 | 1414 | 0010736540000 | | o00 | W1143 | / | cls | 0 | ;add stopper to list | @1414
|
440 | 1415 | 0602160 | | lod | dicpt | | | | ; |
|
441 | 1415+ | 0402167 | | sto | W1143 | | | | ; |
|
442 | 1416 | | .sploop: | ; | |
|
443 | 1416 | 2210736600000 | | inc | W1143 | / | lod | 0 | ;get param info | @1416
|
444 | 1417 | 1043005 | | jz | .spdone | | | | ;end of list, all params OK |
|
445 | 1417+ | 0062221 | | and | typbits | | | | ;=03700000000000 |
|
446 | 1418 | 1142753 | | jz | _err08b | | | | ;no type specified | @1418
|
447 | 1418+ | 0442167 | | inc | W1143 | | | | ;skip name entry |
|
448 | 1419 | 1002610 | | jmp | .sploop | | | | ;and try next one |
|
449 | 1419+ | | ;-------------------------------------------------------------------- |
|
450 | 1419+ | | L1419P.ent: | ; | |
|
451 | 1419+ | 0102175 | | add | bit39 | | | | ; |
|
452 | 1420 | 1002407 | | jmp | addtodic.ent | | | | ; | @1420
|
453 | 1420+ | | ;-------------------------------------------------------------------- |
|
454 | 1420+ | | ; |
|
455 | 1420+ | | =1541 | |
|
456 | 1541 | | ; finished procedure heading, looking for statement/block |
|
457 | 1541 | | ; |
|
458 | 1541 | | .spdone: | ; | |
|
459 | 1541 | | | call | | | | | ; |
|
459+1 | 1541 | 7322411004504 | | lnk | advance2.lnk | : | jmp | advance2.ent | |
|
460 | 1542 | 1102614 | | jmp | .skip3 | | | | ; | @1542
|
461 | 1542+ | | =1420+ | |
|
462 | 1420+ | | .skip3: | ; | |
|
463 | 1420+ | 0602172 | | lod | Link15c | | | | ; |
|
464 | 1421 | 1022617 | | jn | .lp3a | | | | ;skip over next bit |
|
465 | 1421+ | 1102730 | | jmp | .skip4 | | | | ;-->> |
|
466 | 1422 | | =1496+ | |
|
467 | 1496+ | | .skip4: | ; | |
|
468 | 1496+ | 0042233 | | o02 | Bit21 | | | | ;=00000004000000 | @1496+
|
469 | 1497 | 0702152 | | las | W1130 | | | | ; |
|
470 | 1497+ | 0062212 | | and | B19.28 | | | | ;=00001777000000 |
|
471 | 1498 | 0401422 | | sto | GenAdr | | | | ; | @1498
|
472 | 1498+ | 0602226 | | lod | K6 | | | | ;=6 |
|
473 | 1499 | | | call | | | | | ; |
|
473+1 | 1499 | 7307175001640 | | lnk | GenInst.lnk | : | jmp | GenInst.ent | |
|
474 | 1500 | 0010746600000 | | o00 | W1145 | / | lod | 0 | ; | @1500
|
475 | 1501 | 0062244 | | and | M1188 | | | | ; |
|
476 | 1501+ | 0401422 | | sto | GenAdr | | | | ; |
|
477 | 1502 | 0602226 | | lod | K6 | | | | ;=6 | @1502
|
478 | 1502+ | 1002711 | | jmp | .skip5 | | | | ;-->> |
|
479 | 1503 | | =1481 | |
|
480 | 1481 | | .skip5: | ; | |
|
481 | 1481 | | | call | | | | | ; | @1481
|
481+1 | 1481 | 7307175001640 | | lnk | GenInst.lnk | : | jmp | GenInst.ent | |
|
482 | 1482 | 0602236 | | lod | Bit33 | | | | ; |
|
483 | 1482+ | 1002616 | | jmp | .skip6 | | | | ;-->> |
|
484 | 1483 | | =1422 | |
|
485 | 1422 | | .skip6: | ; | |
|
486 | 1422 | 0010762500002 | | o00 | W1148 | / | ads | 2 | ; | @1422
|
487 | 1423 | | .lp3a: | ; | |
|
488 | 1423 | 0602164 | | lod | idcount | | | | ;number of ids in list |
|
489 | 1423+ | 0162174 | | bus | W1148 | | | | ; |
|
490 | 1424 | 0402166 | | sto | W1142 | | | | ; | @1424
|
491 | 1424+ | | .lp3b: | ; | |
|
492 | 1424+ | 0602164 | | lod | idcount | | | | ;number of ids in list |
|
493 | 1425 | 0122226 | | sub | K6 | | | | ;=6 |
|
494 | 1425+ | 1122623 | | jn | .lp3c | | | | ; |
|
495 | 1426 | 0042176 | | o02 | K9a | | | | ;=9+1=>10 | @1426
|
496 | 1426+ | 1002625 | | jmp | .lp3d | | | | ; |
|
497 | 1427 | | ; |
|
498 | 1427 | | | pad | | | | | ; |
|
498+1 | 1427 | 0000000 | | 00 | 0 | | | | |
|
499 | 1427+ | | ; |
|
500 | 1427+ | | .lp3c: | ; | |
|
501 | 1427+ | 0040000 | | o02 | 0 | | | | ; |
|
502 | 1428 | 0162164 | | bus | idcount | | | | ;number of ids in list | @1428
|
503 | 1428+ | 1320001 | | sll | 1 | | | | ;double number |
|
504 | 1429 | | .lp3d: | ; | |
|
505 | 1429 | 0422167 | | stn | W1143 | | | | ;store (negated) |
|
506 | 1429+ | 0542170 | | cls | idpt1 | | | | ;clear pointer |
|
507 | 1430 | | .lp3e: | ; | |
|
508 | 1430 | 0602167 | | lod | W1143 | | | | ; | @1430
|
509 | 1430+ | 0102166 | | add | W1142 | | | | ; |
|
510 | 1431 | 2010726577777 | | sto | Link15b | / | lod | -1 | ; |
|
511 | 1432 | 0062243 | | and | MskArgTp | | | | ; | @1432
|
512 | 1432+ | 0202170 | | exa | idpt1 | | | | ; |
|
513 | 1433 | 1220006 | | srl | 6 | | | | ; |
|
514 | 1433+ | 0702170 | | las | idpt1 | | | | ; |
|
515 | 1434 | 0062242 | | and | W1186 | | | | ; | @1434
|
516 | 1434+ | 0122202 | | sub | arrbit | | | | ; |
|
517 | 1435 | 1042634 | | jz | .lp3f | | | | ; |
|
518 | 1435+ | 1102643 | | jmp | .lp3h | | | | ; |
|
519 | 1436 | | ; |
|
520 | 1436 | | .lp3f: | ; | |
|
521 | 1436 | 0602173 | | lod | W1147 | | | | ; | @1436
|
522 | 1436+ | 1042637 | | jz | .lp3g | | | | ; |
|
523 | 1437 | 0542173 | | cls | W1147 | | | | ; |
|
524 | 1437+ | | | nop | | | | | ; |
|
524+1 | 1437+ | 1002636 | | jmp | .1 | | | | |
|
524+2 | 1438 | | .1: | ; | |
|
525 | 1438 | | | call | | | | | ;generate Enter Block call | @1438
|
525+1 | 1438 | 7320121003403 | | lnk | GenEB.lnk | : | jmp | GenEB.ent | |
|
526 | 1439 | | .lp3g: | ; | |
|
527 | 1439 | 0010726577777 | | o00 | Link15b | / | lod | -1 | ; |
|
528 | 1440 | 0062244 | | and | M1188 | | | | ; | @1440
|
529 | 1440+ | 0404031 | | sto | IdInfo | | | | ; |
|
530 | 1441 | 0603517 | | lod | GPs+42 | | | | ; |
|
531 | 1441+ | 0000000 | | o00 | 0 | | | | ; |
|
532 | 1442 | | | call | | | | | ; | @1442
|
532+1 | 1442 | 7320121004033 | | lnk | gencode.lnk | : | jmp | gencode.ent | |
|
533 | 1443 | 1002645 | | jmp | .lp3i | | | | ; |
|
534 | 1443+ | | ; |
|
535 | 1443+ | | .lp3h: | ; | |
|
536 | 1443+ | 1022645 | | jn | .lp3i | | | | ; |
|
537 | 1444 | 0010726557777 | | o00 | Link15b | / | o27 | -1 | ; | @1444
|
538 | 1445 | | .lp3i: | ; | |
|
539 | 1445 | 0602205 | | lod | K2a | | | | ; |
|
540 | 1445+ | 0702167 | | las | W1143 | | | | ; |
|
541 | 1446 | 1022626 | | jn | .lp3e | | | | ; | @1446
|
542 | 1446+ | | ; end of loop |
|
543 | 1446+ | 0602170 | | lod | idpt1 | | | | ; |
|
544 | 1447 | 0000000 | | o00 | 0 | | | | ; |
|
545 | 1447+ | 0102175 | | add | bit39 | | | | ; |
|
546 | 1448 | 0010762400000 | | o00 | W1148 | / | sto | 0 | ; | @1448
|
547 | 1449 | 0040000 | | o02 | 0 | | | | ;=1 |
|
548 | 1449+ | 0562174 | | o27 | W1148 | | | | ; |
|
549 | 1450 | 0602226 | | lod | K6 | | | | ;=6 | @1450
|
550 | 1450+ | 0122164 | | sub | idcount | | | | ;number of ids in list |
|
551 | 1451 | 1022654 | | jn | .lp3j | | | | ; |
|
552 | 1451+ | 1102660 | | jmp | .1456P | | | | ; |
|
553 | 1452 | | ; |
|
554 | 1452 | 0422164 | .lp3j: | stn | idcount | | | | ;number of ids in list | @1452
|
555 | 1452+ | 1103003 | | jmp | .1539P | | | | ; |
|
556 | 1453 | | ; |
|
557 | 1453 | | .lp3k: | ; | |
|
558 | 1453 | | | call | | | | | ; |
|
558+1 | 1453 | 7322411004503 | | lnk | advance.lnk | : | jmp | advance.ent | |
|
559 | 1454 | 0600600 | | lod | token | | | | ; | @1454
|
560 | 1454+ | 1022541 | | jn | _err07 | | | | ;constant, error |
|
561 | 1455 | 0162176 | | bus | K9a | | | | ;=9 |
|
562 | 1455+ | 1022541 | | jn | _err07 | | | | ;not statement starter, error |
|
563 | 1456 | 1043024 | | jz | .1556 | | | | ;dummy statement | @1456
|
564 | 1456+ | | .1456P: | ; | |
|
565 | 1456+ | 0602163 | | lod | W1139 | | | | ; |
|
566 | 1457 | 0062215 | | and | realbit | | | | ; |
|
567 | 1457+ | 1142662 | | jz | .1458P | | | | ; |
|
568 | 1458 | 0442161 | | inc | wsptr | | | | ; | @1458
|
569 | 1458+ | | .1458P: | ; | |
|
570 | 1458+ | 0742147 | | lzs | W1127 | | | | ; |
|
571 | 1459 | | | call | | | | | ; |
|
571+1 | 1459 | 7312031002415 | | lnk | stack.lnk | : | jmp | stack.ent | |
|
572 | 1460 | 0602172 | | lod | Link15c | | | | ; | @1460
|
573 | 1460+ | 1220001 | | srl | 1 | | | | ; |
|
574 | 1461 | 0402167 | | sto | W1143 | | | | ; |
|
575 | 1461+ | 0602163 | | lod | W1139 | | | | ; |
|
576 | 1462 | 1003001 | | jmp | .1537 | | | | ; | @1462
|
577 | 1462+ | | ; |
|
578 | 1462+ | | .1462P: | ; | |
|
579 | 1462+ | 0602175 | | lod | bit39 | | | | ; |
|
580 | 1463 | | .1463: | ; | |
|
581 | 1463 | 0102167 | | add | W1143 | | | | ; |
|
582 | 1463+ | 1220001 | | srl | 1 | | | | ; |
|
583 | 1464 | 0102173 | | add | W1147 | | | | ; | @1464
|
584 | 1464+ | 0402167 | | sto | W1143 | | | | ; |
|
585 | 1465 | 0602174 | | lod | W1148 | | | | ; |
|
586 | 1465+ | 1320024 | | sll | 20 | | | | ; |
|
587 | 1466 | 0102171 | | add | W1145 | | | | ; | @1466
|
588 | 1466+ | 0102167 | | add | W1143 | | | | ; |
|
589 | 1467 | | | call | | | | | ; |
|
589+1 | 1467 | 7312031002415 | | lnk | stack.lnk | : | jmp | stack.ent | |
|
590 | 1468 | | | call | | | | | ;compile procedure body | @1468
|
590+1 | 1468 | 7310611003254 | | lnk | statement.lnk | : | jmp | statement.ent | |
|
591 | 1469 | 0602161 | | lod | wsptr | | | | ; |
|
592 | 1469+ | 0162147 | | bus | W1127 | | | | ; |
|
593 | 1470 | 1022677 | | jn | .1471 | | | | ; | @1470
|
594 | 1470+ | 0502161 | | ads | wsptr | | | | ; |
|
595 | 1471 | | .1471: | ; | |
|
596 | 1471 | 0010646577777 | | o00 | stkp | / | lod | -1 | ; |
|
597 | 1472 | 0402167 | | sto | W1143 | | | | ; | @1472
|
598 | 1472+ | 1220024 | | srl | 20 | | | | ; |
|
599 | 1473 | 0062222 | | and | K8191 | | | | ;=8191 |
|
600 | 1473+ | 0402160 | | sto | dicpt | | | | ; |
|
601 | 1474 | 0000000 | | o00 | 0 | | | | ; | @1474
|
602 | 1474+ | 0602205 | | lod | K2a | | | | ; |
|
603 | 1475 | 2710646600000 | | o27 | stkp | / | lod | 0 | ; |
|
604 | 1476 | 0402147 | | sto | W1127 | | | | ; | @1476
|
605 | 1476+ | 0042234 | | o02 | Bit32 | | | | ;=00020000000000 |
|
606 | 1477 | 0110736660000 | | neg | W1143 | / | lns | 0 | ; |
|
607 | 1478 | 0062244 | | and | M1188 | | | | ; | @1478
|
608 | 1478+ | 0162161 | | bus | wsptr | | | | ; |
|
609 | 1479 | 0402166 | | sto | W1142 | | | | ; |
|
610 | 1479+ | 0602167 | | lod | W1143 | | | | ; |
|
611 | 1480 | 1022714 | | jn | .1484 | | | | ; | @1480
|
612 | 1480+ | 1002713 | | jmp | .1483 | | | | ;-->> |
|
613 | 1481 | | =1483 | |
|
614 | 1483 | | .1483: | ; | |
|
615 | 1483 | | | call | | | | | ;generate Exit Block call | @1483
|
615+1 | 1483 | 7320121003401 | | lnk | GenXB.lnk | : | jmp | GenXB.ent | |
|
616 | 1484 | | .1484: | ; | |
|
617 | 1484 | 0602167 | | lod | W1143 | | | | ; |
|
618 | 1484+ | 1320001 | | sll | 1 | | | | ; |
|
619 | 1485 | 1022716 | | jn | .1486 | | | | ; |
|
620 | 1485+ | 1002722 | | jmp | .1490 | | | | ; |
|
621 | 1486 | | ; |
|
622 | 1486 | | .1486: | ; | |
|
623 | 1486 | 0010736040000 | | o00 | W1143 | / | o02 | 0 | ; | @1486
|
624 | 1487 | 0401422 | | sto | GenAdr | | | | ; |
|
625 | 1487+ | 1002466 | | jmp | .1334 | | | | ;-->> |
|
626 | 1488 | | =1334 | |
|
627 | 1334 | 0010736577777 | .1334: | o00 | W1143 | / | lod | -1 | ; | @1334
|
628 | 1335 | 1220034 | | srl | 28 | | | | ; |
|
629 | 1335+ | 1002720 | | jmp | .1488 | | | | ;-->> |
|
630 | 1336 | | =1488 | |
|
631 | 1488 | 0062223 | .1488: | and | K31b | | | | ;=31 | @1488
|
632 | 1488+ | 0501422 | | ads | GenAdr | | | | ; |
|
633 | 1489 | | | call | | | | | ; |
|
633+1 | 1489 | 7307175103002 | | lnk | L1538P.lnk | : | jmp | L1538P.ent | |
|
634 | 1490 | 0602167 | .1490: | lod | W1143 | | | | ; | @1490
|
635 | 1490+ | 1320002 | | sll | 2 | | | | ; |
|
636 | 1491 | 1022743 | | jn | .1507 | | | | ; |
|
637 | 1491+ | 0603542 | | lod | GPs+61 | | | | ;=04000031000002 |
|
638 | 1492 | | | call | | | | | ; | @1492
|
638+1 | 1492 | 7320121004033 | | lnk | gencode.lnk | : | jmp | gencode.ent | |
|
639 | 1493 | 0042233 | | o02 | Bit21 | | | | ;=00000004000000 |
|
640 | 1493+ | 0562152 | | o27 | W1130 | | | | ; |
|
641 | 1494 | 0602152 | | lod | W1130 | | | | ; | @1494
|
642 | 1494+ | 0062222 | | and | K8191 | | | | ;=8191 |
|
643 | 1495 | 0401430 | | sto | W792 | | | | ; |
|
644 | 1495+ | 0602166 | | lod | W1142 | | | | ; |
|
645 | 1496 | 1002465 | | jmp | .1333 | | | | ;-->> | @1496
|
646 | 1496+ | | =1333 | |
|
647 | 1333 | 0102225 | .1333: | add | Bbit | | | | ;=<00 0 / 00 0> |
|
648 | 1333+ | 1002737 | | jmp | .1503 | | | | ; |
|
649 | 1334 | | ; |
|
650 | 1334 | | =1503 | |
|
651 | 1503 | | .1503: | ; | |
|
652 | 1503 | | | call | | | | | ; | @1503
|
652+1 | 1503 | 7307175001630 | | lnk | GenSetBase.lnk | : | jmp | GenSetBase.ent | |
|
653 | 1504 | | .1504: | ; | |
|
654 | 1504 | 0040000 | | o02 | 0 | | | | ;=1 |
|
655 | 1504+ | 0000000 | | o00 | 0 | | | | ; |
|
656 | 1505 | 2710646600000 | | o27 | stkp | / | lod | 0 | ; |
|
657 | 1506 | 0402153 | | sto | W1131 | | | | ; | @1506
|
658 | 1506+ | 1002303 | | jmp | .recover | | | | ; |
|
659 | 1507 | | ; |
|
660 | 1507 | | .1507: | ; | |
|
661 | 1507 | 0010736600000 | | o00 | W1143 | / | lod | 0 | ; | @1507
|
662 | 1508 | 0062244 | | and | M1188 | | | | ; |
|
663 | 1508+ | 0401422 | | sto | GenAdr | | | | ; |
|
664 | 1509 | 0602226 | | lod | K6 | | | | ;=6 |
|
665 | 1509+ | 0102225 | | add | Bbit | | | | ;=<000/000> |
|
666 | 1510 | | | call | | | | | ; | @1510
|
666+1 | 1510 | 7307175001665 | | lnk | GenSkpInst.lnk | : | jmp | GenSkpInst.ent | |
|
667 | 1511 | 0042224 | | o02 | Bit19 | | | | ;=00000001000000 |
|
668 | 1511+ | 0000000 | | o00 | 0 | | | | ; |
|
669 | 1512 | | | call | | | | | ; | @1512
|
669+1 | 1512 | 7307175001705 | | lnk | L965.lnk | : | jmp | L965.ent | |
|
670 | 1513 | 1002740 | | jmp | .1504 | | | | ; |
|
671 | 1513+ | | ; |
|
672 | 1513+ | | _err08a: | ; | |
|
673 | 1513+ | 0602210 | | lod | K7a | | | | ;=7 |
|
674 | 1514 | | _err08: | ; | |
|
675 | 1514 | 1661044 | | lnk | errlnk | | | | ;error 8: param of non-allowable type | @1514
|
676 | 1514+ | | | ;or, too many parameters | |
|
677 | 1514+ | | | ;parameter not specified | |
|
678 | 1514+ | 1001051 | | jmp | Error1 | | | | ;call error routine |
|
679 | 1515 | 1002753 | .hlt15: | jmp | .hlt15 | | | | ;dynamic stop |
|
680 | 1515+ | | ; |
|
681 | 1515+ | | _err08b: | ; | |
|
682 | 1515+ | 0602200 | | lod | K8a | | | | ;=8, obsolete | @1515+
|
683 | 1516 | 1002752 | | jmp | _err08 | | | | ; |
|
684 | 1516+ | | ; |
|
685 | 1516+ | | _err10a: | ; | |
|
686 | 1516+ | 0602176 | | lod | K9a | | | | ;=9, obsolete |
|
687 | 1517 | | _err10: | ; | |
|
688 | 1517 | 1661044 | | lnk | errlnk | | | | ;error 10: name in value not param | @1517
|
689 | 1517+ | 1001051 | | jmp | Error1 | | | | ;goto error rtne |
|
690 | 1518 | 1002546 | | jmp | .errrec | | | | ;if error returns continue |
|
691 | 1518+ | | ; |
|
692 | 1518+ | | _err11a: | ; | |
|
693 | 1518+ | 0602176 | | lod | K9a | | | | ;=9, obsolete |
|
694 | 1519 | | _err11: | ; | |
|
695 | 1519 | 1661044 | | lnk | errlnk | | | | ;error 11: name in spec not param, or |
|
696 | 1519+ | | | ;param spec twice | |
|
697 | 1519+ | 1001051 | | jmp | Error1 | | | | ;goto error rtne |
|
698 | 1520 | 1002602 | | jmp | .sp2 | | | | ; | @1520
|
699 | 1520+ | | ;-------------------------------------------------------------------- |
|
700 | 1520+ | | .1520P: | ; | |
|
701 | 1520+ | 0102240 | | add | K10b | | | | ; |
|
702 | 1521 | 1042762 | | jz | .cmnt | | | | ; |
|
703 | 1521+ | 1002553 | | jmp | .1387 | | | | ; |
|
704 | 1522 | | ; |
|
705 | 1522 | | .cmnt: | ; | |
|
706 | 1522 | | | call | | | | | ; | @1522
|
706+1 | 1522 | 7312031002420 | | lnk | skipcomment.lnk | : | jmp | skipcomment.ent | |
|
707 | 1523 | 1002534 | | jmp | .specs | | | | ; |
|
708 | 1523+ | | | pad | | | | | ; |
|
708+1 | 1523+ | 0000000 | | 00 | 0 | | | | |
|
709 | 1524 | | ; |
|
710 | 1524 | | .comt: | ; | |
|
711 | 1524 | | | call | | | | | ; | @1524
|
711+1 | 1524 | 7312031002420 | | lnk | skipcomment.lnk | : | jmp | skipcomment.ent | |
|
712 | 1525 | 1002552 | | jmp | .valsemi | | | | ; |
|
713 | 1525+ | | | pad | | | | | |
|
713+1 | 1525+ | 0000000 | | 00 | 0 | | | | |
|
714 | 1526 | | ; |
|
715 | 1526 | | specsw: | ; | |
|
716 | 1526 | 4013720000000 | | jmp | .comt | : | 00 | 0 | ; +9 comment | @1526
|
717 | 1527 | 4012604000000 | | jmp | _err07 | : | 00 | 0 | ; +10 own invalid as spec |
|
718 | 1528 | 3011055102560 | | lod | boolbit | : | jmp | .ssp | ; +11 boolean | @1528
|
719 | 1529 | 3011061102560 | | lod | intbit | : | jmp | .ssp | ; +12 integer |
|
720 | 1530 | 3011065102560 | | lod | realbit | : | jmp | .ssp | ; +13 real | @1530
|
721 | 1531 | 3011015102565 | | lod | rarrbit | : | jmp | .asp | ; +14 array |
|
722 | 1532 | 4413644000000 | | jmp | _err08a | : | 00 | 0 | ; +15 switch | @1532
|
723 | 1533 | 4413644000000 | | jmp | _err08a | : | 00 | 0 | ; +16 procedure |
|
724 | 1534 | 3011251102565 | | lod | strbit | : | jmp | .asp | ; +17 string | @1534
|
725 | 1535 | 3010621103012 | | lod | W1124 | : | jmp | .lbl | ; +18 label |
|
726 | 1536 | | ;-------------------------------------------------------------------- |
|
727 | 1536 | | ; |
|
728 | 1536 | | =1537 | |
|
729 | 1537 | 0062215 | .1537: | and | realbit | | | | ; | @1537
|
730 | 1537+ | 1042667 | | jz | .1463 | | | | ; |
|
731 | 1538 | 1102666 | | jmp | .1462P | | | | ; |
|
732 | 1538+ | | ;-------------------------------------------------------------------- |
|
733 | 1538+ | | ; |
|
734 | 1538+ | | L1538P.ent: | ; | |
|
735 | 1538+ | 0602220 | | lod | W1168 | | | | ; | @1538+
|
736 | 1539 | 1001640 | | jmp | GenInst.ent | | | | ; |
|
737 | 1539+ | | ;-------------------------------------------------------------------- |
|
738 | 1539+ | | ; |
|
739 | 1539+ | | ;L1539P: |
|
740 | 1539+ | 0042231 | .1539P: | o02 | K11 | | | | ; | @1539+
|
741 | 1540 | 0562166 | | o27 | W1142 | | | | ; | @1540
|
742 | 1540+ | 1102620 | | jmp | .lp3b | | | | ; |
|
743 | 1541 | | ; |
|
744 | 1541 | | =1542+ | |
|
745 | 1542+ | | ; |
|
746 | 1542+ | | ; no reference to here?? |
|
747 | 1542+ | | ; |
|
748 | 1542+ | 0600600 | | lod | token | | | | ; |
|
749 | 1543 | 1043010 | | jz | .1544 | | | | ; |
|
750 | 1543+ | 1002541 | | jmp | _err07 | | | | ; |
|
751 | 1544 | | =1544 | |
|
752 | 1544 | | ; and hence to here |
|
753 | 1544 | | .1544: | ; | |
|
754 | 1544 | | | call | | | | | ; | @1544
|
754+1 | 1544 | 7306371006514 | | lnk | SkipPLC.lnk | : | jmp | SkipPLC.ent | |
|
755 | 1545 | | | call | | | | | ; |
|
755+1 | 1545 | 7310725002400 | | lnk | declid2.lnk | : | jmp | declid2.ent | |
|
756 | 1546 | 1002511 | | jmp | .1353 | | | | ; | @1546
|
757 | 1546+ | | ; |
|
758 | 1546+ | | .lbl: | ; | |
|
759 | 1546+ | 1320027 | | sll | 23 | | | | ; |
|
760 | 1547 | 0102250 | | add | W1192 | | | | ; | @1547
|
761 | 1547+ | 1102565 | | jmp | .asp | | | | ; |
|
762 | 1548 | | ; |
|
763 | 1548 | | L1548.ent: | ; | |
|
764 | 1548 | 0602144 | | lod | W1124 | | | | ; | @1548
|
765 | 1548+ | 0202153 | | exa | W1131 | | | | ; |
|
766 | 1549 | | | call | | | | | ; |
|
766+1 | 1549 | 7312031002415 | | lnk | stack.lnk | : | jmp | stack.ent | |
|
767 | 1550 | 1001222 | | jmp | gettoken.ent | | | | ; | @1550
|
768 | 1550+ | | ; |
|
769 | 1550+ | | =1555 | |
|
770 | 1555 | | ; |
|
771 | 1555 | 3777740000000 | W1555: | +03777740000000 | ; |
|
772 | 1556 | | ; |
|
773 | 1556 | | .1556: | ; | |
|
774 | 1556 | | | call | | | | | ; |
|
774+1 | 1556 | 7312031002420 | | lnk | skipcomment.lnk | : | jmp | skipcomment.ent | |
|
775 | 1557 | 1002655 | | jmp | .lp3k | | | | ; |
|
776 | 1557+ | | ; |
|
777 | 1557+ | | | pad | | | | | |
|
777+1 | 1557+ | 0000000 | | 00 | 0 | | | | |
|
778 | 1558 | | ;-------------------------------------------------------------------- |
|
779 | 1558 | | ; getboundexp, get expression suitable for array bound |
|
780 | 1558 | | ; |
|
781 | 1558 | | getboundexp:: | ; | |
|
782 | 1558 | | ; |
|
783 | 1558 | | .ent: | ; | |
|
784 | 1558 | | | pad | | | | | ; | @1558
|
784+1 | 1558 | 0000000 | | 00 | 0 | | | | |
|
785 | 1558+ | 0542171 | | cls | W1145 | | | | ; |
|
786 | 1559 | | | call | | | | | ;get next token |
|
786+1 | 1559 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
787 | 1560 | 0040600 | | o02 | token | | | | ;token+1 | @1560
|
788 | 1560+ | 1023225 | | jn | L1685 | | | | ;-> if -2 |
|
789 | 1561 | 0124346 | | sub | W2278 | | | | ;=23 ->[+]+1 |
|
790 | 1561+ | 1043047 | | jz | GetIntExp | | | | ;handle plus sign |
|
791 | 1562 | 0122207 | | sub | K1c | | | | ;=1 ->[-]+1 | @1562
|
792 | 1562+ | 1143046 | | jz | GetIntExp1 | | | | ;->handle neg sign |
|
793 | 1563 | | | pad | | | | | ; |
|
793+1 | 1563 | 0000000 | | 00 | 0 | | | | |
|
794 | 1563+ | 0542172 | | cls | Link15c | | | | ; |
|
795 | 1564 | | L1564.ent: | ; | |
|
796 | 1564 | 0602156 | .1564: | lod | frameptr | | | | ; | @1564
|
797 | 1564+ | 0202160 | | exa | dicpt | | | | ; |
|
798 | 1565 | 0402173 | | sto | W1147 | | | | ; |
|
799 | 1565+ | | L1565P: | ; | |
|
800 | 1565+ | | .1565P: | ; | |
|
801 | 1565+ | 0404304 | | sto | constptr | | | | ; | @1565+
|
802 | 1566 | | | call | | | | | ;process identifier? |
|
802+1 | 1566 | 7322411004504 | | lnk | advance2.lnk | : | jmp | advance2.ent | |
|
803 | 1567 | | | call | | | | | ; |
|
803+1 | 1567 | 7326171003053 | | lnk | GetIntExp2.lnk | : | jmp | GetIntExp2.ent | |
|
804 | 1568 | 0602173 | | lod | W1147 | | | | ; | @1568
|
805 | 1568+ | 0402160 | | sto | dicpt | | | | ; |
|
806 | 1569 | 0542166 | | cls | W1142 | | | | ; |
|
807 | 1569+ | 0040000 | | o02 | 0 | | | | ;=1 |
|
808 | 1570 | 2710646600000 | | o27 | stkp | / | lod | 0 | ; | @1570
|
809 | 1571 | 0062177 | | and | MaxInt | | | | ; |
|
810 | 1571+ | | L1571P: | ; | |
|
811 | 1571+ | 0102175 | .1571P: | add | bit39 | | | | ; |
|
812 | 1572 | | | call | | | | | ; | @1572
|
812+1 | 1572 | 7312031002407 | | lnk | addtodic.lnk | : | jmp | addtodic.ent | |
|
813 | 1573 | 0010727000001 | | o00 | Link15b | / | jmp | 1 | ;return |
|
814 | 1574 | | ; |
|
815 | 1574 | | | pad | | | | | ; | @1574
|
815+1 | 1574 | 0000000 | | 00 | 0 | | | | |
|
816 | 1574+ | | ;-------------------------------------------------------------------- |
|
817 | 1574+ | | ; |
|
818 | 1574+ | | ; declid process an identifier, checking for duplicate |
|
819 | 1574+ | | ; declarations. If OK, add to dictionary |
|
820 | 1574+ | | ; |
|
821 | 1574+ | | declid:: | ; | |
|
822 | 1574+ | | =1536 | |
|
823 | 1536 | | ; entry moved into module |
|
824 | 1536 | | ; add ident to dictionary, regardless of duplicates |
|
825 | 1536 | | ; |
|
826 | 1536 | | declid1.ent: | ; | |
|
827 | 1536 | 0602160 | | lod | dicpt | | | | ; bypass duplicate search | @1536
|
828 | 1536+ | 1102361 | | jmp | .1 | | | | ; enter main body |
|
829 | 1537 | | ; |
|
830 | 1537 | | ; main entry, include duplicate scan |
|
831 | 1537 | | ; |
|
832 | 1537 | | =1265 | |
|
833 | 1265 | | .ent: | ; | |
|
834 | 1265 | 0602156 | | lod | frameptr | | | | ; | @1265
|
835 | 1265+ | 0402167 | .1: | sto | W1143 | | | | ;limit for scans |
|
836 | 1266 | 0602160 | | lod | dicpt | | | | ; |
|
837 | 1266+ | 0402170 | | sto | idpt1 | | | | ; |
|
838 | 1267 | 0542164 | | cls | idcount | | | | ;number of ids in list | @1267
|
839 | 1267+ | 1102367 | | jmp | .3 | | | | ; |
|
840 | 1268 | | ; |
|
841 | 1268 | 0000000000000 | | +0 | ;no reference! | @1268
|
842 | 1269 | | ; |
|
843 | 1269 | | .2: | ; | |
|
844 | 1269 | 2210742600000 | | inc | idpt1 | / | lod | 0 | ; | @1269
|
845 | 1270 | 0120576 | | sub | ident | | | | ;ident |
|
846 | 1270+ | 1142402 | | jz | .7 | | | | ;match->duplicate id |
|
847 | 1271 | 0602170 | | lod | idpt1 | | | | ; |
|
848 | 1271+ | | .3: | ; | |
|
849 | 1271+ | 0122167 | | sub | W1143 | | | | ; | @1271+
|
850 | 1272 | 1022365 | | jn | .2 | | | | ;back to check next one |
|
851 | 1272+ | 0600600 | | lod | token | | | | ;token |
|
852 | 1273 | 1142372 | | jz | .4 | | | | ;ident-> |
|
853 | 1273+ | 1661044 | _err04: | lnk | errlnk | | | | ;error 4: item after comma in decl not name |
|
854 | 1274 | 1002262 | | jmp | Error2 | | | | ;loop back to test for name | @1274
|
855 | 1274+ | | ; |
|
856 | 1274+ | | .4: | ; | |
|
857 | 1274+ | 0600576 | | lod | ident | | | | ;identifier value |
|
858 | 1275 | | | call | | | | | ; add id to list |
|
858+1 | 1275 | 7312031002407 | | lnk | addtodic.lnk | : | jmp | addtodic.ent | |
|
859 | 1276 | 0442164 | | inc | idcount | | | | ;idcount | @1276
|
860 | 1276+ | | | pad | | | | | ;no-op |
|
860+1 | 1276+ | 0000000 | | 00 | 0 | | | | |
|
861 | 1277 | | .5: | ; | |
|
862 | 1277 | | | call | | | | | ; | @1277
|
862+1 | 1277 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
863 | 1278 | 0040600 | | o02 | token | | | | ;token+1 | @1278
|
864 | 1278+ | 0122201 | | sub | K42 | | | | ;=42 |
|
865 | 1279 | 1042400 | | jz | .6 | | | | ; comma-> |
|
866 | 1279+ | 1002405 | | jmp | .ret | | | | ;anything else-> |
|
867 | 1280 | | ; |
|
868 | 1280 | | ; alternate entry point |
|
869 | 1280 | | ; |
|
870 | 1280 | | declid2.ent: | ; | |
|
871 | 1280 | | .6: | ; | |
|
872 | 1280 | | | call | | | | | ; | @1280
|
872+1 | 1280 | 7305105001222 | | lnk | gettoken.lnk | : | jmp | gettoken.ent | |
|
873 | 1281 | 0602160 | | lod | dicpt | | | | ; |
|
874 | 1281+ | 0402170 | | sto | idpt1 | | | | ; |
|
875 | 1282 | 1002365 | | jmp | .2 | | | | ; loop back for next identifier | @1282
|
876 | 1282+ | | ; |
|
877 | 1282+ | | .7: | ; | |
|
878 | 1282+ | 0040000 | | o02 | 0 | | | | |
|
879 | 1283 | 1661044 | _err03: | lnk | errlnk | | | | ;error 3: name declared twice |
|
880 | 1283+ | 1001051 | | jmp | Error1 | | | | ;call error handler |
|
881 | 1284 | 1002375 | | jmp | .5 | | | | ; | @1284
|
882 | 1284+ | | ; |
|
883 | 1284+ | | | pad | | | | | |
|
883+1 | 1284+ | 0000000 | | 00 | 0 | | | | |
|
884 | 1285 | | .ret: | ; | |
|
885 | 1285 | | | ret | | | | | |
|
885+1 | 1285 | 0010727000001 | | o00 | declid.lnk | / | jmp | 1 | |
|
886 | 1286 | | ;-------------------------------------------------------------------- |
|