making sense of coin mech
[uccvend-snackrom.git] / ROM-2003 / vend.asm
index fe7d7b2..76004f2 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,7 +28,9 @@
 ;       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)
+;002b   machine language. 3 = english. 0,1,2 = german, spanish, french or something
 ;002c   inhibits display writes?
 ;0032   to do with the beeper (see jump52)
 ;0033
@@ -36,6 +41,7 @@
 ;003f
 ;0040   
 ;0042   current key press
+;0043   current byte being sent out serial port
 ;0048   error status 
 ;004a
 ;0052   win-a-snack odds (in ram)
@@ -1531,7 +1537,7 @@ goto8:
 8B18 20 2D            -    bra 2d
 8B1A FC 00 27        ..'   ldd 0027
 8B1D 26 0D           &.    bne 0d
-8B1F CC 27 10        .'.   ldd #2710
+8B1F CC 27 10        .'.   ldd #2710    ;10000
 8B22 F0 0B AA        ...   subb 0baa
 8B25 82 00           ..    sbca #00
 8B27 FD 00 27        ..'   std 0027
@@ -1669,7 +1675,7 @@ goto7:
 8C72 39              9     rts 
 
 jump75:
-;fetches a price for the given slot?
+;fetches a price & other info for the given slot?
 8C73 F6 00 06        ...   ldab 0006
 8C76 4F              O     clra 
 8C77 05              .     asld 
@@ -1697,7 +1703,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
@@ -2178,7 +2184,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
@@ -2258,10 +2264,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 
@@ -2717,11 +2721,11 @@ 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
@@ -2737,25 +2741,21 @@ jump203:
 goto93:
 965A 20 2B           .     bra 2b
 goto16:
-965C F6 00           +.    bmi f6
-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 
+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:
@@ -3183,7 +3183,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
@@ -3208,22 +3208,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
@@ -3237,7 +3239,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
@@ -3253,9 +3255,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
@@ -3503,7 +3508,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 
@@ -4808,7 +4813,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
@@ -4822,19 +4827,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
@@ -4999,11 +5004,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
@@ -8451,7 +8456,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
@@ -9210,7 +9215,7 @@ C7BE 31              1     ins
 C7BF 39              9     rts 
 
 jump49:
-; parity tester. returns 0 if good
+; parity tester. returns 1 if good
 C7C0 F6 10 2F        ../   ldab 102f           ; sci data
 C7C3 4F              O     clra 
 C7C4 8D CE           ..    bsr c794         ; parity test?
@@ -9742,9 +9747,9 @@ CBFC 7E CE 46        ~.F   jmp ce46               ;goto47 (exit)
 ;
 ;
 goto44:
-CBFF F6 0B C0        ...   ldab 0bc0    ; do we have a changer?
+CBFF F6 0B C0        ...   ldab 0bc0    ; do we have our changer (link master)?
 CC02 C4 02           ..    andb #02
-CC04 26 03           &.    bne 03       ; if so, swallow & exit
+CC04 26 03           &.    bne 03       ; if not, swallow & exit
 CC06 7E CE 3B        ~.;   jmp ce3b            ; goto54  - swallow a byte & exit
 ;
 CC09 F6 10 2F        ../   ldab 102f    ; read SCI data
@@ -9755,14 +9760,14 @@ CC12 7E CE 3B        ~.;   jmp ce3b             ;goto54  - swallow a byte & exit
 ;
 CC15 C6 32           .2    ldab #32     ; 50  00110010
 CC17 F7 00 2F        ../   stab 002f
-CC1A CE 00 1B        ...   ldx #001b    ; say we have a link master?
+CC1A CE 00 1B        ...   ldx #001b    ; say we have a link master packet?
 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
-CC25 26 08           &.    bne 08
+CC25 26 08           &.    bne 08       ; if not, perform parity test. else to cc2f
 CC27 BD C7 C0        ...   jsr c7c0            ;jump49 - parity test
 CC2A 83 00 00        ...   subd #0000
-CC2D 26 0F           &.    bne 0f       ; if failed, to cc3e
+CC2D 26 0F           &.    bne 0f       ; if good, to cc3e
 CC2F F6 10 2F        ../   ldab 102f    ; read SCI data
 CC32 30              0     tsx 
 CC33 E7 00           ..    stab 00,x
@@ -9802,7 +9807,7 @@ CC7C CC CA           ..    ; if 0017&#1 0076+=sp<<8, else 0040+=sp<<8, then same
 CC7E CC EE           ..    ; if 0017&#1 0076+=sp<<16, else 0040+=sp<16, then same as above
 CC80 CD 19           ..    ; 0baa = sp, then same as above
 CC82 CD 21           .     ; 0baa = sp<<4, then same as above
-CC83 CD 30           !.    ; 0013 = sp, then same as above
+CC83 CD 30           !.    ; 0013 = sp, then same as above - location of dec point?
 CC85 CD 38           0     ; read byte & #01, 
 ;
 CC88 F6 00 17        ...   ldab 0017
@@ -9956,17 +9961,18 @@ goto56:
 CD94 F6 10 2F        ../   ldab 102f    ; read SCI data
 CD97 4F              O     clra 
 CD98 BD FE 32        ..2   jsr fe32            ;jump25
-CD9B CD B1 00 31     ...1  ; 49 "1"
-CD9F CD DB 00 01     ....  ; 50 "2"
-CDA3 CE 20 00 01     . ..  ; 51 "3"
-CDA7 CE 28 00 05     .(..  ; 56 "8"
+CD9B CD B1 00 31     ...1  ; 49 "1" 00110001
+CD9F CD DB 00 01     ....  ; 50 "2" 00110010
+CDA3 CE 20 00 01     . ..  ; 51 "3" 00110011
+CDA7 CE 28 00 05     .(..  ; 56 "8" 00111000
 CDAB CE 34 FF C8     .4..  ; 0
 CDAF 00 00           ..    ; end of array data
+;
 CDB1 F6 00 21        ..!   ldab 0021
 CDB4 2C 08           ,.    bge 08
 CDB6 CC 00 80        ...   ldd #0080
 CDB9 BD C7 E7        ...   jsr c7e7            ;jump37 - send byte to coin mech
-CDBC 20 1B            .    bra 1b
+CDBC 20 1B            .    bra 1b       ; to cdd9
 CDBE 5F              _     clrb 
 CDBF 4F              O     clra 
 CDC0 BD C7 E7        ...   jsr c7e7            ;jump37 - send byte to coin mech
@@ -9980,6 +9986,7 @@ CDD1 7C 00 75        |.u   inc 0075
 CDD4 20 03            .    bra 03
 CDD6 7F 00 75        ..u   clr 0075
 CDD9 20 5E            ^    bra 5e
+;
 CDDB F6 00 1D        ...   ldab 001d
 CDDE C4 02           ..    andb #02
 CDE0 27 07           '.    beq 07
@@ -10518,80 +10525,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     ; have link master price holding
-D21F 26 0B           &.    bne 0b
+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
@@ -10614,10 +10624,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
@@ -10626,7 +10636,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
@@ -10635,8 +10645,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 
 
@@ -11044,15 +11054,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
@@ -11753,7 +11764,7 @@ jump104:
 DB44 F6 00 2B        ..+   ldab 002b
 DB47 C1 00           ..    cmpb #00
 DB49 26 08           &.    bne 08
-DB4B CC AC DF        ...   ldd #acdf
+DB4B CC AC DF        ...   ldd #acdf    ; "CAMBIO"
 DB4E BD C0 BA        ...   jsr c0ba            ;display:
 DB51 20 1E            .    bra 1e
 DB53 C1 01           ..    cmpb #01
@@ -11763,11 +11774,12 @@ DB5A BD C0 BA        ...   jsr c0ba           ;display:
 DB5D 20 12            .    bra 12
 DB5F C1 02           ..    cmpb #02
 DB61 26 08           &.    bne 08
-DB63 CC AC EA        ...   ldd #acea
+DB63 CC AC EA        ...   ldd #acea    ; "MONNAIE"
 DB66 BD C0 BA        ...   jsr c0ba            ;display:
 DB69 20 06            .    bra 06
-DB6B CC AC D4        ...   ldd #acd4
+DB6B CC AC D4        ...   ldd #acd4    ; "CHANGE"
 DB6E BD C0 BA        ...   jsr c0ba            ;display:
+;
 DB71 BD D8 D3        ...   jsr d8d3            ;jump84 500ms delay
 DB74 CE 00 01        ...   ldx #0001
 DB77 3C              <     pshx 
@@ -12696,13 +12708,11 @@ E355 F6 0B C0        ...   ldab 0bc0
 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
-E361 80 20           .     suba #20
-E363 0B              .     sev 
+E35F 1C 00 80        ..    bset 00,x, #80
+E362 20 0B           .     bra 0b
 E364 CE 00 21        ..!   ldx #0021
-E367 1D 00           ..    bclr add,x 00,x
-E369 80 C6           ..    suba #c6
-E36B 05              .     asld 
+E367 1D 00 80        ..    bclr 00,x, #80
+E369 C6 05           ..    ldab #05
 E36C F7 00 75        ..u   stab 0075
 E36F 20 57            W    bra 57
 E371 F6 0B C0        ...   ldab 0bc0
@@ -12769,18 +12779,17 @@ E408 1D 00 01        ...   bclr 00,x, #01
 E40B CE 00 19        ...   ldx #0019
 E40E 1D 00 08        ...   bclr 00,x, #08
 E411 CE 00 1B        ...   ldx #001b
-E414 1D 00           ..    bclr add,x 00,x
-E416 80 CE           ..    suba #ce
-E418 00              .     test 
-E419 1D 1D 00        ...   bclr 1d,x, #00
-E41C 40              @     nega 
+E414 1D 00 80        ..    bclr 00,x, #80
+E416 CE 00 1D        ..    ldx #001d
+E41A 1D 00 40        ...   bclr 00,x, #40
 E41D CE 00 1D        ...   ldx #001d
 E420 1D 00 02        ...   bclr 00,x, #02
 E423 CE 00 1F        ...   ldx #001f
 E426 1D 00 08        ...   bclr 00,x, #08
 E429 CE 00 21        ..!   ldx #0021
-E42C 1D 00           ..    bclr add,x 00,x
-E42E 80 39           .9    suba #39
+E42C 1D 00 80        ..    bclr 00,x, #80
+E42F 39              .9    rts
+;
 E430 F6 0B C0        ...   ldab 0bc0
 E433 C4 20           .     andb #20     ; link master - price display
 E435 27 34           '4    beq 34
@@ -12808,10 +12817,9 @@ E468 1D 00 02        ...   bclr 00,x, #02
 E46B 7E E3 DE        ~..   jmp e3de            ;goto77
 goto76:
 E46E CE 00 21        ..!   ldx #0021
-E471 1D 00           ..    bclr add,x 00,x
-E473 80 CE           ..    suba #ce
-E475 00              .     test 
-E476 1F 1D 00 08     ....  brclr 1d,x 00 08
+E471 1D 00 80        ..    bclr 00,x, #80
+E474 CE 00 1F        ..    ldx #001f
+E477 1D 00 08        ....  bclr 00,x, #08
 E47A BD D2 13        ...   jsr d213            ;jump45
 E47D 83 00 00        ...   subd #0000
 E480 26 0F           &.    bne 0f

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