|
|
File: condexp.t2
For general comments see here
| Line | Address | Object Code
| Label | F1 | N1 | B | F2 | N2 | Comments | Check
|
|---|
| 1 | 0 | | ; tape1.d/condexp.t2 |
| | 2 | 0 | | ;------------------- |
| | 3 | 0 | | ; |
| | 4 | 0 | | =2708 | |
| | 5 | 2708 | | CondExp:: | ; | |
| | 6 | 2708 | | .ent: | ; | |
| | 7 | 2708 | 0605223 | | lod | .lnk | | | | ; return address | @2708
| | 8 | 2708+ | 0545230 | | cls | W2712 | | | | ; |
| | 9 | 2709 | | | call | | | | | ; |
| | 9+1 | 2709 | 7323731005012 | | lnk | push.lnk | : | jmp | push.ent | |
| | 10 | 2710 | | | call | | | | | ; |
| | 10+1 | 2710 | 7325115005260 | | lnk | compif.lnk | : | jmp | compif.ent | |
| | 11 | 2711 | 1005231 | | jmp | .2713 | | | | ; |
| | 12 | 2711+ | | ; |
| | 13 | 2711+ | 0000000 | | o00 | 0 | | | | |
| | 14 | 2712 | | ; |
| | 15 | 2712 | 0000000000000 | W2712: | +0 | ; | @2712
| | 16 | 2713 | | ; |
| | 17 | 2713 | 0604340 | .2713: | lod | K2b | | | | ;=2 |
| | 18 | 2713+ | 0404300 | | sto | W2240 | | | | ; |
| | 19 | 2714 | | | call | | | | | ; | @2714
| | 19+1 | 2714 | 7323131004627 | | lnk | expression.lnk | : | jmp | expression.ent | |
| | 20 | 2715 | | L2715: | ; | |
| | 21 | 2715 | 0604305 | .2715: | lod | W2245 | | | | ; |
| | 22 | 2715+ | 0204310 | | exa | W2248 | | | | ; |
| | 23 | 2716 | 0010646377777 | | o00 | stkp | / | sto | -1 | ; | @2716
| | 24 | 2717 | 0600600 | | lod | token | | | | ; |
| | 25 | 2717+ | 0124370 | | sub | W2296 | | | | ; |
| | 26 | 2718 | 1145237 | | jz | .2719P | | | | ; | @2718
| | 27 | 2718+ | 1661044 | _err28: | lnk | errlnk | | | | ;error 28: missing else |
| | 28 | 2719 | 1004772 | | jmp | error2 | | | | ;call error routine |
| | 29 | 2719+ | | ; |
| | 30 | 2719+ | 0604335 | .2719P: | lod | W2269 | | | | ; |
| | 31 | 2720 | | | call | | | | | ; | @2720
| | 31+1 | 2720 | 7320121004032 | | lnk | gencode1.lnk | : | jmp | gencode1.ent | |
| | 32 | 2721 | 0040000 | | o02 | 0 | | | | ;=1 |
| | 33 | 2721+ | 0404300 | | sto | W2240 | | | | ; |
| | 34 | 2722 | | | call | | | | | ; | @2722
| | 34+1 | 2722 | 7323131004627 | | lnk | expression.lnk | : | jmp | expression.ent | |
| | 35 | 2723 | 0604320 | | lod | IntBit | | | | ; |
| | 36 | 2723+ | 0404306 | | sto | W2246 | | | | ; |
| | 37 | 2724 | 0040000 | | o02 | 0 | | | | ;=1 | @2724
| | 38 | 2724+ | 0000000 | | o00 | 0 | | | | |
| | 39 | 2725 | 2710646600000 | | o27 | stkp | / | lod | 0 | ; |
| | 40 | 2726 | 0010646177777 | | o00 | stkp | / | exa | -1 | ; | @2726
| | 41 | 2727 | 0204310 | | exa | W2248 | | | | ; |
| | 42 | 2727+ | 0124305 | | sub | W2245 | | | | ; |
| | 43 | 2728 | 1045257 | | jz | .2735 | | | | ; | @2728
| | 44 | 2728+ | 0604305 | | lod | W2245 | | | | ; |
| | 45 | 2729 | 0124315 | | sub | procbit1 | | | | ; |
| | 46 | 2729+ | 1145254 | | jz | .2732P | | | | ; |
| | 47 | 2730 | 0604315 | | lod | procbit1 | | | | ; | @2730
| | 48 | 2730+ | 0000000 | | o00 | 0 | | | | |
| | 49 | 2731 | 0010646377777 | | o00 | stkp | / | sto | -1 | ; |
| | 50 | 2732 | 1005256 | | jmp | .2734 | | | | ; | @2732
| | 51 | 2732+ | | ; |
| | 52 | 2732+ | 0603473 | .2732P: | lod | GPs+22 | | | | ;=04000000000013 |
| | 53 | 2733 | | | call | | | | | ; |
| | 53+1 | 2733 | 7320121004033 | | lnk | gencode.lnk | : | jmp | gencode.ent | |
| | 54 | 2734 | | .2734: | ; | |
| | 55 | 2734 | | | call | | | | | ; | @2734
| | 55+1 | 2734 | 7320121007410 | | lnk | L3848.lnk | : | jmp | L3848.ent | |
| | 56 | 2735 | | .2735: | ; | |
| | 57 | 2735 | 1106122 | | jmp | L3136.5 | | | | ; |
| | 58 | 2735+ | | | pad | | | | | ; |
| | 58+1 | 2735+ | 0000000 | | 00 | 0 | | | | |
| | 59 | 2736 | | ;-------------------------------------------------------------------- |
| | 60 | 2736 | | ; compile if clause |
| | 61 | 2736 | | ; |
| | 62 | 2736 | | compif:: | ; | |
| | 63 | 2736 | | ; |
| | 64 | 2736 | | .ent: | ; | |
| | 65 | 2736 | 0605223 | | lod | .lnk | | | | ; | @2736
| | 66 | 2736+ | 0000000 | | o00 | 0 | | | | ; |
| | 67 | 2737 | | | call | | | | | ; |
| | 67+1 | 2737 | 7323731005012 | | lnk | push.lnk | : | jmp | push.ent | |
| | 68 | 2738 | 0040000 | | o02 | 0 | | | | ;=1 | @2738
| | 69 | 2738+ | 0404300 | | sto | W2240 | | | | ; |
| | 70 | 2739 | | | call | | | | | ;compile bool exprn |
| | 70+1 | 2739 | 7326605005553 | | lnk | compbool.lnk | : | jmp | compbool.ent | |
| | 71 | 2740 | 0044330 | | o02 | K37 | | | | ;=37 + 1 => [then] | @2740
| | 72 | 2740+ | 0120600 | | sub | token | | | | ;token |
| | 73 | 2741 | 1045267 | | jz | .2743 | | | | ; OK |
| | 74 | 2741+ | 1661044 | _err29: | lnk | errlnk | | | | ;error 29: missing then |
| | 75 | 2742 | 1004772 | | jmp | error2 | | | | ; | @2742
| | 76 | 2742+ | | ; |
| | 77 | 2742+ | 0000000 | | o00 | 0 | | | | |
| | 78 | 2743 | | ; from 2741 |
| | 79 | 2743 | | .2743: | ; | |
| | 80 | 2743 | | | call | | | | | ; code gen | @2743
| | 80+1 | 2743 | 7320121007403 | | lnk | L3843.lnk | : | jmp | L3843.ent | |
| | 81 | 2744 | | .2744: | ; | |
| | 82 | 2744 | | | call | | | | | ;get next token | @2744
| | 82+1 | 2744 | 7322411004503 | | lnk | advance.lnk | : | jmp | advance.ent | |
| | 83 | 2745 | 0600600 | | lod | token | | | | ;token |
| | 84 | 2745+ | 0124340 | | sub | K2b | | | | ;=2 [if] |
| | 85 | 2746 | 1661044 | _err30: | lnk | errlnk | | | | ;error 30: cond stat or expr after then | @2746
| | 86 | 2746+ | 1044772 | | jz | error2 | | | | ;if token=[if] goto error |
| | 87 | 2747 | 0605230 | | lod | W2712 | | | | ; |
| | 88 | 2747+ | 1147132 | | jz | Pop2 | | | | ;return via stack |
| | 89 | 2748 | 0600600 | | lod | token | | | | ;token | @2748
| | 90 | 2748+ | 1145275 | | jz | .2749P | | | | ; =identifier -> |
| | 91 | 2749 | 1107132 | | jmp | Pop2 | | | | ;else return via stack |
| | 92 | 2749+ | | ; |
| | 93 | 2749+ | | ; identifier |
| | 94 | 2749+ | | ; |
| | 95 | 2749+ | 0603427 | .2749P: | lod | idptr | | | | ; |
| | 96 | 2750 | 0062243 | | and | MskArgTp | | | | ; | @2750
| | 97 | 2750+ | 0122250 | | sub | W1192 | | | | ; |
| | 98 | 2751 | 1045300 | | jz | .2752 | | | | ; |
| | 99 | 2751+ | 1107132 | | jmp | Pop2 | | | | ;return via stack |
| | 100 | 2752 | | ; |
| | 101 | 2752 | 0603427 | .2752: | lod | idptr | | | | ; |
| | 102 | 2752+ | 0000000 | | o00 | 0 | | | | ; |
| | 103 | 2753 | | | call | | | | | ; |
| | 103+1 | 2753 | 7307175103411 | | lnk | PutLabel.lnk | : | jmp | PutLabel.ent | |
| | 104 | 2754 | | | call | | | | | ; | @2754
| | 104+1 | 2754 | 7322411004503 | | lnk | advance.lnk | : | jmp | advance.ent | |
| | 105 | 2755 | 0600600 | | lod | token | | | | ; |
| | 106 | 2755+ | 0122201 | | sub | K42 | | | | ;=42 |
| | 107 | 2756 | 1045270 | | jz | .2744 | | | | ; |
| | 108 | 2756+ | 1003330 | | jmp | _err17 | | | | ; |
| | 109 | 2757 | | ;-------------------------------------------------------------- |
| | 110 | 2757 | | ; compile conditional statement |
| | 111 | 2757 | | ; |
| | 112 | 2757 | | condstat:: | ; | |
| | 113 | 2757 | | ; |
| | 114 | 2757 | | =3701 | |
| | 115 | 3701 | | .ent: | ; | |
| | 116 | 3701 | 1665230 | | lnk | W2712 | | | | ; | @3701
| | 117 | 3701+ | 0607034 | | lod | .lnk | | | | ; |
| | 118 | 3702 | | | call | | | | | ; | @3702
| | 118+1 | 3702 | 7323731005012 | | lnk | push.lnk | : | jmp | push.ent | |
| | 119 | 3703 | | | call | | | | | ; |
| | 119+1 | 3703 | 7325115005260 | | lnk | compif.lnk | : | jmp | compif.ent | |
| | 120 | 3704 | 0000000000000 | | +0 | ;two no-ops? | @3704
| | 121 | 3705 | | | call | | | | | ;1708 compile stat |
| | 121+1 | 3705 | 7310611003254 | | lnk | statement.lnk | : | jmp | statement.ent | |
| | 122 | 3706 | 0600600 | | lod | token | | | | ;token | @3706
| | 123 | 3706+ | 0124370 | | sub | W2296 | | | | ;=39 [else] |
| | 124 | 3707 | 1047174 | | jz | .3708 | | | | ;->yes do else clause |
| | 125 | 3707+ | 1007144 | | jmp | DesigExprn.9 | | | | ;no end of statement |
| | 126 | 3708 | | ; |
| | 127 | 3708 | | ; do else clause |
| | 128 | 3708 | | ; |
| | 129 | 3708 | | .3708: | call | | | | | ; plant else jump? | @3708
| | 129+1 | 3708 | 7320121007405 | | lnk | L3845.lnk | : | jmp | L3845.ent | |
| | 130 | 3709 | | | call | | | | | ; |
| | 130+1 | 3709 | 7322411004503 | | lnk | advance.lnk | : | jmp | advance.ent | |
| | 131 | 3710 | | | call | | | | | ;1708 compile | @3710
| | 131+1 | 3710 | 7310611003254 | | lnk | statement.lnk | : | jmp | statement.ent | |
| | 132 | 3711 | 1007144 | | jmp | DesigExprn.9 | | | | ;end of statement |
| | 133 | 3711+ | | ; |
| | 134 | 3711+ | 0000000 | | o00 | 0 | | | | |
| | 135 | 3712 | | ;-------------------------------------------------------------------- |
|
|