From 8c2752627e9cf1e60f46844cb8ae1d8ce7cc4ffc Mon Sep 17 00:00:00 2001 From: Bernard Blackham Date: Sun, 3 Aug 2003 06:40:40 +0000 Subject: [PATCH] more discoveries --- ROM-2003/vend.asm | 209 ++++++++++++++++++++++++---------------------- 1 file changed, 107 insertions(+), 102 deletions(-) diff --git a/ROM-2003/vend.asm b/ROM-2003/vend.asm index 21a2497..a34ad31 100644 --- a/ROM-2003/vend.asm +++ b/ROM-2003/vend.asm @@ -22,11 +22,12 @@ ;001d ;001f display related? bit 2. bit 4 denotes service mode ;0021 lower 3 bits taken from SCI data somewhere +; bit 5 denotes machine out of order ;0023 buffer for 1800 ;0026 used exclusively in SCI interrupt handler ;0029 previous key state (cf 0016) ;002c inhibits display writes? -;0032 to do with the beeper +;0032 to do with the beeper (see jump52) ;0033 ;0035 only ever contains #1e ;003b commonly contains $0233 @@ -49,6 +50,7 @@ ;08c8 array of prices of each slot?? ;0993 custom message? ;0b90 - 0b99 display buffer (backwards) +;0b9a - some sort of id? press 89 on the machine ;0baa ;0bb5 win-a-snack odds (is this in NVRAM?) ;0bbd @@ -2684,7 +2686,7 @@ jump203: 9667 26 0F &. bne 0f 9669 CC 00 64 ..d ldd #0064 966C BD E5 71 ..q jsr e571 ;msdelay -966F BD E5 D1 ... jsr e5d1 ;jump52 +966F BD E5 D1 ... jsr e5d1 ;jump52 - triple beep 9672 CC 03 84 ... ldd #0384 9675 BD E5 71 ..q jsr e571 ;msdelay 9678 7F 00 2E ... clr 002e @@ -4489,19 +4491,16 @@ A667 7E A7 1E ~.. jmp a71e ;goto20 A66A F6 00 54 ..T ldab 0054 A66D 4F O clra A66E BD FE 16 ... jsr fe16 ;jump2 -A671 00 . test -A672 01 . nop -A673 00 . test -A674 07 . tpa -A675 A6 ED .. ldaa ed,x -A677 A6 87 .. ldaa 87,x -A679 A6 95 .. ldaa 95,x -A67B A6 A1 .. ldaa a1,x -A67D A6 AF .. ldaa af,x -A67F A6 BB .. ldaa bb,x -A681 A6 C9 .. ldaa c9,x -A683 A6 D5 .. ldaa d5,x -A685 A6 E3 .. ldaa e3,x +A671 00 01 00 07 . test +A675 A6 ED .. +A677 A6 87 .. +A679 A6 95 .. +A67B A6 A1 .. +A67D A6 AF .. +A67F A6 BB .. +A681 A6 C9 .. +A683 A6 D5 .. +A685 A6 E3 .. A687 F6 00 62 ..b ldab 0062 A68A 54 T lsrb A68B 54 T lsrb @@ -11323,6 +11322,7 @@ D8E6 20 EE . bra ee D8E8 39 9 rts jump92: +; displays select other item D8E9 F6 00 2B ..+ ldab 002b D8EC C1 00 .. cmpb #00 D8EE 26 18 &. bne 18 @@ -11348,22 +11348,22 @@ D91F BD C0 BA ... jsr c0ba ;display: D922 20 32 2 bra 32 D924 C1 02 .. cmpb #02 D926 26 18 &. bne 18 -D928 CC AD 42 ..B ldd #ad42 +D928 CC AD 42 ..B ldd #ad42 ; "FAITES" D92B BD C0 BA ... jsr c0ba ;display: D92E 8D A3 .. bsr dest a3 -D930 CC AD 4D ..M ldd #ad4d +D930 CC AD 4D ..M ldd #ad4d ; "AURTE" D933 BD C0 BA ... jsr c0ba ;display: D936 8D 9B .. bsr dest 9b -D938 CC AD 58 ..X ldd #ad58 -D93B BD C0 BA ... jsr c0ba ;display: +D938 CC AD 58 ..X ldd #ad58 ; "CHOIX" +D92B BD C0 BA ... jsr c0ba ;display: D93E 20 16 . bra 16 -D940 CC AD 21 ..! ldd #ad21 +D940 CC AD 21 ..! ldd #ad21 ; "SELECT " D943 BD C0 BA ... jsr c0ba ;display: D946 8D 8B .. bsr dest 8b -D948 CC AD 2C .., ldd #ad2c +D948 CC AD 2C .., ldd #ad2c ; "OTHER" D94B BD C0 BA ... jsr c0ba ;display: D94E 8D 83 .. bsr dest 83 -D950 CC AD 37 ..7 ldd #ad37 +D950 CC AD 37 ..7 ldd #ad37 ; "ITEM" D953 BD C0 BA ... jsr c0ba ;display: D956 BD D8 D3 ... jsr d8d3 ;jump84 500ms delay D959 39 9 rts @@ -11375,8 +11375,8 @@ D960 26 0D &. bne 0d D962 BD D7 FF ... jsr d7ff ;jump80 D965 F6 0B B4 ... ldab 0bb4 D968 F7 00 06 ... stab 0006 -D96B 8D 55 .U bsr dest 55 -D96D 20 52 R bra 52 +D96B 8D 55 .U bsr 55 ;jump205 +D96D 20 52 R bra 52 D96F F6 00 06 ... ldab 0006 D972 F1 0B AE ... cmpb 0bae D975 26 0D &. bne 0d @@ -11410,6 +11410,7 @@ D9BC F7 00 06 ... stab 0006 D9BF 8D 01 .. bsr dest 01 D9C1 39 9 rts +jump205: D9C2 CC 03 E8 ... ldd #03e8 D9C5 BD E5 71 ..q jsr e571 ;msdelay D9C8 BD D7 83 ... jsr d783 ;jump44 @@ -11508,7 +11509,7 @@ DA72 8F . xgdx DA73 37 7 pshb DA74 36 6 psha DA75 CC 00 C3 ... ldd #00c3 -DA78 BD FB BA ... jsr fbba ;jump38 +DA78 BD FB BA ... jsr fbba ;jump38 - multiply? DA7B B3 0B B9 ... subd 0bb9 DA7E 24 05 $. bcc 05 DA80 5F _ clrb @@ -11518,7 +11519,7 @@ DA85 FC 0B B9 ... ldd 0bb9 DA88 37 7 pshb DA89 36 6 psha DA8A CC 00 0A ... ldd #000a -DA8D BD FB BA ... jsr fbba ;jump38 +DA8D BD FB BA ... jsr fbba ;jump38 - multiply? DA90 37 7 pshb DA91 36 6 psha DA92 FC 0B B5 ... ldd 0bb5 @@ -11532,7 +11533,7 @@ DA9D 8F . xgdx DA9E 37 7 pshb DA9F 36 6 psha DAA0 CC 00 0A ... ldd #000a -DAA3 BD FB BA ... jsr fbba ;jump38 +DAA3 BD FB BA ... jsr fbba ;jump38 - multiply? DAA6 CE 00 0A ... ldx #000a DAA9 02 . idiv DAAA 8F . xgdx @@ -11944,8 +11945,8 @@ DE03 C6 14 .. ldab #14 DE05 F7 00 2C .., stab 002c DE08 39 9 rts -dump119: -DE09 CC 0B 9A ... ldd #0b9a +jump119: +DE09 CC 0B 9A ... ldd #0b9a ; machine id? DE0C BD C0 BA ... jsr c0ba ;display: DE0F C6 14 .. ldab #14 DE11 F7 00 2C .., stab 002c @@ -12014,7 +12015,8 @@ DEA1 7F 00 4F ..O clr 004f goto70: DEA4 39 9 rts -dump117: +jump117: +; machine out of order display? DEA5 F6 00 2B ..+ ldab 002b DEA8 C1 00 .. cmpb #00 DEAA 26 0D &. bne 0d @@ -12036,13 +12038,13 @@ DECA C1 02 .. cmpb #02 DECC 26 0D &. bne 0d DECE CE 00 10 ... ldx #0010 DED1 3C < pshx -DED2 CC AE 5B ..[ ldd #ae5b +DED2 CC AE 5B ..[ ldd #ae5b ; more german DED5 BD C0 2E ... jsr c02e ;jump71 DED8 38 8 pulx DED9 20 0B . bra 0b DEDB CE 00 15 ... ldx #0015 DEDE 3C < pshx -DEDF CC AE 44 ..D ldd #ae44 +DEDF CC AE 44 ..D ldd #ae44 ; "MACHINE OUT OF ORDER" DEE2 BD C0 2E ... jsr c02e ;jump71 DEE5 38 8 pulx DEE6 39 9 rts @@ -12072,7 +12074,7 @@ DF16 F6 00 1B ... ldab 001b DF19 C4 02 .. andb #02 DF1B 26 12 &. bne 12 DF1D CC 00 FF ... ldd #00ff -DF20 BD C7 E7 ... jsr c7e7 ;jump37 +DF20 BD C7 E7 ... jsr c7e7 ;jump37 - send to serial port DF23 CE 00 1B ... ldx #001b DF26 1C 00 02 .. bset 00,x, #02 DF29 CE 0B C1 ... ldx #0bc1 @@ -12081,8 +12083,8 @@ DF2F F6 00 21 ..! ldab 0021 DF32 C4 20 . andb #20 DF34 27 07 '. beq 07 ; -DF36 BD D6 52 ..R jsr d652 ;jump5 -DF39 BD DE A5 ... jsr dea5 ;jump117 +DF36 BD D6 52 ..R jsr d652 ;jump5 - pulse bill acceptor +DF39 BD DE A5 ... jsr dea5 ;jump117 - machine out of order? DF3C 39 9 rts ; DF3D F6 00 4F ..O ldab 004f @@ -12139,7 +12141,7 @@ DFBD C1 00 .. cmpb #00 DFBF 26 0D &. bne 0d DFC1 CE 00 19 ... ldx #0019 DFC4 3C < pshx -DFC5 CC AD E7 ... ldd #ade7 +DFC5 CC AD E7 ... ldd #ade7 ; "INTRODUZCA" DFC8 BD C0 2E ... jsr c02e ;jump71 DFCB 38 8 pulx DFCC 20 2D - bra 2d @@ -12147,7 +12149,7 @@ DFCE C1 01 .. cmpb #01 DFD0 26 0D &. bne 0d DFD2 CE 00 12 ... ldx #0012 DFD5 3C < pshx -DFD6 CC AD D3 ... ldd #add3 ; more german +DFD6 CC AD D3 ... ldd #add3 ; "NICT UEBERZAHLEN" DFD9 BD C0 2E ... jsr c02e ;jump71 DFDC 38 8 pulx DFDD 20 1C . bra 1c @@ -12155,7 +12157,7 @@ DFDF C1 02 .. cmpb #02 DFE1 26 0D &. bne 0d DFE3 CE 00 19 ... ldx #0019 DFE6 3C < pshx -DFE7 CC AD B8 ... ldd #adb8 +DFE7 CC AD B8 ... ldd #adb8 ; "MONNAIE EXACT" DFEA BD C0 2E ... jsr c02e ;jump71 DFED 38 8 pulx DFEE 20 0B . bra 0b @@ -12179,7 +12181,7 @@ E016 C1 00 .. cmpb #00 E018 26 0D &. bne 0d E01A CE 00 12 ... ldx #0012 E01D 3C < pshx -E01E CC AE 30 ..0 ldd #ae30 +E01E CC AE 30 ..0 ldd #ae30 ; "MONEDA UNICAMENTE" E021 BD C0 2E ... jsr c02e ;jump71 E024 38 8 pulx E025 20 2D - bra 2d @@ -12187,7 +12189,7 @@ E027 C1 01 .. cmpb #01 E029 26 0D &. bne 0d E02B CE 00 0B ... ldx #000b E02E 3C < pshx -E02F CC AE 23 ..# ldd #ae23 +E02F CC AE 23 ..# ldd #ae23 ; "NUR MUNZEN" E032 BD C0 2E ... jsr c02e ;jump71 E035 38 8 pulx E036 20 1C . bra 1c @@ -12195,13 +12197,13 @@ E038 C1 02 .. cmpb #02 E03A 26 0D &. bne 0d E03C CE 00 12 ... ldx #0012 E03F 3C < pshx -E040 CC AE 0F ... ldd #ae0f +E040 CC AE 0F ... ldd #ae0f ; "MONNAIES SEULEMENT" E043 BD C0 2E ... jsr c02e ;jump71 E046 38 8 pulx E047 20 0B . bra 0b E049 CE 00 0B ... ldx #000b E04C 3C < pshx -E04D CC AE 02 ... ldd #ae02 +E04D CC AE 02 ... ldd #ae02 ; "COINS ONLY" E050 BD C0 2E ... jsr c02e ;jump71 E053 38 8 pulx E054 20 0D . bra 0d @@ -12209,7 +12211,7 @@ E056 F6 0B BF ... ldab 0bbf E059 4F O clra E05A 37 7 pshb E05B 36 6 psha -E05C CC 09 93 ... ldd #0993 +E05C CC 09 93 ... ldd #0993 ; some custom message? E05F BD C0 2E ... jsr c02e ;jump71 E062 38 8 pulx goto72: @@ -12222,7 +12224,7 @@ E06E CE 00 1D ... ldx #001d E071 1C 00 40 ... bset 00,x, #40 E074 BD E7 C7 ... jsr e7c7 ;jump114 E077 F6 00 06 ... ldab 0006 -E07A C1 59 .Y cmpb #59 +E07A C1 59 .Y cmpb #59 ; 89 E07C 26 06 &. bne 06 E07E BD DE 09 ... jsr de09 ;jump119 E081 7E E5 5E ~.^ jmp e55e ;goto74 @@ -12239,7 +12241,7 @@ E09D 26 08 &. bne 08 E09F BD D7 83 ... jsr d783 ;jump44 E0A2 83 00 00 ... subd #0000 E0A5 27 09 '. beq 09 -E0A7 BD E5 D1 ... jsr e5d1 ;jump52 +E0A7 BD E5 D1 ... jsr e5d1 ;jump52 - triple beep E0AA BD D8 E9 ... jsr d8e9 ;jump92 E0AD 7E E5 5E ~.^ jmp e55e ;goto74 E0B0 F6 00 06 ... ldab 0006 @@ -12292,20 +12294,20 @@ E118 26 49 &I bne 49 E11A F6 00 2B ..+ ldab 002b E11D C1 00 .. cmpb #00 E11F 26 08 &. bne 08 -E121 CC AC C9 ... ldd #acc9 +E121 CC AC C9 ... ldd #acc9 ; "PRECIO" E124 BD C0 BA ... jsr c0ba ;display: E127 20 1E . bra 1e E129 C1 01 .. cmpb #01 E12B 26 08 &. bne 08 -E12D CC AC BE ... ldd #acbe +E12D CC AC BE ... ldd #acbe ; "PREIS" E130 BD C0 BA ... jsr c0ba ;display: E133 20 12 . bra 12 E135 C1 02 .. cmpb #02 E137 26 08 &. bne 08 -E139 CC AC B3 ... ldd #acb3 +E139 CC AC B3 ... ldd #acb3 ; "PRIX" E13C BD C0 BA ... jsr c0ba ;display: E13F 20 06 . bra 06 -E141 CC AC A8 ... ldd #aca8 +E141 CC AC A8 ... ldd #aca8 ; "PRICE" E144 BD C0 BA ... jsr c0ba ;display: E147 BD D8 D3 ... jsr d8d3 ;jump84 500ms delay E14A CE 00 00 ... ldx #0000 @@ -12313,7 +12315,7 @@ E14D 3C < pshx E14E FC 00 44 ..D ldd 0044 E151 BD BE 9E ... jsr be9e ;jump50 E154 38 8 pulx -E155 BD E5 D1 ... jsr e5d1 ;jump52 +E155 BD E5 D1 ... jsr e5d1 ;jump52 - triple beep E158 BD D8 D3 ... jsr d8d3 ;jump84 500ms delay E15B C6 0C .. ldab #0c E15D F7 00 2C .., stab 002c @@ -12383,7 +12385,7 @@ E1F7 1C 00 80 .. bset 00,x, #80 E1F9 BD D2 13 .. jsr d213 ;jump45 E1FC 83 00 00 ... subd #0000 E200 26 12 &. bne 12 -E202 BD E5 D1 ... jsr e5d1 ;jump52 +E202 BD E5 D1 ... jsr e5d1 ;jump52 - triple beep E205 BD D8 E9 ... jsr d8e9 ;jump92 E208 FC 00 40 ..@ ldd 0040 E20B F3 00 44 ..D addd 0044 @@ -12659,7 +12661,7 @@ E458 1D 00 02 ... bclr 00,x, #02 E45B F6 00 17 ... ldab 0017 E45E C4 02 .. andb #02 E460 27 09 '. beq 09 -E462 BD E5 D1 ... jsr e5d1 ;jump52 +E462 BD E5 D1 ... jsr e5d1 ;jump52 - triple beep E465 CE 00 17 ... ldx #0017 E468 1D 00 02 ... bclr 00,x, #02 E46B 7E E3 DE ~.. jmp e3de ;goto77 @@ -12673,27 +12675,27 @@ E47A BD D2 13 ... jsr d213 ;jump45 E47D 83 00 00 ... subd #0000 E480 26 0F &. bne 0f E482 CC 00 80 ... ldd #0080 -E485 BD C7 E7 ... jsr c7e7 ;jump37 -E488 BD E5 D1 ... jsr e5d1 ;jump52 +E485 BD C7 E7 ... jsr c7e7 ;jump37 - send to serial port +E488 BD E5 D1 ... jsr e5d1 ;jump52 - triple beep E48B BD D8 E9 ... jsr d8e9 ;jump92 E48E 7E E5 5E ~.^ jmp e55e ;goto74 E491 F6 00 2B ..+ ldab 002b E494 C1 00 .. cmpb #00 E496 26 08 &. bne 08 -E498 CC AD 16 ... ldd #ad16 +E498 CC AD 16 ... ldd #ad16 ; "GRACIAS" E49B BD C0 BA ... jsr c0ba ;display: E49E 20 1E . bra 1e E4A0 C1 01 .. cmpb #01 E4A2 26 08 &. bne 08 -E4A4 CC AD 0B ... ldd #ad0b +E4A4 CC AD 0B ... ldd #ad0b ; "DANKE" E4A7 BD C0 BA ... jsr c0ba ;display: E4AA 20 12 . bra 12 E4AC C1 02 .. cmpb #02 E4AE 26 08 &. bne 08 -E4B0 CC AD 00 ... ldd #ad00 +E4B0 CC AD 00 ... ldd #ad00 ; "MERCI" E4B3 BD C0 BA ... jsr c0ba ;display: E4B6 20 06 . bra 06 -E4B8 CC AC F5 ... ldd #acf5 +E4B8 CC AC F5 ... ldd #acf5 ; "THANKS" E4BB BD C0 BA ... jsr c0ba ;display: E4BE BD D8 D3 ... jsr d8d3 ;jump84 500ms delay E4C1 CE 00 01 ... ldx #0001 @@ -12703,7 +12705,7 @@ E4C8 BD BE 9E ... jsr be9e ;jump50 E4CB 38 8 pulx E4CC 5F _ clrb E4CD 4F O clra -E4CE BD C7 E7 ... jsr c7e7 ;jump37 +E4CE BD C7 E7 ... jsr c7e7 ;jump37 - send to serial port E4D1 F6 0B C0 ... ldab 0bc0 E4D4 2D 03 -. blt 03 E4D6 7E E5 58 ~.X jmp e558 ;goto78 @@ -12842,7 +12844,7 @@ E5B2 27 05 '. beq 05 ; to e5b9 (out) E5B4 C6 02 .. ldab #02 E5B6 F7 00 33 ..3 stab 0033 E5B9 20 15 . bra 15 ; to e5d0 (out) -E5BB C6 03 .. ldab #03 +E5BB C6 03 .. ldab #03 ; beep E5BD F7 00 32 ..2 stab 0032 E5C0 FC 00 3B ..; ldd 003b E5C3 27 06 '. beq 06 ; to e5cb @@ -12853,6 +12855,7 @@ E5CD F7 00 33 ..3 stab 0033 E5D0 39 9 rts jump52: +; signifies a triple beep? E5D1 C6 0B .. ldab #0b ; 1011 E5D3 F7 00 32 ..2 stab 0032 E5D6 39 9 rts @@ -13230,18 +13233,14 @@ E846 AA 00 .. ora 00,x E848 EA 01 .. orb 01,x E84A ED 00 .. std 00,x E84C CE 10 16 ... ldx #1016 -E84F 1D 00 .. bclr add,x 00,x -E851 C0 FC .. subb #fc -E853 10 . sba -E854 18 . illegal +E84F 1D 00 C0 .. bclr 00,x, #c0 +E852 FC 10 18 .. ldd 1018 E855 43 C coma E856 53 S comb E857 FD 10 18 ... std 1018 E85A CE 10 18 ... ldx #1018 -E85D 1D 00 .. bclr add,x 00,x -E85F C0 FC .. subb #fc -E861 10 . sba -E862 16 . tab +E85D 1D 00 C0 .. bclr 00,x, #c0 +E85F FC 10 16 .. ldd 1016 E863 37 7 pshb E864 36 6 psha E865 FC 10 18 ... ldd 1018 @@ -13307,7 +13306,7 @@ E8D0 C4 FF .. andb #ff E8D2 84 3F .? anda #3f E8D4 FD 10 16 ... std 1016 E8D7 FC 10 16 ... ldd 1016 -E8DA 83 27 10 .'. subd #2710 +E8DA 83 27 10 .'. subd #2710 ; 10000 E8DD 24 2F $/ bcc 2f E8DF F6 00 06 ... ldab 0006 E8E2 BD D4 68 ..h jsr d468 ;jump51 @@ -13521,7 +13520,7 @@ EA61 BD E5 D7 ... jsr e5d7 ;jump69 - test input line EA64 38 8 pulx EA65 83 00 00 ... subd #0000 EA68 27 3F '? beq 3f ; to eaa9 if off - +; ; test internal mode switch (bit 1 of 1800) EA6A CE 00 01 ... ldx #0001 EA6D 3C < pshx @@ -13530,52 +13529,52 @@ EA71 BD E5 D7 ... jsr e5d7 ;jump69 - test input line EA74 38 8 pulx EA75 83 00 00 ... subd #0000 EA78 27 2F '/ beq 2f ; to eaa9 if off - +; ; both no-sale & mode switches held. - +; ; 1000-unit delay EA7A CC 03 E8 ... ldd #03e8 EA7D BD E5 71 ..q jsr e571 ;msdelay - +; EA80 7F 0B A8 ... clr 0ba8 - +; ; blink "SECURE OFF" until mode switch is released EA83 F6 18 00 ... ldab 1800 EA86 C4 01 .. andb #01 EA88 26 1C &. bne 1c ; to eaa4 (loop until released) - +; ; blank display EA8A BD BE 4B ..K jsr be4b ;displayblank (blank display buffer) EA8D 0F . sei EA8E BD BE 01 ... jsr be01 ;jump70 (commit to display) EA91 0E . cli - +; ; 500-unit delay EA92 CC 01 F4 ... ldd #01f4 EA95 BD E5 71 ..q jsr e571 ;msdelay - +; EA98 CC AF D1 ... ldd #afd1 ; "SECURE OFF" EA9B BD C0 BA ... jsr c0ba ;display: - +; ; 500-unit delay EA9E CC 01 F4 ... ldd #01f4 EAA1 BD E5 71 ..q jsr e571 ;msdelay ; loop EAA4 20 DD . bra dd ; to ea83 EAA6 BD BE 69 ..i jsr be69 ;displayreset - +; ; no sale switch or internal mode switch on - +; ; fiddle with the bill acceptor EAA9 C6 01 .. ldab #01 EAAB F7 00 14 ... stab 0014 EAAE F6 00 14 ... ldab 0014 EAB1 F7 38 00 .8. stab 3800 - +; ; 30-unit delay EAB4 CC 00 1E ... ldd #001e EAB7 BD E5 71 ..q jsr e571 ;msdelay - +; ; more bill acceptor fiddling & tests EABA CE 00 01 ... ldx #0001 EABD 3C < pshx @@ -13615,7 +13614,7 @@ EB08 38 8 pulx EB09 83 00 00 ... subd #0000 EB0C 26 03 &. bne 03 EB0E 7E ED F8 ~.. jmp edf8 ;goto80 - something about the bill validator failed. skip it. -EB11 CC 5A 5A .ZZ ldd #5a5a +EB11 CC 5A 5A .ZZ ldd #5a5a ; 23130 EB14 FD 10 16 ... std 1016 EB17 CC B1 39 ..9 ldd #b139 ;"**********" EB1A BD C0 BA ... jsr c0ba ;display: @@ -13687,7 +13686,7 @@ EBB0 FE 00 73 ..s ldx 0073 EBB3 E6 00 .. ldab 00,x EBB5 C1 AA .. cmpb #aa EBB7 27 08 '. beq 08 -EBB9 CE 10 16 ... ldx #1016 +EBB9 CE 10 16 ... ldx #1016 ; timer output compare register EBBC 1D 00 FF .. bclr 00,x, #FF EBBF 20 09 .. bra 09 EBC1 FE 00 73 ..s ldx 0073 @@ -13802,7 +13801,7 @@ EC9D 2C 1B ,. bge 1b EC9F 30 0 tsx ECA0 E6 00 .. ldab 00,x ECA2 4F O clra -ECA3 C3 B1 D0 ... addd #b1d0 +ECA3 C3 B1 D0 ... addd #b1d0 ; "THANK YOU FOR YOUR PATRONAGE" ECA6 8F . xgdx ECA7 E6 00 .. ldab 00,x ECA9 37 7 pshb @@ -13858,10 +13857,11 @@ ED02 6C 00 l. inc 00,x ED04 20 D8 . bra d8 ED06 30 0 tsx ED07 6F 00 o. clr 00,x +; ED09 30 0 tsx ED0A E6 00 .. ldab 00,x ED0C C1 0B .. cmpb #0b -ED0E 24 12 $. bcc 12 +ED0E 24 12 $. bcc 12 ; to ed22 ED10 5F _ clrb ED11 37 7 pshb ED12 30 0 tsx @@ -13874,6 +13874,7 @@ ED1B E7 00 .. stab 00,x ED1D 30 0 tsx ED1E 6C 00 l. inc 00,x ED20 20 E7 . bra e7 +; clear stuff ready for test harness? ED22 4F O clra ED23 5F _ clrb ED24 FD 0D F9 ... std 0df9 @@ -13977,9 +13978,9 @@ EDEB 7F 0B B1 ... clr 0bb1 EDEE 7F 0B B0 ... clr 0bb0 EDF1 C6 05 .. ldab #05 EDF3 F7 08 00 ... stab 0800 -EDF6 8D 21 .! bsr dest 21 +EDF6 8D 21 .! bsr 21 ;jump204 - test harness function goto80: -; switch things off +; switch things off (motors, display clock, keypad strobe) EDF8 7F 00 14 ... clr 0014 EDFB F6 00 14 ... ldab 0014 EDFE F7 38 00 .8. stab 3800 @@ -14000,8 +14001,8 @@ EE14 BD E5 71 ... jsr e571 ;msdelay EE17 38 8 pulx EE18 39 9 rts - -EE19 BD E5 D1 ... jsr e5d1 ;jump52 +jump204: +EE19 BD E5 D1 ... jsr e5d1 ;jump52 - triple beep goto81: ; this the diagnostic function activated when the "test harness" ; is connected @@ -14357,19 +14358,19 @@ F19B E6 01 .. ldab 01,x F19D C1 30 .0 cmpb #30 F19F 26 08 &. bne 08 F1A1 CC 00 20 .. ldd #0020 -F1A4 BD C7 E7 ... jsr c7e7 ;jump37 +F1A4 BD C7 E7 ... jsr c7e7 ;jump37 - send to serial port F1A7 20 0D . bra 0d F1A9 30 0 tsx F1AA E6 01 .. ldab 01,x F1AC 4F O clra -F1AD BD C7 E7 ... jsr c7e7 ;jump37 +F1AD BD C7 E7 ... jsr c7e7 ;jump37 - send to serial port F1B0 CE 00 1D ... ldx #001d F1B3 1D 00 01 ... bclr 00,x, #01 F1B6 20 07 . bra 07 F1B8 30 0 tsx F1B9 E6 01 .. ldab 01,x F1BB 4F O clra -F1BC BD C7 E7 ... jsr c7e7 ;jump37 +F1BC BD C7 E7 ... jsr c7e7 ;jump37 - send to serial port F1BF 38 8 pulx F1C0 39 9 rts @@ -14725,7 +14726,7 @@ F4B3 BD F1 C1 ... jsr f1c1 ;jump59 F4B6 38 8 pulx F4B7 CC 00 0A ... ldd #000a F4BA BD F1 5B ..[ jsr f15b ;jump53 -F4BD CC B2 A2 ... ldd #b2a2 +F4BD CC B2 A2 ... ldd #b2a2 ; "MACHINE ID" F4C0 BD F1 E8 ... jsr f1e8 ;jump57 F4C3 CE 00 0A ... ldx #000a F4C6 3C < pshx @@ -14955,7 +14956,7 @@ F707 F6 0B C0 ... ldab 0bc0 F70A C4 02 .. andb #02 F70C 27 06 '. beq 06 F70E CC 00 80 ... ldd #0080 -F711 BD C7 E7 ... jsr c7e7 ;jump37 +F711 BD C7 E7 ... jsr c7e7 ;jump37 - send to serial port F714 7F 00 38 ..8 clr 0038 F717 39 9 rts @@ -15031,20 +15032,24 @@ F79F 1C 00 10 .. bset 00,x, #10 F7A2 7C 00 4C |.L inc 004c F7A5 F6 00 4C ..L ldab 004c F7A8 C1 4B .K cmpb #4b -F7AA 26 13 &. bne 13 +F7AA 26 13 &. bne 13 ; to f7bf F7AC 7F 00 4C ..L clr 004c F7AF F6 00 4F ..O ldab 004f F7B2 27 03 '. beq 03 F7B4 7A 00 4F z.O dec 004f +; F7B7 F6 00 25 ..% ldab 0025 F7BA 27 03 '. beq 03 F7BC 7A 00 25 z.% dec 0025 +; F7BF F6 00 31 ..1 ldab 0031 F7C2 26 03 &. bne 03 -F7C4 BD FE 69 ..i jsr fe69 ;inhibit interrupts +F7C4 BD FE 69 ..i jsr fe69 ;reset +; F7C7 F6 00 7F ... ldab 007f F7CA 27 03 '. beq 03 -F7CC BD FE 69 ..i jsr fe69 ;inhibit interrupts +F7CC BD FE 69 ..i jsr fe69 ;reset +; F7CF C6 40 .@ ldab #40 F7D1 F7 10 25 ..% stab 1025 ; notify end of RTI period F7D4 38 8 pulx @@ -15092,7 +15097,7 @@ F801 F7 10 28 ..( stab 1028 ; SPCR 00101000 ; initialize the display F804 BD BE 69 ..i jsr be69 ;displayreset ; -; initialize the bill validator +; initialize the bill validator & more stuff F807 BD EA 59 ..Y jsr ea59 ;jump65 ; F80A CC 00 64 ..d ldd #0064 ; 100-unit delay @@ -15149,7 +15154,7 @@ F889 C6 3C .< ldab #3c F88B F7 00 31 ..1 stab 0031 F88E 0E . cli F88F CC 00 FF ... ldd #00ff -F892 BD C7 E7 ... jsr c7e7 ;jump37 +F892 BD C7 E7 ... jsr c7e7 ;jump37 - send to serial port F895 5F _ clrb F896 4F O clra F897 FD 00 40 ..@ std 0040 @@ -15470,9 +15475,9 @@ FBA8 BD C0 BA ... jsr c0ba ;display: FBAB CC 07 D0 ... ldd #07d0 FBAE BD E5 71 ..q jsr e571 ;msdelay FBB1 3B ; rti -FBB2 BD FE 69 ..i jsr fe69 ;inhibit interrupts +FBB2 BD FE 69 ..i jsr fe69 ;reset FBB5 3B ; rti -FBB6 BD FE 69 ..i jsr fe69 ;inhibit interrupts +FBB6 BD FE 69 ..i jsr fe69 ;reset FBB9 3B ; rti jump38: -- 2.20.1