more unearthings
[uccvend-snackrom.git] / ROM-2003 / vend.asm
index 21a2497..0757d0a 100644 (file)
@@ -4,7 +4,7 @@
 ;0005   number of motors we have
 ;0006  slot number
 ;0007   06 stored into it sometimes.
-;0008   used exclusively in SCI interrupt
+;0008   what byte of the packet we've read up to
 ;0009
 ;000a   
 ;000c
 ;001d   
 ;001f   display related? bit 2.  bit 4 denotes service mode
 ;0021   lower 3 bits taken from SCI data somewhere
+;       bit 5 denotes machine out of order
 ;0023   buffer for 1800
 ;0026   used exclusively in SCI interrupt handler
 ;0029   previous key state (cf 0016)
 ;002c   inhibits display writes?
-;0032   to do with the beeper
+;0032   to do with the beeper (see jump52)
 ;0033
 ;0035   only ever contains #1e
 ;003b   commonly contains $0233
 ;003d
+;003e   mask for 0040? (see f996)
+;003f
 ;0040   
 ;0042   current key press
 ;0048   error status 
 ;0076-0077 word
 ;007f   
 ;00c8   
+;0800   motor information array - each is a 16-bit value
+;         
 ;08c8   array of prices of each slot??
 ;0993   custom message?
 ;0b90 - 0b99 display buffer (backwards)
+;0b9a - some sort of id? press 89 on the machine
 ;0baa   
+;0bae
 ;0bb5   win-a-snack odds (is this in NVRAM?)
 ;0bbd   
 ;0bd8   related to 0017 and 0021 (only lower 3 bits used)
 ;         bit5: bad sensor
 ;         bit6: tube error
 ;0bc2 - 0bce SCI read into these locations
-;0cbc   serial number
-;0ccc   machine ID
+;0bd
+;0bc4   array index into 0bc7
+;0bc5
+;0bc6   another array index into 0bc7
+;0bc7 word array
+;
+;0be1
+;0bd7   init'd to 0x01
+;0bd8   init'd to 0x04
+;0bd9   init'd to 0x02
+;0bda   init'd to 0x20
+;0bdb   init'd to 0x08
+;0bdc   init'd to 0x10
+;
+;0cbc   serial number (string)
+;0ccc   machine ID (string)
+;0ce7   audit number (1-bit)
 ;0cd9   counter of something - reset to 4 on some serial input
 ;0cda   counter of something - reset to 4 on some serial input
 ;0cdb   also counts something - reset to 4 on some serial input
 ;0e06 - ?? array of digits*10
 ;1000
 ;1009
+;1016 - timer output compare 1 register
 ;1026
 ;1028   SPCR (Serial Peripheral Control Register)
 ;1030
 ;103c
 
 
-;1016 - timer output compare 1 register
 
 ;1800  Internal switches
 ;   7 changer INT'
 ; PE6 <unused>
 ; PE5 <unused>
 ; PE4 <unused>
-; PE3 goes high when 24VUN line is too low
+; PE3 goes high when 24VUN line is *really* low (like 20V)
 ; PE2 remote no-sale switch (active low)
 ; PE1 motor overvoltage sense (active high)
 ; PE0 motor overcurrent sense (active low)
@@ -1120,11 +1142,11 @@ jump74:
 87E9 7F 00 05        ...   clr 0005
 87EC 7F 00 54        ..T   clr 0054
 87EF F6 00 54        ..T   ldab 0054
-87F2 C1 50           .P    cmpb #50     ; 80
+87F2 C1 50           .P    cmpb #50     ; 80 entries in lookup table
 87F4 24 2E           $.    bcc 2e       ; to 8824
 87F6 F6 00 54        ..T   ldab 0054
 87F9 4F              O     clra 
-87FA C3 B0 D3        ...   addd #b0d3
+87FA C3 B0 D3        ...   addd #b0d3   ; lookup table
 87FD 8F              .     xgdx 
 87FE E6 00           ..    ldab 00,x
 8800 F7 00 06        ...   stab 0006
@@ -1387,7 +1409,7 @@ jump17:
 8A67 4F              O     clra 
 8A68 37              7     pshb 
 8A69 36              6     psha 
-8A6A CC 00 C7        ...   ldd #00c7
+8A6A CC 00 C7        ...   ldd #00c7    ; 199
 8A6D BD FB BA        ...   jsr fbba            ;jump38
 8A70 B3 00 27        ..'   subd 0027
 8A73 24 05           $.    bcc 05
@@ -1434,7 +1456,7 @@ goto8:
 8AD2 4F              O     clra 
 8AD3 37              7     pshb 
 8AD4 36              6     psha 
-8AD5 CC 00 FA        ...   ldd #00fa
+8AD5 CC 00 FA        ...   ldd #00fa    ; 250
 8AD8 BD FB BA        ...   jsr fbba            ;jump38
 8ADB FD 00 27        ..'   std 0027
 8ADE 20 38            8    bra 38
@@ -1447,7 +1469,7 @@ goto8:
 8AEF 4F              O     clra 
 8AF0 37              7     pshb 
 8AF1 36              6     psha 
-8AF2 CC 00 C7        ...   ldd #00c7
+8AF2 CC 00 C7        ...   ldd #00c7    ; 199
 8AF5 BD FB BA        ...   jsr fbba            ;jump38
 8AF8 FD 00 27        ..'   std 0027
 8AFB 20 1B            .    bra 1b
@@ -1676,7 +1698,7 @@ jump18:
 8D14 4F              O     clra 
 8D15 37              7     pshb 
 8D16 36              6     psha 
-8D17 CC 00 FA        ...   ldd #00fa
+8D17 CC 00 FA        ...   ldd #00fa    ; 250
 8D1A BD FB BA        ...   jsr fbba            ;jump38
 8D1D B3 00 0D        ...   subd 000d
 8D20 24 05           $.    bcc 05
@@ -1695,7 +1717,7 @@ jump18:
 8D3D 4F              O     clra 
 8D3E 37              7     pshb 
 8D3F 36              6     psha 
-8D40 CC 00 C7        ...   ldd #00c7
+8D40 CC 00 C7        ...   ldd #00c7    ; 199
 8D43 BD FB BA        ...   jsr fbba            ;jump38
 8D46 B3 00 0D        ...   subd 000d
 8D49 24 05           $.    bcc 05
@@ -1736,7 +1758,7 @@ jump18:
 8D9E 4F              O     clra 
 8D9F 37              7     pshb 
 8DA0 36              6     psha 
-8DA1 CC 00 FA        ...   ldd #00fa
+8DA1 CC 00 FA        ...   ldd #00fa    ; 250
 8DA4 BD FB BA        ...   jsr fbba            ;jump38
 8DA7 FD 00 0D        ...   std 000d
 8DAA 20 38            8    bra 38
@@ -1749,7 +1771,7 @@ jump18:
 8DBB 4F              O     clra 
 8DBC 37              7     pshb 
 8DBD 36              6     psha 
-8DBE CC 00 C7        ...   ldd #00c7
+8DBE CC 00 C7        ...   ldd #00c7    ; 199
 8DC1 BD FB BA        ...   jsr fbba            ;jump38
 8DC4 FD 00 0D        ...   std 000d
 8DC7 20 1B            .    bra 1b
@@ -2304,8 +2326,8 @@ jump22:
 92F1 4F              O     clra 
 92F2 37              7     pshb 
 92F3 36              6     psha 
-92F4 CC 00 64        ..d   ldd #0064
-92F7 BD FB BA        ...   jsr fbba            ;jump38
+92F4 CC 00 64        ..d   ldd #0064    ; 100
+92F7 BD FB BA        ...   jsr fbba            ;jump38 - multiplication
 92FA FD 0C E9        ...   std 0ce9
 92FD BD D6 F6        ...   jsr d6f6            ;jump106
 9300 FC 0C E9        ...   ldd 0ce9
@@ -2361,7 +2383,7 @@ jump22:
 936A F6 00 1F        ...   ldab 001f
 936D C4 02           ..    andb #02
 936F 27 1F           '.    beq 1f
-9371 BD 97 E9        ...   jsr 97e9            ;jump147
+9371 BD 97 E9        ...   jsr 97e9            ;jump147 - print the report
 9374 CE 00 1F        ...   ldx #001f
 9377 1D 00 02        ...   bclr 00,x, #02
 937A CE 00 1F        ...   ldx #001f
@@ -2684,7 +2706,7 @@ jump203:
 9667 26 0F           &.    bne 0f
 9669 CC 00 64        ..d   ldd #0064
 966C BD E5 71        ..q   jsr e571            ;msdelay
-966F BD E5 D1        ...   jsr e5d1            ;jump52
+966F BD E5 D1        ...   jsr e5d1            ;jump52 - triple beep
 9672 CC 03 84        ...   ldd #0384
 9675 BD E5 71        ..q   jsr e571            ;msdelay
 9678 7F 00 2E        ...   clr 002e
@@ -2852,7 +2874,7 @@ jump147:
 97E9 BD BE 4B        ..K   jsr be4b            ;displayblank
 97EC CC AF E7        ...   ldd #afe7    ; "-PRINTING-"
 97EF BD C0 BA        ...   jsr c0ba            ;display:
-97F2 BD F4 15        ...   jsr f415            ;jump112
+97F2 BD F4 15        ...   jsr f415            ;jump112 - print a report
 97F5 39              9     rts 
 
 jump27:
@@ -3562,54 +3584,54 @@ jump100:
 9E8C F6 00 48        ..H   ldab 0048
 9E8F 4F              O     clra 
 9E90 BD FE 16        ...   jsr fe16            ;jump2
-9E93 00              .     test 
-9E94 01              .     nop 
-9E95 00              .     test 
-9E96 2D A1           -.    blt a1
-9E98 C4 9E           ..    andb #9e
-9E9A F5 9E FE        ...   bitb 9efe
-9E9D 9F 07 9F        ...   sts 07
-9EA0 10              .     sba 
-9EA1 9F 19 9F        ...   sts 19
-9EA4 3B              ;     rti 
-9EA5 9F 44 9F        .D.   sts 44
-9EA8 52              R     illegal 
-9EA9 9F 5B 9F        .[.   sts 5b
-9EAC 69              i     rol 
-9EAD 9F 72 9F        .r.   sts 72
-9EB0 80 9F           ..    suba #9f
-9EB2 89 9F           ..    adca #9f
-9EB4 97 9F A0        ...   staa 9f
-9EB7 9F AE 9F        ...   sts ae
-9EBA B7 9F C5        ...   staa 9fc5
-9EBD 9F DD 9F        ...   sts dd
-9EC0 EB A0           ..    addb a0,x
-9EC2 03              .     fdiv 
-9EC3 A0 11           ..    suba 11,x
-9EC5 A0 29           .)    suba 29,x
-9EC7 A0 37           .7    suba 37,x
-9EC9 A0 54           .T    suba 54,x
-9ECB A0 62           .b    suba 62,x
-9ECD A0 7F           ..    suba 7f,x
-9ECF A0 8D           ..    suba 8d,x
-9ED1 A0 96           ..    suba 96,x
-9ED3 A0 A4           ..    suba a4,x
-9ED5 A0 AD           ..    suba ad,x
-9ED7 A0 BC           ..    suba bc,x
-9ED9 A0 C5           ..    suba c5,x
-9EDB A0 D4           ..    suba d4,x
-9EDD A0 DD           ..    suba dd,x
-9EDF A0 EC           ..    suba ec,x
-9EE1 A0 F5           ..    suba f5,x
-9EE3 A1 04           ..    cmpa 04,x
-9EE5 A1 26           .&    cmpa 26,x
-9EE7 A1 34           .4    cmpa 34,x
-9EE9 A1 55           .U    cmpa 55,x
-9EEB A1 62           .b    cmpa 62,x
-9EED A1 83           ..    cmpa 83,x
-9EEF A1 90           ..    cmpa 90,x
-9EF1 A1 B1           ..    cmpa b1,x
-9EF3 A1 BE           ..    cmpa be,x
+9E93 00 01 00 2D     .     ; 45 choices here
+9E97 A1 C4           -.    ;
+9E99 9E F5           ..    ;
+9E9B 9E FE           ..    ;
+9E9D 9F 07           ..    ;
+9E9F 9F 10           ..    ;
+9EA1 9F 19           ..    ;
+9EA3 9F 3B           ;.    ;
+9EA5 9F 44           .D.   ;
+9EA7 9F 52           R     ;
+9EA9 9F 5B           .[.   ;
+9EAB 9F 69           i     ;
+9EAD 9F 72           .r.   ;
+9EBF 9F 80           ..    ;
+9EB1 9F 89           ..    ;
+9EB3 9F 97           ..    ;
+9EB5 9F A0           ...   ;
+9EB7 9F AE           ..    ;
+9EB9 9F B7           ...   ;
+9EBB 9F C5           ...   ;
+9EBD 9F DD           ...   ;
+9EBF 9F EB           ..    ;
+9EC1 A0 03           .     ;
+9EC3 A0 11           ..    ;
+9EC5 A0 29           .)    ;
+9EC7 A0 37           .7    ;
+9EC9 A0 54           .T    ;
+9ECB A0 62           .b    ;
+9ECD A0 7F           ..    ;
+9ECF A0 8D           ..    ;
+9ED1 A0 96           ..    ;
+9ED3 A0 A4           ..    ;
+9ED5 A0 AD           ..    ;
+9ED7 A0 BC           ..    ;
+9ED9 A0 C5           ..    ;
+9EDB A0 D4           ..    ;
+9EDD A0 DD           ..    ;
+9EDF A0 EC           ..    ;
+9EE1 A0 F5           ..    ;
+9EE3 A1 04           ..    ;
+9EE5 A1 26           .&    ;
+9EE7 A1 34           .4    ;
+9EE9 A1 55           .U    ;
+9EEB A1 62           .b    ;
+9EED A1 83           ..    ;
+9EEF A1 90           ..    ;
+9EF1 A1 B1           ..    ;
+9EF3 A1 BE           ..    ;
 9EF5 CC B2 90        ...   ldd #b290    ; "SERIAL #"
 9EF8 BD C0 BA        ...   jsr c0ba            ;display:
 9EFB 7E A1 C4        ~..   jmp a1c4            ;goto19
@@ -3622,13 +3644,13 @@ jump100:
 9F10 CC 0C CC        ...   ldd #0ccc    ; machine id?
 9F13 BD C0 BA        ...   jsr c0ba            ;display:
 9F16 7E A1 C4        ~..   jmp a1c4            ;goto19
-9F19 C6 41           .A    ldab #41
+9F19 C6 41           .A    ldab #41     ; "A"
 9F1B F7 0B 99        ...   stab 0b99
-9F1E C6 55           .U    ldab #55
+9F1E C6 55           .U    ldab #55     ; "U"
 9F20 F7 0B 98        ...   stab 0b98
-9F23 C6 44           .D    ldab #44
+9F23 C6 44           .D    ldab #44     ; "D"
 9F25 F7 0B 97        ...   stab 0b97
-9F28 C6 54           .T    ldab #54
+9F28 C6 54           .T    ldab #54     ; "T"
 9F2A F7 0B 96        ...   stab 0b96
 9F2D CE 00 00        ...   ldx #0000
 9F30 3C              <     pshx 
@@ -4489,19 +4511,16 @@ A667 7E A7 1E        ~..   jmp a71e             ;goto20
 A66A F6 00 54        ..T   ldab 0054
 A66D 4F              O     clra 
 A66E BD FE 16        ...   jsr fe16            ;jump2
-A671 00              .     test 
-A672 01              .     nop 
-A673 00              .     test 
-A674 07              .     tpa 
-A675 A6 ED           ..    ldaa ed,x
-A677 A6 87           ..    ldaa 87,x
-A679 A6 95           ..    ldaa 95,x
-A67B A6 A1           ..    ldaa a1,x
-A67D A6 AF           ..    ldaa af,x
-A67F A6 BB           ..    ldaa bb,x
-A681 A6 C9           ..    ldaa c9,x
-A683 A6 D5           ..    ldaa d5,x
-A685 A6 E3           ..    ldaa e3,x
+A671 00 01 00 07     .     test 
+A675 A6 ED           ..    
+A677 A6 87           ..    
+A679 A6 95           ..    
+A67B A6 A1           ..    
+A67D A6 AF           ..    
+A67F A6 BB           ..    
+A681 A6 C9           ..    
+A683 A6 D5           ..    
+A685 A6 E3           ..    
 A687 F6 00 62        ..b   ldab 0062
 A68A 54              T     lsrb 
 A68B 54              T     lsrb 
@@ -6148,78 +6167,114 @@ B0C1 3F              ?     swi
 B0C2 00              .     test 
 
 B0C3 14 00           .     ;20
-B0C5 14 C8           .     ;20
+B0C5 14 C8           .     ;20 200
 B0C7 05 00           ..    ;05
 B0C9 05 00           .     ;05
 B0CB 02 00           .     ;02
 B0CD 02 00           .     ;02
 B0CF 01 00           .     ;01
 B0D1 01 00           .     ;01
-B0D3 01 0C           .     ;01
-B0D5 17 22           .     
-B0D7 2E 39           ".    
-
-B0D9 44              D     lsra 
-B0DA 4F              O     clra 
-B0DB 0B              .     sev 
-B0DC 16              .     tab 
-B0DD 21 2C           !,    brn 2c
-B0DF 38              8     pulx 
-B0E0 43              C     coma 
-B0E1 4E              N     illegal 
-B0E2 59              Y     rolb 
-B0E3 15              .     bclr 
-B0E4 20 2B            +    bra 2b
-B0E6 36              6     psha 
-B0E7 42              B     illegal 
-B0E8 4D              M     tsta 
-B0E9 58              X     aslb 
-B0EA 63 1F           c.    com 1f,x
-B0EC 2A 35           *5    bpl 35
-B0EE 40              @     nega 
-B0EF 4C              L     inca 
-B0F0 57              W     asrb 
-B0F1 62              b     illegal 
-B0F2 09              .     dex 
-B0F3 29 34           )4    bvs 34
-B0F5 3F              ?     swi 
-B0F6 4A              J     deca 
-B0F7 56              V     rorb 
-B0F8 61              a     illegal 
-B0F9 08              .     inx 
-B0FA 13              .     brclr 
-B0FB 33              3     pulb 
-B0FC 3E              >     wai 
-B0FD 49              I     rola 
-B0FE 54              T     lsrb 
-B0FF 60 07           `.    neg 07,x
-B101 12              .     brset 
-B102 1D 3D 48        ...   bclr 3d,x, #48
-B105 53              S     comb 
-B106 5E              ^     illegal 
-B107 06              .     tap 
-B108 11              .     cba 
-B109 1C 27 47        ...   bset 27,x, #47    ; fixed by ./fixbset.pl - verify me
-B10C 52              R     illegal 
-B10D 5D              ]     tstb 
-B10E 04              .     lsrd 
-B10F 10              .     sba 
-B110 1B              .     aba 
-B111 26 31           &1    bne 31
-B113 51              Q     illegal 
-B114 5C              \     incb 
-B115 03              .     fdiv 
-B116 0E              .     cli 
-B117 1A              .     illegal 
-B118 25 30           %0    bcs 30
-B11A 3B              ;     rti 
-B11B 5B              [     illegal 
-B11C 02              .     idiv 
-B11D 0D              .     sec 
-B11E 18              .     illegal 
-B11F 24 2F           $/    bcc 2f
-B121 3A              :     abx 
-B122 45              E     illegal 
+
+
+
+
+
+;
+; here's a lookup table of some sort, for finding the slot
+; numbers of each motor in turn
+;
+; 80 entries for 80 motors?
+;
+B0D3 01              .     ;01
+B0D4 0C              .     ;12
+B0D5 17              .     ;23
+B0D6 22              .     ;34
+B0D7 2E              .     ;46
+B0D8 39              .     ;57
+B0D9 44              D     ;68
+B0DA 4F              O     ;79
+;
+B0DB 0B              .     ;11
+B0DC 16              .     ;22
+B0DD 21              !     ;33
+B0DE 2C              .     ;44
+B0DF 38              8     ;56
+B0E0 43              C     ;67
+B0E1 4E              N     ;78
+B0E2 59              Y     ;89
+;
+B0E3 15              .     ;21
+B0E4 20              .     ;32
+B0E5 2B              +     ;43
+B0E6 36              6     ;54
+B0E7 42              B     ;66
+B0E8 4D              M     ;77
+B0E9 58              X     ;88
+B0EA 63              c     ;99
+;
+B0EB 1F              .     ;31
+B0EC 2A              *.    ;42
+B0ED 35              .     ;53
+B0EE 40              @     ;64
+B0EF 4C              L     ;76
+B0F0 57              W     ;87
+B0F1 62              b     ;98
+;
+B0F2 09              .     ;09
+B0F3 29              )     ;41
+B0F4 34              .     ;52
+B0F5 3F              ?     ;63
+B0F6 4A              J     ;74
+B0F7 56              V     ;86
+B0F8 61              a     ;97
+;
+B0F9 08              .     ;08
+B0FA 13              .     ;19
+B0FB 33              3     ;51
+B0FC 3E              >     ;62
+B0FD 49              I     ;73
+B0FE 54              T     ;84
+B0FF 60              `     ;96
+;
+B000 07              .     ;07
+B101 12              .     ;18
+B102 1D              .     ;29
+B103 3D              .     ;61
+B104 48              .     ;72
+B105 53              S     ;83
+B106 5E              ^     ;94
+;
+B107 06              .     ;06
+B108 11              .     ;17
+B109 1C              .     ;28
+B10A 27              .     ;39
+B10B 47              .     ;71
+B10C 52              R     ;82
+B10D 5D              ]     ;93
+;
+B10E 04              .     ;04
+B10F 10              .     ;16
+B110 1B              .     ;27
+B111 26              &     ;38
+B111 31              &     ;49
+B113 51              Q     ;81
+B114 5C              \     ;92
+;
+B115 03              .     ;03
+B116 0E              .     ;14
+B117 1A              .     ;26
+B118 25              %     ;37
+B119 30              %     ;48
+B11A 3B              ;     ;59
+B11B 5B              [     ;91
+;
+B11C 02              .     ;02
+B11D 0D              .     ;13
+B11E 18              .     ;24
+B11F 24              $     ;36
+B120 2F              $     ;47
+B121 3A              :     ;58
+B122 45              E     ;69
 
 table of powers of 2
 
@@ -9607,7 +9662,7 @@ CBCB F6 10 2F        ../   ldab 102f    ; read SCI data
 CBCE C4 EF           ..    andb #ef     ; 11101111
 CBD0 C1 27           .'    cmpb #27     ; 00100111
 CBD2 26 06           &.    bne 06       ;goto48 - cleanup & exit
-
+;
 CBD4 CE 0B C1        ...   ldx #0bc1
 CBD7 1C 00 10        ...   bset 00,x, #10
 goto48: ; cleanup and exit
@@ -9869,7 +9924,7 @@ CDE2 F6 00 19        ...   ldab 0019
 CDE5 C4 08           ..    andb #08
 CDE7 26 19           &.    bne 19
 CDE9 CC 00 FE        ...   ldd #00fe
-CDEC BD C7 E7        ...   jsr c7e7            ;jump37 - send byte to coin mech
+CDEC BD C7 E7        ...   jsr c7e7            ;jump37 - send #fe to coin mech
 CDEF F6 00 1F        ...   ldab 001f
 CDF2 C4 08           ..    andb #08
 CDF4 27 0A           '.    beq 0a
@@ -9918,12 +9973,14 @@ CE46 31              1     ins
 CE47 3B              ;     rti 
 
 jump48:
+; 
 CE48 F6 0B C4        ...   ldab 0bc4
 CE4B F1 0B C5        ...   cmpb 0bc5
-CE4E 25 53           %S    bcs 53
+CE4E 25 53           %S    bcs 53     ; if 0bc4 < 0bc5 to cea3
 CE50 F6 0B C5        ...   ldab 0bc5
 CE53 F1 0B C6        ...   cmpb 0bc6
-CE56 25 4B           %K    bcs 4b
+CE56 25 4B           %K    bcs 4b     ; if 0bc5 < 0bc6 to cea3
+; so here we have 0bc6 < 0bc5 < 0bc4
 CE58 F6 0B C4        ...   ldab 0bc4
 CE5B 4F              O     clra 
 CE5C C3 0B C7        ...   addd #0bc7
@@ -9957,13 +10014,15 @@ CE96 C6 08           ..    ldab #08
 CE98 F7 0B DB        ...   stab 0bdb
 CE9B C6 10           ..    ldab #10
 CE9D F7 0B DC        ...   stab 0bdc
-CEA0 7E D0 66        ~.f   jmp d066            ;goto58
+CEA0 7E D0 66        ~.f   jmp d066            ;goto58 - multiply & exit
+;
 CEA3 F6 0B C4        ...   ldab 0bc4
 CEA6 F1 0B C6        ...   cmpb 0bc6
-CEA9 25 53           %S    bcs 53
+CEA9 25 53           %S    bcs 53     ; if 0bc4 < 0bc6 to cefe
 CEAB F6 0B C6        ...   ldab 0bc6
 CEAE F1 0B C5        ...   cmpb 0bc5
-CEB1 25 4B           %K    bcs 4b
+CEB1 25 4B           %K    bcs 4b     ; if 0bc6 < 0bc5 to cefe
+; so here we have 0bc5 < 0bc6 < 0bc4
 CEB3 F6 0B C4        ...   ldab 0bc4
 CEB6 4F              O     clra 
 CEB7 C3 0B C7        ...   addd #0bc7
@@ -9997,13 +10056,15 @@ CEF1 C6 10           ..    ldab #10
 CEF3 F7 0B DB        ...   stab 0bdb
 CEF6 C6 08           ..    ldab #08
 CEF8 F7 0B DC        ...   stab 0bdc
-CEFB 7E D0 66        ~.f   jmp d066            ;goto58
+CEFB 7E D0 66        ~.f   jmp d066            ;goto58 - multiply and exit
+;
 CEFE F6 0B C5        ...   ldab 0bc5
 CF01 F1 0B C4        ...   cmpb 0bc4
-CF04 25 53           %S    bcs 53
+CF04 25 53           %S    bcs 53    ; if 0bc5 < 0bc4 to cf59
 CF06 F6 0B C4        ...   ldab 0bc4
 CF09 F1 0B C6        ...   cmpb 0bc6
-CF0C 25 4B           %K    bcs 4b
+CF0C 25 4B           %K    bcs 4b    ; if 0bc4 < 0bc6 to cf59
+; so here we have 0bc6 < 0bc4 < 0bc5
 CF0E F6 0B C5        ...   ldab 0bc5
 CF11 4F              O     clra 
 CF12 C3 0B C7        ...   addd #0bc7
@@ -10037,13 +10098,15 @@ CF4C C6 20           .     ldab #20
 CF4E F7 0B DB        ...   stab 0bdb
 CF51 C6 10           ..    ldab #10
 CF53 F7 0B DC        ...   stab 0bdc
-CF56 7E D0 66        ~.f   jmp d066            ;goto58
+CF56 7E D0 66        ~.f   jmp d066            ;goto58 - multiply and exit
+;
 CF59 F6 0B C5        ...   ldab 0bc5
 CF5C F1 0B C6        ...   cmpb 0bc6
-CF5F 25 53           %S    bcs 53
+CF5F 25 53           %S    bcs 53     ; if 0bc5 < 0bc6 to cfb4
 CF61 F6 0B C6        ...   ldab 0bc6
 CF64 F1 0B C4        ...   cmpb 0bc4
-CF67 25 4B           %K    bcs 4b
+CF67 25 4B           %K    bcs 4b     ; if 0bc6 < 0bc4 to cfb4
+; so here we have 0bc4 < 0bc6 < 0bc5
 CF69 F6 0B C5        ...   ldab 0bc5
 CF6C 4F              O     clra 
 CF6D C3 0B C7        ...   addd #0bc7
@@ -10077,13 +10140,15 @@ CFA7 C6 10           ..    ldab #10
 CFA9 F7 0B DB        ...   stab 0bdb
 CFAC C6 20           .     ldab #20
 CFAE F7 0B DC        ...   stab 0bdc
-CFB1 7E D0 66        ~.f   jmp d066            ;goto58
+CFB1 7E D0 66        ~.f   jmp d066            ;goto58 - multiply and exit
+;
 CFB4 F6 0B C6        ...   ldab 0bc6
 CFB7 F1 0B C4        ...   cmpb 0bc4
-CFBA 25 52           %R    bcs 52
+CFBA 25 52           %R    bcs 52    ; if 0bc6 < 0bc4 to d00e
 CFBC F6 0B C4        ...   ldab 0bc4
 CFBF F1 0B C5        ...   cmpb 0bc5
-CFC2 25 4A           %J    bcs 4a
+CFC2 25 4A           %J    bcs 4a    ; if 0bc4 < 0bc5 to d00e
+; so here we have 0bc5 < 0bc4 < 0bc6
 CFC4 F6 0B C6        ...   ldab 0bc6
 CFC7 4F              O     clra 
 CFC8 C3 0B C7        ...   addd #0bc7
@@ -10117,7 +10182,9 @@ D002 C6 20           .     ldab #20
 D004 F7 0B DB        ...   stab 0bdb
 D007 C6 08           ..    ldab #08
 D009 F7 0B DC        ...   stab 0bdc
-D00C 20 58            X    bra 58
+D00C 20 58            X    bra 58      ;goto58 - multiply and exit
+;
+; we know that 0bc4 < 0bc5 < 0bc6
 D00E F6 0B C6        ...   ldab 0bc6
 D011 F1 0B C5        ...   cmpb 0bc5
 D014 25 50           %P    bcs 50
@@ -10156,7 +10223,8 @@ D059 F7 0B DA        ...   stab 0bda
 D05C C6 08           ..    ldab #08
 D05E F7 0B DB        ...   stab 0bdb
 D061 C6 20           .     ldab #20
-D063 F7 0B DC        ...   stab 0bdc
+D063 F7 0B DC        ...   stab 0bdc   ;goto58 - multiply and exit
+;
 goto58:
 D066 F6 0B AA        ...   ldab 0baa
 D069 4F              O     clra 
@@ -10223,11 +10291,11 @@ D0C9 C6 03           ..    ldab #03
 D0CB F7 0B C5        ...   stab 0bc5
 D0CE C6 02           ..    ldab #02
 D0D0 F7 0B C6        ...   stab 0bc6
-D0D3 CC 00 19        ...   ldd #0019
+D0D3 CC 00 19        ...   ldd #0019    ; 25
 D0D6 FD 0B DD        ...   std 0bdd
-D0D9 CC 00 0A        ...   ldd #000a
+D0D9 CC 00 0A        ...   ldd #000a    ; 10
 D0DC FD 0B DF        ...   std 0bdf
-D0DF CC 00 05        ...   ldd #0005
+D0DF CC 00 05        ...   ldd #0005    ; 5
 D0E2 FD 0B E1        ...   std 0be1
 D0E5 C6 01           ..    ldab #01
 D0E7 F7 0B D7        ...   stab 0bd7
@@ -10703,9 +10771,10 @@ D478 39              9     rts
 
 jump67:
 D479 7F 00 1C        ...   clr 001c
+; begin loop
 D47C F6 00 1C        ...   ldab 001c
-D47F C1 64           .d    cmpb #64
-D481 24 1A           $.    bcc 1a
+D47F C1 64           .d    cmpb #64   ; to 100
+D481 24 1A           $.    bcc 1a     ; to d49d
 D483 CC FF 7F        ...   ldd #ff7f
 D486 37              7     pshb 
 D487 36              6     psha 
@@ -10719,16 +10788,16 @@ D492 A4 00           ..    anda 00,x
 D494 E4 01           ..    andb 01,x
 D496 ED 00           ..    std 00,x
 D498 7C 00 1C        |..   inc 001c
-D49B 20 DF            .    bra df
+D49B 20 DF            .    bra df  ; to d47c
 D49D 7F 00 05        ...   clr 0005
-goto65:
+goto65: ; begin motor count loop
 D4A0 F6 00 05        ...   ldab 0005
-D4A3 C1 50           .P    cmpb #50
+D4A3 C1 50           .P    cmpb #50     ; 80
 D4A5 25 03           %.    bcs 03
-D4A7 7E D5 60        ~.`   jmp d560            ;goto63
+D4A7 7E D5 60        ~.`   jmp d560            ;goto63 - exit
 D4AA F6 00 05        ...   ldab 0005
 D4AD 4F              O     clra 
-D4AE C3 B0 D3        ...   addd #b0d3
+D4AE C3 B0 D3        ...   addd #b0d3   ;motor lookup table
 D4B1 8F              .     xgdx 
 D4B2 E6 00           ..    ldab 00,x
 D4B4 F7 00 06        ...   stab 0006
@@ -10802,7 +10871,7 @@ D53D AA 00           ..    ora 00,x
 D53F EA 01           ..    orb 01,x
 D541 ED 00           ..    std 00,x
 D543 20 15            .    bra 15
-goto64:
+goto64: ; mark a motor position as valid?
 D545 CC 7F FF        ...   ldd #7fff
 D548 37              7     pshb 
 D549 36              6     psha 
@@ -10816,7 +10885,7 @@ D554 A4 00           ..    anda 00,x
 D556 E4 01           ..    andb 01,x
 D558 ED 00           ..    std 00,x
 D55A 7C 00 05        |..   inc 0005
-D55D 7E D4 A0        ~..   jmp d4a0            ;goto65
+D55D 7E D4 A0        ~..   jmp d4a0            ;goto65 - loop again
 goto63:
 D560 39              9     rts 
 
@@ -11038,31 +11107,32 @@ D6F2 BD C0 E0        ...   jsr c0e0           ;jump94
 D6F5 39              9     rts 
 
 jump106:
+; puts (0cdb+0bdd)+(0cda*0bdf)+(0cd9*0be1) => 0bef
 D6F6 F6 0C DB        ...   ldab 0cdb
 D6F9 4F              O     clra 
 D6FA 37              7     pshb 
 D6FB 36              6     psha 
 D6FC FC 0B DD        ...   ldd 0bdd
 D6FF BD FB BA        ...   jsr fbba            ;jump38 - multiply?
-D702 FD 0C EB        ...   std 0ceb
+D702 FD 0C EB        ...   std 0ceb     ; 0cdb * 0bdd => 0ceb
 D705 F6 0C DA        ...   ldab 0cda
 D708 4F              O     clra 
 D709 37              7     pshb 
 D70A 36              6     psha 
 D70B FC 0B DF        ...   ldd 0bdf
 D70E BD FB BA        ...   jsr fbba            ;jump38 - multiply?
-D711 FD 0C ED        ...   std 0ced
+D711 FD 0C ED        ...   std 0ced     ; 0cda * 0bdf => 0ced
 D714 F6 0C D9        ...   ldab 0cd9
 D717 4F              O     clra 
 D718 37              7     pshb 
 D719 36              6     psha 
 D71A FC 0B E1        ...   ldd 0be1
 D71D BD FB BA        ...   jsr fbba            ;jump38 - multiply?
-D720 FD 0C EF        ...   std 0cef
+D720 FD 0C EF        ...   std 0cef     ; 0cd9 * 0be1 => 0cef
 D723 FC 0C EB        ...   ldd 0ceb
 D726 F3 0C ED        ...   addd 0ced
 D729 F3 0C EF        ...   addd 0cef
-D72C FD 0B EF        ...   std 0bef
+D72C FD 0B EF        ...   std 0bef     ; 0ceb+0ced+0cef => 0bef
 D72F 39              9     rts 
 
 jump202:
@@ -11282,7 +11352,7 @@ D8A1 3C              <     pshx
 D8A2 FC 0D E7        ...   ldd 0de7
 D8A5 37              7     pshb 
 D8A6 36              6     psha 
-D8A7 CE E1 00        ...   ldx #e100
+D8A7 CE E1 00        ...   ldx #e100    ; 57600
 D8AA 3C              <     pshx 
 D8AB CC 05 F5        ...   ldd #05f5
 D8AE 37              7     pshb 
@@ -11323,6 +11393,7 @@ D8E6 20 EE            .    bra ee
 D8E8 39              9     rts 
 
 jump92:
+; displays select other item
 D8E9 F6 00 2B        ..+   ldab 002b
 D8EC C1 00           ..    cmpb #00
 D8EE 26 18           &.    bne 18
@@ -11348,22 +11419,22 @@ D91F BD C0 BA        ...   jsr c0ba           ;display:
 D922 20 32            2    bra 32
 D924 C1 02           ..    cmpb #02
 D926 26 18           &.    bne 18
-D928 CC AD 42        ..B   ldd #ad42
+D928 CC AD 42        ..B   ldd #ad42    ; "FAITES"
 D92B BD C0 BA        ...   jsr c0ba            ;display:
 D92E 8D A3           ..    bsr dest a3
-D930 CC AD 4D        ..M   ldd #ad4d
+D930 CC AD 4D        ..M   ldd #ad4d    ; "AURTE"
 D933 BD C0 BA        ...   jsr c0ba            ;display:
 D936 8D 9B           ..    bsr dest 9b
-D938 CC AD 58        ..X   ldd #ad58
-D93B BD C0 BA        ...   jsr c0ba            ;display:
+D938 CC AD 58        ..X   ldd #ad58    ; "CHOIX"
+D92B BD C0 BA        ...   jsr c0ba            ;display:
 D93E 20 16            .    bra 16
-D940 CC AD 21        ..!   ldd #ad21
+D940 CC AD 21        ..!   ldd #ad21    ; "SELECT "
 D943 BD C0 BA        ...   jsr c0ba            ;display:
 D946 8D 8B           ..    bsr dest 8b
-D948 CC AD 2C        ..,   ldd #ad2c
+D948 CC AD 2C        ..,   ldd #ad2c    ; "OTHER"
 D94B BD C0 BA        ...   jsr c0ba            ;display:
 D94E 8D 83           ..    bsr dest 83
-D950 CC AD 37        ..7   ldd #ad37
+D950 CC AD 37        ..7   ldd #ad37    ; "ITEM"
 D953 BD C0 BA        ...   jsr c0ba            ;display:
 D956 BD D8 D3        ...   jsr d8d3            ;jump84 500ms delay
 D959 39              9     rts 
@@ -11371,19 +11442,19 @@ D959 39              9     rts
 jump123:
 D95A F6 00 06        ...   ldab 0006
 D95D F1 0B AF        ...   cmpb 0baf
-D960 26 0D           &.    bne 0d
+D960 26 0D           &.    bne 0d       ; to d984
 D962 BD D7 FF        ...   jsr d7ff            ;jump80
 D965 F6 0B B4        ...   ldab 0bb4
 D968 F7 00 06        ...   stab 0006
-D96B 8D 55           .U    bsr dest 55
-D96D 20 52            R    bra 52
+D96B 8D 55           .U    bsr 55       ;jump205
+D96D 20 52            R    bra 52       ; exit
 D96F F6 00 06        ...   ldab 0006
 D972 F1 0B AE        ...   cmpb 0bae
-D975 26 0D           &.    bne 0d
+D975 26 0D           &.    bne 0d       ; to d984
 D977 BD D7 FF        ...   jsr d7ff            ;jump80
 D97A F6 0B B3        ...   ldab 0bb3
 D97D F7 00 06        ...   stab 0006
-D980 8D 40           .@    bsr dest 40
+D980 8D 40           .@    bsr 40       ;jump205
 D982 20 3D            =    bra 3d
 D984 F6 00 06        ...   ldab 0006
 D987 F1 0B AD        ...   cmpb 0bad
@@ -11391,7 +11462,7 @@ D98A 26 0D           &.    bne 0d
 D98C BD D7 FF        ...   jsr d7ff            ;jump80
 D98F F6 0B B2        ...   ldab 0bb2
 D992 F7 00 06        ...   stab 0006
-D995 8D 2B           .+    bsr dest 2b
+D995 8D 2B           .+    bsr 2b       ;jump205
 D997 20 28            (    bra 28
 D999 F6 00 06        ...   ldab 0006
 D99C F1 0B AC        ...   cmpb 0bac
@@ -11399,7 +11470,7 @@ D99F 26 0D           &.    bne 0d
 D9A1 BD D7 FF        ...   jsr d7ff            ;jump80
 D9A4 F6 0B B1        ...   ldab 0bb1
 D9A7 F7 00 06        ...   stab 0006
-D9AA 8D 16           ..    bsr dest 16
+D9AA 8D 16           ..    bsr 16       ;jump205
 D9AC 20 13            .    bra 13
 D9AE F6 00 06        ...   ldab 0006
 D9B1 F1 0B AB        ...   cmpb 0bab
@@ -11407,9 +11478,10 @@ D9B4 26 0B           &.    bne 0b
 D9B6 BD D7 FF        ...   jsr d7ff            ;jump80
 D9B9 F6 0B B0        ...   ldab 0bb0
 D9BC F7 00 06        ...   stab 0006
-D9BF 8D 01           ..    bsr dest 01
+D9BF 8D 01           ..    bsr 01       ;jump205
 D9C1 39              9     rts 
 
+jump205:
 D9C2 CC 03 E8        ...   ldd #03e8
 D9C5 BD E5 71        ..q   jsr e571            ;msdelay
 D9C8 BD D7 83        ...   jsr d783            ;jump44
@@ -11507,8 +11579,8 @@ DA71 02              .     idiv
 DA72 8F              .     xgdx 
 DA73 37              7     pshb 
 DA74 36              6     psha 
-DA75 CC 00 C3        ...   ldd #00c3
-DA78 BD FB BA        ...   jsr fbba            ;jump38
+DA75 CC 00 C3        ...   ldd #00c3    ; 195
+DA78 BD FB BA        ...   jsr fbba            ;jump38 - multiply?
 DA7B B3 0B B9        ...   subd 0bb9
 DA7E 24 05           $.    bcc 05
 DA80 5F              _     clrb 
@@ -11517,8 +11589,8 @@ DA82 FD 0B B9        ...   std 0bb9
 DA85 FC 0B B9        ...   ldd 0bb9
 DA88 37              7     pshb 
 DA89 36              6     psha 
-DA8A CC 00 0A        ...   ldd #000a
-DA8D BD FB BA        ...   jsr fbba            ;jump38
+DA8A CC 00 0A        ...   ldd #000a    ; 10
+DA8D BD FB BA        ...   jsr fbba            ;jump38 - multiply?
 DA90 37              7     pshb 
 DA91 36              6     psha 
 DA92 FC 0B B5        ...   ldd 0bb5
@@ -11531,8 +11603,8 @@ DA9C 02              .     idiv
 DA9D 8F              .     xgdx 
 DA9E 37              7     pshb 
 DA9F 36              6     psha 
-DAA0 CC 00 0A        ...   ldd #000a
-DAA3 BD FB BA        ...   jsr fbba            ;jump38
+DAA0 CC 00 0A        ...   ldd #000a    ; 10
+DAA3 BD FB BA        ...   jsr fbba            ;jump38 - multiply?
 DAA6 CE 00 0A        ...   ldx #000a
 DAA9 02              .     idiv 
 DAAA 8F              .     xgdx 
@@ -11944,8 +12016,8 @@ DE03 C6 14           ..    ldab #14
 DE05 F7 00 2C        ..,   stab 002c
 DE08 39              9     rts 
 
-dump119:
-DE09 CC 0B 9A        ...   ldd #0b9a
+jump119:
+DE09 CC 0B 9A        ...   ldd #0b9a    ; machine id?
 DE0C BD C0 BA        ...   jsr c0ba            ;display:
 DE0F C6 14           ..    ldab #14
 DE11 F7 00 2C        ..,   stab 002c
@@ -12014,7 +12086,8 @@ DEA1 7F 00 4F        ..O   clr 004f
 goto70:
 DEA4 39              9     rts 
 
-dump117:
+jump117:
+; machine out of order display?
 DEA5 F6 00 2B        ..+   ldab 002b
 DEA8 C1 00           ..    cmpb #00
 DEAA 26 0D           &.    bne 0d
@@ -12036,13 +12109,13 @@ DECA C1 02           ..    cmpb #02
 DECC 26 0D           &.    bne 0d
 DECE CE 00 10        ...   ldx #0010
 DED1 3C              <     pshx 
-DED2 CC AE 5B        ..[   ldd #ae5b
+DED2 CC AE 5B        ..[   ldd #ae5b    ; more german
 DED5 BD C0 2E        ...   jsr c02e            ;jump71
 DED8 38              8     pulx 
 DED9 20 0B            .    bra 0b
 DEDB CE 00 15        ...   ldx #0015
 DEDE 3C              <     pshx 
-DEDF CC AE 44        ..D   ldd #ae44
+DEDF CC AE 44        ..D   ldd #ae44    ; "MACHINE OUT OF ORDER"
 DEE2 BD C0 2E        ...   jsr c02e            ;jump71
 DEE5 38              8     pulx 
 DEE6 39              9     rts 
@@ -12072,7 +12145,7 @@ DF16 F6 00 1B        ...   ldab 001b
 DF19 C4 02           ..    andb #02
 DF1B 26 12           &.    bne 12
 DF1D CC 00 FF        ...   ldd #00ff
-DF20 BD C7 E7        ...   jsr c7e7            ;jump37
+DF20 BD C7 E7        ...   jsr c7e7            ;jump37 - send to serial port
 DF23 CE 00 1B        ...   ldx #001b
 DF26 1C 00 02        ..    bset 00,x, #02
 DF29 CE 0B C1        ...   ldx #0bc1
@@ -12081,8 +12154,8 @@ DF2F F6 00 21        ..!   ldab 0021
 DF32 C4 20           .     andb #20
 DF34 27 07           '.    beq 07
 ;
-DF36 BD D6 52        ..R   jsr d652            ;jump5
-DF39 BD DE A5        ...   jsr dea5            ;jump117
+DF36 BD D6 52        ..R   jsr d652            ;jump5 - pulse bill acceptor
+DF39 BD DE A5        ...   jsr dea5            ;jump117 - machine out of order?
 DF3C 39              9     rts 
 ;
 DF3D F6 00 4F        ..O   ldab 004f
@@ -12139,7 +12212,7 @@ DFBD C1 00           ..    cmpb #00
 DFBF 26 0D           &.    bne 0d
 DFC1 CE 00 19        ...   ldx #0019
 DFC4 3C              <     pshx 
-DFC5 CC AD E7        ...   ldd #ade7
+DFC5 CC AD E7        ...   ldd #ade7    ; "INTRODUZCA"
 DFC8 BD C0 2E        ...   jsr c02e            ;jump71
 DFCB 38              8     pulx 
 DFCC 20 2D            -    bra 2d
@@ -12147,7 +12220,7 @@ DFCE C1 01           ..    cmpb #01
 DFD0 26 0D           &.    bne 0d
 DFD2 CE 00 12        ...   ldx #0012 
 DFD5 3C              <     pshx 
-DFD6 CC AD D3        ...   ldd #add3    ; more german
+DFD6 CC AD D3        ...   ldd #add3    ; "NICT UEBERZAHLEN"
 DFD9 BD C0 2E        ...   jsr c02e            ;jump71
 DFDC 38              8     pulx 
 DFDD 20 1C            .    bra 1c
@@ -12155,7 +12228,7 @@ DFDF C1 02           ..    cmpb #02
 DFE1 26 0D           &.    bne 0d
 DFE3 CE 00 19        ...   ldx #0019
 DFE6 3C              <     pshx 
-DFE7 CC AD B8        ...   ldd #adb8
+DFE7 CC AD B8        ...   ldd #adb8    ; "MONNAIE EXACT"
 DFEA BD C0 2E        ...   jsr c02e            ;jump71
 DFED 38              8     pulx 
 DFEE 20 0B            .    bra 0b
@@ -12179,7 +12252,7 @@ E016 C1 00           ..    cmpb #00
 E018 26 0D           &.    bne 0d
 E01A CE 00 12        ...   ldx #0012
 E01D 3C              <     pshx 
-E01E CC AE 30        ..0   ldd #ae30
+E01E CC AE 30        ..0   ldd #ae30    ; "MONEDA UNICAMENTE"
 E021 BD C0 2E        ...   jsr c02e            ;jump71
 E024 38              8     pulx 
 E025 20 2D            -    bra 2d
@@ -12187,7 +12260,7 @@ E027 C1 01           ..    cmpb #01
 E029 26 0D           &.    bne 0d
 E02B CE 00 0B        ...   ldx #000b
 E02E 3C              <     pshx 
-E02F CC AE 23        ..#   ldd #ae23
+E02F CC AE 23        ..#   ldd #ae23    ; "NUR MUNZEN"
 E032 BD C0 2E        ...   jsr c02e            ;jump71
 E035 38              8     pulx 
 E036 20 1C            .    bra 1c
@@ -12195,13 +12268,13 @@ E038 C1 02           ..    cmpb #02
 E03A 26 0D           &.    bne 0d
 E03C CE 00 12        ...   ldx #0012
 E03F 3C              <     pshx 
-E040 CC AE 0F        ...   ldd #ae0f
+E040 CC AE 0F        ...   ldd #ae0f    ; "MONNAIES SEULEMENT"
 E043 BD C0 2E        ...   jsr c02e            ;jump71
 E046 38              8     pulx 
 E047 20 0B            .    bra 0b
 E049 CE 00 0B        ...   ldx #000b
 E04C 3C              <     pshx 
-E04D CC AE 02        ...   ldd #ae02
+E04D CC AE 02        ...   ldd #ae02    ; "COINS ONLY"
 E050 BD C0 2E        ...   jsr c02e            ;jump71
 E053 38              8     pulx 
 E054 20 0D            .    bra 0d
@@ -12209,7 +12282,7 @@ E056 F6 0B BF        ...   ldab 0bbf
 E059 4F              O     clra 
 E05A 37              7     pshb 
 E05B 36              6     psha 
-E05C CC 09 93        ...   ldd #0993
+E05C CC 09 93        ...   ldd #0993    ; some custom message?
 E05F BD C0 2E        ...   jsr c02e            ;jump71
 E062 38              8     pulx 
 goto72:
@@ -12222,7 +12295,7 @@ E06E CE 00 1D        ...   ldx #001d
 E071 1C 00 40        ...   bset 00,x, #40
 E074 BD E7 C7        ...   jsr e7c7            ;jump114
 E077 F6 00 06        ...   ldab 0006
-E07A C1 59           .Y    cmpb #59
+E07A C1 59           .Y    cmpb #59     ; 89
 E07C 26 06           &.    bne 06
 E07E BD DE 09        ...   jsr de09            ;jump119
 E081 7E E5 5E        ~.^   jmp e55e            ;goto74
@@ -12239,7 +12312,7 @@ E09D 26 08           &.    bne 08
 E09F BD D7 83        ...   jsr d783            ;jump44
 E0A2 83 00 00        ...   subd #0000
 E0A5 27 09           '.    beq 09
-E0A7 BD E5 D1        ...   jsr e5d1            ;jump52
+E0A7 BD E5 D1        ...   jsr e5d1            ;jump52 - triple beep
 E0AA BD D8 E9        ...   jsr d8e9            ;jump92
 E0AD 7E E5 5E        ~.^   jmp e55e            ;goto74
 E0B0 F6 00 06        ...   ldab 0006
@@ -12292,20 +12365,20 @@ E118 26 49           &I    bne 49
 E11A F6 00 2B        ..+   ldab 002b
 E11D C1 00           ..    cmpb #00
 E11F 26 08           &.    bne 08
-E121 CC AC C9        ...   ldd #acc9
+E121 CC AC C9        ...   ldd #acc9    ; "PRECIO"
 E124 BD C0 BA        ...   jsr c0ba            ;display:
 E127 20 1E            .    bra 1e
 E129 C1 01           ..    cmpb #01
 E12B 26 08           &.    bne 08
-E12D CC AC BE        ...   ldd #acbe
+E12D CC AC BE        ...   ldd #acbe    ; "PREIS"
 E130 BD C0 BA        ...   jsr c0ba            ;display:
 E133 20 12            .    bra 12
 E135 C1 02           ..    cmpb #02
 E137 26 08           &.    bne 08
-E139 CC AC B3        ...   ldd #acb3
+E139 CC AC B3        ...   ldd #acb3    ; "PRIX"
 E13C BD C0 BA        ...   jsr c0ba            ;display:
 E13F 20 06            .    bra 06
-E141 CC AC A8        ...   ldd #aca8
+E141 CC AC A8        ...   ldd #aca8    ; "PRICE"
 E144 BD C0 BA        ...   jsr c0ba            ;display:
 E147 BD D8 D3        ...   jsr d8d3            ;jump84 500ms delay
 E14A CE 00 00        ...   ldx #0000
@@ -12313,7 +12386,7 @@ E14D 3C              <     pshx
 E14E FC 00 44        ..D   ldd 0044
 E151 BD BE 9E        ...   jsr be9e            ;jump50
 E154 38              8     pulx 
-E155 BD E5 D1        ...   jsr e5d1            ;jump52
+E155 BD E5 D1        ...   jsr e5d1            ;jump52 - triple beep
 E158 BD D8 D3        ...   jsr d8d3            ;jump84 500ms delay
 E15B C6 0C           ..    ldab #0c
 E15D F7 00 2C        ..,   stab 002c
@@ -12383,8 +12456,8 @@ E1F7 1C 00 80        ..    bset 00,x, #80
 E1F9 BD D2 13        ..    jsr d213     ;jump45
 E1FC 83 00 00        ...   subd #0000
 E200 26 12           &.    bne 12
-E202 BD E5 D1        ...   jsr e5d1            ;jump52
-E205 BD D8 E9        ...   jsr d8e9            ;jump92
+E202 BD E5 D1        ...   jsr e5d1            ;jump52 - triple beep
+E205 BD D8 E9        ...   jsr d8e9            ;jump92 - "SELECT OTHER ITEM"
 E208 FC 00 40        ..@   ldd 0040
 E20B F3 00 44        ..D   addd 0044
 E20E FD 00 40        ..@   std 0040
@@ -12659,7 +12732,7 @@ E458 1D 00 02        ...   bclr 00,x, #02
 E45B F6 00 17        ...   ldab 0017
 E45E C4 02           ..    andb #02
 E460 27 09           '.    beq 09
-E462 BD E5 D1        ...   jsr e5d1            ;jump52
+E462 BD E5 D1        ...   jsr e5d1            ;jump52 - triple beep
 E465 CE 00 17        ...   ldx #0017
 E468 1D 00 02        ...   bclr 00,x, #02
 E46B 7E E3 DE        ~..   jmp e3de            ;goto77
@@ -12673,27 +12746,27 @@ E47A BD D2 13        ...   jsr d213           ;jump45
 E47D 83 00 00        ...   subd #0000
 E480 26 0F           &.    bne 0f
 E482 CC 00 80        ...   ldd #0080
-E485 BD C7 E7        ...   jsr c7e7            ;jump37
-E488 BD E5 D1        ...   jsr e5d1            ;jump52
+E485 BD C7 E7        ...   jsr c7e7            ;jump37 - send to serial port
+E488 BD E5 D1        ...   jsr e5d1            ;jump52 - triple beep
 E48B BD D8 E9        ...   jsr d8e9            ;jump92
 E48E 7E E5 5E        ~.^   jmp e55e            ;goto74
 E491 F6 00 2B        ..+   ldab 002b
 E494 C1 00           ..    cmpb #00
 E496 26 08           &.    bne 08
-E498 CC AD 16        ...   ldd #ad16
+E498 CC AD 16        ...   ldd #ad16    ; "GRACIAS"
 E49B BD C0 BA        ...   jsr c0ba            ;display:
 E49E 20 1E            .    bra 1e
 E4A0 C1 01           ..    cmpb #01
 E4A2 26 08           &.    bne 08
-E4A4 CC AD 0B        ...   ldd #ad0b
+E4A4 CC AD 0B        ...   ldd #ad0b    ; "DANKE"
 E4A7 BD C0 BA        ...   jsr c0ba            ;display:
 E4AA 20 12            .    bra 12
 E4AC C1 02           ..    cmpb #02
 E4AE 26 08           &.    bne 08
-E4B0 CC AD 00        ...   ldd #ad00
+E4B0 CC AD 00        ...   ldd #ad00    ; "MERCI"
 E4B3 BD C0 BA        ...   jsr c0ba            ;display:
 E4B6 20 06            .    bra 06
-E4B8 CC AC F5        ...   ldd #acf5
+E4B8 CC AC F5        ...   ldd #acf5    ; "THANKS"
 E4BB BD C0 BA        ...   jsr c0ba            ;display:
 E4BE BD D8 D3        ...   jsr d8d3            ;jump84 500ms delay
 E4C1 CE 00 01        ...   ldx #0001
@@ -12703,7 +12776,7 @@ E4C8 BD BE 9E        ...   jsr be9e             ;jump50
 E4CB 38              8     pulx 
 E4CC 5F              _     clrb 
 E4CD 4F              O     clra 
-E4CE BD C7 E7        ...   jsr c7e7            ;jump37
+E4CE BD C7 E7        ...   jsr c7e7            ;jump37 - send to serial port
 E4D1 F6 0B C0        ...   ldab 0bc0
 E4D4 2D 03           -.    blt 03
 E4D6 7E E5 58        ~.X   jmp e558            ;goto78
@@ -12835,6 +12908,7 @@ E5A8 31              1     ins
 E5A9 39              9     rts 
 
 jump12:
+; beep if keypressed?
 E5AA F6 00 33        ..3   ldab 0033
 E5AD 27 0C           '.    beq 0c      ; to e5bb
 E5AF F6 00 29        ..)   ldab 0029   ; key state
@@ -12842,7 +12916,7 @@ E5B2 27 05           '.    beq 05      ; to e5b9 (out)
 E5B4 C6 02           ..    ldab #02
 E5B6 F7 00 33        ..3   stab 0033
 E5B9 20 15            .    bra 15      ; to e5d0 (out)
-E5BB C6 03           ..    ldab #03
+E5BB C6 03           ..    ldab #03    ; beep
 E5BD F7 00 32        ..2   stab 0032
 E5C0 FC 00 3B        ..;   ldd 003b
 E5C3 27 06           '.    beq 06      ; to e5cb
@@ -12853,6 +12927,7 @@ E5CD F7 00 33        ..3   stab 0033
 E5D0 39              9     rts 
 
 jump52:
+; signifies a triple beep?
 E5D1 C6 0B           ..    ldab #0b    ; 1011
 E5D3 F7 00 32        ..2   stab 0032
 E5D6 39              9     rts 
@@ -13230,18 +13305,14 @@ E846 AA 00           ..    ora 00,x
 E848 EA 01           ..    orb 01,x
 E84A ED 00           ..    std 00,x
 E84C CE 10 16        ...   ldx #1016
-E84F 1D 00           ..    bclr add,x 00,x
-E851 C0 FC           ..    subb #fc
-E853 10              .     sba 
-E854 18              .     illegal 
+E84F 1D 00 C0        ..    bclr 00,x, #c0
+E852 FC 10 18        ..    ldd 1018
 E855 43              C     coma 
 E856 53              S     comb 
 E857 FD 10 18        ...   std 1018
 E85A CE 10 18        ...   ldx #1018
-E85D 1D 00           ..    bclr add,x 00,x
-E85F C0 FC           ..    subb #fc
-E861 10              .     sba 
-E862 16              .     tab 
+E85D 1D 00 C0        ..    bclr 00,x, #c0
+E85F FC 10 16        ..    ldd 1016
 E863 37              7     pshb 
 E864 36              6     psha 
 E865 FC 10 18        ...   ldd 1018
@@ -13307,7 +13378,7 @@ E8D0 C4 FF           ..    andb #ff
 E8D2 84 3F           .?    anda #3f
 E8D4 FD 10 16        ...   std 1016
 E8D7 FC 10 16        ...   ldd 1016
-E8DA 83 27 10        .'.   subd #2710
+E8DA 83 27 10        .'.   subd #2710   ; 10000
 E8DD 24 2F           $/    bcc 2f
 E8DF F6 00 06        ...   ldab 0006
 E8E2 BD D4 68        ..h   jsr d468            ;jump51
@@ -13521,7 +13592,7 @@ EA61 BD E5 D7        ...   jsr e5d7             ;jump69 - test input line
 EA64 38              8     pulx 
 EA65 83 00 00        ...   subd #0000
 EA68 27 3F           '?    beq 3f       ; to eaa9 if off
-
+;
 ; test internal mode switch (bit 1 of 1800)
 EA6A CE 00 01        ...   ldx #0001
 EA6D 3C              <     pshx 
@@ -13530,52 +13601,52 @@ EA71 BD E5 D7        ...   jsr e5d7           ;jump69 - test input line
 EA74 38              8     pulx 
 EA75 83 00 00        ...   subd #0000
 EA78 27 2F           '/    beq 2f       ; to eaa9 if off
-
+;
 ; both no-sale & mode switches held.
-
+;
 ; 1000-unit delay
 EA7A CC 03 E8        ...   ldd #03e8
 EA7D BD E5 71        ..q   jsr e571            ;msdelay
-
+;
 EA80 7F 0B A8        ...   clr 0ba8
-
+;
 ; blink "SECURE OFF" until mode switch is released
 EA83 F6 18 00        ...   ldab 1800
 EA86 C4 01           ..    andb #01
 EA88 26 1C           &.    bne 1c       ; to eaa4 (loop until released)
-
+;
 ; blank display
 EA8A BD BE 4B        ..K   jsr be4b            ;displayblank (blank display buffer)
 EA8D 0F              .     sei 
 EA8E BD BE 01        ...   jsr be01            ;jump70 (commit to display)
 EA91 0E              .     cli 
-
+;
 ; 500-unit delay
 EA92 CC 01 F4        ...   ldd #01f4
 EA95 BD E5 71        ..q   jsr e571            ;msdelay
-
+;
 EA98 CC AF D1        ...   ldd #afd1    ; "SECURE OFF"
 EA9B BD C0 BA        ...   jsr c0ba            ;display:
-
+;
 ; 500-unit delay
 EA9E CC 01 F4        ...   ldd #01f4
 EAA1 BD E5 71        ..q   jsr e571            ;msdelay
 ; loop
 EAA4 20 DD            .    bra dd       ; to ea83
 EAA6 BD BE 69        ..i   jsr be69            ;displayreset
-
+;
 ; no sale switch or internal mode switch on
-
+;
 ; fiddle with the bill acceptor
 EAA9 C6 01           ..    ldab #01
 EAAB F7 00 14        ...   stab 0014
 EAAE F6 00 14        ...   ldab 0014
 EAB1 F7 38 00        .8.   stab 3800
-
+;
 ; 30-unit delay
 EAB4 CC 00 1E        ...   ldd #001e
 EAB7 BD E5 71        ..q   jsr e571            ;msdelay
-
+;
 ; more bill acceptor fiddling & tests
 EABA CE 00 01        ...   ldx #0001
 EABD 3C              <     pshx 
@@ -13615,7 +13686,7 @@ EB08 38              8     pulx
 EB09 83 00 00        ...   subd #0000
 EB0C 26 03           &.    bne 03
 EB0E 7E ED F8        ~..   jmp edf8            ;goto80 - something about the bill validator failed. skip it.
-EB11 CC 5A 5A        .ZZ   ldd #5a5a
+EB11 CC 5A 5A        .ZZ   ldd #5a5a    ; 23130
 EB14 FD 10 16        ...   std 1016
 EB17 CC B1 39        ..9   ldd #b139    ;"**********"
 EB1A BD C0 BA        ...   jsr c0ba            ;display:
@@ -13687,7 +13758,7 @@ EBB0 FE 00 73        ..s   ldx 0073
 EBB3 E6 00           ..    ldab 00,x
 EBB5 C1 AA           ..    cmpb #aa
 EBB7 27 08           '.    beq 08
-EBB9 CE 10 16        ...   ldx #1016
+EBB9 CE 10 16        ...   ldx #1016     ; timer output compare register
 EBBC 1D 00 FF        ..    bclr 00,x, #FF
 EBBF 20 09           ..    bra 09
 EBC1 FE 00 73        ..s   ldx 0073
@@ -13802,7 +13873,7 @@ EC9D 2C 1B           ,.    bge 1b
 EC9F 30              0     tsx 
 ECA0 E6 00           ..    ldab 00,x
 ECA2 4F              O     clra 
-ECA3 C3 B1 D0        ...   addd #b1d0
+ECA3 C3 B1 D0        ...   addd #b1d0   ; "THANK YOU FOR YOUR PATRONAGE"
 ECA6 8F              .     xgdx 
 ECA7 E6 00           ..    ldab 00,x
 ECA9 37              7     pshb 
@@ -13858,10 +13929,11 @@ ED02 6C 00           l.    inc 00,x
 ED04 20 D8            .    bra d8
 ED06 30              0     tsx 
 ED07 6F 00           o.    clr 00,x
+;
 ED09 30              0     tsx 
 ED0A E6 00           ..    ldab 00,x
 ED0C C1 0B           ..    cmpb #0b
-ED0E 24 12           $.    bcc 12
+ED0E 24 12           $.    bcc 12 ; to ed22
 ED10 5F              _     clrb 
 ED11 37              7     pshb 
 ED12 30              0     tsx 
@@ -13874,6 +13946,7 @@ ED1B E7 00           ..    stab 00,x
 ED1D 30              0     tsx 
 ED1E 6C 00           l.    inc 00,x
 ED20 20 E7            .    bra e7
+; clear stuff ready for test harness?
 ED22 4F              O     clra 
 ED23 5F              _     clrb 
 ED24 FD 0D F9        ...   std 0df9
@@ -13977,9 +14050,9 @@ EDEB 7F 0B B1        ...   clr 0bb1
 EDEE 7F 0B B0        ...   clr 0bb0
 EDF1 C6 05           ..    ldab #05
 EDF3 F7 08 00        ...   stab 0800
-EDF6 8D 21           .!    bsr dest 21
+EDF6 8D 21           .!    bsr 21 ;jump204 - test harness function
 goto80:
-; switch things off
+; switch things off (motors, display clock, keypad strobe)
 EDF8 7F 00 14        ...   clr 0014
 EDFB F6 00 14        ...   ldab 0014
 EDFE F7 38 00        .8.   stab 3800
@@ -14000,8 +14073,8 @@ EE14 BD E5 71        ...   jsr e571     ;msdelay
 EE17 38              8     pulx 
 EE18 39              9     rts 
 
-
-EE19 BD E5 D1        ...   jsr e5d1            ;jump52
+jump204:
+EE19 BD E5 D1        ...   jsr e5d1            ;jump52 - triple beep
 goto81:
 ; this the diagnostic function activated when the "test harness"
 ; is connected
@@ -14322,9 +14395,9 @@ F152 CC 05 DC        ...   ldd #05dc
 F155 BD E5 71        ..q   jsr e571            ;msdelay
 F158 7E EE 1C        ~..   jmp ee1c            ;goto81
 
-;send a byte to the printer?
-;it calls c7e7, which does things with the serial port
 jump53:
+;send a byte to the printer
+;it calls c7e7, which does things with the serial port
 F15B 37              7     pshb 
 F15C 36              6     psha 
 F15D F6 00 19        ...   ldab 0019
@@ -14357,19 +14430,19 @@ F19B E6 01           ..    ldab 01,x
 F19D C1 30           .0    cmpb #30
 F19F 26 08           &.    bne 08
 F1A1 CC 00 20        ..    ldd #0020
-F1A4 BD C7 E7        ...   jsr c7e7            ;jump37
+F1A4 BD C7 E7        ...   jsr c7e7            ;jump37 - send to serial port
 F1A7 20 0D            .    bra 0d
 F1A9 30              0     tsx 
 F1AA E6 01           ..    ldab 01,x
 F1AC 4F              O     clra 
-F1AD BD C7 E7        ...   jsr c7e7            ;jump37
+F1AD BD C7 E7        ...   jsr c7e7            ;jump37 - send to serial port
 F1B0 CE 00 1D        ...   ldx #001d
 F1B3 1D 00 01        ...   bclr 00,x, #01
 F1B6 20 07            .    bra 07
 F1B8 30              0     tsx 
 F1B9 E6 01           ..    ldab 01,x
 F1BB 4F              O     clra 
-F1BC BD C7 E7        ...   jsr c7e7            ;jump37
+F1BC BD C7 E7        ...   jsr c7e7            ;jump37 - send to serial port
 F1BF 38              8     pulx 
 F1C0 39              9     rts 
 
@@ -14487,17 +14560,16 @@ F294 BD F1 5B        ..[   jsr f15b           ;jump53
 F297 38              8     pulx 
 F298 39              9     rts 
 
-jump61
-jump61::
+jump61:
 F299 37              7     pshb 
 F29A 36              6     psha 
-F29B F6 20 00        . .   ldab 2000
-F29E C4 40           .@    andb #40
+F29B F6 20 00        . .   ldab 2000 
+F29E C4 40           .@    andb #40    ; printer DSR
 F2A0 27 7B           '{    beq 7b
 F2A2 F6 00 17        ...   ldab 0017
 F2A5 C4 08           ..    andb #08
 F2A7 26 06           &.    bne 06
-F2A9 CC 00 24        ..$   ldd #0024
+F2A9 CC 00 24        ..$   ldd #0024    ; "$"
 F2AC BD F1 5B        ..[   jsr f15b            ;jump53
 F2AF CE 00 1D        ...   ldx #001d
 F2B2 1C 00 01        ...   bset 00,x, #01
@@ -14506,42 +14578,42 @@ F2B6 EC 00           ..    ldd 00,x
 F2B8 BD E7 45        ..E   jsr e745            ;jump55 - number to string
 F2BB F6 00 57        ..W   ldab 0057
 F2BE 4F              O     clra 
-F2BF BD F1 5B        ..[   jsr f15b            ;jump53
+F2BF BD F1 5B        ..[   jsr f15b            ;jump53 - byte to printer
 F2C2 F6 00 5A        ..Z   ldab 005a
 F2C5 4F              O     clra 
-F2C6 BD F1 5B        ..[   jsr f15b            ;jump53
+F2C6 BD F1 5B        ..[   jsr f15b            ;jump53 - byte to printer
 F2C9 F6 00 13        ...   ldab 0013
 F2CC C1 08           ..    cmpb #08
 F2CE 26 0C           &.    bne 0c
 F2D0 CC 00 2E        ...   ldd #002e
-F2D3 BD F1 5B        ..[   jsr f15b            ;jump53
+F2D3 BD F1 5B        ..[   jsr f15b            ;jump53 - byte to printer
 F2D6 CE 00 1D        ...   ldx #001d
 F2D9 1D 00 01        ...   bclr 00,x, #01
 F2DC F6 00 5D        ..]   ldab 005d
 F2DF 4F              O     clra 
-F2E0 BD F1 5B        ..[   jsr f15b            ;jump53
+F2E0 BD F1 5B        ..[   jsr f15b            ;jump53 - byte to printer
 F2E3 F6 00 13        ...   ldab 0013
 F2E6 C1 04           ..    cmpb #04
 F2E8 26 0C           &.    bne 0c
 F2EA CC 00 2E        ...   ldd #002e
-F2ED BD F1 5B        ..[   jsr f15b            ;jump53
+F2ED BD F1 5B        ..[   jsr f15b            ;jump53 - byte to printer
 F2F0 CE 00 1D        ...   ldx #001d
 F2F3 1D 00 01        ...   bclr 00,x, #01
 F2F6 F6 00 5E        ..^   ldab 005e
 F2F9 4F              O     clra 
-F2FA BD F1 5B        ..[   jsr f15b            ;jump53
+F2FA BD F1 5B        ..[   jsr f15b            ;jump53 - byte to printer
 F2FD F6 00 13        ...   ldab 0013
 F300 C1 02           ..    cmpb #02
 F302 26 06           &.    bne 06
 F304 CC 00 2E        ...   ldd #002e
-F307 BD F1 5B        ..[   jsr f15b            ;jump53
+F307 BD F1 5B        ..[   jsr f15b            ;jump53 - byte to printer
 F30A CE 00 1D        ...   ldx #001d
 F30D 1D 00 01        ...   bclr 00,x, #01
 F310 F6 00 5F        .._   ldab 005f
 F313 4F              O     clra 
-F314 BD F1 5B        ..[   jsr f15b            ;jump53
+F314 BD F1 5B        ..[   jsr f15b            ;jump53 - byte to printer
 F317 CC 00 0A        ...   ldd #000a
-F31A BD F1 5B        ..[   jsr f15b            ;jump53
+F31A BD F1 5B        ..[   jsr f15b            ;jump53 - byte to printer
 F31D 38              8     pulx 
 F31E 39              9     rts 
 
@@ -14551,14 +14623,14 @@ F320 37              7     pshb
 F321 36              6     psha 
 F322 3C              <     pshx 
 F323 F6 20 00        . .   ldab 2000
-F326 C4 40           .@    andb #40
+F326 C4 40           .@    andb #40     ; printer dsr
 F328 26 03           &.    bne 03
 F32A 7E F3 BC        ~..   jmp f3bc            ;goto82
 F32D F6 00 17        ...   ldab 0017
 F330 C4 08           ..    andb #08
 F332 26 06           &.    bne 06
-F334 CC 00 24        ..$   ldd #0024
-F337 BD F1 5B        ..[   jsr f15b            ;jump53
+F334 CC 00 24        ..$   ldd #0024    ; "$"
+F337 BD F1 5B        ..[   jsr f15b            ;jump53 - byte to printer
 F33A CE 00 1D        ...   ldx #001d
 F33D 1C 00 01        ...   bset 00,x, #01
 F340 30              0     tsx 
@@ -14665,6 +14737,7 @@ F413 38              8     pulx
 F414 39              9     rts 
 
 jump112:
+; print a report?
 F415 F6 0B C0        ...   ldab 0bc0
 F418 C4 02           ..    andb #02
 F41A 27 15           '.    beq 15
@@ -14694,38 +14767,38 @@ F458 CC 00 18        ...   ldd #0018
 F45B BD F1 5B        ..[   jsr f15b            ;jump53
 F45E CC B2 1B        ...   ldd #b21b   "         ROWE  INTERNATIONAL"
 F461 BD F1 E8        ...   jsr f1e8            ;jump57
-F464 CC 00 0A        ...   ldd #000a
+F464 CC 00 0A        ...   ldd #000a    ; new line
 F467 BD F1 5B        ..[   jsr f15b            ;jump53
 F46A CC B2 38        ..8   ldd #b238    "         -------------------"
 F46D BD F1 E8        ...   jsr f1e8            ;jump57
-F470 CC 00 0A        ...   ldd #000a
+F470 CC 00 0A        ...   ldd #000a    ; new line
 F473 BD F1 5B        ..[   jsr f15b            ;jump53
-F476 CC B2 56        ..V   ldd #b256
+F476 CC B2 56        ..V   ldd #b256    ; "5900 SOFTWARE VER 5"
 F479 BD F1 E8        ...   jsr f1e8            ;jump57
-F47C CC 00 0A        ...   ldd #000a
+F47C CC 00 0A        ...   ldd #000a    ; new line
 F47F BD F1 5B        ..[   jsr f15b            ;jump53
-F482 CC 00 0A        ...   ldd #000a
+F482 CC 00 0A        ...   ldd #000a    ; new line
 F485 BD F1 5B        ..[   jsr f15b            ;jump53
-F488 CC B2 75        ..u   ldd #b275
+F488 CC B2 75        ..u   ldd #b275    ; ACCOUNT RECORD
 F48B BD F1 E8        ...   jsr f1e8            ;jump57
-F48E CC 00 0A        ...   ldd #000a
+F48E CC 00 0A        ...   ldd #000a    ; new line
 F491 BD F1 5B        ..[   jsr f15b            ;jump53
-F494 CC B2 38        ..8   ldd #b238
+F494 CC B2 38        ..8   ldd #b238    ; --------------------
 F497 BD F1 E8        ...   jsr f1e8            ;jump57
-F49A CC 00 0A        ...   ldd #000a
+F49A CC 00 0A        ...   ldd #000a    ; new line
 F49D BD F1 5B        ..[   jsr f15b            ;jump53
-F4A0 CC 00 0A        ...   ldd #000a
+F4A0 CC 00 0A        ...   ldd #000a    ; new line
 F4A3 BD F1 5B        ..[   jsr f15b            ;jump53
-F4A6 CC B2 90        ...   ldd #b290
+F4A6 CC B2 90        ...   ldd #b290    ; SERIAL #
 F4A9 BD F1 E8        ...   jsr f1e8            ;jump57
 F4AC CE 00 0A        ...   ldx #000a
 F4AF 3C              <     pshx 
-F4B0 CC 0C BC        ...   ldd #0cbc
+F4B0 CC 0C BC        ...   ldd #0cbc    ; serial number
 F4B3 BD F1 C1        ...   jsr f1c1            ;jump59
 F4B6 38              8     pulx 
 F4B7 CC 00 0A        ...   ldd #000a
 F4BA BD F1 5B        ..[   jsr f15b            ;jump53
-F4BD CC B2 A2        ...   ldd #b2a2
+F4BD CC B2 A2        ...   ldd #b2a2    ; "MACHINE ID"
 F4C0 BD F1 E8        ...   jsr f1e8            ;jump57
 F4C3 CE 00 0A        ...   ldx #000a
 F4C6 3C              <     pshx 
@@ -14734,22 +14807,22 @@ F4CA BD F1 C1        ...   jsr f1c1           ;jump59
 F4CD 38              8     pulx 
 F4CE CC 00 0A        ...   ldd #000a
 F4D1 BD F1 5B        ..[   jsr f15b            ;jump53
-F4D4 CC B2 B4        ...   ldd #b2b4
+F4D4 CC B2 B4        ...   ldd #b2b4    ; "AUDIT NUMBER"
 F4D7 BD F1 E8        ...   jsr f1e8            ;jump57
 F4DA FC 0C E7        ...   ldd 0ce7
-F4DD BD F2 4D        ..M   jsr f24d            ;jump58
+F4DD BD F2 4D        ..M   jsr f24d            ;jump58 - convert to string
 F4E0 CC 00 0A        ...   ldd #000a
 F4E3 BD F1 5B        ..[   jsr f15b            ;jump53
 F4E6 CC 00 0A        ...   ldd #000a
 F4E9 BD F1 5B        ..[   jsr f15b            ;jump53
-F4EC CC B2 C6        ...   ldd #b2c6
+F4EC CC B2 C6        ...   ldd #b2c6    ; "SALES (R)
 F4EF BD F1 E8        ...   jsr f1e8            ;jump57
 F4F2 FE 0D E9        ...   ldx 0de9
 F4F5 3C              <     pshx 
 F4F6 FC 0D E7        ...   ldd 0de7
 F4F9 BD F3 1F        ...   jsr f31f            ;jump60
 F4FC 38              8     pulx 
-F4FD CC B2 D8        ...   ldd #b2d8
+F4FD CC B2 D8        ...   ldd #b2d8    ; "SALES (N)
 F500 BD F1 E8        ...   jsr f1e8            ;jump57
 F503 FE 0D ED        ...   ldx 0ded
 F506 3C              <     pshx 
@@ -14955,7 +15028,7 @@ F707 F6 0B C0        ...   ldab 0bc0
 F70A C4 02           ..    andb #02
 F70C 27 06           '.    beq 06
 F70E CC 00 80        ...   ldd #0080
-F711 BD C7 E7        ...   jsr c7e7            ;jump37
+F711 BD C7 E7        ...   jsr c7e7            ;jump37 - send to serial port
 F714 7F 00 38        ..8   clr 0038
 F717 39              9     rts 
 
@@ -15031,20 +15104,24 @@ F79F 1C 00 10        ..    bset 00,x, #10
 F7A2 7C 00 4C        |.L   inc 004c
 F7A5 F6 00 4C        ..L   ldab 004c
 F7A8 C1 4B           .K    cmpb #4b
-F7AA 26 13           &.    bne 13
+F7AA 26 13           &.    bne 13    ; to f7bf
 F7AC 7F 00 4C        ..L   clr 004c
 F7AF F6 00 4F        ..O   ldab 004f
 F7B2 27 03           '.    beq 03
 F7B4 7A 00 4F        z.O   dec 004f
+;
 F7B7 F6 00 25        ..%   ldab 0025
 F7BA 27 03           '.    beq 03
 F7BC 7A 00 25        z.%   dec 0025
+;
 F7BF F6 00 31        ..1   ldab 0031
 F7C2 26 03           &.    bne 03
-F7C4 BD FE 69        ..i   jsr fe69            ;inhibit interrupts
+F7C4 BD FE 69        ..i   jsr fe69            ;reset
+;
 F7C7 F6 00 7F        ...   ldab 007f
 F7CA 27 03           '.    beq 03
-F7CC BD FE 69        ..i   jsr fe69            ;inhibit interrupts
+F7CC BD FE 69        ..i   jsr fe69            ;reset
+;
 F7CF C6 40           .@    ldab #40
 F7D1 F7 10 25        ..%   stab 1025    ; notify end of RTI period
 F7D4 38              8     pulx 
@@ -15092,7 +15169,7 @@ F801 F7 10 28        ..(   stab 1028 ; SPCR 00101000
 ; initialize the display
 F804 BD BE 69        ..i   jsr be69            ;displayreset
 ;
-; initialize the bill validator
+; initialize the bill validator & more stuff
 F807 BD EA 59        ..Y   jsr ea59            ;jump65
 ;
 F80A CC 00 64        ..d   ldd #0064    ; 100-unit delay
@@ -15149,7 +15226,7 @@ F889 C6 3C           .<    ldab #3c
 F88B F7 00 31        ..1   stab 0031
 F88E 0E              .     cli 
 F88F CC 00 FF        ...   ldd #00ff
-F892 BD C7 E7        ...   jsr c7e7            ;jump37
+F892 BD C7 E7        ...   jsr c7e7            ;jump37 - send to serial port
 F895 5F              _     clrb 
 F896 4F              O     clra 
 F897 FD 00 40        ..@   std 0040
@@ -15195,6 +15272,7 @@ F8FE 0E              .     cli
 ;
 ; begin of main loop
 goto85:
+; test power lines
 F8FF BD E6 1B        ...   jsr e61b            ;jump4 set 0031 to 10
 F902 BD D1 05        ...   jsr d105            ;motors_off
 F905 F6 10 0A        ...   ldab 100a
@@ -15228,6 +15306,8 @@ F94A F7 30 00        .0.   stab 3000   ; clear send & reset lines
 F94D C6 1E           ..    ldab #1e
 F94F F7 00 35        ..5   stab 0035
 ;
+; end of power line test
+;
 F952 F6 0B C0        ...   ldab 0bc0
 F955 C4 08           ..    andb #08
 F957 27 16           '.    beq 16       ; to f96f
@@ -15242,7 +15322,7 @@ F969 CE 0B C1        ...   ldx #0bc1
 F96C 1C 00 08        ..    bset 00,x, #08 ; set bill error bit
 ;
 F96F F6 0B C1        ...   ldab 0bc1
-F972 C4 07           ..    andb #07     ; test for power failures
+F972 C4 07           ..    andb #07     ; was there a power failure?
 F974 27 0D           '.    beq 0d       ; to f983
 F976 F6 00 35        ..5   ldab 0035
 F979 26 08           &.    bne 08
@@ -15250,6 +15330,7 @@ F97B CE 00 21        ..!   ldx #0021
 F97E 1C 00 20        ..    bset 00,x, #20
 F981 20 06           ..    bra 06       ; to f989
 ;
+;
 F983 CE 00 21        ..!   ldx #0021
 F986 1D 00 20        ..    bclr 00,x, #20
 F989 BD BB 63         .    jsr bb63     ;jump200 - read the keypad
@@ -15337,9 +15418,9 @@ FA5E BD E8 9A        ...   jsr e89a             ;jump68
 FA61 BD BE 69        ..i   jsr be69            ;displayreset
 FA64 7F 00 06        ...   clr 0006
 FA67 CE 00 1F        ...   ldx #001f
-FA6A 1D 00           ..    bclr add,x 00,x
-FA6C 20 C6            .    bra c6
-FA6E 1E F7 00 35     ...5  brset f7,x 00 35
+FA6A 1D 00 20        ..    bclr 00,x, #20
+FA6D C6 1E            .    ldab #1e
+FA6F F7 00 35        ...5  stab 0035
 FA72 20 03            .    bra 03
 goto84:
 FA74 BD DE E7        ...   jsr dee7            ;jump116
@@ -15347,7 +15428,7 @@ FA77 20 66            f    bra 66
 goto83:
 FA79 F6 00 12        ...   ldab 0012
 FA7C C4 20           .     andb #20
-FA7E 27 5F           '_    beq 5f
+FA7E 27 5F           '_    beq 5f       ; to fadf - restart loop
 FA80 F6 00 1F        ...   ldab 001f
 FA83 C4 20           .     andb #20
 FA85 26 03           &.    bne 03
@@ -15371,7 +15452,7 @@ FAB0 CC 02 33        ..    ldd #0233
 FAB4 FD 00 3B        ..;   std 003b
 FAB7 20 09            .    bra 09       ; to fac2
 ;
-FAB9 BD E5 AA        ...   jsr e5aa            ;jump12
+FAB9 BD E5 AA        ...   jsr e5aa            ;jump12 - beep if key pressed?
 FABC CE 00 1F        ...   ldx #001f
 FABF 1D 00 04        ...   bclr 00,x, #04
 FAC2 CE 00 1D        ...   ldx #001d
@@ -15470,14 +15551,15 @@ FBA8 BD C0 BA        ...   jsr c0ba           ;display:
 FBAB CC 07 D0        ...   ldd #07d0
 FBAE BD E5 71        ..q   jsr e571            ;msdelay
 FBB1 3B              ;     rti 
-FBB2 BD FE 69        ..i   jsr fe69            ;inhibit interrupts
+FBB2 BD FE 69        ..i   jsr fe69            ;reset
 FBB5 3B              ;     rti 
-FBB6 BD FE 69        ..i   jsr fe69            ;inhibit interrupts
+FBB6 BD FE 69        ..i   jsr fe69            ;reset
 FBB9 3B              ;     rti 
 
 jump38:
 ; passed a u16 on the stack, i, and a u16 in D, j
-; multiplication funciton of some sort?
+; i *think* it multiplies i*j and returns it in D.
+; but the assembly seems to have several off-by-one errors
 FBBA 3C              <     pshx 
 FBBB 37              7     pshb 
 FBBC 30              0     tsx 
@@ -15485,10 +15567,10 @@ FBBD E6 06           ..    ldab 06,x   ; lower 8-bits of i
 FBBF 3D              =     mul         ; A*B => D
 FBC0 A6 00           ..    ldaa 00,x
 FBC2 37              7     pshb 
-FBC3 E6 05           ..    ldab 05,x
+FBC3 E6 05           ..    ldab 05,x   ; upper byte of return address??
 FBC5 3D              =     mul 
 FBC6 32              2     pula 
-FBC7 1B              .     aba 
+FBC7 1B              .     aba         ; a now contains ad+bc
 FBC8 33              3     pulb 
 FBC9 36              6     psha 
 FBCA A6 06           ..    ldaa 06,x
@@ -15496,8 +15578,8 @@ FBCC 3D              =     mul
 FBCD 37              7     pshb 
 FBCE AB 00           ..    adda 00,x
 FBD0 36              6     psha 
-FBD1 EC 03           ..    ldd 03,x
-FBD3 ED 05           ..    std 05,x
+FBD1 EC 03           ..    ldd 03,x    ; move saved value of X
+FBD3 ED 05           ..    std 05,x    ; into the return address???
 FBD5 38              8     pulx 
 FBD6 8F              .     xgdx 
 FBD7 83 00 00        ...   subd #0000
@@ -15705,16 +15787,11 @@ FD1E EC 0A           ..    ldd 0a,x
 FD20 7E FD E3        ~..   jmp fde3            ;goto90
 FD23 86 08           ..    ldaa #08
 FD25 A7 05           ..    staa 05,x
-FD27 69              i     rol 
-FD28 0D              .     sec 
-FD29 69              i     rol 
-FD2A 0C              .     clc 
-FD2B 69              i     rol 
-FD2C 0B              .     sev 
-FD2D 69              i     rol 
-FD2E 0A              .     clv 
-FD2F 69              i     rol 
-FD30 09              .     dex 
+FD27 69 0D           i.    rol 0d,x
+FD29 69 0C           i.    rol 0c,x
+FD2B 69 0B           i.    rol 0b,x
+FD2D 69 0A           i.    rol 0a,x
+FD2F 69 09           i.    rol 09,x
 FD31 EC 0B           ..    ldd 0b,x
 FD33 A3 10           ..    subd 10,x
 FD35 ED 14           ..    std 14,x
@@ -15727,8 +15804,7 @@ FD41 EC 14           ..    ldd 14,x
 FD43 ED 0B           ..    std 0b,x
 FD45 6A 05           j.    dec 05,x
 FD47 26 DE           &.    bne de
-FD49 69              i     rol 
-FD4A 0D              .     sec 
+FD49 69 0D           i.    rol 0d,x
 FD4B 1F 04 01 09     ....  brclr 04,x 01 09
 FD4F EC 0B           ..    ldd 0b,x
 FD51 ED 14           ..    std 14,x
@@ -15742,18 +15818,12 @@ FD5E 5F              _     clrb
 FD5F 7E FD E3        ~..   jmp fde3            ;goto90
 FD62 86 10           ..    ldaa #10
 FD64 A7 05           ..    staa 05,x
-FD66 69              i     rol 
-FD67 0D              .     sec 
-FD68 69              i     rol 
-FD69 0C              .     clc 
-FD6A 69              i     rol 
-FD6B 0B              .     sev 
-FD6C 69              i     rol 
-FD6D 0A              .     clv 
-FD6E 69              i     rol 
-FD6F 09              .     dex 
-FD70 69              i     rol 
-FD71 08              .     inx 
+FD66 69 0D           i.    rol 0d,x
+FD68 69 0C           i.    rol 0c,x
+FD6A 69 0B           i.    rol 0b,x
+FD6C 69 0A           i.    rol 0a,x
+FD6E 69 09           i.    rol 09,x
+FD70 69 08           i.    rol 08,x
 FD72 EC 0A           ..    ldd 0a,x
 FD74 A3 10           ..    subd 10,x
 FD76 ED 14           ..    std 14,x
@@ -15766,10 +15836,8 @@ FD82 EC 14           ..    ldd 14,x
 FD84 ED 0A           ..    std 0a,x
 FD86 6A 05           j.    dec 05,x
 FD88 26 DC           &.    bne dc
-FD8A 69              i     rol 
-FD8B 0D              .     sec 
-FD8C 69              i     rol 
-FD8D 0C              .     clc 
+FD8A 69 0D           i.    rol 0d,x
+FD8C 69 0C           i.    rol 0c,x
 FD8E 1F 04 01 08     ....  brclr 04,x 01 08
 FD92 EC 0A           ..    ldd 0a,x
 FD94 ED 14           ..    std 14,x
@@ -15786,16 +15854,11 @@ goto91:
 FDA4 2B BC           +.    bmi bc
 FDA6 86 10           ..    ldaa #10
 FDA8 A7 05           ..    staa 05,x
-FDAA 69              i     rol 
-FDAB 0D              .     sec 
-FDAC 69              i     rol 
-FDAD 0C              .     clc 
-FDAE 69              i     rol 
-FDAF 0B              .     sev 
-FDB0 69              i     rol 
-FDB1 0A              .     clv 
-FDB2 69              i     rol 
-FDB3 07              .     tpa 
+FDAA 69 0D           i     rol 0d,x
+FDAC 69 0C           i     rol 0c,x
+FDAE 69 0B           i     rol 08,x
+FDB0 69 0A           i     rol 0a,x
+FDB2 69 07           i     rol 07,x
 FDB4 EC 0A           ..    ldd 0a,x
 FDB6 A3 10           ..    subd 10,x
 FDB8 ED 14           ..    std 14,x
@@ -15807,10 +15870,8 @@ FDC2 EC 14           ..    ldd 14,x
 FDC4 ED 0A           ..    std 0a,x
 FDC6 6A 05           j.    dec 05,x
 FDC8 26 E0           &.    bne e0
-FDCA 69              i     rol 
-FDCB 0D              .     sec 
-FDCC 69              i     rol 
-FDCD 0C              .     clc 
+FDCA 69 0D           i.    rol 0d,x
+FDCC 69 0C           i.    rol 0c,x
 FDCE 1F 04 01 09     ....  brclr 04,x 01 09
 FDD2 EC 0A           ..    ldd 0a,x
 FDD4 ED 14           ..    std 14,x

UCC git Repository :: git.ucc.asn.au