motor findings
[uccvend-snackrom.git] / ROM-2003 / vend.asm
index f945890..72a6909 100644 (file)
@@ -9,13 +9,16 @@
 ;000a   
 ;000c
 ;0012   another buffer for 1800 - what change to give?
-;0013
+;0013   location of decimal point?
 ;0014   buffer for 3800 register  
 ;0015
 ;0016   new key state (cf 0029)
 ;0017   bits 5-7 used mostly
 ;0018   
-;0019   
+;0019   error statuses:
+;         bit 0 - over current
+;         bit 1 - home sensor failure
+;         bit 2 - check prices
 ;001a   buffer for 3000 register - initialised to 7F
 ;001b   bit 3 - denote motor fault?
 ;001c   used for loop variables
@@ -25,6 +28,7 @@
 ;       bit 5 denotes machine out of order
 ;0023   buffer for 1800
 ;0026   used exclusively in SCI interrupt handler
+;0027   price of current item
 ;0029   previous key state (cf 0016)
 ;002c   inhibits display writes?
 ;0032   to do with the beeper (see jump52)
@@ -61,7 +65,7 @@
 ;0bbd   
 ;0bd8   related to 0017 and 0021 (only lower 3 bits used)
 ;0bd9   also related
-;0bc0   machine capabilities flags
+;0bc0   machine peripheral configuration flags
 ;         bit0: have dumb mech
 ;         bit1: have a changer
 ;         bit2: have card reader
 
 
 
+;0800 - 0x0fff memory bank 2k
+;
 ;1800  Internal switches
 ;   7 changer INT'
 ;   6 Sold out.
@@ -1667,6 +1673,7 @@ goto7:
 8C72 39              9     rts 
 
 jump75:
+;fetches a price & other info for the given slot?
 8C73 F6 00 06        ...   ldab 0006
 8C76 4F              O     clra 
 8C77 05              .     asld 
@@ -1694,7 +1701,7 @@ jump75:
 8CA1 84 08           ..    anda #08
 8CA3 27 08           '.    beq 08
 8CA5 CE 00 19        ...   ldx #0019
-8CA8 1C 00 10        ...   bset 00,x, #10
+8CA8 1C 00 10        ...   bset 00,x, #10 ; corresponds to whatever '*' is on price display
 8CAB 20 06            .    bra 06
 8CAD CE 00 19        ...   ldx #0019
 8CB0 1D 00 10        ...   bclr 00,x, #10
@@ -1882,17 +1889,20 @@ jump19:
 8E5A F6 00 09        ...   ldab 0009
 8E5D 4F              O     clra 
 8E5E BD FE 32        ..2   jsr fe32            ;jump25
-8E61 8E 7B 00 00     .{..  ; array data for jump25
-8E65 8E 81 00 01     ....  
-8E69 8E 87 00 04     ....  
-8E6D 8F 01 00 05     ....  
-8E71 8F 09 00 01     ....  
-8E75 8F 0C FF F5     ....  
+8E61 8E 7B 00 00     .{..  ; no key
+8E65 8E 81 00 01     ....  ; key 1 - toggle?
+8E69 8E 87 00 04     ....  ; key 5 - save and next
+8E6D 8F 01 00 05     ....  ; key 0 - exit
+8E71 8F 09 00 01     ....  ; key reset - exit
+8E75 8F 0C FF F5     ....  ; default
 8E79 00 00           ..    ; end of array data
-8E7B BD 9C 15        ...   jsr 9c15            ;jump111
+;
+8E7B BD 9C 15        ...   jsr 9c15            ;jump111 - write the option name
 8E7E 7E 8F 0C        ~..   jmp 8f0c            ;goto12
+;
 8E81 BD A7 5F        .._   jsr a75f            ;jump133
 8E84 7E 8F 0C        ~..   jmp 8f0c            ;goto12
+;
 8E87 F6 00 48        ..H   ldab 0048
 8E8A C1 08           ..    cmpb #08
 8E8C 25 05           %.    bcs 05
@@ -1906,12 +1916,14 @@ jump19:
 8EA0 F6 00 48        ..H   ldab 0048
 8EA3 C1 01           ..    cmpb #01
 8EA5 26 0F           &.    bne 0f
+;
 8EA7 F6 00 67        ..g   ldab 0067
 8EAA C4 02           ..    andb #02
 8EAC 26 08           &.    bne 08
 8EAE F6 00 48        ..H   ldab 0048
 8EB1 CB 02           ..    addb #02
 8EB3 F7 00 48        ..H   stab 0048
+;
 8EB6 F6 00 48        ..H   ldab 0048
 8EB9 C1 02           ..    cmpb #02
 8EBB 26 0A           &.    bne 0a
@@ -1940,8 +1952,9 @@ jump19:
 8EF3 7F 00 48        ..H   clr 0048
 8EF6 F6 0B C0        ...   ldab 0bc0
 8EF9 F7 00 67        ..g   stab 0067
-8EFC BD 9C 15        ...   jsr 9c15            ;jump111
+8EFC BD 9C 15        ...   jsr 9c15            ;jump111 - write the next option
 8EFF 20 0B            .    bra 0b
+;
 8F01 BD A4 59        ..Y   jsr a459            ;jump110
 8F04 BD 85 AF        ...   jsr 85af            ;jump14
 8F07 20 03            .    bra 03
@@ -2169,7 +2182,7 @@ jump21:
 9126 7F 00 09        ...   clr 0009
 9129 7F 00 0A        ...   clr 000a
 912C 39              9     rts 
-
+;
 912D F6 00 19        ...   ldab 0019
 9130 2C 28           ,(    bge 28
 9132 BD A9 CF        ...   jsr a9cf            ;jump131
@@ -2249,10 +2262,8 @@ jump76:
 91E2 7F 00 54        ..T   clr 0054
 91E5 7F 00 60        ..`   clr 0060
 91E8 CE 00 19        ...   ldx #0019
-91EB 1D 00           ..    bclr add,x 00,x
-91ED 80 7F           ..    suba #7f
-91EF 00              .     test 
-91F0 36              6     psha 
+91EB 1D 00 80        ..    bclr 00,x, #80
+91EE 7F 00 36        ..    clr 0036
 91F1 20 66            f    bra 66
 91F3 F6 00 0A        ...   ldab 000a
 91F6 4F              O     clra 
@@ -2620,13 +2631,10 @@ jump203:
 9551 CC B0 B8        ...   ldd #b0b8    ; "SELECTION?"
 9554 BD C0 BA        ...   jsr c0ba            ;display:
 9557 CE 00 19        ...   ldx #0019
-955A 1D 00           ..    bclr add,x 00,x
-955C 80 CE           ..    suba #ce
-955E 00              .     test 
-955F 1D 1D 00        ...   bclr 1d,x, #00
-9562 80 7F           ..    suba #7f
-9564 00              .     test 
-9565 54              T     lsrb 
+955A 1D 00 80        ..    bclr 00,x, #80
+955D CE 00 1D        ..    ldx #001d
+9560 1D 00 80        ...   bclr 00,x, #80
+9562 7F 00 54        ..    clr 0054
 9566 C6 32           .2    ldab #32
 9568 F7 00 3A        ..:   stab 003a
 956B F6 00 0A        ...   ldab 000a
@@ -2682,10 +2690,8 @@ jump203:
 95DF F7 00 3A        ..:   stab 003a
 95E2 20 09            .    bra 09
 95E4 CE 00 19        ...   ldx #0019
-95E7 1C 00           ..    bset add,x 00,x
-95E9 80 7F           ..    suba #7f
-95EB 00              .     test 
-95EC 3A              :     abx 
+95E7 1C 00 80        ..    bset 00,x, #80
+95E9 7F 00 3A        ..    clr 003a
 95ED BD BE 01        ...   jsr be01            ;jump70
 95F0 7C 00 54        |.T   inc 0054
 95F3 F6 00 54        ..T   ldab 0054
@@ -2713,49 +2719,41 @@ jump203:
 9623 26 21           &!    bne 21
 9625 BD D3 11        ...   jsr d311            ;jump30 - test position exists
 9628 83 00 00        ...   subd #0000
-962B 26 0B           &.    bne 0b
+962B 26 0B           &.    bne 0b       ; to 9638
 962D CE 00 1F        ...   ldx #001f
-9630 1C 00 40        ...   bset 00,x, #40
-9633 BD 8C 73        ..s   jsr 8c73            ;jump75
-9636 20 06            .    bra 06
+9630 1C 00 40        ...   bset 00,x, #40  ; denotes an invalid slot or unmarked price? (fills display with XXX.XX)
+9633 BD 8C 73        ..s   jsr 8c73            ;jump75 - fetch slot info
+9636 20 06            .    bra 06       ; to 963e
 9638 CE 00 1F        ...   ldx #001f
 963B 1D 00 40        ...   bclr 00,x, #40
 963E 7F 00 2C        ..,   clr 002c
-9641 BD 9A 47        ..G   jsr 9a47            ;jump39
+9641 BD 9A 47        ..G   jsr 9a47            ;jump39 - display price on screen
 9644 20 0C            .    bra 0c
 9646 CE 00 1D        ...   ldx #001d
-9649 1D 00           ..    bclr add,x 00,x
-964B 80 CE           ..    suba #ce
-964D 00              .     test 
-964E 19              .     daa 
-964F 1C 00           ..    bset add,x 00,x
-9651 80 20           .     suba #20
-9653 06              .     tap 
+9649 1D 00 80        ..    bclr 00,x, #80
+964C CE 00 19        ..    ldx #0019
+964F 1C 00 80        ..    bset 00,x, #80
+9652 20 06           .     bra 06
 9654 CE 00 1D        ...   ldx #001d
-9657 1D 00           ..    bclr add,x 00,x
-9659 80 20           .     suba #20
-; 965a   goto93
-965B 2B F6           +.    bmi f6
-; 965C
-;goto16
-965D 00              .     test 
-965E 1D 2C           .,    bclr add,x 2c,x
-9660 26 BD           &.    bne bd
-9662 D2 13 83        ...   sbcb 13
-9665 00              .     test 
-9666 00              .     test 
+9657 1D 00 80        ..    bclr 00,x, #80
+goto93:
+965A 20 2B           .     bra 2b
+goto16:
+965C F6 00 1D        +.    ldab 001d
+965F 2C 26           .,    bge 26
+9661 BD D2 13        &.    jsr d213     ;jump45
+9664 83 00 00        ...   subd #0000
 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 - triple beep
-9672 CC 03 84        ...   ldd #0384
+9672 CC 03 84        ...   ldd #0384    ; 900
 9675 BD E5 71        ..q   jsr e571            ;msdelay
 9678 7F 00 2E        ...   clr 002e
 967B CE 00 1D        ...   ldx #001d
-967E 1D 00           ..    bclr add,x 00,x
-9680 80 CE           ..    suba #ce
-9682 00              .     test 
-9683 1F 1C 00 02     ....  brclr 1c,x 00 02
+967E 1D 00 80        ..    bclr 00,x, #80
+9680 CE 00 1F        ..    ldx #001f
+9683 1C 00 02        ...   bset 00,x #02
 9687 39              9     rts 
 
 jump148:
@@ -3170,6 +3168,7 @@ jump102:
 9A46 39              9     rts 
 
 jump39:
+; write a slot, price, etc to screen.
 9A47 BD BE 4B        ..K   jsr be4b            ;displayblank
 9A4A F6 00 06        ...   ldab 0006
 9A4D 4F              O     clra 
@@ -3182,7 +3181,7 @@ jump39:
 9A5F F7 0B 97        ...   stab 0b97
 9A62 F6 00 1F        ...   ldab 001f
 9A65 C4 40           .@    andb #40
-9A67 27 45           'E    beq 45
+9A67 27 45           'E    beq 45       ; to 9aae
 9A69 FC 00 27        ..'   ldd 0027
 9A6C BD E7 45        ..E   jsr e745            ;jump55 - number to string
 9A6F F6 00 5A        ..Z   ldab 005a
@@ -3196,7 +3195,7 @@ jump39:
 9A87 F6 00 19        ...   ldab 0019
 9A8A C4 10           ..    andb #10
 9A8C 27 07           '.    beq 07
-9A8E C6 2A           .*    ldab #2a
+9A8E C6 2A           .*    ldab #2a     ; '*'
 9A90 F7 0B 92        ...   stab 0b92
 9A93 20 05            .    bra 05
 9A95 C6 20           .     ldab #20
@@ -3207,22 +3206,24 @@ jump39:
 9AA3 F7 0B 91        ...   stab 0b91
 9AA6 F6 00 5F        .._   ldab 005f
 9AA9 F7 0B 90        ...   stab 0b90
-9AAC 20 1E            .    bra 1e
-9AAE C6 58           .X    ldab #58   : "X"
+9AAC 20 1E            .    bra 1e       ; to 9acc
+;
+9AAE C6 58           .X    ldab #58   ; "X"
 9AB0 F7 0B 96        ...   stab 0b96
-9AB3 C6 58           .X    ldab #58   : "X"
+9AB3 C6 58           .X    ldab #58   ; "X"
 9AB5 F7 0B 95        ...   stab 0b95
-9AB8 C6 58           .X    ldab #58   : "X"
+9AB8 C6 58           .X    ldab #58   ; "X"
 9ABA F7 0B 94        ...   stab 0b94
-9ABD C6 58           .X    ldab #58   : "X"
+9ABD C6 58           .X    ldab #58   ; "X"
 9ABF F7 0B 93        ...   stab 0b93
-9AC2 C6 58           .X    ldab #58   : "X"
+9AC2 C6 58           .X    ldab #58   ; "X"
 9AC4 F7 0B 91        ...   stab 0b91
-9AC7 C6 58           .X    ldab #58   : "X"
+9AC7 C6 58           .X    ldab #58   ; "X"
 9AC9 F7 0B 90        ...   stab 0b90
+;
 9ACC F6 00 13        ...   ldab 0013
 9ACF C1 01           ..    cmpb #01
-9AD1 23 4C           #L    bls 4c
+9AD1 23 4C           #L    bls 4c     ; to 9b1f
 9AD3 F6 0B 91        ...   ldab 0b91
 9AD6 F7 0B 90        ...   stab 0b90
 9AD9 F6 0B 92        ...   ldab 0b92
@@ -3236,7 +3237,7 @@ jump39:
 9AF0 26 07           &.    bne 07
 9AF2 C6 2E           ..    ldab #2e   ; "."
 9AF4 F7 0B 94        ...   stab 0b94
-9AF7 20 26            &    bra 26
+9AF7 20 26            &    bra 26     ; to 9b1f
 9AF9 C1 04           ..    cmpb #04
 9AFB 26 0D           &.    bne 0d
 9AFD F6 0B 95        ...   ldab 0b95
@@ -3252,9 +3253,12 @@ jump39:
 9B17 F7 0B 95        ...   stab 0b95
 9B1A C6 2E           ..    ldab #2e
 9B1C F7 0B 96        ...   stab 0b96
+;
 9B1F F6 00 2C        ..,   ldab 002c
 9B22 26 3E           &>    bne 3e
 9B24 BD BE 69        ..i   jsr be69            ;displayreset
+95EB 00              .     test 
+95EC 3A              :     abx 
 9B27 F6 00 13        ...   ldab 0013
 9B2A C1 01           ..    cmpb #01
 9B2C 23 2C           #,    bls 2c
@@ -3272,7 +3276,7 @@ jump39:
 9B47 20 0B            .    bra 0b
 9B49 CE 00 01        ...   ldx #0001
 9B4C 3C              <     pshx 
-9B4D CC 00 58        ..X   ldd #0058
+9B4D CC 00 58        ..X   ldd #0058    ; 'X'
 9B50 BD BD B5        ...   jsr bdb5            ;jump78 
 9B53 38              8     pulx 
 9B54 CE 10 28        ..(   ldx #1028
@@ -3359,23 +3363,21 @@ jump111:
 9C18 F6 00 48        ..H   ldab 0048
 9C1B 4F              O     clra 
 9C1C BD FE 16        ...   jsr fe16            ;jump2
-9C1F 00              .     test 
-9C20 00              .     test 
-9C21 00              .     test 
-9C22 0A              .     clv 
-9C23 9D 29 9C        .).   jsr 29
-9C26 3B              ;     rti 
-9C27 9C 53 9C        .S.   cmpx 53
-9C2A 6B              k     illegal 
-9C2B 9C 83 9C        ...   cmpx 83
-9C2E 9B 9C B2        ...   adda 9c
-9C31 9C C9 9C        ...   cmpx c9
-9C34 E0 9C           ..    subb 9c,x
-9C36 F7 9D 0E        ...   stab 9d0e
-9C39 9D 23 F6        .#.   jsr 23
-9C3C 00              .     test 
-9C3D 67 C4           g.    asr c4,x
-9C3F 02              .     idiv 
+9C1F 00 00 00 0A     .     0..10
+9C23 9D 29           .).   ;
+9C25 9C 3B           ;     ;
+9C27 9C 53           .S.   ;
+9C29 9C 6B           k     ;
+9C2B 9C 83           ...   ;
+9C2D 9C 9B           ...   ;
+9C2F 9C B2           ...   ;
+9C31 9C C9           ...   ;
+9C33 9C E0           ...   ;
+9C35 9C F7           ..    ;
+9C37 9D 0E           ...   ;
+9C39 9D 23           .#.   ;
+9C3B F6 00 67        .     ldab 0067
+9C3D C4 02           g.    andb #02
 9C40 27 08           '.    beq 08
 9C42 CC AF 00        ...   ldd #af00    ; "LNK MSTR Y"
 9C45 BD C0 BA        ...   jsr c0ba            ;display:
@@ -3383,6 +3385,7 @@ jump111:
 9C4A CC AF 0B        ...   ldd #af0b    ; "LNK MSTR N"
 9C4D BD C0 BA        ...   jsr c0ba            ;display:
 9C50 7E 9D 29        ~.)   jmp 9d29            ;goto18
+;
 9C53 F6 00 67        ..g   ldab 0067
 9C56 C4 10           ..    andb #10
 9C58 27 08           '.    beq 08
@@ -3392,6 +3395,7 @@ jump111:
 9C62 CC AF 4D        ..M   ldd #af4d    ; "PRC HOLD N"
 9C65 BD C0 BA        ...   jsr c0ba            ;display:
 9C68 7E 9D 29        ~.)   jmp 9d29            ;goto18
+;
 9C6B F6 00 67        ..g   ldab 0067
 9C6E C4 20           .     andb #20
 9C70 27 08           '.    beq 08
@@ -3401,6 +3405,7 @@ jump111:
 9C7A CC AF 63        ..c   ldd #af63    ; "PRC DISP N"
 9C7D BD C0 BA        ...   jsr c0ba            ;display:
 9C80 7E 9D 29        ~.)   jmp 9d29            ;goto18
+;
 9C83 F6 00 67        ..g   ldab 0067
 9C86 C4 01           ..    andb #01
 9C88 27 08           '.    beq 08
@@ -3501,7 +3506,7 @@ jump89:
 9D77 F7 0B 90        ...   stab 0b90
 9D7A BD BE 01        ...   jsr be01            ;jump70
 9D7D 39              9     rts 
-
+;
 9D7E BD BE 4B        ..K   jsr be4b            ;displayblank
 9D81 F6 00 60        ..`   ldab 0060
 9D84 4F              O     clra 
@@ -4683,24 +4688,23 @@ jump133:
 A75F F6 00 48        ..H   ldab 0048
 A762 4F              O     clra 
 A763 BD FE 16        ...   jsr fe16            ;jump2
-A766 00              .     test 
-A767 00              .     test 
-A768 00              .     test 
-A769 09              .     dex 
-A76A A7 DC           ..    staa dc,x
-A76C A7 80           ..    staa 80,x
-A76E A7 87           ..    staa 87,x
-A770 A7 8E           ..    staa 8e,x
-A772 A7 95           ..    staa 95,x
-A774 A7 9C           ..    staa 9c,x
-A776 A7 A3           ..    staa a3,x
-A778 A7 AA           ..    staa aa,x
-A77A A7 B1           ..    staa b1,x
-A77C A7 C4           ..    staa c4,x
-A77E A7 D7           ..    staa d7,x
+A766 00 00 00 09     .     test 
+A76A A7 DC           ..    ;
+A76C A7 80           ..    ;
+A76E A7 87           ..    ;
+A770 A7 8E           ..    ;
+A772 A7 95           ..    ;
+A774 A7 9C           ..    ;
+A776 A7 A3           ..    ;
+A778 A7 AA           ..    ;
+A77A A7 B1           ..    ;
+A77C A7 C4           ..    ;
+A77E A7 D7           ..    ;
+;
 A780 C6 02           ..    ldab #02
 A782 F7 00 02        ...   stab 0002
 A785 20 55            U    bra 55
+;
 A787 C6 10           ..    ldab #10
 A789 F7 00 02        ...   stab 0002
 A78C 20 4E            N    bra 4e
@@ -4807,7 +4811,7 @@ A87B 31              1     ins
 A87C 31              1     ins 
 A87D 2C 0A           ,.    bge 0a
 A87F F6 00 60        ..`   ldab 0060
-A882 C1 F9           ..    cmpb #f9
+A882 C1 F9           ..    cmpb #f9    ; -7
 A884 24 03           $.    bcc 03
 A886 7C 00 60        |.`   inc 0060
 A889 20 0A            .    bra 0a
@@ -4821,19 +4825,19 @@ jump98:
 A896 F6 00 36        ..6   ldab 0036
 A899 26 39           &9    bne 39
 A89B F6 00 54        ..T   ldab 0054
-A89E C1 27           .'    cmpb #27
+A89E C1 27           .'    cmpb #27     ; 39
 A8A0 24 20           $     bcc 20
 A8A2 7C 00 54        |.T   inc 0054
 A8A5 F6 00 09        ...   ldab 0009
 A8A8 C1 01           ..    cmpb #01
 A8AA 26 0C           &.    bne 0c
 A8AC F6 00 54        ..T   ldab 0054
-A8AF C1 27           .'    cmpb #27
+A8AF C1 27           .'    cmpb #27     ; 39
 A8B1 26 03           &.    bne 03
 A8B3 7F 00 54        ..T   clr 0054
 A8B6 20 0A            .    bra 0a
 A8B8 F6 00 54        ..T   ldab 0054
-A8BB C1 24           .$    cmpb #24
+A8BB C1 24           .$    cmpb #24     ; 36
 A8BD 26 03           &.    bne 03
 A8BF 7F 00 54        ..T   clr 0054
 A8C2 F6 00 54        ..T   ldab 0054
@@ -4998,11 +5002,11 @@ AA06 F7 00 61        ..a   stab 0061
 AA09 39              9     rts 
 
 jump130:
-AA0A C6 53           .S    ldab #53
+AA0A C6 53           .S    ldab #53   ; 'S'
 AA0C F7 0C B9        ...   stab 0cb9
-AA0F C6 29           .)    ldab #29
+AA0F C6 29           .)    ldab #29   ; ')'
 AA11 F7 0C BA        ...   stab 0cba
-AA14 C6 20           .     ldab #20
+AA14 C6 20           .     ldab #20   ; ' '
 AA16 F7 0C BB        ...   stab 0cbb
 AA19 7F 00 54        ..T   clr 0054
 AA1C F6 00 54        ..T   ldab 0054
@@ -7936,7 +7940,7 @@ BDB4 39              9     rts
 
 jump78:
 ; start/finish sending a byte to the display
-; stack parameter - 0 to disable clock (finish), 1 to enable clock (start)
+; stack parameter - 0 to disable display clock (for reading keypad), 1 to enable
 ; lower 8-bits of D - byte to write to display.
 ; bytes with bit 7 unset are characters (0-127)
 ; bytes with bit 7 set are control commands.
@@ -8046,15 +8050,15 @@ BE68 39              9     rts
 
 displayreset:
 ; Reset the display
-; Clear bit 7 of PortA - display reset
+; Clear bit 7 of PortA - display reset (active low)
 BE69 CE 10 00        ...   ldx #1000
 BE6C 1D 00 80        ..    bclr x,#80
 BE6F BD E5 96        ...   jsr e596            ;jump115 - 100ms delay
-; Clear bit 7 of PortA - reset line back to high (not active)
+; Clear bit 7 of PortA - reset line back to high
 BE72 CE 10 00        ...   ldx #1000
 BE75 1C 00 80        ..    bset 00,x, #80
 
-; set clock polarity
+; set SPI enable
 BE78 CE 10 28        ...   ldx #1028
 BE7B 1C 00 40        ...   bset 00,x, #40
 
@@ -8074,7 +8078,7 @@ BE90 CC 00 E0        ...   ldd #00e0    ;11100000
 BE93 BD BD B5        ...   jsr bdb5            ;jump78
 BE96 38              8     pulx 
 
-; revert clock polarity
+; revert SPI enable
 BE97 CE 10 28        ..(   ldx #1028
 BE9A 1D 00 40        ...   bclr 00,x, #40
 BE9D 39              9     rts 
@@ -8441,7 +8445,7 @@ C0F8 1D 00 20        ..    bclr 00,x, #20
 C0FB 5F              .     clrb
 C0FC 4F              O     clra 
 C0FD 39              9     rts 
-
+;
 C0FE CE 00 14        ...   ldx #0014
 C101 1C 00 01        ...   bset 00,x, #01
 C104 F6 00 14        ...   ldab 0014
@@ -8450,7 +8454,7 @@ C10A F6 00 15        ...   ldab 0015
 C10D C4 1F           ..    andb #1f
 C10F 26 03           &.    bne 03
 C111 7E C3 1B        ~..   jmp c31b            ;goto34
-C114 C6 14           ..    ldab #14
+C114 C6 14           ..    ldab #14     ; 20
 C116 F7 00 31        ..1   stab 0031
 C119 F6 00 15        ...   ldab 0015
 C11C 2D 15           -.    blt 15
@@ -8463,7 +8467,7 @@ C12B 1D 00 20        ..    bclr 00,x, #20
 C12D 5F              _     clrb
 C12F 4F              O     clra 
 C130 39              9     rts 
-
+;
 C131 20 E6            .    bra e6
 C133 FC 00 3E        ..>   ldd 003e
 C136 F3 00 40        ..@   addd 0040
@@ -8562,7 +8566,7 @@ C1F6 A3 04           ..    subd 04,x
 C1F8 38              8     pulx 
 C1F9 38              8     pulx 
 C1FA 24 11           $.    bcc 11
-C1FC CE 00 C8        ...   ldx #00c8
+C1FC CE 00 C8        ...   ldx #00c8    ; 200
 C1FF 3C              <     pshx 
 C200 CC FF 38        ..8   ldd #ff38    ; -200
 C203 37              7     pshb 
@@ -8640,7 +8644,7 @@ C28E 3C              <     pshx
 C28F FC 0C FF        ...   ldd 0cff
 C292 37              7     pshb 
 C293 36              6     psha 
-C294 CE FC 18        ...   ldx #fc18
+C294 CE FC 18        ...   ldx #fc18    ; -1000
 C297 3C              <     pshx 
 C298 CC 03 E7        ...   ldd #03e7
 C29B 30              0     tsx 
@@ -8652,9 +8656,9 @@ C2A2 A3 04           ..    subd 04,x
 C2A4 38              8     pulx 
 C2A5 38              8     pulx 
 C2A6 24 11           $.    bcc 11
-C2A8 CE 03 E8        ...   ldx #03e8
+C2A8 CE 03 E8        ...   ldx #03e8    ; 1000
 C2AB 3C              <     pshx 
-C2AC CC FC 18        ...   ldd #fc18
+C2AC CC FC 18        ...   ldd #fc18    ; -1000
 C2AF 37              7     pshb 
 C2B0 36              6     psha 
 C2B1 CC 0C FF        ...   ldd #0cff
@@ -8663,7 +8667,7 @@ C2B7 31              1     ins
 C2B8 31              1     ins 
 C2B9 20 53            S    bra 53
 C2BB FC 0C E5        ...   ldd 0ce5
-C2BE 83 C3 4F        ..O   subd #c34f
+C2BE 83 C3 4F        ..O   subd #c34f   ; 49999
 C2C1 26 05           &.    bne 05
 C2C3 5F              _     clrb 
 C2C4 4F              O     clra 
@@ -8671,12 +8675,12 @@ C2C5 FD 0C E5        ...   std 0ce5
 C2C8 FE 0C E5        ...   ldx 0ce5
 C2CB 08              .     inx 
 C2CC FF 0C E5        ...   stx 0ce5
-C2CF CE 07 D0        ...   ldx #07d0
+C2CF CE 07 D0        ...   ldx #07d0    ; 2000
 C2D2 3C              <     pshx 
 C2D3 CC 00 00        ...   ldd #0000
 C2D6 37              7     pshb 
 C2D7 36              6     psha 
-C2D8 CC 0D 03        ...   ldd #0d03
+C2D8 CC 0D 03        ...   ldd #0d03    ; 3331
 C2DB BD FB DF        ...   jsr fbdf            ;jump46
 C2DE 31              1     ins 
 C2DF 31              1     ins 
@@ -8685,9 +8689,9 @@ C2E3 3C              <     pshx
 C2E4 FC 0D 03        ...   ldd 0d03
 C2E7 37              7     pshb 
 C2E8 36              6     psha 
-C2E9 CE D9 30        ..0   ldx #d930
+C2E9 CE D9 30        ..0   ldx #d930    ; -9936
 C2EC 3C              <     pshx 
-C2ED CC 05 F5        ...   ldd #05f5
+C2ED CC 05 F5        ...   ldd #05f5    ; 1525
 C2F0 30              0     tsx 
 C2F1 A3 02           ..    subd 02,x
 C2F3 32              2     pula 
@@ -8697,12 +8701,12 @@ C2F7 A3 04           ..    subd 04,x
 C2F9 38              8     pulx 
 C2FA 38              8     pulx 
 C2FB 24 11           $.    bcc 11
-C2FD CE 26 D0        .&.   ldx #26d0
+C2FD CE 26 D0        .&.   ldx #26d0    ; 9936
 C300 3C              <     pshx 
-C301 CC FA 0A        ...   ldd #fa0a
+C301 CC FA 0A        ...   ldd #fa0a    ; -1526
 C304 37              7     pshb 
 C305 36              6     psha 
-C306 CC 0D 03        ...   ldd #0d03
+C306 CC 0D 03        ...   ldd #0d03    ; 3331
 C309 BD FB DF        ...   jsr fbdf            ;jump46
 C30C 31              1     ins 
 C30D 31              1     ins 
@@ -8711,14 +8715,11 @@ C30E F6 00 15        ...   ldab 0015
 C311 2C 02           ,.    bge 02
 C313 20 F9            .    bra f9
 C315 CE 00 15        ...   ldx #0015
-C318 1D 00           ..    bclr add,x 00,x
-C31A 1F CE 00 1D     ....  brclr ce,x 00 1d
-;goto34
-; c31b???
-C31E 1D 00           ..    bclr add,x 00,x
-C320 20 CC            .    bra cc
-C322 00              .     test 
-C323 01              .     nop 
+C318 1D 00 1F        ..    bclr 00,x, #1f
+goto34:
+C31B CE 00 1D        ...   ldx #001d
+C31E 1D 00 20        ..    bclr 00,x, #20
+C320 CC 00 01         .    ldd #0001
 C324 39              9     rts 
 
 jump64:
@@ -9063,10 +9064,10 @@ C67C 39              9     rts
 jump124:
 ; chat to changer
 C67D F6 00 30        ..0   ldab 0030
-C680 26 55           &U    bne 55
+C680 26 55           &U    bne 55       ; to c6d7
 C682 F6 0B C0        ...   ldab 0bc0
-C685 C4 04           ..    andb #04
-C687 26 4E           &N    bne 4e
+C685 C4 04           ..    andb #04     ; have a card reader
+C687 26 4E           &N    bne 4e       ; to c6d7
 C689 C6 27           .'    ldab #27
 C68B F7 10 2D        ..-   stab 102d    ; disable SCI transmission
 C68E C6 07           ..    ldab #07
@@ -9078,7 +9079,7 @@ C69C F7 30 00        .0.   stab 3000      ; keypad strobe
 C69F CC 00 14        ...   ldd #0014
 C6A2 BD E5 71        ..q   jsr e571            ;msdelay
 C6A5 F6 0B C0        ...   ldab 0bc0
-C6A8 C4 01           ..    andb #01
+C6A8 C4 01           ..    andb #01     ; have a dumb mech
 C6AA 27 06           '.    beq 06
 C6AC CE 0B C1        ...   ldx #0bc1
 C6AF 1C 00 01        ...   bset 00,x, #01 ; set changer powerup error bit
@@ -9096,6 +9097,7 @@ C6CD F7 00 30        ..0   stab 0030
 C6D0 C6 1E           ..    ldab #1e
 C6D2 F7 00 35        ..5   stab 0035
 C6D5 20 5D            ]    bra 5d
+;
 C6D7 F6 18 00        ...   ldab 1800
 C6DA 2D 2A           -*    blt 2a
 C6DC F6 00 07        ...   ldab 0007
@@ -9238,7 +9240,7 @@ C7E6 39              9     rts
 jump37:
 C7E7 37              7     pshb 
 C7E8 36              6     psha 
-C7E9 C6 32           .2    ldab #32    ; 50
+C7E9 C6 32           .2    ldab #32    ; 50 00110010
 C7EB F7 00 31        ..1   stab 0031
 C7EE 30              0     tsx 
 C7EF E6 01           ..    ldab 01,x
@@ -9270,6 +9272,7 @@ C81B 39              9     rts
 
 sciinterrupt:
 C81C 34              4     des 
+; make sure this interrupt is valid
 C81D F6 0B C0        ...   ldab 0bc0
 C820 C4 01           ..    andb #01     ; do we have a dumb mech?
 C822 26 0A           &.    bne 0a       ; if so, to c82e
@@ -9280,7 +9283,7 @@ C829 26 03           &.    bne 03       ; if so, to c82e
 C82B 7E CB FF        ~..   jmp cbff            ; else to goto44
 ;
 C82E C6 96           ..    ldab #96     ; 150
-C830 F7 00 30        ..0   stab 0030    ; changer related still
+C830 F7 00 30        ..0   stab 0030    ; changer related still?
 C833 F6 10 2E        ...   ldab 102e    ; SCI status
 C836 C4 02           ..    andb #02     ; test for Framing Error
 C838 26 0B           &.    bne 0b       ; if so, to c845
@@ -9737,22 +9740,25 @@ CBF6 F7 00 26        ..&   stab 0026
 CBF9 7F 00 3D        ..=   clr 003d
 CBFC 7E CE 46        ~.F   jmp ce46            ;goto47 (exit)
 ;
+;
+;
+;
+;
 goto44:
 CBFF F6 0B C0        ...   ldab 0bc0    ; do we have a changer?
 CC02 C4 02           ..    andb #02
 CC04 26 03           &.    bne 03       ; if so, swallow & exit
 CC06 7E CE 3B        ~.;   jmp ce3b            ; goto54  - swallow a byte & exit
-                                        ; else
 ;
 CC09 F6 10 2F        ../   ldab 102f    ; read SCI data
-CC0C C4 E0           ..    andb #e0
-CC0E C1 20           .     cmpb #20
+CC0C C4 E0           ..    andb #e0     ; 11100000
+CC0E C1 20           .     cmpb #20     ; 00100000
 CC10 27 03           '.    beq 03
 CC12 7E CE 3B        ~.;   jmp ce3b            ;goto54  - swallow a byte & exit
 ;
-CC15 C6 32           .2    ldab #32     ; 50
+CC15 C6 32           .2    ldab #32     ; 50  00110010
 CC17 F7 00 2F        ../   stab 002f
-CC1A CE 00 1B        ...   ldx #001b
+CC1A CE 00 1B        ...   ldx #001b    ; say we have a link master?
 CC1D 1C 00 02        ...   bset 00,x, #02
 CC20 F6 10 2E        ...   ldab 102e    ; SCI status
 CC23 C4 02           ..    andb #02     ; test for Framing Error
@@ -9778,9 +9784,10 @@ CC4C 7E CE 39        ~.9   jmp ce39              ;goto55 - exit
 CC4F F6 00 08        ...   ldab 0008
 CC52 26 03           &.    bne 03
 CC54 7E CD 94        ~..   jmp cd94            ;goto56
+;
 CC57 F6 10 2F        ../   ldab 102f    ; read SCI data
-CC5A C4 F0           ..    andb #f0
-CC5C C1 20           .     cmpb #20
+CC5A C4 F0           ..    andb #f0     ; 11110000
+CC5C C1 20           .     cmpb #20     ; 00100000
 CC5E 27 03           '.    beq 03
 CC60 7E CD 94        ~..   jmp cd94            ;goto56
 CC63 F6 10 2F        ../   ldab 102f    ; read SCI data
@@ -9970,7 +9977,7 @@ CDC3 F6 00 1F        ...   ldab 001f
 CDC6 C4 08           ..    andb #08
 CDC8 27 0C           '.    beq 0c
 CDCA F6 0B C0        ...   ldab 0bc0
-CDCD C4 10           ..    andb #10
+CDCD C4 10           ..    andb #10     ; have link master price holding
 CDCF 27 05           '.    beq 05
 CDD1 7C 00 75        |.u   inc 0075
 CDD4 20 03            .    bra 03
@@ -9988,7 +9995,7 @@ CDEF F6 00 1F        ...   ldab 001f
 CDF2 C4 08           ..    andb #08
 CDF4 27 0A           '.    beq 0a
 CDF6 F6 0B C0        ...   ldab 0bc0
-CDF9 C4 10           ..    andb #10
+CDF9 C4 10           ..    andb #10     ; have link master price holding
 CDFB 27 03           '.    beq 03
 CDFD 7C 00 75        |.u   inc 0075
 CE00 20 1C            .    bra 1c
@@ -10514,80 +10521,83 @@ D210 ED 00           ..    std 00,x
 D212 39              9     rts 
 
 jump45:
+; dispense an item from slot 0006
 D213 F6 00 1F        ...   ldab 001f
 D216 C4 04           ..    andb #04
-D218 26 12           &.    bne 12
+D218 26 12           &.    bne 12       ; to d22c
 D21A F6 0B C0        ...   ldab 0bc0
-D21D C4 10           ..    andb #10     ; am i link master?
-D21F 26 0B           &.    bne 0b
+D21D C4 10           ..    andb #10     ; have link master price holding
+D21F 26 0B           &.    bne 0b       ; to d22c
 D221 CE 00 00        ...   ldx #0000
 D224 3C              <     pshx 
 D225 FC 00 44        ..D   ldd 0044
 D228 BD BE 9E        ...   jsr be9e            ;jump50 - write slot & price to screen?
 D22B 38              8     pulx 
+;
 D22C BD D3 11        ...   jsr d311            ;jump30 - test position exists
 D22F 83 00 00        ...   subd #0000
-D232 27 13           '.    beq 13
+D232 27 13           '.    beq 13       ; to d247
 D234 F6 00 06        ...   ldab 0006
 D237 BD D4 68        ..h   jsr d468            ;jump51 - lookup in 0800 table & and with 8000
 D23A 83 00 00        ...   subd #0000
 D23D 27 05           '.    beq 05
-D23F 8D BC           ..    bsr bc       ;jump90
-D241 BD D6 3C        ..<   jsr d63c            ;jump33
+D23F 8D BC           ..    bsr bc       ;jump90 - or entry in 0800 table of slot with #4000
+D241 BD D6 3C        ..<   jsr d63c            ;jump33 - as above, but with #0400
 D244 5F              _     clrb 
 D245 4F              O     clra 
 D246 39              9     rts 
-
+;
 D247 BD D1 3D        ..=   jsr d13d            ;jump34 - motor on
-D24A C6 3C           .<    ldab #3c
+D24A C6 3C           .<    ldab #3c     ; 60
 D24C F7 00 2E        ...   stab 002e
-D24F C6 41           .A    ldab #41
+D24F C6 41           .A    ldab #41     ; 65
 D251 F7 00 31        ..1   stab 0031
 D254 CE 00 1B        ...   ldx #001b
 D257 1D 00 08        ...   bclr 00,x #08
 goto59:
 D25A F6 00 1B        ...   ldab 001b
 D25D C4 08           ..    andb #08
-D25F 26 22           &"    bne 22
+D25F 26 22           &"    bne 22       ; to d283
 D261 F6 00 2E        ...   ldab 002e
-D264 C1 35           .5    cmpb #35
+D264 C1 35           .5    cmpb #35     ; 53
 D266 23 10           #.    bls 10
-D268 BD D5 70        ..p   jsr d570            ;jump35
+D268 BD D5 70        ..p   jsr d570            ;jump35 - check home sensor departed
 D26B 83 00 00        ...   subd #0000
-D26E 27 06           '.    beq 06
+D26E 27 06           '.    beq 06       ; to d276
 D270 CE 00 1B        ...   ldx #001b
 D273 1C 00 08        ...   bset 00,x, #08
-D276 20 0B            .    bra 0b
+D276 20 0B            .    bra 0b       ; to d283
+; something went afoul. mark the motor as bad?
 D278 BD D1 05        ...   jsr d105            ;motors_off
-D27B 8D 80           ..    bsr 80       ;jump90
-D27D BD D6 3C        ..<   jsr d63c            ;jump33
+D27B 8D 80           ..    bsr 80       ;jump90 - mark motor as faulty?
+D27D BD D6 3C        ..<   jsr d63c            ;jump33 - mark motor as faulty?
 D280 5F              _     clrb 
 D281 4F              O     clra 
 D282 39              9     rts 
-
+;
 D283 F6 00 2E        ...   ldab 002e
-D286 C1 36           .6    cmpb #36
+D286 C1 36           .6    cmpb #36     ; 54
 D288 24 56           $V    bcc 56       ; to d2e0
-D28A BD D5 F7        ...   jsr d5f7            ;jump108
+D28A BD D5 F7        ...   jsr d5f7            ;jump108 - check motor overcurrent
 D28D 83 00 00        ...   subd #0000
 D290 27 4E           'N    beq 4e       ; to d2e0
-D292 BD D5 B0        ...   jsr d5b0            ;jump31
+D292 BD D5 B0        ...   jsr d5b0            ;jump31 - check home sensor returned
 D295 83 00 00        ...   subd #0000
 D298 27 46           'F    beq 46       ; to d2e0
 D29A BD D1 05        ...   jsr d105            ;motors_off
 D29D F6 00 2E        ...   ldab 002e
 D2A0 C1 32           .2    cmpb #32
-D2A2 22 07           ".    bhi 07
-D2A4 8D 6B           .k    bsr dest 6b
+D2A2 22 07           ".    bhi 07       ; to d2ab
+D2A4 8D 6B           .k    bsr 6b       ;jump30 - test motor overvoltage?
 D2A6 83 00 00        ...   subd #0000
-D2A9 27 0C           '.    beq 0c
+D2A9 27 0C           '.    beq 0c       ; to d2b7
 D2AB BD D1 05        ...   jsr d105            ;motors_off
-D2AE BD D1 FD        ...   jsr d1fd            ;jump90
-D2B1 BD D6 3C        ..<   jsr d63c            ;jump33
+D2AE BD D1 FD        ...   jsr d1fd            ;jump90 - mark motor as faulty?
+D2B1 BD D6 3C        ..<   jsr d63c            ;jump33 - mark motor as faulty?
 D2B4 5F              _     clrb 
 D2B5 4F              O     clra 
 D2B6 39              9     rts 
-
+;
 D2B7 F6 00 06        ...   ldab 0006
 D2BA 4F              O     clra 
 D2BB C3 0E 06        ...   addd #0e06
@@ -10610,10 +10620,10 @@ D2D9 33              3     pulb
 D2DA E7 00           ..    stab 00,x
 D2DC CC 00 01        ...   ldd #0001
 D2DF 39              9     rts 
-
+;
 D2E0 F6 00 2E        ...   ldab 002e
 D2E3 26 14           &.    bne 14
-D2E5 BD D5 F7        ...   jsr d5f7            ;jump108
+D2E5 BD D5 F7        ...   jsr d5f7            ;jump108 - check motor overcurrent status
 D2E8 83 00 00        ...   subd #0000
 D2EB 26 0C           &.    bne 0c
 D2ED BD D1 05        ...   jsr d105            ;motors_off
@@ -10622,7 +10632,7 @@ D2F3 BD D6 26        ..&   jsr d626             ;jump91
 D2F6 5F              _     clrb 
 D2F7 4F              O     clra 
 D2F8 39              9     rts 
-
+;
 D2F9 F6 00 2E        ...   ldab 002e
 D2FC 26 0C           &.    bne 0c
 D2FE BD D1 05        ...   jsr d105            ;motors_off
@@ -10631,8 +10641,8 @@ D304 BD D6 3C        ..<   jsr d63c             ;jump33
 D307 5F              _     clrb 
 D308 4F              O     clra 
 D309 39              9     rts 
-
-D30A 7E D2 5A        ~.Z   jmp d25a            ;goto59
+;
+D30A 7E D2 5A        ~.Z   jmp d25a            ;goto59 - try again?
 D30D BD E6 1B        ...   jsr e61b            ;jump4
 D310 39              9     rts 
 
@@ -11040,15 +11050,16 @@ D5F5 4F              O     clra
 D5F6 39              9     rts 
 
 jump108:
+; check motor overcurrent status
 D5F7 C6 07           ..    ldab #07
 D5F9 F7 00 1C        ...   stab 001c
 D5FC 7F 00 18        ...   clr 0018
 ;
 D5FF F6 00 1C        ...   ldab 001c
-D602 27 1E           '.    beq 1e        ; to d620
+D602 27 1E           '.    beq 1e        ; to d622
 D604 7A 00 1C        z..   dec 001c
 D607 F6 10 0A        ...   ldab 100a
-D60A C4 01           ..    andb #01
+D60A C4 01           ..    andb #01      ; motor overcurrent sense!
 D60C 26 12           &.    bne 12        ; to d620
 D60E C6 07           ..    ldab #07
 D610 F7 00 1C        ...   stab 001c
@@ -12083,11 +12094,11 @@ DE0F C6 14           ..    ldab #14
 DE11 F7 00 2C        ..,   stab 002c
 DE14 39              9     rts 
 
-dump118:
+jump118:
 DE15 F6 00 1B        ...   ldab 001b
 DE18 C4 01           ..    andb #01
 DE1A 26 03           &.    bne 03
-DE1C 7E DE A4        ~..   jmp dea4            ;goto70
+DE1C 7E DE A4        ~..   jmp dea4            ;goto70 - return
 DE1F F6 00 06        ...   ldab 0006
 DE22 4F              O     clra 
 DE23 05              .     asld 
@@ -12098,29 +12109,31 @@ DE2A 84 08           ..    anda #08
 DE2C 27 76           'v    beq 76
 DE2E F6 00 11        ...   ldab 0011
 DE31 C4 08           ..    andb #08
-DE33 26 33           &3    bne 33
+DE33 26 33           &3    bne 33          ; to de68
 DE35 F6 00 06        ...   ldab 0006
 DE38 F1 0B AF        ...   cmpb 0baf
-DE3B 27 20           '     beq 20
+DE3B 27 20           '     beq 20          ; to de5d
 DE3D F6 00 06        ...   ldab 0006
 DE40 F1 0B AE        ...   cmpb 0bae
-DE43 27 18           '.    beq 18
+DE43 27 18           '.    beq 18          ; to de5d
 DE45 F6 00 06        ...   ldab 0006
 DE48 F1 0B AD        ...   cmpb 0bad
-DE4B 27 10           '.    beq 10
+DE4B 27 10           '.    beq 10          ; to de5d
 DE4D F6 00 06        ...   ldab 0006
 DE50 F1 0B AC        ...   cmpb 0bac
-DE53 27 08           '.    beq 08
+DE53 27 08           '.    beq 08          ; to de5d
 DE55 F6 00 06        ...   ldab 0006
 DE58 F1 0B AB        ...   cmpb 0bab
-DE5B 26 0B           &.    bne 0b
+DE5B 26 0B           &.    bne 0b          ; to de68
+;
 DE5D CE 00 1B        ...   ldx #001b
 DE60 1D 00 01        ...   bclr 00,x, #01
 DE63 7F 00 4F        ..O   clr 004f
-DE66 20 3C            <    bra 3c
+DE66 20 3C            <    bra 3c          ; return
+;
 DE68 FC 00 44        ..D   ldd 0044
 DE6B B3 0B B7        ...   subd 0bb7
-DE6E 23 2B           #+    bls 2b
+DE6E 23 2B           #+    bls 2b          ; to de99 - return
 DE70 FC 00 40        ..@   ldd 0040
 DE73 F3 00 3E        ..>   addd 003e
 DE76 37              7     pshb 
@@ -12132,14 +12145,15 @@ DE81 30              0     tsx
 DE82 A3 00           ..    subd 00,x
 DE84 31              1     ins 
 DE85 31              1     ins 
-DE86 22 13           ".    bhi 13
+DE86 22 13           ".    bhi 13        ; to de9b
 DE88 FC 0B B7        ...   ldd 0bb7
-DE8B 27 0E           '.    beq 0e
+DE8B 27 0E           '.    beq 0e        ; to de9b
 DE8D FC 00 44        ..D   ldd 0044
 DE90 B3 0B B7        ...   subd 0bb7
 DE93 F3 00 44        ..D   addd 0044
 DE96 FD 00 44        ..D   std 0044
-DE99 20 09            .    bra 09
+DE99 20 09            .    bra 09        ; return
+;
 DE9B CE 00 1B        ...   ldx #001b
 DE9E 1D 00 01        ...   bclr 00,x, #01
 DEA1 7F 00 4F        ..O   clr 004f
@@ -12183,33 +12197,36 @@ DEE6 39              9     rts
 jump116:
 ; revolves around coinage
 DEE7 F6 0B C0        ...   ldab 0bc0
-DEEA C4 01           ..    andb #01
-DEEC 26 07           &.    bne 07
+DEEA C4 01           ..    andb #01    ; have a dumb mech
+DEEC 26 07           &.    bne 07      ; to def5
 DEEE F6 0B C0        ...   ldab 0bc0
-DEF1 C4 04           ..    andb #04
-DEF3 27 15           '.    beq 15
+DEF1 C4 04           ..    andb #04    ; have a card reader
+DEF3 27 15           '.    beq 15      ; if not to df0a
+; have dumb mech:
 DEF5 C6 FF           ..    ldab #ff
 DEF7 F7 0B BC        ...   stab 0bbc
 DEFA F6 00 15        ...   ldab 0015
-DEFD 2D 03           -.    blt 03
+DEFD 2D 03           -.    blt 03       ; to df02
 DEFF BD C6 7D        ..}   jsr c67d            ;jump124 - chat to changer
 DF02 BD D6 6B        ..k   jsr d66b            ;jump107 - chat to bill acceptor
 DF05 BD DC A3        ...   jsr dca3            ;jump29
-DF08 20 25            %    bra 25
+DF08 20 25            %    bra 25       ; to df2f
+; test the link master?
 DF0A F6 0B C0        ...   ldab 0bc0
-DF0D C4 02           ..    andb #02
-DF0F 27 1E           '.    beq 1e
+DF0D C4 02           ..    andb #02     ;have link master
+DF0F 27 1E           '.    beq 1e       ; to df2f
 DF11 F6 00 2F        ../   ldab 002f
-DF14 26 19           &.    bne 19
+DF14 26 19           &.    bne 19       ; to df2f
 DF16 F6 00 1B        ...   ldab 001b
 DF19 C4 02           ..    andb #02
-DF1B 26 12           &.    bne 12
+DF1B 26 12           &.    bne 12       ; to df2f
 DF1D CC 00 FF        ...   ldd #00ff
 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
 DF2C 1C 00 04        ..    bset 00,x, #04 ; set link powerup error bit
+;
 DF2F F6 00 21        ..!   ldab 0021
 DF32 C4 20           .     andb #20
 DF34 27 07           '.    beq 07
@@ -12262,7 +12279,7 @@ DFA5 F6 0C D9        ...   ldab 0cd9
 DFA8 C1 04           ..    cmpb #04
 DFAA 24 07           $.    bcc 07
 DFAC F6 0B C0        ...   ldab 0bc0
-DFAF C4 01           ..    andb #01
+DFAF C4 01           ..    andb #01    ; have a dumb mech
 DFB1 26 07           &.    bne 07
 DFB3 F6 00 21        ..!   ldab 0021
 DFB6 C4 40           .@    andb #40
@@ -12299,7 +12316,7 @@ DFF7 BD C0 2E        ...   jsr c02e             ;jump71 - display
 DFFA 38              8     pulx 
 DFFB 20 66            f    bra 66
 DFFD F6 0B C0        ...   ldab 0bc0
-E000 C4 08           ..    andb #08
+E000 C4 08           ..    andb #08     ; have link master price holding
 E002 27 52           'R    beq 52
 E004 F6 0B C1        ...   ldab 0bc1
 E007 C4 08           ..    andb #08    ; test bill error bit
@@ -12394,33 +12411,33 @@ E0CD C4 7F           ..    andb #7f
 E0CF 4F              O     clra 
 E0D0 FD 00 4D        ..M   std 004d
 E0D3 F6 0B C0        ...   ldab 0bc0
-E0D6 2C 05           ,.    bge 05
+E0D6 2C 05           ,.    bge 05      ; free vend
 E0D8 5F              _     clrb 
 E0D9 4F              O     clra 
 E0DA FD 00 44        ..D   std 0044
 E0DD F6 0B C0        ...   ldab 0bc0
-E0E0 C4 02           ..    andb #02
+E0E0 C4 02           ..    andb #02    ; have a changer
 E0E2 26 03           &.    bne 03
-E0E4 BD DE 15        ...   jsr de15            ;dump118
+E0E4 BD DE 15        ...   jsr de15            ;jump118
 E0E7 F6 00 11        ...   ldab 0011
 E0EA C4 20           .     andb #20
 E0EC 26 1A           &.    bne 1a
 E0EE F6 0B C0        ...   ldab 0bc0
-E0F1 C4 02           ..    andb #02
+E0F1 C4 02           ..    andb #02    ; have a changer
 E0F3 26 13           &.    bne 13
 E0F5 FC 00 40        ..@   ldd 0040
 E0F8 F3 00 3E        ..>   addd 003e
 E0FB B3 00 44        ..D   subd 0044
 E0FE 25 08           %.    bcs 08
 E100 F6 0B C0        ...   ldab 0bc0
-E103 2D 03           -.    blt 03
+E103 2D 03           -.    blt 03      ; no free vend
 E105 BD DA 64        ..d   jsr da64            ;jump122
 E108 FC 00 40        ..@   ldd 0040
 E10B F3 00 3E        ..>   addd 003e
 E10E B3 00 44        ..D   subd 0044
 E111 24 50           $P    bcc 50
 E113 F6 0B C0        ...   ldab 0bc0
-E116 C4 10           ..    andb #10
+E116 C4 10           ..    andb #10     ; have link master price holding
 E118 26 49           &I    bne 49
 E11A F6 00 2B        ..+   ldab 002b
 E11D C1 00           ..    cmpb #00
@@ -12452,13 +12469,13 @@ E15B C6 0C           ..    ldab #0c
 E15D F7 00 2C        ..,   stab 002c
 E160 7E E5 5E        ~.^   jmp e55e            ;goto74
 E163 F6 0B C0        ...   ldab 0bc0
-E166 C4 01           ..    andb #01
+E166 C4 01           ..    andb #01     ; have a dumb mech
 E168 26 11           &.    bne 11
 E16A F6 0B C0        ...   ldab 0bc0
-E16D C4 04           ..    andb #04
+E16D C4 04           ..    andb #04     ; have a card reader
 E16F 26 0A           &.    bne 0a
 E171 F6 0B C0        ...   ldab 0bc0
-E174 C4 0F           ..    andb #0f
+E174 C4 0F           ..    andb #0f     ; have any coin input mechanism
 E176 27 03           '.    beq 03
 E178 7E E3 35        ~.5   jmp e335            ;goto75
 E17B FC 00 40        ..@   ldd 0040
@@ -12469,31 +12486,31 @@ E187 F6 00 15        ...   ldab 0015
 E18A C4 01           ..    andb #01
 E18C 27 08           '.    beq 08
 E18E FC 10 16        ...   ldd 1016
-E191 83 00 64        ..d   subd #0064
+E191 83 00 64        ..d   subd #0064  ; 100
 E194 25 3C           %<    bcs 3c
 E196 F6 00 15        ...   ldab 0015
 E199 C4 02           ..    andb #02
 E19B 27 08           '.    beq 08
 E19D FC 10 16        ...   ldd 1016
-E1A0 83 00 C8        ...   subd #00c8
+E1A0 83 00 C8        ...   subd #00c8  ; 200
 E1A3 25 2D           %-    bcs 2d
 E1A5 F6 00 15        ...   ldab 0015
 E1A8 C4 04           ..    andb #04
 E1AA 27 08           '.    beq 08
 E1AC FC 10 16        ...   ldd 1016
-E1AF 83 01 F4        ...   subd #01f4
+E1AF 83 01 F4        ...   subd #01f4  ; 500
 E1B2 25 1E           %.    bcs 1e
 E1B4 F6 00 15        ...   ldab 0015
 E1B7 C4 08           ..    andb #08
 E1B9 27 08           '.    beq 08
 E1BB FC 10 16        ...   ldd 1016
-E1BE 83 03 E8        ...   subd #03e8
+E1BE 83 03 E8        ...   subd #03e8  ; 1000
 E1C1 25 0F           %.    bcs 0f
 E1C3 F6 00 15        ...   ldab 0015
 E1C6 C4 10           ..    andb #10
 E1C8 27 13           '.    beq 13
 E1CA FC 10 16        ...   ldd 1016
-E1CD 83 07 D0        ...   subd #07d0
+E1CD 83 07 D0        ...   subd #07d0  ; 2000
 E1D0 24 0B           $.    bcc 0b
 E1D2 BD C0 E0        ...   jsr c0e0            ;jump94
 E1D5 83 00 00        ...   subd #0000
@@ -12568,7 +12585,7 @@ E25E BD FB DF        ...   jsr fbdf             ;jump46
 E261 31              1     ins 
 E262 31              1     ins 
 E263 F6 0B C0        ...   ldab 0bc0
-E266 2C 78           ,x    bge 78
+E266 2C 78           ,x    bge 78       ; free vend
 E268 F6 00 06        ...   ldab 0006
 E26B 4F              O     clra 
 E26C 05              .     asld 
@@ -12670,7 +12687,7 @@ E32F 1D 00 08        ...   bclr 00,x, #08  ; clear bill error bit
 E332 7E E5 5E        ~.^   jmp e55e            ;goto74
 goto75:
 E335 F6 0B C0        ...   ldab 0bc0
-E338 C4 02           ..    andb #02
+E338 C4 02           ..    andb #02     ; have a changer
 E33A 26 03           &.    bne 03
 E33C 7E E5 5E        ~.^   jmp e55e            ;goto74
 E33F 5F              _     clrb 
@@ -12683,7 +12700,7 @@ E34D 1D 00 02        ...   bclr 00,x, #02
 E350 FC 00 44        ..D   ldd 0044
 E353 26 1C           &.    bne 1c
 E355 F6 0B C0        ...   ldab 0bc0
-E358 C4 10           ..    andb #10
+E358 C4 10           ..    andb #10      ; have link master price holding
 E35A 26 08           &.    bne 08
 E35C CE 00 21        ..!   ldx #0021
 E35F 1C 00           ..    bset add,x 00,x
@@ -12696,12 +12713,12 @@ E36B 05              .     asld
 E36C F7 00 75        ..u   stab 0075
 E36F 20 57            W    bra 57
 E371 F6 0B C0        ...   ldab 0bc0
-E374 C4 10           ..    andb #10
+E374 C4 10           ..    andb #10      ; have link master price holding
 E376 27 50           'P    beq 50
 E378 FC 00 40        ..@   ldd 0040
 E37B 26 4B           &K    bne 4b
 E37D F6 0B C0        ...   ldab 0bc0
-E380 C4 20           .     andb #20
+E380 C4 20           .     andb #20      ; have link master price holding - price display
 E382 27 3E           '>    beq 3e
 E384 CE 00 17        ...   ldx #0017
 E387 1C 00 01        ...   bset 00,x, #01
@@ -12772,7 +12789,7 @@ E429 CE 00 21        ..!   ldx #0021
 E42C 1D 00           ..    bclr add,x 00,x
 E42E 80 39           .9    suba #39
 E430 F6 0B C0        ...   ldab 0bc0
-E433 C4 20           .     andb #20
+E433 C4 20           .     andb #20     ; link master - price display
 E435 27 34           '4    beq 34
 E437 F6 00 17        ...   ldab 0017
 E43A C4 01           ..    andb #01
@@ -12838,10 +12855,10 @@ E4CC 5F              _     clrb
 E4CD 4F              O     clra 
 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
+E4D4 2D 03           -.    blt 03       ; free vend
+E4D6 7E E5 58        ~.X   jmp e558            ;goto78 if not
 E4D9 F6 0B C0        ...   ldab 0bc0
-E4DC C4 10           ..    andb #10
+E4DC C4 10           ..    andb #10     ; link master - price holding
 E4DE 26 78           &x    bne 78
 E4E0 F6 00 06        ...   ldab 0006
 E4E3 4F              O     clra 
@@ -13425,19 +13442,23 @@ E89C FD 00 0F        ...   std 000f
 E89F CC 3F FF        .?.   ldd #3fff
 E8A2 FD 00 50        ..P   std 0050
 E8A5 7F 00 06        ...   clr 0006
+;
 E8A8 F6 00 06        ...   ldab 0006
-E8AB C1 64           .d    cmpb #64
-E8AD 24 64           $d    bcc 64
+E8AB C1 64           .d    cmpb #64    ; 100
+E8AD 24 64           $d    bcc 64      ; to e913 - break
+;
 E8AF F6 00 06        ...   ldab 0006
 E8B2 4F              O     clra 
 E8B3 CE 00 05        ...   ldx #0005
 E8B6 02              .     idiv 
 E8B7 5D              ]     tstb 
-E8B8 27 54           'T    beq 54
+E8B8 27 54           'T    beq 54       ; to e90e - continue
+;
 E8BA F6 00 06        ...   ldab 0006
 E8BD BD D7 A0        ...   jsr d7a0            ;is_invalid_slot
 E8C0 83 00 00        ...   subd #0000
-E8C3 26 49           &I    bne 49
+E8C3 26 49           &I    bne 49       ; continue
+;
 E8C5 F6 00 06        ...   ldab 0006
 E8C8 4F              O     clra 
 E8C9 05              .     asld 
@@ -13449,14 +13470,14 @@ E8D2 84 3F           .?    anda #3f
 E8D4 FD 10 16        ...   std 1016
 E8D7 FC 10 16        ...   ldd 1016
 E8DA 83 27 10        .'.   subd #2710   ; 10000
-E8DD 24 2F           $/    bcc 2f
+E8DD 24 2F           $/    bcc 2f       ; to e90e - continue
 E8DF F6 00 06        ...   ldab 0006
-E8E2 BD D4 68        ..h   jsr d468            ;jump51
+E8E2 BD D4 68        ..h   jsr d468            ;jump51 - test bit 6 of array[0006] at 0800
 E8E5 83 00 00        ...   subd #0000
-E8E8 27 24           '$    beq 24
-E8EA BD D5 61        ..a   jsr d561            ;jump42
+E8E8 27 24           '$    beq 24       ; to e90e - continue
+E8EA BD D5 61        ..a   jsr d561            ;jump42 - test bit 7 of array[0006] at 0800
 E8ED 83 00 00        ...   subd #0000
-E8F0 26 1C           &.    bne 1c
+E8F0 26 1C           &.    bne 1c       ; to e90e - continue
 E8F2 FC 10 16        ...   ldd 1016
 E8F5 B3 00 0F        ...   subd 000f
 E8F8 23 06           #.    bls 06
@@ -13467,8 +13488,10 @@ E903 B3 00 50        ..P   subd 0050
 E906 24 06           $.    bcc 06
 E908 FC 10 16        ...   ldd 1016
 E90B FD 00 50        ..P   std 0050
+;
 E90E 7C 00 06        |..   inc 0006
-E911 20 95            .    bra 95
+E911 20 95            .    bra 95      ; to e8a8
+;
 E913 FC 0B B7        ...   ldd 0bb7
 E916 27 12           '.    beq 12
 E918 FC 00 0F        ...   ldd 000f
@@ -13966,7 +13989,7 @@ ECC5 FD 0B B7        ...   std 0bb7
 ECC8 7F 00 06        ...   clr 0006
 ECCB BD A6 4E        ..N   jsr a64e            ;jump135
 ECCE C6 09           ..    ldab #09
-ECD0 F7 0B C0        ...   stab 0bc0
+ECD0 F7 0B C0        ...   stab 0bc0    ; defaults to having a bill validator & dumb mech
 ECD3 7F 0E 6D        ..m   clr 0e6d
 ECD6 C6 01           ..    ldab #01
 ECD8 F7 0E 6E        ..n   stab 0e6e
@@ -15306,7 +15329,7 @@ F89F C6 2E           ..    ldab #2e
 F8A1 F7 10 2D        ..-   stab 102d    ; enable SCI transmission
 F8A4 C6 03           ..    ldab #03
 F8A6 F7 10 2B        ..+   stab 102b    ; set 9600 baud
-F8A9 C6 46           .F    ldab #46     ; 70
+F8A9 C6 46           .F    ldab #46     ; 70 01000110
 F8AB F7 00 2F        ../   stab 002f
 F8AE CC 07 D0        ...   ldd #07d0
 F8B1 BD E5 71        ..q   jsr e571            ;msdelay
@@ -15429,7 +15452,7 @@ F9B9 1C 00 10        ...   bset 00,x, #10
 F9BC F6 00 1F        ...   ldab 001f
 F9BF C4 20           .     andb #20
 F9C1 26 03           &.    bne 03
-F9C3 7E FA 74        ~.t   jmp fa74            ;goto84
+F9C3 7E FA 74        ~.t   jmp fa74            ;goto84 if 001f&#20 is clear
 F9C6 F6 0B C0        ...   ldab 0bc0
 F9C9 C4 01           ..    andb #01
 F9CB 27 08           '.    beq 08
@@ -15452,8 +15475,9 @@ F9F6 CE 00 1B        ...   ldx #001b
 F9F9 1D 00 02        ...   bclr 00,x, #02
 F9FC F6 0B C0        ...   ldab 0bc0
 F9FF C4 02           ..    andb #02
-FA01 27 27           ''    beq 27
-FA03 C6 3C           .<    ldab #3c
+FA01 27 27           ''    beq 27      ; to fa2a
+;
+FA03 C6 3C           .<    ldab #3c    ; 62 00111100
 FA05 F7 00 31        ..1   stab 0031
 FA08 0E              .     cli 
 FA09 CC 00 FF        ...   ldd #00ff
@@ -15467,9 +15491,10 @@ FA19 C6 2E           ..    ldab #2e
 FA1B F7 10 2D        ..-   stab 102d    ; enable SCI transmission
 FA1E C6 03           ..    ldab #03
 FA20 F7 10 2B        ..+   stab 102b    ; 9600 baud
-FA23 C6 46           .F    ldab #46     ; 70
+FA23 C6 46           .F    ldab #46     ; 70  01000110
 FA25 F7 00 2F        ../   stab 002f
-FA28 20 31            1    bra 31
+FA28 20 31            1    bra 31       ; to  fa5b
+;
 FA2A CE 00 21        ..!   ldx #0021
 FA2D 1D 00 40        ...   bclr 00,x, #40
 FA30 BD D0 94        ...   jsr d094            ;jump66 - init variables
@@ -15487,7 +15512,8 @@ FA4F CE 00 1A        ...   ldx #001a
 FA52 1D 00 04        ...   bclr 00,x, #04
 FA55 F6 00 1A        ...   ldab 001a
 FA58 F7 30 00        .0.   stab 3000    ; changer reset line low
-FA5B BD D4 79        ..y   jsr d479            ;jump67
+;
+FA5B BD D4 79        ..y   jsr d479            ;jump67 - query all motors?
 FA5E BD E8 9A        ...   jsr e89a            ;jump68
 FA61 BD BE 69        ..i   jsr be69            ;displayreset
 FA64 7F 00 06        ...   clr 0006
@@ -15511,13 +15537,13 @@ FA8A CE 00 1F        ...   ldx #001f
 FA8D 1C 00           ..    bset 00,x, #20
 FA8F F6 00 12        ...   ldab 0012
 FA93 C4 01           ..    andb #01
-FA95 26 33           &3    bne 33
+FA95 26 33           &3    bne 33        ; to faca
 FA97 F6 00 1D        ...   ldab 001d
 FA9A C4 08           ..    andb #08
 FA9C 27 2A           '*    beq 2a        ; to fac8, to fad0
 FA9E F6 00 1F        ...   ldab 001f
 FAA1 C4 04           ..    andb #04
-FAA3 26 14           &.    bne 14
+FAA3 26 14           &.    bne 14        ; to fab9
 FAA5 CE 00 1F        ...   ldx #001f
 FAA8 1C 00 04        ...   bset 00,x, #04
 FAAB CE 00 1F        ...   ldx #001f
@@ -15532,6 +15558,7 @@ FABF 1D 00 04        ...   bclr 00,x, #04
 FAC2 CE 00 1D        ...   ldx #001d
 FAC5 1D 00 08        ...   bclr 00,x, #08
 FAC8 20 06            .    bra 06       ; to fad0
+;
 FACA CE 00 1D        ...   ldx #001d
 FACD 1C 00 08        ...   bset 00,x, #08
 FAD0 F6 00 1F        ...   ldab 001f

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