Line | Address | Object Code
| Label | F1 | N1 | B | F2 | N2 | Comments | Check
|
---|
1 | 0 | | ; tape1.d/assign.t2 |
|
2 | 0 | | ;------------------ |
|
3 | 0 | | ; |
|
4 | 0 | | assignment:: | ; | |
|
5 | 0 | | ; |
|
6 | 0 | | =2307 | |
|
7 | 2307 | | .ent: | ; | |
|
8 | 2307 | 0603427 | | lod | idptr | | | | ; | @2307
|
9 | 2307+ | 0064324 | | and | T_Mask | | | | ;=0700000000000 |
|
10 | 2308 | 0344301 | | stc | W2241 | | | | ;save it |
|
11 | 2308+ | 0000000 | | o00 | 0 | | | | ;no-op |
|
12 | 2309 | | | call | | | | | ;stack zero |
|
12+1 | 2309 | 7323731005012 | | lnk | push.lnk | : | jmp | push.ent | |
|
13 | 2310 | | .loop1: | ; | |
|
14 | 2310 | 0603427 | | lod | idptr | | | | ; | @2310
|
15 | 2310+ | 0347041 | | stc | W3617 | | | | ;save id info |
|
16 | 2311 | | | call | | | | | ;check id and push onto stack |
|
16+1 | 2311 | 7326171005437 | | lnk | Variable.lnk | : | jmp | Variable.ent | |
|
17 | 2312 | 0600600 | | lod | token | | | | ;token | @2312
|
18 | 2312+ | 1045373 | | jz | _err31 | | | | ;identifier |
|
19 | 2313 | 0124355 | | sub | W2285 | | | | ;=43 [:=] |
|
20 | 2313+ | 1044443 | | jz | .13 | | | | ; yes, assignment |
|
21 | 2314 | 0604341 | | lod | K3a | | | | ;=3 |
|
22 | 2314+ | 0404300 | | sto | W2240 | | | | ; |
|
23 | 2315 | 0603427 | | lod | idptr | | | | ; |
|
24 | 2315+ | 0064360 | | and | procbit2 | | | | ;=02000000000000 |
|
25 | 2316 | 1104472 | | jmp | .skip1 | | | | ;-->> | @2316
|
26 | 2316+ | | =2362+ | |
|
27 | 2362+ | 1144474 | .skip1: | jz | .2 | | | | ; |
|
28 | 2363 | | | call | | | | | ; |
|
28+1 | 2363 | 7331155010611 | | lnk | CallFunc.lnk | : | jmp | CallFunc.ent | |
|
29 | 2364 | 1104414 | | jmp | .3 | | | | ; | @2364
|
30 | 2364+ | | ; |
|
31 | 2364+ | | ; from 2362+ |
|
32 | 2364+ | 0603427 | .2: | lod | idptr | | | | ; | @2364+
|
33 | 2365 | 0404031 | | sto | IdInfo | | | | ; |
|
34 | 2365+ | 0064367 | | and | Bit33a | | | | ;=0040000000000 |
|
35 | 2366 | 1144417 | | jz | .4 | | | | ; | @2366
|
36 | 2366+ | 0603515 | | lod | GPs+40 | | | | ;=>GP2M 1,20;GP0F 30,0 |
|
37 | 2367 | | | call | | | | | ; |
|
37+1 | 2367 | 7320121004033 | | lnk | gencode.lnk | : | jmp | gencode.ent | |
|
38 | 2368 | 0040000 | | o02 | 0 | | | | ;=1 | @2368
|
39 | 2368+ | 0562161 | | o27 | wsptr | | | | ; |
|
40 | 2369 | 1104414 | | jmp | .3 | | | | ; |
|
41 | 2369+ | | ; |
|
42 | 2369+ | | | pad | | | | | ; |
|
42+1 | 2369+ | 0000000 | | 00 | 0 | | | | |
|
43 | 2370 | | =2316+ | |
|
44 | 2316+ | | .3: | ; | |
|
45 | 2316+ | 0604301 | | lod | W2241 | | | | ; |
|
46 | 2317 | 0010646377777 | | o00 | stkp | / | sto | -1 | ; |
|
47 | 2318 | 0604347 | | lod | K4a | | | | ;=4 | @2318
|
48 | 2318+ | 0404300 | | sto | W2240 | | | | ; |
|
49 | 2319 | | | pad | | | | | ; |
|
49+1 | 2319 | 0000000 | | 00 | 0 | | | | |
|
50 | 2319+ | | ; from 2366 |
|
51 | 2319+ | | .4: | ; | |
|
52 | 2319+ | 0040000 | | o02 | 0 | | | | ;=1 |
|
53 | 2320 | 2710646600000 | | o27 | stkp | / | lod | 0 | ;pop value | @2320
|
54 | 2321 | | .5: | ; | |
|
55 | 2321 | 0404303 | | sto | W2243 | | | | ;save it |
|
56 | 2321+ | | .6: | ; | |
|
57 | 2321+ | 0604301 | | lod | W2241 | | | | ; |
|
58 | 2322 | 0124322 | | sub | TBool | | | | ;=0100000000000 (boolean) | @2322
|
59 | 2322+ | 1044425 | | jz | .7 | | | | ;boolean expression needed-> |
|
60 | 2323 | | | call | | | | | ;get arithmetic expression |
|
60+1 | 2323 | 7323131004627 | | lnk | expression.lnk | : | jmp | expression.ent | |
|
61 | 2324 | 1004426 | | jmp | .8 | | | | ;-> | @2324
|
62 | 2324+ | | ; |
|
63 | 2324+ | | | pad | | | | | ; |
|
63+1 | 2324+ | 0000000 | | 00 | 0 | | | | |
|
64 | 2325 | | .7: | ; | |
|
65 | 2325 | | | call | | | | | ;get boolean expression | @2325
|
65+1 | 2325 | 7326605005553 | | lnk | compbool.lnk | : | jmp | compbool.ent | |
|
66 | 2326 | | .8: | ; | |
|
67 | 2326 | 0544305 | | cls | W2245 | | | | ; | @2326
|
68 | 2326+ | 0604340 | | lod | K2b | | | | ;=2 removing two items |
|
69 | 2327 | 2710646600001 | | o27 | stkp | / | lod | 1 | ;get top item |
|
70 | 2328 | 0404306 | | sto | W2246 | | | | ;save it | @2328
|
71 | 2328+ | 0124301 | | sub | W2241 | | | | ;=0300000000000 |
|
72 | 2329 | 1044433 | | jz | .9 | | | | ;-> |
|
73 | 2329+ | 0604341 | | lod | K3a | | | | ;=3 |
|
74 | 2330 | | | call | | | | | ; | @2330
|
74+1 | 2330 | 7320121004032 | | lnk | gencode1.lnk | : | jmp | gencode1.ent | |
|
75 | 2331 | | .9: | ; | |
|
76 | 2331 | 0010646600000 | | o00 | stkp | / | lod | 0 | ;get second item |
|
77 | 2332 | 1661044 | _err18: | lnk | errlnk | | | | ;error 18: := missing in assignment | @2332
|
78 | 2332+ | 1044772 | | jz | error2 | | | | ;if zero goto error rtne |
|
79 | 2333 | | .10: | ; | |
|
80 | 2333 | 0404031 | | sto | IdInfo | | | | ;save it |
|
81 | 2333+ | 1004467 | | jmp | .11 | | | | ;-> |
|
82 | 2334 | | ; |
|
83 | 2334 | | =2359 | |
|
84 | 2359 | | .11: | ; | |
|
85 | 2359 | | | call | | | | | ; |
|
85+1 | 2359 | 7323761005051 | | lnk | FreeTemp.lnk | : | jmp | FreeTemp.ent | |
|
86 | 2360 | 0604305 | | lod | W2245 | | | | ; | @2360
|
87 | 2360+ | 1004436 | | jmp | .12 | | | | ;-->> |
|
88 | 2361 | | =2334 | |
|
89 | 2334 | | .12: | ; | |
|
90 | 2334 | | | call | | | | | ;generate store instruction | @2334
|
90+1 | 2334 | 7320121004032 | | lnk | gencode1.lnk | : | jmp | gencode1.ent | |
|
91 | 2335 | | | pad | | | | | ;no-op |
|
91+1 | 2335 | 0000000 | | 00 | 0 | | | | |
|
92 | 2335+ | 0040000 | | o02 | 0 | | | | ;=1 |
|
93 | 2336 | 2710646600000 | | o27 | stkp | / | lod | 0 | ;unstack item | @2336
|
94 | 2337 | | | jnz | | | | | ;repeat until stopper found |
|
94+1 | 2337 | 1044442 | | jz | .1 | | | | |
|
94+2 | 2337+ | 1004435 | | jmp | assignment.10 | | | | |
|
94+3 | 2338 | | .1: | ; | |
|
95 | 2338 | 0022013000001 | | o00 | .lnk | / | jmp | 1 | ;return | @2338
|
96 | 2339 | | ;------------------------------------------------ |
|
97 | 2339 | | ; |
|
98 | 2339 | | .13: | ; | |
|
99 | 2339 | 0607041 | | lod | W3617 | | | | ; |
|
100 | 2339+ | 0064360 | | and | procbit2 | | | | ;=02000000000000 |
|
101 | 2340 | 1044471 | | jz | .18 | | | | ;-> | @2340
|
102 | 2340+ | 0603427 | | lod | idptr | | | | ; |
|
103 | 2341 | 0064361 | | and | W2289 | | | | ; |
|
104 | 2341+ | 1661044 | _err19: | lnk | errlnk | | | | ;error 19: value assigned to proc outside body |
|
105 | 2342 | 1044772 | | jz | error2 | | | | ;error | @2342
|
106 | 2342+ | 1004471 | | jmp | .18 | | | | ;-->> |
|
107 | 2343 | | =2361 | |
|
108 | 2361 | | .18: | ; | |
|
109 | 2361 | 0604340 | | lod | K2b | | | | ;=2 |
|
110 | 2361+ | 0404300 | | sto | W2240 | | | | ; |
|
111 | 2362 | 1004447 | | jmp | .14 | | | | ;-->> | @2362
|
112 | 2362+ | | =2343 | |
|
113 | 2343 | | .14: | ; | |
|
114 | 2343 | | | call | | | | | ; 1 | @2343
|
114+1 | 2343 | 7322411004503 | | lnk | advance.lnk | : | jmp | advance.ent | |
|
115 | 2344 | 0600600 | | lod | token | | | | ; | @2344
|
116 | 2344+ | 1144452 | | jz | .15 | | | | ;identifier-> |
|
117 | 2345 | 0040600 | | o02 | token | | | | ;token+1 |
|
118 | 2345+ | 1024455 | | jn | .16 | | | | ; |
|
119 | 2346 | 1104421 | | jmp | .6 | | | | ; | @2346
|
120 | 2346+ | | ; |
|
121 | 2346+ | | .15: | ; | |
|
122 | 2346+ | 0603427 | | lod | idptr | | | | ; |
|
123 | 2347 | 0064324 | | and | T_Mask | | | | ;=0700000000000 |
|
124 | 2347+ | 0124301 | | sub | W2241 | | | | ;=0200000000000 |
|
125 | 2348 | 1044406 | | jz | .loop1 | | | | ; same type -> | @2348
|
126 | 2348+ | 1104421 | | jmp | .6 | | | | ; diff type -> |
|
127 | 2349 | | ; |
|
128 | 2349 | | .16: | ; | |
|
129 | 2349 | 0616136120000 | | cla | idptr | / | sub | 0 | ; |
|
130 | 2350 | 1124421 | | jn | .6 | | | | ; | @2350
|
131 | 2350+ | 0604301 | | lod | W2241 | | | | ; |
|
132 | 2351 | 0124322 | | sub | TBool | | | | ;=00100000000000 (boolean) |
|
133 | 2351+ | 1044425 | | jz | .7 | | | | ; |
|
134 | 2352 | | | call | | | | | ; | @2352
|
134+1 | 2352 | 7322411004503 | | lnk | advance.lnk | : | jmp | advance.ent | |
|
135 | 2353 | | | call | | | | | ; |
|
135+1 | 2353 | 7323761005070 | | lnk | TestArithOp.lnk | : | jmp | TestArithOp.ent | |
|
136 | 2354 | 1044465 | | jz | .17 | | | | ; | @2354
|
137 | 2354+ | 0604466 | | lod | _con59 | | | | ; |
|
138 | 2355 | 0404305 | | sto | W2245 | | | | ; |
|
139 | 2355+ | 0040000 | | o02 | 0 | | | | ; |
|
140 | 2356 | 0562151 | | o27 | stkp | | | | ; | @2356
|
141 | 2356+ | 1004433 | | jmp | .9 | | | | ; |
|
142 | 2357 | | ; |
|
143 | 2357 | 0444300 | .17: | inc | W2240 | | | | ; | @2357
|
144 | 2357+ | 0603427 | | lod | idptr | | | | ; |
|
145 | 2358 | 1004421 | _con59: | jmp | .5 | | | | ; | @2358
|
146 | 2358+ | | ; |
|
147 | 2358+ | 0000073 | | 00 | +59 | | | | ;in-line constant |
|
148 | 2359 | | ; |
|
149 | 2359 | | ;-------------------------------------------------------------------- |
|