;0014 buffer for 3800 register
;0015
;0016 new key state (cf 0029)
;0017 bits 5-7 used mostly
;0018
;0014 buffer for 3800 register
;0015
;0016 new key state (cf 0029)
;0017 bits 5-7 used mostly
;0018
;001a buffer for 3000 register - initialised to 7F
;001b bit 3 - denote motor fault?
;001c used for loop variables
;001a buffer for 3000 register - initialised to 7F
;001b bit 3 - denote motor fault?
;001c used for loop variables
;0029 previous key state (cf 0016)
;002c inhibits display writes?
;0032 to do with the beeper (see jump52)
;0029 previous key state (cf 0016)
;002c inhibits display writes?
;0032 to do with the beeper (see jump52)
8CAB 20 06 . bra 06
8CAD CE 00 19 ... ldx #0019
8CB0 1D 00 10 ... bclr 00,x, #10
8CAB 20 06 . bra 06
8CAD CE 00 19 ... ldx #0019
8CB0 1D 00 10 ... bclr 00,x, #10
91E2 7F 00 54 ..T clr 0054
91E5 7F 00 60 ..` clr 0060
91E8 CE 00 19 ... ldx #0019
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
9551 CC B0 B8 ... ldd #b0b8 ; "SELECTION?"
9554 BD C0 BA ... jsr c0ba ;display:
9557 CE 00 19 ... ldx #0019
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
-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
95ED BD BE 01 ... jsr be01 ;jump70
95F0 7C 00 54 |.T inc 0054
95F3 F6 00 54 ..T ldab 0054
-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
9638 CE 00 1F ... ldx #001f
963B 1D 00 40 ... bclr 00,x, #40
963E 7F 00 2C .., clr 002c
-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
-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
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
9675 BD E5 71 ..q jsr e571 ;msdelay
9678 7F 00 2E ... clr 002e
967B CE 00 1D ... ldx #001d
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
9A69 FC 00 27 ..' ldd 0027
9A6C BD E7 45 ..E jsr e745 ;jump55 - number to string
9A6F F6 00 5A ..Z ldab 005a
9A69 FC 00 27 ..' ldd 0027
9A6C BD E7 45 ..E jsr e745 ;jump55 - number to string
9A6F F6 00 5A ..Z ldab 005a
9AA3 F7 0B 91 ... stab 0b91
9AA6 F6 00 5F .._ ldab 005f
9AA9 F7 0B 90 ... stab 0b90
9AA3 F7 0B 91 ... stab 0b91
9AA6 F6 00 5F .._ ldab 005f
9AA9 F7 0B 90 ... stab 0b90
9AD3 F6 0B 91 ... ldab 0b91
9AD6 F7 0B 90 ... stab 0b90
9AD9 F6 0B 92 ... ldab 0b92
9AD3 F6 0B 91 ... ldab 0b91
9AD6 F7 0B 90 ... stab 0b90
9AD9 F6 0B 92 ... ldab 0b92
9B1F F6 00 2C .., ldab 002c
9B22 26 3E &> bne 3e
9B24 BD BE 69 ..i jsr be69 ;displayreset
9B1F F6 00 2C .., ldab 002c
9B22 26 3E &> bne 3e
9B24 BD BE 69 ..i jsr be69 ;displayreset
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
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
AA16 F7 0C BB ... stab 0cbb
AA19 7F 00 54 ..T clr 0054
AA1C F6 00 54 ..T ldab 0054
AA16 F7 0C BB ... stab 0cbb
AA19 7F 00 54 ..T clr 0054
AA1C F6 00 54 ..T ldab 0054
; 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.
; 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.
BE69 CE 10 00 ... ldx #1000
BE6C 1D 00 80 .. bclr x,#80
BE6F BD E5 96 ... jsr e596 ;jump115 - 100ms delay
BE69 CE 10 00 ... ldx #1000
BE6C 1D 00 80 .. bclr x,#80
BE6F BD E5 96 ... jsr e596 ;jump115 - 100ms delay
BE72 CE 10 00 ... ldx #1000
BE75 1C 00 80 .. bset 00,x, #80
BE72 CE 10 00 ... ldx #1000
BE75 1C 00 80 .. bset 00,x, #80
BE78 CE 10 28 ... ldx #1028
BE7B 1C 00 40 ... bset 00,x, #40
BE78 CE 10 28 ... ldx #1028
BE7B 1C 00 40 ... bset 00,x, #40
BE97 CE 10 28 ..( ldx #1028
BE9A 1D 00 40 ... bclr 00,x, #40
BE9D 39 9 rts
BE97 CE 10 28 ..( ldx #1028
BE9A 1D 00 40 ... bclr 00,x, #40
BE9D 39 9 rts
C0FE CE 00 14 ... ldx #0014
C101 1C 00 01 ... bset 00,x, #01
C104 F6 00 14 ... ldab 0014
C0FE CE 00 14 ... ldx #0014
C101 1C 00 01 ... bset 00,x, #01
C104 F6 00 14 ... ldab 0014
-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
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
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
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
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
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
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
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
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
D270 CE 00 1B ... ldx #001b
D273 1C 00 08 ... bset 00,x, #08
D270 CE 00 1B ... ldx #001b
D273 1C 00 08 ... bset 00,x, #08
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
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
D5F7 C6 07 .. ldab #07
D5F9 F7 00 1C ... stab 001c
D5FC 7F 00 18 ... clr 0018
;
D5FF F6 00 1C ... ldab 001c
D5F7 C6 07 .. ldab #07
D5F9 F7 00 1C ... stab 001c
D5FC 7F 00 18 ... clr 0018
;
D5FF F6 00 1C ... ldab 001c
DE5D CE 00 1B ... ldx #001b
DE60 1D 00 01 ... bclr 00,x, #01
DE63 7F 00 4F ..O clr 004f
DE5D CE 00 1B ... ldx #001b
DE60 1D 00 01 ... bclr 00,x, #01
DE63 7F 00 4F ..O clr 004f
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
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
DE9B CE 00 1B ... ldx #001b
DE9E 1D 00 01 ... bclr 00,x, #01
DEA1 7F 00 4F ..O clr 004f
DE9B CE 00 1B ... ldx #001b
DE9E 1D 00 01 ... bclr 00,x, #01
DEA1 7F 00 4F ..O clr 004f
; revolves around coinage
DEE7 F6 0B C0 ... ldab 0bc0
DEEA C4 01 .. andb #01 ; have a dumb mech
; revolves around coinage
DEE7 F6 0B C0 ... ldab 0bc0
DEEA C4 01 .. andb #01 ; have a dumb mech
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
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
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
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
E89F CC 3F FF .?. ldd #3fff
E8A2 FD 00 50 ..P std 0050
E8A5 7F 00 06 ... clr 0006
E89F CC 3F FF .?. ldd #3fff
E8A2 FD 00 50 ..P std 0050
E8A5 7F 00 06 ... clr 0006
E8BA F6 00 06 ... ldab 0006
E8BD BD D7 A0 ... jsr d7a0 ;is_invalid_slot
E8C0 83 00 00 ... subd #0000
E8BA F6 00 06 ... ldab 0006
E8BD BD D7 A0 ... jsr d7a0 ;is_invalid_slot
E8C0 83 00 00 ... subd #0000
E8D4 FD 10 16 ... std 1016
E8D7 FC 10 16 ... ldd 1016
E8DA 83 27 10 .'. subd #2710 ; 10000
E8D4 FD 10 16 ... std 1016
E8D7 FC 10 16 ... ldd 1016
E8DA 83 27 10 .'. subd #2710 ; 10000
F8AB F7 00 2F ../ stab 002f
F8AE CC 07 D0 ... ldd #07d0
F8B1 BD E5 71 ..q jsr e571 ;msdelay
F8AB F7 00 2F ../ stab 002f
F8AE CC 07 D0 ... ldd #07d0
F8B1 BD E5 71 ..q jsr e571 ;msdelay
F9F9 1D 00 02 ... bclr 00,x, #02
F9FC F6 0B C0 ... ldab 0bc0
F9FF C4 02 .. andb #02
F9F9 1D 00 02 ... bclr 00,x, #02
F9FC F6 0B C0 ... ldab 0bc0
F9FF C4 02 .. andb #02
FA2A CE 00 21 ..! ldx #0021
FA2D 1D 00 40 ... bclr 00,x, #40
FA30 BD D0 94 ... jsr d094 ;jump66 - init variables
FA2A CE 00 21 ..! ldx #0021
FA2D 1D 00 40 ... bclr 00,x, #40
FA30 BD D0 94 ... jsr d094 ;jump66 - init variables
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
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
FA5E BD E8 9A ... jsr e89a ;jump68
FA61 BD BE 69 ..i jsr be69 ;displayreset
FA64 7F 00 06 ... clr 0006
FA5E BD E8 9A ... jsr e89a ;jump68
FA61 BD BE 69 ..i jsr be69 ;displayreset
FA64 7F 00 06 ... clr 0006
FA8D 1C 00 .. bset 00,x, #20
FA8F F6 00 12 ... ldab 0012
FA93 C4 01 .. andb #01
FA8D 1C 00 .. bset 00,x, #20
FA8F F6 00 12 ... ldab 0012
FA93 C4 01 .. andb #01
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
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
FAA5 CE 00 1F ... ldx #001f
FAA8 1C 00 04 ... bset 00,x, #04
FAAB CE 00 1F ... ldx #001f
FAA5 CE 00 1F ... ldx #001f
FAA8 1C 00 04 ... bset 00,x, #04
FAAB CE 00 1F ... ldx #001f
FAC2 CE 00 1D ... ldx #001d
FAC5 1D 00 08 ... bclr 00,x, #08
FAC8 20 06 . bra 06 ; to fad0
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
FACA CE 00 1D ... ldx #001d
FACD 1C 00 08 ... bset 00,x, #08
FAD0 F6 00 1F ... ldab 001f