X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=ROM-2003%2Fvend.asm;h=76004f2fc775ab31b024df31a8b8e0b0e01bf93f;hb=78e612b980f4547c9718823318a8d7087c364e9f;hp=fe7d7b2a890f9ee7bd66a7a0c818af6062fd5f23;hpb=b075a442ec22cd782dc7ff73985d7eb1321924c2;p=uccvend-snackrom.git diff --git a/ROM-2003/vend.asm b/ROM-2003/vend.asm index fe7d7b2..76004f2 100644 --- a/ROM-2003/vend.asm +++ b/ROM-2003/vend.asm @@ -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 0076+=sp<<8, else 0040+=sp<<8, then same CC7E CC EE .. ; if 0017 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