From a618e6baa2acf7b0fe3f5bb7c64ffbc6fae1cbe3 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Thu, 15 May 2025 11:04:28 -0700 Subject: [PATCH 001/116] Add Sculptured Software disasssemblies Didn't yet try to add labels, but this covers various versions of the driver throughout its history. --- .../Mortal Kombat 3 ($0700).bin | Bin 0 -> 6114 bytes snes/Sculptured Software/Mortal Kombat 3.s | 2402 +++++++++++++++++ ...ther in Pink Goes to Hollywood ($0700).bin | Bin 0 -> 4290 bytes .../Pink Panther in Pink Goes to Hollywood.s | 1686 ++++++++++++ ... Life - Spunky's Dangerous Day ($0700).bin | Bin 0 -> 4734 bytes ...o's Modern Life - Spunky's Dangerous Day.s | 1907 +++++++++++++ .../Super Star Wars ($0700).bin | Bin 0 -> 4290 bytes snes/Sculptured Software/Super Star Wars.s | 1683 ++++++++++++ .../The Jungle Book ($0700).bin | Bin 0 -> 6114 bytes snes/Sculptured Software/The Jungle Book.s | 2388 ++++++++++++++++ .../WWF Super WrestleMania ($0700).bin | Bin 0 -> 4306 bytes .../WWF Super WrestleMania.s | 1676 ++++++++++++ 12 files changed, 11742 insertions(+) create mode 100644 snes/Sculptured Software/Mortal Kombat 3 ($0700).bin create mode 100644 snes/Sculptured Software/Mortal Kombat 3.s create mode 100644 snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood ($0700).bin create mode 100644 snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s create mode 100644 snes/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day ($0700).bin create mode 100644 snes/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s create mode 100644 snes/Sculptured Software/Super Star Wars ($0700).bin create mode 100644 snes/Sculptured Software/Super Star Wars.s create mode 100644 snes/Sculptured Software/The Jungle Book ($0700).bin create mode 100644 snes/Sculptured Software/The Jungle Book.s create mode 100644 snes/Sculptured Software/WWF Super WrestleMania ($0700).bin create mode 100644 snes/Sculptured Software/WWF Super WrestleMania.s diff --git a/snes/Sculptured Software/Mortal Kombat 3 ($0700).bin b/snes/Sculptured Software/Mortal Kombat 3 ($0700).bin new file mode 100644 index 0000000000000000000000000000000000000000..f5d81d63293810990379148791bac6035591437f GIT binary patch literal 6114 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 literal 0 HcmV?d00001 diff --git a/snes/Sculptured Software/Mortal Kombat 3.s b/snes/Sculptured Software/Mortal Kombat 3.s new file mode 100644 index 00000000..988e665e --- /dev/null +++ b/snes/Sculptured Software/Mortal Kombat 3.s @@ -0,0 +1,2402 @@ +0700: 20 clrp +0701: cd ff mov x,#$ff +0703: bd mov sp,x +0704: 8f a0 fa mov $fa,#$a0 +0707: 8f a0 fb mov $fb,#$a0 +070a: 8f 20 fc mov $fc,#$20 +070d: 8f 87 f1 mov $f1,#$87 +0710: 3f 9f 10 call $109f +0713: 8f 00 24 mov $24,#$00 +0716: 8f 1f 25 mov $25,#$1f +0719: 8f 01 f6 mov $f6,#$01 +071c: 62 08 set3 $08 +071e: 3f f3 0b call $0bf3 +0721: 3f 63 0b call $0b63 +0724: 33 07 f7 bbc1 $07,$071e +0727: 8d 10 mov y,#$10 +0729: 3f 4a 07 call $074a +072c: 83 07 12 bbs4 $07,$0741 +072f: e4 fe mov a,$fe +0731: f0 0e beq $0741 +0733: e4 cd mov a,$cd +0735: f0 07 beq $073e +0737: 60 clrc +0738: 84 ce adc a,$ce +073a: c4 ce mov $ce,a +073c: 90 03 bcc $0741 +073e: 3f f0 16 call $16f0 +0741: e4 fd mov a,$fd +0743: f0 d9 beq $071e +0745: 3f 30 08 call $0830 +0748: 2f d4 bra $071e +074a: e4 ff mov a,$ff +074c: d0 03 bne $0751 +074e: e8 01 mov a,#$01 +0750: 6f ret +0751: cb 3b mov $3b,y +0753: 8f 00 3a mov $3a,#$00 +0756: cd 14 mov x,#$14 +0758: e4 f6 mov a,$f6 +075a: f0 03 beq $075f +075c: 3f f3 0b call $0bf3 +075f: eb 3b mov y,$3b +0761: f5 ff 07 mov a,$07ff+x +0764: c4 f2 mov $f2,a +0766: f5 28 02 mov a,$0228+x +0769: fa f3 3c mov ($3c),($f3) +076c: 64 3c cmp a,$3c +076e: f0 0f beq $077f +0770: b0 09 bcs $077b +0772: 8b 3c dec $3c +0774: dc dec y +0775: d0 f5 bne $076c +0777: ab 3a inc $3a +0779: 2f 04 bra $077f +077b: ab 3c inc $3c +077d: 2f f5 bra $0774 +077f: fa 3c f3 mov ($f3),($3c) +0782: 1d dec x +0783: 10 d3 bpl $0758 +0785: e4 3a mov a,$3a +0787: 6f ret +0788: e2 08 set7 $08 +078a: 2f 02 bra $078e +078c: f2 08 clr7 $08 +078e: 72 08 clr3 $08 +0790: 8d 80 mov y,#$80 +0792: 3f 52 0d call $0d52 +0795: 3f ed 10 call $10ed +0798: 8f 6c f2 mov $f2,#$6c +079b: 8f 3f f3 mov $f3,#$3f +079e: e3 08 0f bbs7 $08,$07b0 +07a1: cd 00 mov x,#$00 +07a3: f5 80 fe mov a,$fe80+x +07a6: af mov (x)+,a +07a7: c8 61 cmp x,#$61 +07a9: 90 f8 bcc $07a3 +07ab: 5f 00 00 jmp $0000 +07ae: 4f c0 pcall $c0 +07b0: 5f 00 07 jmp $0700 + +07b3: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01,$1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00,$08,$18,$28,$38,$48,$58,$68,$78,$07,$17,$27,$37,$47,$57,$67,$77,$04,$14,$24,$34,$44,$54,$64,$74,$02,$12,$22,$32,$42,$52,$62,$72,$00,$10,$20,$30,$40,$50,$60,$70,$01,$11,$21,$31,$41,$51,$61,$71,$2c,$3c,$0d,$0c,$1c,$01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f,$7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f + +0830: 3f f3 0b call $0bf3 +0833: 8f 00 49 mov $49,#$00 +0836: 8f 00 5b mov $5b,#$00 +0839: 8f 7c f2 mov $f2,#$7c +083c: e4 f3 mov a,$f3 +083e: 24 5e and a,$5e +0840: c4 58 mov $58,a +0842: 8f 00 f3 mov $f3,#$00 +0845: cd 07 mov x,#$07 +0847: 3f f3 0b call $0bf3 +084a: d8 28 mov $28,x +084c: 7d mov a,x +084d: 60 clrc +084e: 88 10 adc a,#$10 +0850: c4 2d mov $2d,a +0852: f5 14 08 mov a,$0814+x +0855: c4 4a mov $4a,a +0857: 48 ff eor a,#$ff +0859: c4 4b mov $4b,a +085b: f4 67 mov a,$67+x +085d: c4 4d mov $4d,a +085f: a2 08 set5 $08 +0861: 23 4d 06 bbs1 $4d,$086a +0864: f5 ec fc mov a,$fcec+x +0867: 5f 78 08 jmp $0878 +086a: eb 2d mov y,$2d +086c: f6 e3 04 mov a,$04e3+y +086f: d0 02 bne $0873 +0871: b2 08 clr5 $08 +0873: 3f 7c 12 call $127c +0876: f8 28 mov x,$28 +0878: 75 f4 fc cmp a,$fcf4+x +087b: d0 0d bne $088a +087d: 3f 3a 14 call $143a +0880: e4 63 mov a,$63 +0882: 24 5c and a,$5c +0884: 24 4a and a,$4a +0886: d0 43 bne $08cb +0888: 2f 44 bra $08ce +088a: d5 f4 fc mov $fcf4+x,a +088d: 09 4a 49 or ($49),($4a) +0890: 3f 3a 14 call $143a +0893: 7d mov a,x +0894: 1c asl a +0895: 5d mov x,a +0896: e5 04 01 mov a,$0104 +0899: d5 4b 01 mov $014b+x,a +089c: e5 05 01 mov a,$0105 +089f: d5 4c 01 mov $014c+x,a +08a2: f8 28 mov x,$28 +08a4: e4 64 mov a,$64 +08a6: 28 20 and a,#$20 +08a8: f0 05 beq $08af +08aa: 29 4b 59 and ($59),($4b) +08ad: 2f 03 bra $08b2 +08af: 09 4a 59 or ($59),($4a) +08b2: b3 08 0b bbc5 $08,$08c0 +08b5: e4 64 mov a,$64 +08b7: 28 40 and a,#$40 +08b9: f0 05 beq $08c0 +08bb: 09 4a 63 or ($63),($4a) +08be: 2f 03 bra $08c3 +08c0: 29 4b 63 and ($63),($4b) +08c3: e4 63 mov a,$63 +08c5: 04 5c or a,$5c +08c7: 24 4a and a,$4a +08c9: f0 03 beq $08ce +08cb: 09 4a 5b or ($5b),($4a) +08ce: 1d dec x +08cf: 30 03 bmi $08d4 +08d1: 5f 47 08 jmp $0847 +08d4: e4 5c mov a,$5c +08d6: 24 59 and a,$59 +08d8: 04 5a or a,$5a +08da: c4 5a mov $5a,a +08dc: 24 5a and a,$5a +08de: 04 5b or a,$5b +08e0: c4 5d mov $5d,a +08e2: 8f 5c f2 mov $f2,#$5c +08e5: c4 f3 mov $f3,a +08e7: cd 07 mov x,#$07 +08e9: 3f f3 0b call $0bf3 +08ec: d8 28 mov $28,x +08ee: f5 14 08 mov a,$0814+x +08f1: c4 4a mov $4a,a +08f3: 7d mov a,x +08f4: 60 clrc +08f5: 88 18 adc a,#$18 +08f7: c4 2d mov $2d,a +08f9: e5 a2 03 mov a,$03a2 +08fc: d0 12 bne $0910 +08fe: f4 67 mov a,$67+x +0900: c4 4d mov $4d,a +0902: 63 4d 06 bbs3 $4d,$090b +0905: f5 e4 fc mov a,$fce4+x +0908: 5f 10 09 jmp $0910 +090b: 3f 7c 12 call $127c +090e: f8 28 mov x,$28 +0910: 60 clrc +0911: 95 9a 03 adc a,$039a+x +0914: 30 06 bmi $091c +0916: 70 04 bvs $091c +0918: 68 65 cmp a,#$65 +091a: 30 0b bmi $0927 +091c: f5 9a 03 mov a,$039a+x +091f: 30 04 bmi $0925 +0921: e8 64 mov a,#$64 +0923: 2f 02 bra $0927 +0925: e8 00 mov a,#$00 +0927: fd mov y,a +0928: f5 43 01 mov a,$0143+x +092b: c4 3c mov $3c,a +092d: cf mul ya +092e: cd 64 mov x,#$64 +0930: 9e div ya,x +0931: f8 28 mov x,$28 +0933: 73 4d 14 bbc3 $4d,$094a +0936: c4 3a mov $3a,a +0938: 6d push y +0939: eb 2d mov y,$2d +093b: f6 c3 03 mov a,$03c3+y +093e: ee pop y +093f: d0 04 bne $0945 +0941: e4 3a mov a,$3a +0943: 2f 05 bra $094a +0945: e4 3c mov a,$3c +0947: 80 setc +0948: a4 3a sbc a,$3a +094a: c4 3a mov $3a,a +094c: d5 28 02 mov $0228+x,a +094f: e4 3c mov a,$3c +0951: 80 setc +0952: a4 3a sbc a,$3a +0954: d5 30 02 mov $0230+x,a +0957: 1d dec x +0958: 30 03 bmi $095d +095a: 5f e9 08 jmp $08e9 +095d: cd 07 mov x,#$07 +095f: 3f f3 0b call $0bf3 +0962: d8 28 mov $28,x +0964: 7d mov a,x +0965: 60 clrc +0966: 88 08 adc a,#$08 +0968: c4 2d mov $2d,a +096a: f4 67 mov a,$67+x +096c: c4 4d mov $4d,a +096e: 7d mov a,x +096f: 1c asl a +0970: 5d mov x,a +0971: f5 d5 fc mov a,$fcd5+x +0974: c4 48 mov $48,a +0976: f5 d4 fc mov a,$fcd4+x +0979: c4 47 mov $47,a +097b: 53 4d 15 bbc2 $4d,$0993 +097e: 4d push x +097f: 42 08 set2 $08 +0981: 3f 7c 12 call $127c +0984: 52 08 clr2 $08 +0986: ce pop x +0987: 7a 47 addw ya,$47 +0989: 80 setc +098a: a8 b0 sbc a,#$b0 +098c: c4 47 mov $47,a +098e: dd mov a,y +098f: a8 04 sbc a,#$04 +0991: c4 48 mov $48,a +0993: f5 4c 01 mov a,$014c+x +0996: fd mov y,a +0997: f5 4b 01 mov a,$014b+x +099a: 7a 47 addw ya,$47 +099c: da 3a movw $3a,ya +099e: fb db mov y,$db+x +09a0: f4 da mov a,$da+x +09a2: 7a 3a addw ya,$3a +09a4: c3 4d 03 bbs6 $4d,$09aa +09a7: 3f bc 14 call $14bc +09aa: da 3a movw $3a,ya +09ac: e4 28 mov a,$28 +09ae: 1c asl a +09af: 5d mov x,a +09b0: f5 5c 01 mov a,$015c+x +09b3: fd mov y,a +09b4: f5 5b 01 mov a,$015b+x +09b7: 7a 3a addw ya,$3a +09b9: f8 28 mov x,$28 +09bb: d5 33 01 mov $0133+x,a +09be: dd mov a,y +09bf: d5 3b 01 mov $013b+x,a +09c2: 1d dec x +09c3: 10 9a bpl $095f +09c5: 8f 5c f2 mov $f2,#$5c +09c8: 8f 00 f3 mov $f3,#$00 +09cb: cd 07 mov x,#$07 +09cd: 3f f3 0b call $0bf3 +09d0: d8 28 mov $28,x +09d2: 7d mov a,x +09d3: 60 clrc +09d4: 88 00 adc a,#$00 +09d6: c4 2d mov $2d,a +09d8: f5 14 08 mov a,$0814+x +09db: c4 4a mov $4a,a +09dd: 48 ff eor a,#$ff +09df: c4 4b mov $4b,a +09e1: f4 67 mov a,$67+x +09e3: c4 4d mov $4d,a +09e5: 03 4d 07 bbs0 $4d,$09ef +09e8: f5 23 01 mov a,$0123+x +09eb: fd mov y,a +09ec: 5f fc 09 jmp $09fc +09ef: 3f 7c 12 call $127c +09f2: fd mov y,a +09f3: f8 28 mov x,$28 +09f5: b3 07 04 bbc5 $07,$09fc +09f8: e8 00 mov a,#$00 +09fa: d4 6f mov $6f+x,a +09fc: e8 80 mov a,#$80 +09fe: de 6f 04 cbne $6f+x,$0a05 +0a01: e4 60 mov a,$60 +0a03: 2f 02 bra $0a07 +0a05: e4 5f mov a,$5f +0a07: cf mul ya +0a08: f5 92 03 mov a,$0392+x +0a0b: cf mul ya +0a0c: dd mov a,y +0a0d: d5 2b 01 mov $012b+x,a +0a10: 8f c0 39 mov $39,#$c0 +0a13: f5 df 07 mov a,$07df+x +0a16: c4 f2 mov $f2,a +0a18: dd mov a,y +0a19: 80 setc +0a1a: a4 f3 sbc a,$f3 +0a1c: b0 06 bcs $0a24 +0a1e: 8f 80 39 mov $39,#$80 +0a21: 48 ff eor a,#$ff +0a23: bc inc a +0a24: c4 3e mov $3e,a +0a26: e4 4a mov a,$4a +0a28: 24 57 and a,$57 +0a2a: d0 06 bne $0a32 +0a2c: e4 56 mov a,$56 +0a2e: 24 4a and a,$4a +0a30: d0 23 bne $0a55 +0a32: e4 3e mov a,$3e +0a34: 5c lsr a +0a35: d0 08 bne $0a3f +0a37: ad 00 cmp y,#$00 +0a39: d0 04 bne $0a3f +0a3b: e8 82 mov a,#$82 +0a3d: 2f 0e bra $0a4d +0a3f: 8d 15 mov y,#$15 +0a41: 76 b3 07 cmp a,$07b3+y +0a44: 90 02 bcc $0a48 +0a46: fe f9 dbnz y,$0a41 +0a48: f6 c9 07 mov a,$07c9+y +0a4b: 04 39 or a,$39 +0a4d: 75 cc fc cmp a,$fccc+x +0a50: f0 41 beq $0a93 +0a52: fd mov y,a +0a53: 2f 17 bra $0a6c +0a55: 8f 00 39 mov $39,#$00 +0a58: e4 3e mov a,$3e +0a5a: 68 60 cmp a,#$60 +0a5c: 90 0e bcc $0a6c +0a5e: ad 60 cmp y,#$60 +0a60: 90 04 bcc $0a66 +0a62: 8d df mov y,#$df +0a64: 2f 06 bra $0a6c +0a66: ad 20 cmp y,#$20 +0a68: b0 02 bcs $0a6c +0a6a: 8d 9e mov y,#$9e +0a6c: 29 4b 56 and ($56),($4b) +0a6f: f5 ff 07 mov a,$07ff+x +0a72: c4 f2 mov $f2,a +0a74: f5 28 02 mov a,$0228+x +0a77: 2d push a +0a78: e4 4a mov a,$4a +0a7a: 24 57 and a,$57 +0a7c: ae pop a +0a7d: d0 09 bne $0a88 +0a7f: c4 f3 mov $f3,a +0a81: ab f2 inc $f2 +0a83: f5 30 02 mov a,$0230+x +0a86: c4 f3 mov $f3,a +0a88: f5 e7 07 mov a,$07e7+x +0a8b: c4 f2 mov $f2,a +0a8d: cb f3 mov $f3,y +0a8f: dd mov a,y +0a90: d5 cc fc mov $fccc+x,a +0a93: f5 f7 07 mov a,$07f7+x +0a96: c4 f2 mov $f2,a +0a98: fd mov y,a +0a99: f5 33 01 mov a,$0133+x +0a9c: c4 f3 mov $f3,a +0a9e: fc inc y +0a9f: cb f2 mov $f2,y +0aa1: f5 3b 01 mov a,$013b+x +0aa4: c4 f3 mov $f3,a +0aa6: 1d dec x +0aa7: 30 03 bmi $0aac +0aa9: 5f cd 09 jmp $09cd +0aac: 8f 4c f2 mov $f2,#$4c +0aaf: fa 5d f3 mov ($f3),($5d) +0ab2: e4 5d mov a,$5d +0ab4: 48 ff eor a,#$ff +0ab6: c4 5e mov $5e,a +0ab8: 29 5e 58 and ($58),($5e) +0abb: 29 5e 5a and ($5a),($5e) +0abe: 8f 00 5c mov $5c,#$00 +0ac1: 3f f3 0b call $0bf3 +0ac4: 8d 07 mov y,#$07 +0ac6: cd 0e mov x,#$0e +0ac8: 3f f3 0b call $0bf3 +0acb: f6 6f 00 mov a,$006f+y +0ace: f0 31 beq $0b01 +0ad0: f6 67 00 mov a,$0067+y +0ad3: c4 4d mov $4d,a +0ad5: f3 4d 07 bbc7 $4d,$0adf +0ad8: f6 14 08 mov a,$0814+y +0adb: 24 58 and a,$58 +0add: d0 1d bne $0afc +0adf: f6 6f 00 mov a,$006f+y +0ae2: 68 80 cmp a,#$80 +0ae4: d0 1b bne $0b01 +0ae6: f6 46 02 mov a,$0246+y +0ae9: 28 02 and a,#$02 +0aeb: d0 14 bne $0b01 +0aed: 9b 78 dec $78+x +0aef: f4 78 mov a,$78+x +0af1: 2e 05 02 cbne $05,$0af6 +0af4: 9b 79 dec $79+x +0af6: f4 78 mov a,$78+x +0af8: 14 79 or a,$79+x +0afa: d0 05 bne $0b01 +0afc: e8 00 mov a,#$00 +0afe: d6 6f 00 mov $006f+y,a +0b01: 1d dec x +0b02: 1d dec x +0b03: dc dec y +0b04: 10 c2 bpl $0ac8 +0b06: 3f f3 0b call $0bf3 +0b09: ec 43 02 mov y,$0243 +0b0c: f0 54 beq $0b62 +0b0e: 6e cf 51 dbnz $cf,$0b62 +0b11: cb cf mov $cf,y +0b13: e5 3b 02 mov a,$023b +0b16: f8 d0 mov x,$d0 +0b18: 30 0d bmi $0b27 +0b1a: 60 clrc +0b1b: 84 d1 adc a,$d1 +0b1d: b0 04 bcs $0b23 +0b1f: 68 7f cmp a,#$7f +0b21: 90 12 bcc $0b35 +0b23: e8 7f mov a,#$7f +0b25: 2f 09 bra $0b30 +0b27: 80 setc +0b28: a4 d1 sbc a,$d1 +0b2a: f0 04 beq $0b30 +0b2c: b0 07 bcs $0b35 +0b2e: e8 00 mov a,#$00 +0b30: 8d 00 mov y,#$00 +0b32: cc 43 02 mov $0243,y +0b35: 5d mov x,a +0b36: 65 44 02 cmp a,$0244 +0b39: 90 03 bcc $0b3e +0b3b: e5 44 02 mov a,$0244 +0b3e: c5 38 02 mov $0238,a +0b41: 7d mov a,x +0b42: c5 3b 02 mov $023b,a +0b45: c5 3c 02 mov $023c,a +0b48: 65 45 02 cmp a,$0245 +0b4b: 90 03 bcc $0b50 +0b4d: e5 45 02 mov a,$0245 +0b50: c5 39 02 mov $0239,a +0b53: e5 43 02 mov a,$0243 +0b56: d0 0a bne $0b62 +0b58: aa 07 40 mov1 c,$0007,2 +0b5b: 90 05 bcc $0b62 +0b5d: 8d 80 mov y,#$80 +0b5f: 5f 52 0d jmp $0d52 +0b62: 6f ret +0b63: 32 08 clr1 $08 +0b65: e4 ea mov a,$ea +0b67: f0 3a beq $0ba3 +0b69: 9c dec a +0b6a: c4 ea mov $ea,a +0b6c: f8 ec mov x,$ec +0b6e: f5 87 10 mov a,$1087+x +0b71: 28 fe and a,#$fe +0b73: c4 30 mov $30,a +0b75: c4 f7 mov $f7,a +0b77: f5 04 fd mov a,$fd04+x +0b7a: c4 31 mov $31,a +0b7c: c4 f4 mov $f4,a +0b7e: f5 1c fd mov a,$fd1c+x +0b81: c4 f5 mov $f5,a +0b83: c4 32 mov $32,a +0b85: 3d inc x +0b86: c8 18 cmp x,#$18 +0b88: d0 02 bne $0b8c +0b8a: cd 00 mov x,#$00 +0b8c: d8 ec mov $ec,x +0b8e: e4 30 mov a,$30 +0b90: 5d mov x,a +0b91: 28 fe and a,#$fe +0b93: c8 4d cmp x,#$4d +0b95: b0 0c bcs $0ba3 +0b97: e4 31 mov a,$31 +0b99: eb 32 mov y,$32 +0b9b: 3f a4 0b call $0ba4 +0b9e: 3f f3 0b call $0bf3 +0ba1: 2f c0 bra $0b63 +0ba3: 6f ret +0ba4: 1f 00 1e jmp ($1e00+x) +0ba7: 79 cmp (x),(y) +0ba8: 0c 40 0c asl $0c40 +0bab: 40 setp +0bac: 0c 40 0c asl $0c40 +0baf: 40 setp +0bb0: 0c 3b 0c asl $0c3b +0bb3: 8c 07 40 dec $4007 +0bb6: 0c 40 0c asl $0c40 +0bb9: 40 setp +0bba: 0c 40 0c asl $0c40 +0bbd: 40 setp +0bbe: 0c 40 0c asl $0c40 +0bc1: 40 setp +0bc2: 0c 4e 1e asl $1e4e +0bc5: 40 setp +0bc6: 0c 8a 0c asl $0c8a +0bc9: 40 setp +0bca: 0c 40 0c asl $0c40 +0bcd: 40 setp +0bce: 0c 40 0c asl $0c40 +0bd1: 40 setp +0bd2: 0c 40 0c asl $0c40 +0bd5: 40 setp +0bd6: 0c 40 0c asl $0c40 +0bd9: 40 setp +0bda: 0c 40 0c asl $0c40 +0bdd: 40 setp +0bde: 0c 40 0c asl $0c40 +0be1: 40 setp +0be2: 0c 40 0c asl $0c40 +0be5: 40 setp +0be6: 0c 40 0c asl $0c40 +0be9: 40 setp +0bea: 0c 40 0c asl $0c40 +0bed: 88 07 adc a,#$07 +0bef: 40 setp +0bf0: 0c 58 1e asl $1e58 +0bf3: 73 08 0c bbc3 $08,$0c02 +0bf6: 2d push a +0bf7: 32 09 clr1 $09 +0bf9: e4 f6 mov a,$f6 +0bfb: 2e f6 fb cbne $f6,$0bf9 +0bfe: 2e 03 02 cbne $03,$0c03 +0c01: ae pop a +0c02: 6f ret +0c03: 2e ed 02 cbne $ed,$0c08 +0c06: ae pop a +0c07: 6f ret +0c08: 22 09 set1 $09 +0c0a: fa ed ee mov ($ee),($ed) +0c0d: c4 ed mov $ed,a +0c0f: fa f4 f4 mov ($f4),($f4) +0c12: fa f5 f5 mov ($f5),($f5) +0c15: fa f7 f7 mov ($f7),($f7) +0c18: e4 f7 mov a,$f7 +0c1a: f0 e5 beq $0c01 +0c1c: 6d push y +0c1d: 4d push x +0c1e: 5d mov x,a +0c1f: c4 30 mov $30,a +0c21: 68 4d cmp a,#$4d +0c23: b0 0c bcs $0c31 +0c25: ba f4 movw ya,$f4 +0c27: da 31 movw $31,ya +0c29: 69 f6 ed cmp ($ed),($f6) +0c2c: d0 03 bne $0c31 +0c2e: 3f 38 0c call $0c38 +0c31: ce pop x +0c32: ee pop y +0c33: ae pop a +0c34: 23 09 bc bbs1 $09,$0bf3 +0c37: 6f ret +0c38: 1f a5 0b jmp ($0ba5+x) +0c3b: 6f ret +0c3c: d8 31 mov $31,x +0c3e: 2f 0b bra $0c4b +0c40: 23 08 08 bbs1 $08,$0c4b +0c43: e4 f6 mov a,$f6 +0c45: 8f b7 f1 mov $f1,#$b7 +0c48: c4 f6 mov $f6,a +0c4a: 7d mov a,x +0c4b: 23 08 25 bbs1 $08,$0c73 +0c4e: f8 eb mov x,$eb +0c50: d5 87 10 mov $1087+x,a +0c53: e4 31 mov a,$31 +0c55: d5 04 fd mov $fd04+x,a +0c58: dd mov a,y +0c59: d5 1c fd mov $fd1c+x,a +0c5c: 3d inc x +0c5d: c8 18 cmp x,#$18 +0c5f: d0 02 bne $0c63 +0c61: cd 00 mov x,#$00 +0c63: d8 eb mov $eb,x +0c65: e4 ea mov a,$ea +0c67: bc inc a +0c68: c4 ea mov $ea,a +0c6a: 68 18 cmp a,#$18 +0c6c: d0 0a bne $0c78 +0c6e: 22 08 set1 $08 +0c70: 32 09 clr1 $09 +0c72: 6f ret +0c73: fa ee ed mov ($ed),($ee) +0c76: 32 09 clr1 $09 +0c78: 6f ret +0c79: e4 f6 mov a,$f6 +0c7b: 8f b7 f1 mov $f1,#$b7 +0c7e: 2d push a +0c7f: 72 08 clr3 $08 +0c81: 3f e2 0c call $0ce2 +0c84: 62 08 set3 $08 +0c86: ae pop a +0c87: c4 f6 mov $f6,a +0c89: 6f ret +0c8a: 8d 00 mov y,#$00 +0c8c: e8 01 mov a,#$01 +0c8e: da 1a movw $1a,ya +0c90: e4 f6 mov a,$f6 +0c92: 2e f6 fb cbne $f6,$0c90 +0c95: 5d mov x,a +0c96: ba f4 movw ya,$f4 +0c98: ad 00 cmp y,#$00 +0c9a: f0 3e beq $0cda +0c9c: 8f b7 f1 mov $f1,#$b7 +0c9f: d8 f6 mov $f6,x +0ca1: c5 c5 0c mov $0cc5,a +0ca4: cc c6 0c mov $0cc6,y +0ca7: 7a 1a addw ya,$1a +0ca9: c5 cc 0c mov $0ccc,a +0cac: cc cd 0c mov $0ccd,y +0caf: 7a 1a addw ya,$1a +0cb1: c5 d3 0c mov $0cd3,a +0cb4: cc d4 0c mov $0cd4,y +0cb7: cd 00 mov x,#$00 +0cb9: e4 f6 mov a,$f6 +0cbb: 2e f6 fb cbne $f6,$0cb9 +0cbe: d0 02 bne $0cc2 +0cc0: 2f f7 bra $0cb9 +0cc2: e4 f4 mov a,$f4 +0cc4: d5 36 ba mov $ba36+x,a +0cc7: ba f5 movw ya,$f5 +0cc9: 30 c5 bmi $0c90 +0ccb: d5 37 ba mov $ba37+x,a +0cce: e4 f7 mov a,$f7 +0cd0: cb f6 mov $f6,y +0cd2: d5 38 ba mov $ba38+x,a +0cd5: 3d inc x +0cd6: 3d inc x +0cd7: 3d inc x +0cd8: 2f e8 bra $0cc2 +0cda: 8f b7 f1 mov $f1,#$b7 +0cdd: d8 ed mov $ed,x +0cdf: d8 f6 mov $f6,x +0ce1: 6f ret +0ce2: 3f 12 11 call $1112 +0ce5: 3f 08 11 call $1108 +0ce8: 22 07 set1 $07 +0cea: 6f ret +0ceb: c5 a2 03 mov $03a2,a +0cee: 6f ret +0cef: e8 00 mov a,#$00 +0cf1: c5 43 02 mov $0243,a +0cf4: 6f ret +0cf5: cd 01 mov x,#$01 +0cf7: 52 07 clr2 $07 +0cf9: 2f 02 bra $0cfd +0cfb: cd ff mov x,#$ff +0cfd: c5 43 02 mov $0243,a +0d00: c4 cf mov $cf,a +0d02: cb d1 mov $d1,y +0d04: d8 d0 mov $d0,x +0d06: 6f ret +0d07: 2d push a +0d08: dd mov a,y +0d09: 28 7f and a,#$7f +0d0b: c5 3e 02 mov $023e,a +0d0e: ae pop a +0d0f: 92 08 clr4 $08 +0d11: 2f 05 bra $0d18 +0d13: cc 40 02 mov $0240,y +0d16: 82 08 set4 $08 +0d18: 5f ae 0d jmp $0dae +0d1b: 3f 93 1c call $1c93 +0d1e: e5 fc 1e mov a,$1efc +0d21: c5 8b 06 mov $068b,a +0d24: e5 fd 1e mov a,$1efd +0d27: c5 8c 06 mov $068c,a +0d2a: 05 8b 06 or a,$068b +0d2d: f0 20 beq $0d4f +0d2f: 3f f0 16 call $16f0 +0d32: e5 8b 06 mov a,$068b +0d35: 80 setc +0d36: a8 01 sbc a,#$01 +0d38: c5 8b 06 mov $068b,a +0d3b: e5 8c 06 mov a,$068c +0d3e: a8 00 sbc a,#$00 +0d40: c5 8c 06 mov $068c,a +0d43: b0 ea bcs $0d2f +0d45: cd 07 mov x,#$07 +0d47: e8 00 mov a,#$00 +0d49: d5 43 01 mov $0143+x,a +0d4c: 1d dec x +0d4d: 10 fa bpl $0d49 +0d4f: 6f ret +0d50: 8d ff mov y,#$ff +0d52: cd 07 mov x,#$07 +0d54: ad 80 cmp y,#$80 +0d56: f0 04 beq $0d5c +0d58: ad ff cmp y,#$ff +0d5a: d0 08 bne $0d64 +0d5c: 82 07 set4 $07 +0d5e: 8f 00 89 mov $89,#$00 +0d61: 8f ff 0c mov $0c,#$ff +0d64: c4 77 mov $77,a +0d66: ad 80 cmp y,#$80 +0d68: f0 1b beq $0d85 +0d6a: f4 d2 mov a,$d2+x +0d6c: 68 ff cmp a,#$ff +0d6e: f0 30 beq $0da0 +0d70: 68 00 cmp a,#$00 +0d72: 10 06 bpl $0d7a +0d74: ad ff cmp y,#$ff +0d76: f0 0d beq $0d85 +0d78: 2f 26 bra $0da0 +0d7a: ad 00 cmp y,#$00 +0d7c: d0 07 bne $0d85 +0d7e: f5 1b 01 mov a,$011b+x +0d81: 64 77 cmp a,$77 +0d83: d0 1b bne $0da0 +0d85: f5 e7 07 mov a,$07e7+x +0d88: c4 f2 mov $f2,a +0d8a: 8f 9f f3 mov $f3,#$9f +0d8d: f5 ef 07 mov a,$07ef+x +0d90: e8 00 mov a,#$00 +0d92: d5 23 01 mov $0123+x,a +0d95: d4 6f mov $6f+x,a +0d97: d4 67 mov $67+x,a +0d99: f5 14 08 mov a,$0814+x +0d9c: 04 5c or a,$5c +0d9e: c4 5c mov $5c,a +0da0: 1d dec x +0da1: 10 c3 bpl $0d66 +0da3: 6f ret +0da4: 52 07 clr2 $07 +0da6: 5f fb 0c jmp $0cfb +0da9: 42 07 set2 $07 +0dab: 5f fb 0c jmp $0cfb +0dae: 8d 0e mov y,#$0e +0db0: c4 77 mov $77,a +0db2: 3f 63 10 call $1063 +0db5: da 22 movw $22,ya +0db7: 8d 00 mov y,#$00 +0db9: f7 22 mov a,($22)+y +0dbb: c4 52 mov $52,a +0dbd: 3a 22 incw $22 +0dbf: 8d 07 mov y,#$07 +0dc1: f7 22 mov a,($22)+y +0dc3: 24 0c and a,$0c +0dc5: c4 53 mov $53,a +0dc7: 8d 06 mov y,#$06 +0dc9: f7 22 mov a,($22)+y +0dcb: c4 54 mov $54,a +0dcd: 8f 80 55 mov $55,#$80 +0dd0: cd 07 mov x,#$07 +0dd2: 3f 89 0e call $0e89 +0dd5: 10 03 bpl $0dda +0dd7: 5f 5b 0e jmp $0e5b +0dda: 83 08 07 bbs4 $08,$0de4 +0ddd: e8 02 mov a,#$02 +0ddf: 15 46 02 or a,$0246+x +0de2: 2f 05 bra $0de9 +0de4: e8 fd mov a,#$fd +0de6: 35 46 02 and a,$0246+x +0de9: d5 46 02 mov $0246+x,a +0dec: e8 80 mov a,#$80 +0dee: d4 6f mov $6f+x,a +0df0: e5 3e 02 mov a,$023e +0df3: d4 d2 mov $d2+x,a +0df5: e5 3f 02 mov a,$023f +0df8: d5 92 03 mov $0392+x,a +0dfb: e5 40 02 mov a,$0240 +0dfe: d5 9a 03 mov $039a+x,a +0e01: e5 8e 03 mov a,$038e +0e04: c4 0f mov $0f,a +0e06: e5 90 03 mov a,$0390 +0e09: c4 0e mov $0e,a +0e0b: e5 8f 03 mov a,$038f +0e0e: c4 10 mov $10,a +0e10: e5 91 03 mov a,$0391 +0e13: c4 11 mov $11,a +0e15: 7d mov a,x +0e16: 1c asl a +0e17: fd mov y,a +0e18: e8 00 mov a,#$00 +0e1a: d6 5b 01 mov $015b+y,a +0e1d: d6 5c 01 mov $015c+y,a +0e20: c5 3d 02 mov $023d,a +0e23: e5 41 02 mov a,$0241 +0e26: d6 da 00 mov $00da+y,a +0e29: e5 42 02 mov a,$0242 +0e2c: d6 db 00 mov $00db+y,a +0e2f: e4 77 mov a,$77 +0e31: d5 1b 01 mov $011b+x,a +0e34: 8d 02 mov y,#$02 +0e36: f7 22 mov a,($22)+y +0e38: c4 4e mov $4e,a +0e3a: fc inc y +0e3b: f7 22 mov a,($22)+y +0e3d: c4 4f mov $4f,a +0e3f: 8d 04 mov y,#$04 +0e41: f7 22 mov a,($22)+y +0e43: c4 50 mov $50,a +0e45: fc inc y +0e46: f7 22 mov a,($22)+y +0e48: c4 51 mov $51,a +0e4a: 8d 01 mov y,#$01 +0e4c: f7 22 mov a,($22)+y +0e4e: 2d push a +0e4f: 8d 00 mov y,#$00 +0e51: f7 22 mov a,($22)+y +0e53: 02 07 set0 $07 +0e55: ee pop y +0e56: 72 07 clr3 $07 +0e58: 3f 04 0f call $0f04 +0e5b: 60 clrc +0e5c: 98 08 22 adc $22,#$08 +0e5f: 90 02 bcc $0e63 +0e61: ab 23 inc $23 +0e63: 8b 52 dec $52 +0e65: f0 03 beq $0e6a +0e67: 5f bf 0d jmp $0dbf +0e6a: e8 00 mov a,#$00 +0e6c: c5 3e 02 mov $023e,a +0e6f: c5 41 02 mov $0241,a +0e72: c5 42 02 mov $0242,a +0e75: c5 40 02 mov $0240,a +0e78: c5 8e 03 mov $038e,a +0e7b: c5 90 03 mov $0390,a +0e7e: c5 8f 03 mov $038f,a +0e81: c5 91 03 mov $0391,a +0e84: 9c dec a +0e85: c5 3f 02 mov $023f,a +0e88: 6f ret +0e89: 8f 01 0b mov $0b,#$01 +0e8c: 03 09 03 bbs0 $09,$0e92 +0e8f: 8f 00 0b mov $0b,#$00 +0e92: 83 0b 5a bbs4 $0b,$0eef +0e95: 8d 07 mov y,#$07 +0e97: 8f ff 3a mov $3a,#$ff +0e9a: 8f ff 3b mov $3b,#$ff +0e9d: 73 0b 08 bbc3 $0b,$0ea8 +0ea0: c8 08 cmp x,#$08 +0ea2: b0 4b bcs $0eef +0ea4: 8d 00 mov y,#$00 +0ea6: 2f 09 bra $0eb1 +0ea8: 3f f3 0b call $0bf3 +0eab: e4 55 mov a,$55 +0ead: 24 53 and a,$53 +0eaf: f0 1f beq $0ed0 +0eb1: f4 6f mov a,$6f+x +0eb3: f0 41 beq $0ef6 +0eb5: e4 54 mov a,$54 +0eb7: 03 0b 06 bbs0 $0b,$0ec0 +0eba: 74 12 cmp a,$12+x +0ebc: b0 38 bcs $0ef6 +0ebe: 2f 10 bra $0ed0 +0ec0: 74 12 cmp a,$12+x +0ec2: f0 0c beq $0ed0 +0ec4: 90 0a bcc $0ed0 +0ec6: f4 12 mov a,$12+x +0ec8: 64 3b cmp a,$3b +0eca: b0 04 bcs $0ed0 +0ecc: c4 3b mov $3b,a +0ece: d8 3a mov $3a,x +0ed0: 53 0b 0c bbc2 $0b,$0edf +0ed3: 0b 55 asl $55 +0ed5: d0 05 bne $0edc +0ed7: 8f 01 55 mov $55,#$01 +0eda: cd ff mov x,#$ff +0edc: 3d inc x +0edd: 2f 0a bra $0ee9 +0edf: 4b 55 lsr $55 +0ee1: d0 05 bne $0ee8 +0ee3: 8f 80 55 mov $55,#$80 +0ee6: cd 08 mov x,#$08 +0ee8: 1d dec x +0ee9: dc dec y +0eea: 10 bc bpl $0ea8 +0eec: 03 0b 03 bbs0 $0b,$0ef2 +0eef: e8 ff mov a,#$ff +0ef1: 6f ret +0ef2: f8 3a mov x,$3a +0ef4: 30 f9 bmi $0eef +0ef6: 33 0b 04 bbc1 $0b,$0efd +0ef9: f4 6f mov a,$6f+x +0efb: d0 f2 bne $0eef +0efd: e4 54 mov a,$54 +0eff: d4 12 mov $12+x,a +0f01: e8 00 mov a,#$00 +0f03: 6f ret +0f04: d8 28 mov $28,x +0f06: d8 4c mov $4c,x +0f08: 2d push a +0f09: f5 46 02 mov a,$0246+x +0f0c: 28 fe and a,#$fe +0f0e: d5 46 02 mov $0246+x,a +0f11: 63 07 08 bbs3 $07,$0f1c +0f14: f5 e7 07 mov a,$07e7+x +0f17: c4 f2 mov $f2,a +0f19: 8f 9f f3 mov $f3,#$9f +0f1c: dd mov a,y +0f1d: d5 43 01 mov $0143+x,a +0f20: 7d mov a,x +0f21: 1c asl a +0f22: 5d mov x,a +0f23: e4 50 mov a,$50 +0f25: d5 d4 fc mov $fcd4+x,a +0f28: e4 51 mov a,$51 +0f2a: d5 d5 fc mov $fcd5+x,a +0f2d: e4 4e mov a,$4e +0f2f: d4 78 mov $78+x,a +0f31: e4 4f mov a,$4f +0f33: d4 79 mov $79+x,a +0f35: ae pop a +0f36: 8d 02 mov y,#$02 +0f38: 3f 63 10 call $1063 +0f3b: da 20 movw $20,ya +0f3d: f8 4c mov x,$4c +0f3f: f5 14 08 mov a,$0814+x +0f42: c4 65 mov $65,a +0f44: 48 ff eor a,#$ff +0f46: c4 66 mov $66,a +0f48: e4 57 mov a,$57 +0f4a: 63 07 05 bbs3 $07,$0f52 +0f4d: 35 1c 08 and a,$081c+x +0f50: 2f 03 bra $0f55 +0f52: 15 14 08 or a,$0814+x +0f55: c4 57 mov $57,a +0f57: 8d 00 mov y,#$00 +0f59: f7 20 mov a,($20)+y +0f5b: d4 67 mov $67+x,a +0f5d: c4 4d mov $4d,a +0f5f: 8f 2d f2 mov $f2,#$2d +0f62: 28 20 and a,#$20 +0f64: f0 05 beq $0f6b +0f66: 09 65 f3 or ($f3),($65) +0f69: 2f 03 bra $0f6e +0f6b: 29 66 f3 and ($f3),($66) +0f6e: 63 07 50 bbs3 $07,$0fc1 +0f71: b0 4e bcs $0fc1 +0f73: 93 4d 45 bbc4 $4d,$0fbb +0f76: 13 08 05 bbc0 $08,$0f7e +0f79: e5 06 01 mov a,$0106 +0f7c: 2f 04 bra $0f82 +0f7e: 8d 05 mov y,#$05 +0f80: f7 20 mov a,($20)+y +0f82: 8d 0c mov y,#$0c +0f84: 3f 63 10 call $1063 +0f87: 8d 00 mov y,#$00 +0f89: f6 24 08 mov a,$0824+y +0f8c: c4 f2 mov $f2,a +0f8e: f7 29 mov a,($29)+y +0f90: ad 01 cmp y,#$01 +0f92: f0 08 beq $0f9c +0f94: ad 03 cmp y,#$03 +0f96: f0 0f beq $0fa7 +0f98: ad 02 cmp y,#$02 +0f9a: d0 10 bne $0fac +0f9c: d6 43 02 mov $0243+y,a +0f9f: 65 3b 02 cmp a,$023b +0fa2: 90 03 bcc $0fa7 +0fa4: e5 3b 02 mov a,$023b +0fa7: d6 37 02 mov $0237+y,a +0faa: 2f 02 bra $0fae +0fac: c4 f3 mov $f3,a +0fae: fc inc y +0faf: ad 0c cmp y,#$0c +0fb1: 90 d6 bcc $0f89 +0fb3: 8f 4d f2 mov $f2,#$4d +0fb6: 09 65 f3 or ($f3),($65) +0fb9: 2f 06 bra $0fc1 +0fbb: 8f 4d f2 mov $f2,#$4d +0fbe: 29 66 f3 and ($f3),($66) +0fc1: e4 4c mov a,$4c +0fc3: 60 clrc +0fc4: 88 00 adc a,#$00 +0fc6: c4 2d mov $2d,a +0fc8: 8d 01 mov y,#$01 +0fca: f7 20 mov a,($20)+y +0fcc: 03 4d 08 bbs0 $4d,$0fd7 +0fcf: f8 4c mov x,$4c +0fd1: d5 23 01 mov $0123+x,a +0fd4: 5f e2 0f jmp $0fe2 +0fd7: 8d 04 mov y,#$04 +0fd9: 3f 63 10 call $1063 +0fdc: fa 0f 0d mov ($0d),($0f) +0fdf: 3f ac 11 call $11ac +0fe2: e4 4c mov a,$4c +0fe4: 60 clrc +0fe5: 88 08 adc a,#$08 +0fe7: c4 2d mov $2d,a +0fe9: 53 4d 13 bbc2 $4d,$0fff +0fec: 8d 03 mov y,#$03 +0fee: f7 20 mov a,($20)+y +0ff0: 8d 06 mov y,#$06 +0ff2: 3f 63 10 call $1063 +0ff5: fa 10 0d mov ($0d),($10) +0ff8: 42 08 set2 $08 +0ffa: 3f ac 11 call $11ac +0ffd: 52 08 clr2 $08 +0fff: e4 4c mov a,$4c +1001: 60 clrc +1002: 88 18 adc a,#$18 +1004: c4 2d mov $2d,a +1006: 63 07 57 bbs3 $07,$1060 +1009: 8d 04 mov y,#$04 +100b: f7 20 mov a,($20)+y +100d: 63 4d 08 bbs3 $4d,$1018 +1010: f8 4c mov x,$4c +1012: d5 e4 fc mov $fce4+x,a +1015: 5f 39 10 jmp $1039 +1018: 8d 08 mov y,#$08 +101a: 3f 63 10 call $1063 +101d: fa 11 0d mov ($0d),($11) +1020: 3f ac 11 call $11ac +1023: eb 2d mov y,$2d +1025: f6 e3 04 mov a,$04e3+y +1028: f0 0a beq $1034 +102a: f6 c3 03 mov a,$03c3+y +102d: d0 05 bne $1034 +102f: e8 ff mov a,#$ff +1031: 5f 36 10 jmp $1036 +1034: e8 00 mov a,#$00 +1036: d6 c3 03 mov $03c3+y,a +1039: e4 4c mov a,$4c +103b: 60 clrc +103c: 88 10 adc a,#$10 +103e: c4 2d mov $2d,a +1040: 8d 02 mov y,#$02 +1042: f7 20 mov a,($20)+y +1044: 23 4d 08 bbs1 $4d,$104f +1047: f8 4c mov x,$4c +1049: d5 ec fc mov $fcec+x,a +104c: 5f 5a 10 jmp $105a +104f: 8d 0a mov y,#$0a +1051: 3f 63 10 call $1063 +1054: fa 0e 0d mov ($0d),($0e) +1057: 3f ac 11 call $11ac +105a: 09 65 5c or ($5c),($65) +105d: 09 65 56 or ($56),($65) +1060: 72 07 clr3 $07 +1062: 6f ret +1063: 3f f3 0b call $0bf3 +1066: 8f 00 1f mov $1f,#$00 +1069: 1c asl a +106a: 2b 1f rol $1f +106c: 60 clrc +106d: 96 e0 1e adc a,$1ee0+y +1070: c4 1e mov $1e,a +1072: e4 1f mov a,$1f +1074: 96 e1 1e adc a,$1ee1+y +1077: c4 1f mov $1f,a +1079: 8d 01 mov y,#$01 +107b: f7 1e mov a,($1e)+y +107d: c4 2a mov $2a,a +107f: dc dec y +1080: f7 1e mov a,($1e)+y +1082: c4 29 mov $29,a +1084: eb 2a mov y,$2a +1086: 6f ret +1087: 4a 06 1c and1 c,$1c06,0 +108a: 1a 4a decw $4a +108c: 06 or a,(x) +108d: 1c asl a +108e: 1a 06 decw $06 +1090: 1c asl a +1091: 1a 4a decw $4a +1093: 06 or a,(x) +1094: 1c asl a +1095: 1a 4a decw $4a +1097: 06 or a,(x) +1098: 1c asl a +1099: 1a 4a decw $4a +109b: 06 or a,(x) +109c: 1c asl a +109d: 1a 4a decw $4a +109f: 3f ed 10 call $10ed +10a2: cd 51 mov x,#$51 +10a4: 8d 11 mov y,#$11 +10a6: 3f 3a 11 call $113a +10a9: e8 00 mov a,#$00 +10ab: 5d mov x,a +10ac: fd mov y,a +10ad: d5 00 01 mov $0100+x,a +10b0: af mov (x)+,a +10b1: c8 f0 cmp x,#$f0 +10b3: 90 f8 bcc $10ad +10b5: 5d mov x,a +10b6: d5 00 02 mov $0200+x,a +10b9: d5 00 03 mov $0300+x,a +10bc: d5 00 04 mov $0400+x,a +10bf: d5 00 05 mov $0500+x,a +10c2: d5 00 06 mov $0600+x,a +10c5: d5 00 fc mov $fc00+x,a +10c8: d5 00 fd mov $fd00+x,a +10cb: d5 00 ff mov $ff00+x,a +10ce: 3d inc x +10cf: d0 e5 bne $10b6 +10d1: e8 ff mov a,#$ff +10d3: c4 58 mov $58,a +10d5: c4 5a mov $5a,a +10d7: c4 63 mov $63,a +10d9: c4 59 mov $59,a +10db: c4 5e mov $5e,a +10dd: c4 5f mov $5f,a +10df: c4 60 mov $60,a +10e1: c5 3f 02 mov $023f,a +10e4: c4 05 mov $05,a +10e6: c4 06 mov $06,a +10e8: c4 0c mov $0c,a +10ea: 82 07 set4 $07 +10ec: 6f ret +10ed: cd 14 mov x,#$14 +10ef: e8 00 mov a,#$00 +10f1: d5 28 02 mov $0228+x,a +10f4: 1d dec x +10f5: 10 fa bpl $10f1 +10f7: 8f 10 3a mov $3a,#$10 +10fa: 8d 10 mov y,#$10 +10fc: 3f 4a 07 call $074a +10ff: 68 00 cmp a,#$00 +1101: f0 04 beq $1107 +1103: 8b 3a dec $3a +1105: d0 f0 bne $10f7 +1107: 6f ret +1108: e8 7f mov a,#$7f +110a: c5 3b 02 mov $023b,a +110d: c5 3c 02 mov $023c,a +1110: 2f e5 bra $10f7 +1112: e5 e1 1e mov a,$1ee1 +1115: 8f 6d f2 mov $f2,#$6d +1118: c4 f3 mov $f3,a +111a: 68 ff cmp a,#$ff +111c: f0 1b beq $1139 +111e: c4 01 mov $01,a +1120: e8 00 mov a,#$00 +1122: fd mov y,a +1123: c4 00 mov $00,a +1125: d7 00 mov ($00)+y,a +1127: fe fc dbnz y,$1125 +1129: ab 01 inc $01 +112b: 78 fc 01 cmp $01,#$fc +112e: d0 f5 bne $1125 +1130: 8f 6c f2 mov $f2,#$6c +1133: e8 df mov a,#$df +1135: 24 f3 and a,$f3 +1137: c4 f3 mov $f3,a +1139: 6f ret +113a: d8 00 mov $00,x +113c: cb 01 mov $01,y +113e: 8d 00 mov y,#$00 +1140: f7 00 mov a,($00)+y +1142: 68 ff cmp a,#$ff +1144: f0 0a beq $1150 +1146: c4 f2 mov $f2,a +1148: fc inc y +1149: f7 00 mov a,($00)+y +114b: c4 f3 mov $f3,a +114d: fc inc y +114e: d0 f0 bne $1140 +1150: 6f ret + +1151: db $3d,$00,$4d,$00,$0d,$00,$7d,$00,$0f,$00,$1f,$00,$2f,$00,$3f,$00,$4f,$00,$5f,$00,$6f,$00,$7f,$00,$6d,$ff,$2c,$00,$3c,$00,$0c,$00,$1c,$00,$5d,$02,$5c,$00,$2d,$00,$04,$08,$14,$08,$24,$08,$34,$08,$44,$08,$54,$08,$64,$08,$74,$08,$07,$00,$17,$00,$27,$00,$37,$00,$47,$00,$57,$00,$67,$00,$77,$00,$05,$00,$15,$00,$25,$00,$35,$00,$45,$00,$55,$00,$65,$00,$75,$00,$7c,$00,$ff + +11ac: 3f f3 0b call $0bf3 +11af: f8 2d mov x,$2d +11b1: 8d 07 mov y,#$07 +11b3: f7 29 mov a,($29)+y +11b5: d5 e3 04 mov $04e3+x,a +11b8: dc dec y +11b9: dc dec y +11ba: f7 29 mov a,($29)+y +11bc: d5 03 04 mov $0403+x,a +11bf: dc dec y +11c0: f7 29 mov a,($29)+y +11c2: d5 c3 04 mov $04c3+x,a +11c5: dc dec y +11c6: f7 29 mov a,($29)+y +11c8: d5 23 04 mov $0423+x,a +11cb: dc dec y +11cc: f7 29 mov a,($29)+y +11ce: d5 43 04 mov $0443+x,a +11d1: dc dec y +11d2: f7 29 mov a,($29)+y +11d4: d5 83 04 mov $0483+x,a +11d7: dc dec y +11d8: f7 29 mov a,($29)+y +11da: d5 63 04 mov $0463+x,a +11dd: eb 2d mov y,$2d +11df: e4 29 mov a,$29 +11e1: 60 clrc +11e2: 88 08 adc a,#$08 +11e4: d6 43 05 mov $0543+y,a +11e7: e4 2a mov a,$2a +11e9: 88 00 adc a,#$00 +11eb: d6 63 05 mov $0563+y,a +11ee: f6 23 04 mov a,$0423+y +11f1: cd 00 mov x,#$00 +11f3: eb 0d mov y,$0d +11f5: f0 23 beq $121a +11f7: cf mul ya +11f8: cb 3a mov $3a,y +11fa: c4 3b mov $3b,a +11fc: cd 05 mov x,#$05 +11fe: 4b 3a lsr $3a +1200: 7c ror a +1201: 1d dec x +1202: d0 fa bne $11fe +1204: eb 3a mov y,$3a +1206: ad 00 cmp y,#$00 +1208: d0 08 bne $1212 +120a: 68 00 cmp a,#$00 +120c: f0 0a beq $1218 +120e: f8 3b mov x,$3b +1210: 2f 08 bra $121a +1212: cd 01 mov x,#$01 +1214: e8 ff mov a,#$ff +1216: 2f 02 bra $121a +1218: 5d mov x,a +1219: bc inc a +121a: eb 2d mov y,$2d +121c: d6 23 04 mov $0423+y,a +121f: 7d mov a,x +1220: 48 ff eor a,#$ff +1222: 08 e0 or a,#$e0 +1224: d6 a3 03 mov $03a3+y,a +1227: e8 ff mov a,#$ff +1229: d6 e3 03 mov $03e3+y,a +122c: 3f f3 0b call $0bf3 +122f: 5d mov x,a +1230: f6 43 04 mov a,$0443+y +1233: fd mov y,a +1234: 7d mov a,x +1235: cf mul ya +1236: da 45 movw $45,ya +1238: 03 07 06 bbs0 $07,$1241 +123b: ba 05 movw ya,$05 +123d: da 45 movw $45,ya +123f: 2f 0a bra $124b +1241: ba 4e movw ya,$4e +1243: 9a 45 subw ya,$45 +1245: b0 02 bcs $1249 +1247: ba 4e movw ya,$4e +1249: cb 46 mov $46,y +124b: eb 2d mov y,$2d +124d: d6 83 05 mov $0583+y,a +1250: e4 46 mov a,$46 +1252: d6 a3 05 mov $05a3+y,a +1255: f6 23 04 mov a,$0423+y +1258: bc inc a +1259: d0 01 bne $125c +125b: 9c dec a +125c: d6 03 05 mov $0503+y,a +125f: 68 03 cmp a,#$03 +1261: b0 05 bcs $1268 +1263: e8 00 mov a,#$00 +1265: d6 c3 04 mov $04c3+y,a +1268: e8 01 mov a,#$01 +126a: d6 a3 04 mov $04a3+y,a +126d: 9c dec a +126e: d6 23 05 mov $0523+y,a +1271: d6 44 ff mov $ff44+y,a +1274: d6 64 ff mov $ff64+y,a +1277: c4 37 mov $37,a +1279: 5f 4e 13 jmp $134e +127c: eb 2d mov y,$2d +127e: b2 07 clr5 $07 +1280: f6 c3 04 mov a,$04c3+y +1283: c4 37 mov $37,a +1285: f6 a3 04 mov a,$04a3+y +1288: f0 42 beq $12cc +128a: f6 a3 03 mov a,$03a3+y +128d: 60 clrc +128e: 96 e3 03 adc a,$03e3+y +1291: d6 e3 03 mov $03e3+y,a +1294: 90 18 bcc $12ae +1296: f6 03 05 mov a,$0503+y +1299: c4 38 mov $38,a +129b: f0 03 beq $12a0 +129d: 9c dec a +129e: d0 03 bne $12a3 +12a0: f6 23 04 mov a,$0423+y +12a3: d6 03 05 mov $0503+y,a +12a6: 78 02 38 cmp $38,#$02 +12a9: 90 08 bcc $12b3 +12ab: 5f 4e 13 jmp $134e +12ae: 8f 00 37 mov $37,#$00 +12b1: 2f f8 bra $12ab +12b3: eb 2d mov y,$2d +12b5: f6 23 05 mov a,$0523+y +12b8: bc inc a +12b9: 76 03 04 cmp a,$0403+y +12bc: 90 1b bcc $12d9 +12be: 9c dec a +12bf: 76 83 04 cmp a,$0483+y +12c2: d0 03 bne $12c7 +12c4: 5f 48 13 jmp $1348 +12c7: e8 00 mov a,#$00 +12c9: d6 a3 04 mov $04a3+y,a +12cc: a2 07 set5 $07 +12ce: f6 24 ff mov a,$ff24+y +12d1: 2d push a +12d2: f6 04 ff mov a,$ff04+y +12d5: ee pop y +12d6: 5f ff 13 jmp $13ff +12d9: d6 23 05 mov $0523+y,a +12dc: f6 a3 05 mov a,$05a3+y +12df: 16 83 05 or a,$0583+y +12e2: f0 6a beq $134e +12e4: f8 28 mov x,$28 +12e6: f5 46 02 mov a,$0246+x +12e9: 28 02 and a,#$02 +12eb: f0 24 beq $1311 +12ed: e8 01 mov a,#$01 +12ef: 74 6f cmp a,$6f+x +12f1: d0 03 bne $12f6 +12f3: 83 07 09 bbs4 $07,$12ff +12f6: eb 28 mov y,$28 +12f8: f6 46 02 mov a,$0246+y +12fb: 28 01 and a,#$01 +12fd: f0 3d beq $133c +12ff: e8 00 mov a,#$00 +1301: d6 78 00 mov $0078+y,a +1304: d6 79 00 mov $0079+y,a +1307: eb 2d mov y,$2d +1309: d6 83 05 mov $0583+y,a +130c: d6 a3 05 mov $05a3+y,a +130f: 2f 21 bra $1332 +1311: f6 83 05 mov a,$0583+y +1314: 80 setc +1315: b6 23 04 sbc a,$0423+y +1318: d6 83 05 mov $0583+y,a +131b: c4 45 mov $45,a +131d: f6 a3 05 mov a,$05a3+y +1320: a8 00 sbc a,#$00 +1322: b0 07 bcs $132b +1324: e8 00 mov a,#$00 +1326: d6 83 05 mov $0583+y,a +1329: c4 45 mov $45,a +132b: d6 a3 05 mov $05a3+y,a +132e: 04 45 or a,$45 +1330: d0 0a bne $133c +1332: f6 83 04 mov a,$0483+y +1335: 76 03 04 cmp a,$0403+y +1338: 90 11 bcc $134b +133a: a2 07 set5 $07 +133c: eb 2d mov y,$2d +133e: f6 23 05 mov a,$0523+y +1341: 76 83 04 cmp a,$0483+y +1344: 90 08 bcc $134e +1346: f0 06 beq $134e +1348: f6 63 04 mov a,$0463+y +134b: d6 23 05 mov $0523+y,a +134e: eb 2d mov y,$2d +1350: f8 37 mov x,$37 +1352: f0 1c beq $1370 +1354: 78 03 38 cmp $38,#$03 +1357: 90 17 bcc $1370 +1359: f6 04 ff mov a,$ff04+y +135c: c4 33 mov $33,a +135e: f6 24 ff mov a,$ff24+y +1361: c4 34 mov $34,a +1363: f6 44 ff mov a,$ff44+y +1366: c4 35 mov $35,a +1368: f6 64 ff mov a,$ff64+y +136b: c4 36 mov $36,a +136d: 5f ed 13 jmp $13ed +1370: f6 43 05 mov a,$0543+y +1373: c4 2b mov $2b,a +1375: f6 63 05 mov a,$0563+y +1378: c4 2c mov $2c,a +137a: f6 23 05 mov a,$0523+y +137d: fd mov y,a +137e: 43 08 07 bbs2 $08,$1388 +1381: f7 2b mov a,($2b)+y +1383: 8d 40 mov y,#$40 +1385: cf mul ya +1386: 2f 10 bra $1398 +1388: 8d 02 mov y,#$02 +138a: cf mul ya +138b: 7a 2b addw ya,$2b +138d: da 2b movw $2b,ya +138f: 8d 01 mov y,#$01 +1391: f7 2b mov a,($2b)+y +1393: dc dec y +1394: 2d push a +1395: f7 2b mov a,($2b)+y +1397: ee pop y +1398: f8 37 mov x,$37 +139a: f0 55 beq $13f1 +139c: 78 02 38 cmp $38,#$02 +139f: f0 50 beq $13f1 +13a1: da 3a movw $3a,ya +13a3: eb 2d mov y,$2d +13a5: f6 24 ff mov a,$ff24+y +13a8: c4 34 mov $34,a +13aa: f6 04 ff mov a,$ff04+y +13ad: c4 33 mov $33,a +13af: eb 34 mov y,$34 +13b1: 80 setc +13b2: 9a 3a subw ya,$3a +13b4: da 35 movw $35,ya +13b6: e8 00 mov a,#$00 +13b8: 3c rol a +13b9: c4 3a mov $3a,a +13bb: d0 08 bne $13c5 +13bd: 58 ff 35 eor $35,#$ff +13c0: 58 ff 36 eor $36,#$ff +13c3: 3a 35 incw $35 +13c5: eb 2d mov y,$2d +13c7: f6 23 04 mov a,$0423+y +13ca: 5d mov x,a +13cb: ba 35 movw ya,$35 +13cd: 3f 0a 14 call $140a +13d0: c4 35 mov $35,a +13d2: d8 36 mov $36,x +13d4: 78 01 3a cmp $3a,#$01 +13d7: d0 08 bne $13e1 +13d9: 58 ff 35 eor $35,#$ff +13dc: 58 ff 36 eor $36,#$ff +13df: 3a 35 incw $35 +13e1: eb 2d mov y,$2d +13e3: e4 35 mov a,$35 +13e5: d6 44 ff mov $ff44+y,a +13e8: e4 36 mov a,$36 +13ea: d6 64 ff mov $ff64+y,a +13ed: ba 33 movw ya,$33 +13ef: 7a 35 addw ya,$35 +13f1: da 33 movw $33,ya +13f3: eb 2d mov y,$2d +13f5: d6 04 ff mov $ff04+y,a +13f8: e4 34 mov a,$34 +13fa: d6 24 ff mov $ff24+y,a +13fd: ba 33 movw ya,$33 +13ff: 43 08 07 bbs2 $08,$1409 +1402: cd 40 mov x,#$40 +1404: 9e div ya,x +1405: 8d 00 mov y,#$00 +1407: da 33 movw $33,ya +1409: 6f ret +140a: c8 00 cmp x,#$00 +140c: d0 04 bne $1412 +140e: 1d dec x +140f: 7d mov a,x +1410: fd mov y,a +1411: 6f ret +1412: 40 setp +1413: cb 01 mov $01,y +1415: 3e 01 cmp x,$01 +1417: f0 02 beq $141b +1419: b0 1a bcs $1435 +141b: c4 00 mov $00,a +141d: dd mov a,y +141e: 8d 00 mov y,#$00 +1420: 9e div ya,x +1421: c4 02 mov $02,a +1423: fd mov y,a +1424: 7d mov a,x +1425: cf mul ya +1426: c4 03 mov $03,a +1428: e4 01 mov a,$01 +142a: 80 setc +142b: a4 03 sbc a,$03 +142d: fd mov y,a +142e: e4 00 mov a,$00 +1430: 9e div ya,x +1431: f8 02 mov x,$02 +1433: 20 clrp +1434: 6f ret +1435: 9e div ya,x +1436: cd 00 mov x,#$00 +1438: 20 clrp +1439: 6f ret +143a: 4d push x +143b: f5 f4 fc mov a,$fcf4+x +143e: 8d 04 mov y,#$04 +1440: cf mul ya +1441: 7a 24 addw ya,$24 +1443: da 00 movw $00,ya +1445: f5 ef 07 mov a,$07ef+x +1448: c4 f2 mov $f2,a +144a: 7d mov a,x +144b: 1c asl a +144c: 1c asl a +144d: 5d mov x,a +144e: f5 02 02 mov a,$0202+x +1451: c5 26 02 mov $0226,a +1454: f5 03 02 mov a,$0203+x +1457: c5 27 02 mov $0227,a +145a: 8f 09 f3 mov $f3,#$09 +145d: 8d 00 mov y,#$00 +145f: f7 00 mov a,($00)+y +1461: d5 00 02 mov $0200+x,a +1464: fc inc y +1465: f7 00 mov a,($00)+y +1467: d5 01 02 mov $0201+x,a +146a: fc inc y +146b: f7 00 mov a,($00)+y +146d: d5 02 02 mov $0202+x,a +1470: fc inc y +1471: f7 00 mov a,($00)+y +1473: d5 03 02 mov $0203+x,a +1476: 8d 01 mov y,#$01 +1478: f7 00 mov a,($00)+y +147a: c4 3d mov $3d,a +147c: dc dec y +147d: f7 00 mov a,($00)+y +147f: 80 setc +1480: a8 03 sbc a,#$03 +1482: c4 3c mov $3c,a +1484: b8 00 3d sbc $3d,#$00 +1487: f7 3c mov a,($3c)+y +1489: c5 04 01 mov $0104,a +148c: fc inc y +148d: f7 3c mov a,($3c)+y +148f: c5 05 01 mov $0105,a +1492: fc inc y +1493: f7 3c mov a,($3c)+y +1495: c4 64 mov $64,a +1497: 10 14 bpl $14ad +1499: 28 1f and a,#$1f +149b: 8f 6c f2 mov $f2,#$6c +149e: 38 e0 f3 and $f3,#$e0 +14a1: 04 f3 or a,$f3 +14a3: c4 f3 mov $f3,a +14a5: 8f 3d f2 mov $f2,#$3d +14a8: 09 4a f3 or ($f3),($4a) +14ab: 2f 06 bra $14b3 +14ad: 8f 3d f2 mov $f2,#$3d +14b0: 29 4b f3 and ($f3),($4b) +14b3: ce pop x +14b4: f5 ef 07 mov a,$07ef+x +14b7: c4 f2 mov $f2,a +14b9: d8 f3 mov $f3,x +14bb: 6f ret +14bc: 60 clrc +14bd: 88 a0 adc a,#$a0 +14bf: 5d mov x,a +14c0: dd mov a,y +14c1: 88 05 adc a,#$05 +14c3: fd mov y,a +14c4: 7d mov a,x +14c5: ad 0a cmp y,#$0a +14c7: 90 06 bcc $14cf +14c9: d0 0a bne $14d5 +14cb: 68 50 cmp a,#$50 +14cd: b0 06 bcs $14d5 +14cf: 8f ff 44 mov $44,#$ff +14d2: 5f eb 14 jmp $14eb +14d5: ad 80 cmp y,#$80 +14d7: 90 0f bcc $14e8 +14d9: 8f 00 44 mov $44,#$00 +14dc: 60 clrc +14dd: 88 20 adc a,#$20 +14df: 5d mov x,a +14e0: dd mov a,y +14e1: 88 df adc a,#$df +14e3: fd mov y,a +14e4: 7d mov a,x +14e5: 5f eb 14 jmp $14eb +14e8: 8f 0a 44 mov $44,#$0a +14eb: cd f0 mov x,#$f0 +14ed: 9e div ya,x +14ee: 78 ff 44 cmp $44,#$ff +14f1: d0 02 bne $14f5 +14f3: c4 44 mov $44,a +14f5: f6 10 15 mov a,$1510+y +14f8: c4 3a mov $3a,a +14fa: f6 00 16 mov a,$1600+y +14fd: c4 3b mov $3b,a +14ff: e8 0a mov a,#$0a +1501: 80 setc +1502: a4 44 sbc a,$44 +1504: f0 07 beq $150d +1506: fd mov y,a +1507: 4b 3b lsr $3b +1509: 6b 3a ror $3a +150b: fe fa dbnz y,$1507 +150d: ba 3a movw ya,$3a +150f: 6f ret + +1510: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 +1600: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f + +16f0: 3f 6a 17 call $176a +16f3: 8f 00 8a mov $8a,#$00 +16f6: e4 89 mov a,$89 +16f8: f0 20 beq $171a +16fa: e4 88 mov a,$88 +16fc: 9c dec a +16fd: c4 8b mov $8b,a +16ff: 3f f3 0b call $0bf3 +1702: f8 8a mov x,$8a +1704: f5 07 01 mov a,$0107+x +1707: 30 0a bmi $1713 +1709: 5d mov x,a +170a: c4 8b mov $8b,a +170c: f5 66 03 mov a,$0366+x +170f: 5d mov x,a +1710: 1f f8 1d jmp ($1df8+x) +1713: ab 8a inc $8a +1715: 69 88 8a cmp ($8a),($88) +1718: d0 e5 bne $16ff +171a: 6f ret +171b: c4 3a mov $3a,a +171d: f6 67 00 mov a,$0067+y +1720: 28 80 and a,#$80 +1722: f0 08 beq $172c +1724: f6 12 00 mov a,$0012+y +1727: 9c dec a +1728: d6 12 00 mov $0012+y,a +172b: 6f ret +172c: f6 6f 00 mov a,$006f+y +172f: 64 3a cmp a,$3a +1731: d0 07 bne $173a +1733: f6 12 00 mov a,$0012+y +1736: 5c lsr a +1737: d6 12 00 mov $0012+y,a +173a: 6f ret +173b: 3f f3 0b call $0bf3 +173e: f8 8b mov x,$8b +1740: 9b b7 dec $b7+x +1742: d0 cf bne $1713 +1744: 2f 1c bra $1762 +1746: 3f f3 0b call $0bf3 +1749: f8 8b mov x,$8b +174b: 9b b7 dec $b7+x +174d: d0 c4 bne $1713 +174f: e8 04 mov a,#$04 +1751: d5 66 03 mov $0366+x,a +1754: 5f 56 18 jmp $1856 +1757: 3f b0 17 call $17b0 +175a: e8 00 mov a,#$00 +175c: d5 c6 02 mov $02c6+x,a +175f: d5 da 02 mov $02da+x,a +1762: e8 06 mov a,#$06 +1764: d5 66 03 mov $0366+x,a +1767: 5f e8 17 jmp $17e8 +176a: d3 07 2f bbc6 $07,$179c +176d: d2 07 clr6 $07 +176f: f8 88 mov x,$88 +1771: f0 29 beq $179c +1773: e8 ff mov a,#$ff +1775: 1d dec x +1776: d5 07 01 mov $0107+x,a +1779: 1d dec x +177a: 10 fa bpl $1776 +177c: f8 88 mov x,$88 +177e: 1d dec x +177f: 8f 00 3a mov $3a,#$00 +1782: eb 3a mov y,$3a +1784: f6 07 01 mov a,$0107+y +1787: 30 14 bmi $179d +1789: fd mov y,a +178a: f5 b2 02 mov a,$02b2+x +178d: 76 b2 02 cmp a,$02b2+y +1790: b0 0b bcs $179d +1792: ab 3a inc $3a +1794: 78 14 3a cmp $3a,#$14 +1797: d0 e9 bne $1782 +1799: 1d dec x +179a: 10 e3 bpl $177f +179c: 6f ret +179d: eb 3a mov y,$3a +179f: 4d push x +17a0: 40 setp +17a1: f6 07 01 mov a,$0107+y +17a4: d9 07 mov $07+y,x +17a6: 5d mov x,a +17a7: fc inc y +17a8: 68 ff cmp a,#$ff +17aa: d0 f5 bne $17a1 +17ac: ce pop x +17ad: 20 clrp +17ae: 2f e9 bra $1799 +17b0: f5 27 06 mov a,$0627+x +17b3: 30 1d bmi $17d2 +17b5: fd mov y,a +17b6: 7d mov a,x +17b7: 08 80 or a,#$80 +17b9: 76 d2 00 cmp a,$00d2+y +17bc: d0 14 bne $17d2 +17be: e8 01 mov a,#$01 +17c0: 16 46 02 or a,$0246+y +17c3: d6 46 02 mov $0246+y,a +17c6: e8 01 mov a,#$01 +17c8: 3f 1b 17 call $171b +17cb: f5 7a 03 mov a,$037a+x +17ce: 28 02 and a,#$02 +17d0: d0 00 bne $17d2 +17d2: 6f ret +17d3: c4 02 mov $02,a +17d5: 7d mov a,x +17d6: 8d 05 mov y,#$05 +17d8: cf mul ya +17d9: 60 clrc +17da: 84 02 adc a,$02 +17dc: fd mov y,a +17dd: cb 02 mov $02,y +17df: 6f ret +17e0: 01 tcall 0 +17e1: 02 04 set0 $04 +17e3: 08 10 or a,#$10 +17e5: 20 clrp +17e6: 40 setp +17e7: 80 setc +17e8: 3f f3 0b call $0bf3 +17eb: f8 8b mov x,$8b +17ed: f5 c6 02 mov a,$02c6+x +17f0: c4 3a mov $3a,a +17f2: f5 da 02 mov a,$02da+x +17f5: c4 3b mov $3b,a +17f7: 3f 29 1a call $1a29 +17fa: fd mov y,a +17fb: 28 0f and a,#$0f +17fd: 2d push a +17fe: dd mov a,y +17ff: 5c lsr a +1800: 5c lsr a +1801: 5c lsr a +1802: 5c lsr a +1803: f0 28 beq $182d +1805: 60 clrc +1806: 88 f8 adc a,#$f8 +1808: 8d 00 mov y,#$00 +180a: 68 00 cmp a,#$00 +180c: 10 01 bpl $180f +180e: dc dec y +180f: 7a 3a addw ya,$3a +1811: d5 c6 02 mov $02c6+x,a +1814: dd mov a,y +1815: d5 da 02 mov $02da+x,a +1818: 8f 00 8c mov $8c,#$00 +181b: 3f ee 18 call $18ee +181e: f8 8b mov x,$8b +1820: ae pop a +1821: 68 00 cmp a,#$00 +1823: f0 c3 beq $17e8 +1825: d4 b7 mov $b7+x,a +1827: 3f 12 1c call $1c12 +182a: 5f 13 17 jmp $1713 +182d: ae pop a +182e: dd mov a,y +182f: 68 00 cmp a,#$00 +1831: d0 03 bne $1836 +1833: 5f 4f 17 jmp $174f +1836: 68 01 cmp a,#$01 +1838: d0 0b bne $1845 +183a: 3f 29 1a call $1a29 +183d: d4 b7 mov $b7+x,a +183f: 3f 12 1c call $1c12 +1842: 5f 13 17 jmp $1713 +1845: 68 02 cmp a,#$02 +1847: d0 05 bne $184e +1849: 3f b0 17 call $17b0 +184c: 2f 9a bra $17e8 +184e: f4 b7 mov a,$b7+x +1850: 2d push a +1851: 3f 29 1a call $1a29 +1854: 2f b2 bra $1808 +1856: f8 8b mov x,$8b +1858: f5 4e 02 mov a,$024e+x +185b: 68 05 cmp a,#$05 +185d: f0 1e beq $187d +185f: 3f d3 17 call $17d3 +1862: f6 98 fd mov a,$fd98+y +1865: c4 00 mov $00,a +1867: f6 34 fd mov a,$fd34+y +186a: c4 01 mov $01,a +186c: 8d 02 mov y,#$02 +186e: f7 00 mov a,($00)+y +1870: de 8f 0a cbne $8f+x,$187d +1873: 8d 03 mov y,#$03 +1875: f7 00 mov a,($00)+y +1877: de a3 03 cbne $a3+x,$187d +187a: 5f 62 1b jmp $1b62 +187d: 3f f3 0b call $0bf3 +1880: 3f 29 1a call $1a29 +1883: fd mov y,a +1884: ad e0 cmp y,#$e0 +1886: 90 16 bcc $189e +1888: dd mov a,y +1889: 28 1f and a,#$1f +188b: 1c asl a +188c: fd mov y,a +188d: f6 53 1c mov a,$1c53+y +1890: c5 9c 18 mov $189c,a +1893: f6 54 1c mov a,$1c54+y +1896: c5 9d 18 mov $189d,a +1899: eb 3a mov y,$3a +189b: 5f c8 1a jmp $1ac8 +189e: ad c0 cmp y,#$c0 +18a0: 90 06 bcc $18a8 +18a2: 80 setc +18a3: a8 bf sbc a,#$bf +18a5: 5f ab 1a jmp $1aab +18a8: ad 00 cmp y,#$00 +18aa: 10 06 bpl $18b2 +18ac: 80 setc +18ad: a8 60 sbc a,#$60 +18af: fd mov y,a +18b0: 2f 16 bra $18c8 +18b2: 2d push a +18b3: 5c lsr a +18b4: 5c lsr a +18b5: 5c lsr a +18b6: 80 setc +18b7: a8 08 sbc a,#$08 +18b9: 60 clrc +18ba: 95 76 02 adc a,$0276+x +18bd: fd mov y,a +18be: ae pop a +18bf: 28 07 and a,#$07 +18c1: bc inc a +18c2: 2f 07 bra $18cb +18c4: 3f 29 1a call $1a29 +18c7: fd mov y,a +18c8: 3f 29 1a call $1a29 +18cb: 2d push a +18cc: e8 00 mov a,#$00 +18ce: d5 c6 02 mov $02c6+x,a +18d1: d5 da 02 mov $02da+x,a +18d4: dd mov a,y +18d5: d5 76 02 mov $0276+x,a +18d8: 8f 01 8c mov $8c,#$01 +18db: f3 07 02 bbc7 $07,$18e0 +18de: 8b 8c dec $8c +18e0: f2 07 clr7 $07 +18e2: ae pop a +18e3: 3f e9 18 call $18e9 +18e6: 5f 13 17 jmp $1713 +18e9: d4 b7 mov $b7+x,a +18eb: 3f 0c 1c call $1c0c +18ee: f5 7a 03 mov a,$037a+x +18f1: 28 01 and a,#$01 +18f3: d0 61 bne $1956 +18f5: e4 8c mov a,$8c +18f7: f0 06 beq $18ff +18f9: 3f b0 17 call $17b0 +18fc: 73 07 16 bbc3 $07,$1915 +18ff: f5 27 06 mov a,$0627+x +1902: 30 0d bmi $1911 +1904: fd mov y,a +1905: 7d mov a,x +1906: 08 80 or a,#$80 +1908: 76 d2 00 cmp a,$00d2+y +190b: d0 04 bne $1911 +190d: dd mov a,y +190e: 5d mov x,a +190f: 2f 4a bra $195b +1911: ab 8c inc $8c +1913: 72 07 clr3 $07 +1915: e8 ff mov a,#$ff +1917: d5 27 06 mov $0627+x,a +191a: f5 b2 02 mov a,$02b2+x +191d: c4 54 mov $54,a +191f: f5 eb 05 mov a,$05eb+x +1922: c4 0b mov $0b,a +1924: f5 13 06 mov a,$0613+x +1927: c4 53 mov $53,a +1929: f5 ff 05 mov a,$05ff+x +192c: 5d mov x,a +192d: f5 e0 17 mov a,$17e0+x +1930: c4 55 mov $55,a +1932: 3f 92 0e call $0e92 +1935: 30 1f bmi $1956 +1937: f5 7a 03 mov a,$037a+x +193a: 28 fd and a,#$fd +193c: b3 0b 02 bbc5 $0b,$1941 +193f: 08 02 or a,#$02 +1941: d5 7a 03 mov $037a+x,a +1944: d3 0b 12 bbc6 $0b,$1959 +1947: 7d mov a,x +1948: 53 0b 03 bbc2 $0b,$194e +194b: bc inc a +194c: 2f 01 bra $194f +194e: 9c dec a +194f: 28 07 and a,#$07 +1951: d5 ff 05 mov $05ff+x,a +1954: 2f 03 bra $1959 +1956: 5f 24 1a jmp $1a24 +1959: 7d mov a,x +195a: fd mov y,a +195b: f8 8b mov x,$8b +195d: d5 27 06 mov $0627+x,a +1960: 7d mov a,x +1961: 08 80 or a,#$80 +1963: d6 d2 00 mov $00d2+y,a +1966: e4 8c mov a,$8c +1968: f0 00 beq $196a +196a: cb cb mov $cb,y +196c: e8 01 mov a,#$01 +196e: d6 6f 00 mov $006f+y,a +1971: f5 b2 02 mov a,$02b2+x +1974: d6 12 00 mov $0012+y,a +1977: dd mov a,y +1978: 1c asl a +1979: fd mov y,a +197a: f5 ee 02 mov a,$02ee+x +197d: d6 5b 01 mov $015b+y,a +1980: f5 02 03 mov a,$0302+x +1983: d6 5c 01 mov $015c+y,a +1986: f5 76 02 mov a,$0276+x +1989: 8d 14 mov y,#$14 +198b: cf mul ya +198c: 80 setc +198d: a8 84 sbc a,#$84 +198f: c4 50 mov $50,a +1991: dd mov a,y +1992: a8 03 sbc a,#$03 +1994: c4 51 mov $51,a +1996: f5 da 02 mov a,$02da+x +1999: fd mov y,a +199a: f5 c6 02 mov a,$02c6+x +199d: 7a 50 addw ya,$50 +199f: da 50 movw $50,ya +19a1: f5 4f 06 mov a,$064f+x +19a4: fd mov y,a +19a5: f5 3b 06 mov a,$063b+x +19a8: 7a 50 addw ya,$50 +19aa: 7a 61 addw ya,$61 +19ac: da 50 movw $50,ya +19ae: f5 77 06 mov a,$0677+x +19b1: fd mov y,a +19b2: f5 63 06 mov a,$0663+x +19b5: 7a 50 addw ya,$50 +19b7: dd mov a,y +19b8: eb 8c mov y,$8c +19ba: d0 13 bne $19cf +19bc: c4 3d mov $3d,a +19be: fa 50 3c mov ($3c),($50) +19c1: 8f d4 00 mov $00,#$d4 +19c4: 8f fc 01 mov $01,#$fc +19c7: 7d mov a,x +19c8: 08 80 or a,#$80 +19ca: 3f b8 1d call $1db8 +19cd: 2f 55 bra $1a24 +19cf: f5 c3 05 mov a,$05c3+x +19d2: 10 02 bpl $19d6 +19d4: e8 7f mov a,#$7f +19d6: c4 cc mov $cc,a +19d8: e4 cb mov a,$cb +19da: 1c asl a +19db: fd mov y,a +19dc: e8 00 mov a,#$00 +19de: 12 07 clr0 $07 +19e0: d6 da 00 mov $00da+y,a +19e3: d6 db 00 mov $00db+y,a +19e6: e4 cb mov a,$cb +19e8: fd mov y,a +19e9: f6 46 02 mov a,$0246+y +19ec: 08 02 or a,#$02 +19ee: d6 46 02 mov $0246+y,a +19f1: e8 ff mov a,#$ff +19f3: d6 92 03 mov $0392+y,a +19f6: f5 9e 02 mov a,$029e+x +19f9: d6 9a 03 mov $039a+y,a +19fc: f5 16 03 mov a,$0316+x +19ff: c4 0f mov $0f,a +1a01: f5 62 02 mov a,$0262+x +1a04: c5 3d 02 mov $023d,a +1a07: f5 3e 03 mov a,$033e+x +1a0a: c4 0e mov $0e,a +1a0c: f5 52 03 mov a,$0352+x +1a0f: c4 11 mov $11,a +1a11: f5 2a 03 mov a,$032a+x +1a14: c4 10 mov $10,a +1a16: eb cc mov y,$cc +1a18: f5 8a 02 mov a,$028a+x +1a1b: cf mul ya +1a1c: f5 d7 05 mov a,$05d7+x +1a1f: f8 cb mov x,$cb +1a21: 3f 04 0f call $0f04 +1a24: ab 8c inc $8c +1a26: 72 07 clr3 $07 +1a28: 6f ret +1a29: 3f f3 0b call $0bf3 +1a2c: f8 8b mov x,$8b +1a2e: f4 8f mov a,$8f+x +1a30: c5 39 1a mov $1a39,a +1a33: f4 a3 mov a,$a3+x +1a35: c5 3a 1a mov $1a3a,a +1a38: e5 53 9e mov a,$9e53 +1a3b: bb 8f inc $8f+x +1a3d: d0 02 bne $1a41 +1a3f: bb a3 inc $a3+x +1a41: 6f ret +1a42: 3f 29 1a call $1a29 +1a45: c4 0c mov $0c,a +1a47: 2f 09 bra $1a52 +1a49: e8 08 mov a,#$08 +1a4b: d5 eb 05 mov $05eb+x,a +1a4e: 7d mov a,x +1a4f: d5 ff 05 mov $05ff+x,a +1a52: 5f 56 18 jmp $1856 +1a55: 3f 29 1a call $1a29 +1a58: d5 eb 05 mov $05eb+x,a +1a5b: 3f 29 1a call $1a29 +1a5e: d5 ff 05 mov $05ff+x,a +1a61: 3f 29 1a call $1a29 +1a64: d5 13 06 mov $0613+x,a +1a67: 2f e9 bra $1a52 +1a69: 3f b0 17 call $17b0 +1a6c: e8 00 mov a,#$00 +1a6e: d5 66 03 mov $0366+x,a +1a71: 8b 89 dec $89 +1a73: 5f 13 17 jmp $1713 +1a76: f5 c3 05 mov a,$05c3+x +1a79: 3f 81 1a call $1a81 +1a7c: d5 c3 05 mov $05c3+x,a +1a7f: 2f d1 bra $1a52 +1a81: 4d push x +1a82: fd mov y,a +1a83: 6d push y +1a84: 3f 29 1a call $1a29 +1a87: cf mul ya +1a88: da 3a movw $3a,ya +1a8a: ee pop y +1a8b: 3f 29 1a call $1a29 +1a8e: cf mul ya +1a8f: 6d push y +1a90: 0b 3a asl $3a +1a92: 84 3b adc a,$3b +1a94: 5d mov x,a +1a95: ae pop a +1a96: 88 00 adc a,#$00 +1a98: fd mov y,a +1a99: d0 03 bne $1a9e +1a9b: 7d mov a,x +1a9c: 10 02 bpl $1aa0 +1a9e: e8 7f mov a,#$7f +1aa0: ce pop x +1aa1: 6f ret +1aa2: 3f 29 1a call $1a29 +1aa5: d5 c3 05 mov $05c3+x,a +1aa8: 5f 56 18 jmp $1856 +1aab: 2d push a +1aac: 3f b0 17 call $17b0 +1aaf: ae pop a +1ab0: d4 b7 mov $b7+x,a +1ab2: 3f 0c 1c call $1c0c +1ab5: 5f 13 17 jmp $1713 +1ab8: e8 40 mov a,#$40 +1aba: 2f f4 bra $1ab0 +1abc: e8 20 mov a,#$20 +1abe: 2f f0 bra $1ab0 +1ac0: e8 80 mov a,#$80 +1ac2: 2f ec bra $1ab0 +1ac4: e8 00 mov a,#$00 +1ac6: 2f e8 bra $1ab0 +1ac8: 3f 29 1a call $1a29 +1acb: d5 d7 05 mov $05d7+x,a +1ace: f5 4e 02 mov a,$024e+x +1ad1: 68 05 cmp a,#$05 +1ad3: f0 2b beq $1b00 +1ad5: 3f d3 17 call $17d3 +1ad8: f6 98 fd mov a,$fd98+y +1adb: c4 00 mov $00,a +1add: f6 34 fd mov a,$fd34+y +1ae0: c4 01 mov $01,a +1ae2: f6 04 fc mov a,$fc04+y +1ae5: 8d 09 mov y,#$09 +1ae7: 77 00 cmp a,($00)+y +1ae9: 90 02 bcc $1aed +1aeb: e8 00 mov a,#$00 +1aed: bc inc a +1aee: eb 02 mov y,$02 +1af0: d6 04 fc mov $fc04+y,a +1af3: 60 clrc +1af4: 88 09 adc a,#$09 +1af6: fd mov y,a +1af7: f7 00 mov a,($00)+y +1af9: 68 ff cmp a,#$ff +1afb: f0 03 beq $1b00 +1afd: d5 d7 05 mov $05d7+x,a +1b00: 5f 56 18 jmp $1856 +1b03: f5 4e 02 mov a,$024e+x +1b06: 9c dec a +1b07: d5 4e 02 mov $024e+x,a +1b0a: 3f d3 17 call $17d3 +1b0d: f4 8f mov a,$8f+x +1b0f: d6 98 fd mov $fd98+y,a +1b12: f4 a3 mov a,$a3+x +1b14: d6 34 fd mov $fd34+y,a +1b17: e8 00 mov a,#$00 +1b19: d6 68 fc mov $fc68+y,a +1b1c: 3f 29 1a call $1a29 +1b1f: 2d push a +1b20: 3f 2e 1a call $1a2e +1b23: 2d push a +1b24: 3f 2e 1a call $1a2e +1b27: 3f 2e 1a call $1a2e +1b2a: 3f 2e 1a call $1a2e +1b2d: 3f 2e 1a call $1a2e +1b30: fd mov y,a +1b31: 3f 2e 1a call $1a2e +1b34: 2d push a +1b35: dd mov a,y +1b36: 60 clrc +1b37: 95 3b 06 adc a,$063b+x +1b3a: d5 3b 06 mov $063b+x,a +1b3d: ae pop a +1b3e: 95 4f 06 adc a,$064f+x +1b41: d5 4f 06 mov $064f+x,a +1b44: f5 c3 05 mov a,$05c3+x +1b47: eb 02 mov y,$02 +1b49: d6 00 fe mov $fe00+y,a +1b4c: 3f 81 1a call $1a81 +1b4f: d5 c3 05 mov $05c3+x,a +1b52: eb 02 mov y,$02 +1b54: e8 00 mov a,#$00 +1b56: d6 04 fc mov $fc04+y,a +1b59: ae pop a +1b5a: d4 a3 mov $a3+x,a +1b5c: ae pop a +1b5d: d4 8f mov $8f+x,a +1b5f: 5f 56 18 jmp $1856 +1b62: eb 02 mov y,$02 +1b64: f6 68 fc mov a,$fc68+y +1b67: bc inc a +1b68: d6 68 fc mov $fc68+y,a +1b6b: 8d 04 mov y,#$04 +1b6d: f7 00 mov a,($00)+y +1b6f: f0 07 beq $1b78 +1b71: eb 02 mov y,$02 +1b73: 76 68 fc cmp a,$fc68+y +1b76: f0 0f beq $1b87 +1b78: 8d 00 mov y,#$00 +1b7a: f7 00 mov a,($00)+y +1b7c: d4 8f mov $8f+x,a +1b7e: 8d 01 mov y,#$01 +1b80: f7 00 mov a,($00)+y +1b82: d4 a3 mov $a3+x,a +1b84: 5f 7d 18 jmp $187d +1b87: f5 3b 06 mov a,$063b+x +1b8a: 80 setc +1b8b: 8d 05 mov y,#$05 +1b8d: b7 00 sbc a,($00)+y +1b8f: d5 3b 06 mov $063b+x,a +1b92: f5 4f 06 mov a,$064f+x +1b95: 8d 06 mov y,#$06 +1b97: b7 00 sbc a,($00)+y +1b99: d5 4f 06 mov $064f+x,a +1b9c: eb 02 mov y,$02 +1b9e: f6 00 fe mov a,$fe00+y +1ba1: d5 c3 05 mov $05c3+x,a +1ba4: e4 00 mov a,$00 +1ba6: 60 clrc +1ba7: 88 0a adc a,#$0a +1ba9: d4 8f mov $8f+x,a +1bab: e4 01 mov a,$01 +1bad: 88 00 adc a,#$00 +1baf: d4 a3 mov $a3+x,a +1bb1: 8d 09 mov y,#$09 +1bb3: f7 00 mov a,($00)+y +1bb5: 60 clrc +1bb6: 94 8f adc a,$8f+x +1bb8: d4 8f mov $8f+x,a +1bba: f4 a3 mov a,$a3+x +1bbc: 88 00 adc a,#$00 +1bbe: d4 a3 mov $a3+x,a +1bc0: f5 4e 02 mov a,$024e+x +1bc3: bc inc a +1bc4: d5 4e 02 mov $024e+x,a +1bc7: 5f 56 18 jmp $1856 +1bca: 3f b0 17 call $17b0 +1bcd: 2f 03 bra $1bd2 +1bcf: 3f c7 1c call $1cc7 +1bd2: 5f 56 18 jmp $1856 +1bd5: 3f 29 1a call $1a29 +1bd8: c4 cd mov $cd,a +1bda: 2f f6 bra $1bd2 +1bdc: 3f 29 1a call $1a29 +1bdf: d5 9e 02 mov $029e+x,a +1be2: 2f ee bra $1bd2 +1be4: 3f 29 1a call $1a29 +1be7: d5 ee 02 mov $02ee+x,a +1bea: 3f 29 1a call $1a29 +1bed: d5 02 03 mov $0302+x,a +1bf0: 2f e0 bra $1bd2 +1bf2: 3f 29 1a call $1a29 +1bf5: d5 b2 02 mov $02b2+x,a +1bf8: c2 07 set6 $07 +1bfa: 2f d6 bra $1bd2 +1bfc: 3f 29 1a call $1a29 +1bff: d5 8a 02 mov $028a+x,a +1c02: 2f ce bra $1bd2 +1c04: 62 07 set3 $07 +1c06: 2f ca bra $1bd2 +1c08: e2 07 set7 $07 +1c0a: 2f c6 bra $1bd2 +1c0c: e8 02 mov a,#$02 +1c0e: d5 66 03 mov $0366+x,a +1c11: 6f ret +1c12: e8 08 mov a,#$08 +1c14: d5 66 03 mov $0366+x,a +1c17: 6f ret +1c18: 3f 29 1a call $1a29 +1c1b: d5 16 03 mov $0316+x,a +1c1e: 2f b2 bra $1bd2 +1c20: 3f 29 1a call $1a29 +1c23: d5 62 02 mov $0262+x,a +1c26: 2f aa bra $1bd2 +1c28: 3f 29 1a call $1a29 +1c2b: d5 52 03 mov $0352+x,a +1c2e: 2f a2 bra $1bd2 +1c30: 3f 29 1a call $1a29 +1c33: d5 2a 03 mov $032a+x,a +1c36: 2f f6 bra $1c2e +1c38: 3f 29 1a call $1a29 +1c3b: d5 3e 03 mov $033e+x,a +1c3e: 2f ee bra $1c2e +1c40: 3f e4 1c call $1ce4 +1c43: 2f e9 bra $1c2e +1c45: 3f 29 1a call $1a29 +1c48: d5 63 06 mov $0663+x,a +1c4b: 3f 29 1a call $1a29 +1c4e: d5 77 06 mov $0677+x,a +1c51: 2f db bra $1c2e + +1c53: dw $1be4,$1c18,$1c28,$1c38,$1c30,$1a55,$1a49,$1c40,$0000,$1a42,$1bca,$175a,$1757,$1bfc,$0000,$18c4,$1a69,$1a76,$1aa2,$1bf2,$1c08,$1ac8,$1b03,$1c45,$1abc,$1bcf,$1bd5,$1bdc,$1c04,$1ab8,$1ac0,$1ac4 + +1c93: 2d push a +1c94: 3f 50 0d call $0d50 +1c97: ae pop a +1c98: 92 07 clr4 $07 +1c9a: 8d 1a mov y,#$1a +1c9c: 3f 63 10 call $1063 +1c9f: da 8d movw $8d,ya +1ca1: 8d 00 mov y,#$00 +1ca3: f7 8d mov a,($8d)+y +1ca5: c4 88 mov $88,a +1ca7: c4 89 mov $89,a +1ca9: f0 1b beq $1cc6 +1cab: cb 8b mov $8b,y +1cad: 3f c7 1c call $1cc7 +1cb0: ab 8b inc $8b +1cb2: e8 00 mov a,#$00 +1cb4: d3 08 02 bbc6 $08,$1cb9 +1cb7: e8 01 mov a,#$01 +1cb9: f8 8b mov x,$8b +1cbb: 35 7a 03 and a,$037a+x +1cbe: d5 7a 03 mov $037a+x,a +1cc1: 69 88 8b cmp ($8b),($88) +1cc4: d0 e7 bne $1cad +1cc6: 6f ret +1cc7: e4 8b mov a,$8b +1cc9: 5d mov x,a +1cca: 1c asl a +1ccb: bc inc a +1ccc: fd mov y,a +1ccd: f7 8d mov a,($8d)+y +1ccf: d4 8f mov $8f+x,a +1cd1: fc inc y +1cd2: f7 8d mov a,($8d)+y +1cd4: d4 a3 mov $a3+x,a +1cd6: e8 ff mov a,#$ff +1cd8: c4 ce mov $ce,a +1cda: e8 05 mov a,#$05 +1cdc: d5 4e 02 mov $024e+x,a +1cdf: e8 04 mov a,#$04 +1ce1: d5 66 03 mov $0366+x,a +1ce4: 72 07 clr3 $07 +1ce6: f2 07 clr7 $07 +1ce8: f8 8b mov x,$8b +1cea: e8 08 mov a,#$08 +1cec: d5 eb 05 mov $05eb+x,a +1cef: 7d mov a,x +1cf0: d5 ff 05 mov $05ff+x,a +1cf3: e8 00 mov a,#$00 +1cf5: d5 76 02 mov $0276+x,a +1cf8: d5 c6 02 mov $02c6+x,a +1cfb: d5 da 02 mov $02da+x,a +1cfe: d5 3b 06 mov $063b+x,a +1d01: d5 4f 06 mov $064f+x,a +1d04: d5 63 06 mov $0663+x,a +1d07: d5 77 06 mov $0677+x,a +1d0a: d5 ee 02 mov $02ee+x,a +1d0d: d5 02 03 mov $0302+x,a +1d10: d5 16 03 mov $0316+x,a +1d13: d5 62 02 mov $0262+x,a +1d16: d5 52 03 mov $0352+x,a +1d19: d5 3e 03 mov $033e+x,a +1d1c: d5 2a 03 mov $032a+x,a +1d1f: d5 9e 02 mov $029e+x,a +1d22: 9c dec a +1d23: d5 27 06 mov $0627+x,a +1d26: d5 8a 02 mov $028a+x,a +1d29: e8 40 mov a,#$40 +1d2b: d5 b2 02 mov $02b2+x,a +1d2e: e8 7f mov a,#$7f +1d30: d5 c3 05 mov $05c3+x,a +1d33: c2 07 set6 $07 +1d35: 8f 6f 00 mov $00,#$6f +1d38: 8f 00 01 mov $01,#$00 +1d3b: 7d mov a,x +1d3c: 08 80 or a,#$80 +1d3e: 8d 00 mov y,#$00 +1d40: 5f 81 1d jmp $1d81 +1d43: c4 5f mov $5f,a +1d45: 6f ret +1d46: c4 60 mov $60,a +1d48: 6f ret +1d49: da 61 movw $61,ya +1d4b: 6f ret +1d4c: da 2e movw $2e,ya +1d4e: 6f ret +1d4f: c4 fb mov $fb,a +1d51: 6f ret +1d52: 28 7f and a,#$7f +1d54: c5 3e 02 mov $023e,a +1d57: 6f ret +1d58: 12 08 clr0 $08 +1d5a: c5 06 01 mov $0106,a +1d5d: 68 ff cmp a,#$ff +1d5f: f0 02 beq $1d63 +1d61: 02 08 set0 $08 +1d63: 6f ret +1d64: c5 3f 02 mov $023f,a +1d67: 6f ret +1d68: c5 40 02 mov $0240,a +1d6b: 6f ret +1d6c: c5 41 02 mov $0241,a +1d6f: cc 42 02 mov $0242,y +1d72: 6f ret +1d73: 8f 9a 00 mov $00,#$9a +1d76: 8f 03 01 mov $01,#$03 +1d79: 2f 06 bra $1d81 +1d7b: 8f 92 00 mov $00,#$92 +1d7e: 8f 03 01 mov $01,#$03 +1d81: c4 3a mov $3a,a +1d83: dd mov a,y +1d84: 5d mov x,a +1d85: e8 07 mov a,#$07 +1d87: fd mov y,a +1d88: f6 d2 00 mov a,$00d2+y +1d8b: 2e 3a 03 cbne $3a,$1d91 +1d8e: 7d mov a,x +1d8f: d7 00 mov ($00)+y,a +1d91: dc dec y +1d92: 10 f4 bpl $1d88 +1d94: 6f ret +1d95: 28 7f and a,#$7f +1d97: c4 3a mov $3a,a +1d99: cd 07 mov x,#$07 +1d9b: f4 d2 mov a,$d2+x +1d9d: 2e 3a 08 cbne $3a,$1da8 +1da0: f5 46 02 mov a,$0246+x +1da3: 08 03 or a,#$03 +1da5: d5 46 02 mov $0246+x,a +1da8: 1d dec x +1da9: 10 f0 bpl $1d9b +1dab: 6f ret +1dac: 8f da 00 mov $00,#$da +1daf: 8f 00 01 mov $01,#$00 +1db2: fa 2e 3c mov ($3c),($2e) +1db5: fa 2f 3d mov ($3d),($2f) +1db8: c4 3a mov $3a,a +1dba: e8 0f mov a,#$0f +1dbc: fd mov y,a +1dbd: e8 07 mov a,#$07 +1dbf: 5d mov x,a +1dc0: f4 d2 mov a,$d2+x +1dc2: 2e 3a 0a cbne $3a,$1dcf +1dc5: e4 3d mov a,$3d +1dc7: d7 00 mov ($00)+y,a +1dc9: dc dec y +1dca: e4 3c mov a,$3c +1dcc: d7 00 mov ($00)+y,a +1dce: fc inc y +1dcf: dc dec y +1dd0: dc dec y +1dd1: 1d dec x +1dd2: 10 ec bpl $1dc0 +1dd4: 6f ret +1dd5: 5d mov x,a +1dd6: e8 01 mov a,#$01 +1dd8: 15 7a 03 or a,$037a+x +1ddb: d5 7a 03 mov $037a+x,a +1dde: 6f ret +1ddf: 5d mov x,a +1de0: e8 fe mov a,#$fe +1de2: 35 7a 03 and a,$037a+x +1de5: 2f f4 bra $1ddb +1de7: 2e 03 03 cbne $03,$1ded +1dea: d2 08 clr6 $08 +1dec: 6f ret +1ded: c2 08 set6 $08 +1def: 6f ret +1df0: 02 09 set0 $09 +1df2: 2e 03 02 cbne $03,$1df7 +1df5: 12 09 clr0 $09 +1df7: 6f ret + +1df8: dw $1713,$1746,$1856,$17e8,$173b,$0ce2,$0d16,$0d1b,$0d07,$1d95,$0000,$078c,$0da4,$0cf5,$0cef,$0ceb,$0000,$0d50,$0d52,$1e55,$0000,$0000,$0da9,$0d13,$1d43,$1d4f,$1d49,$1d46,$1d6c,$1d52,$1d64,$1d7b,$1d4c,$1dac,$1d68,$1d73,$1d58,$1dd5,$1ddf,$1de7,$0788,$1df0,$1e5f + +;Uncompiled source code +1e95: db $20,$20,$20,$20,$20,$20,$20,$20,$72,$65,$74,$0d,$0a,$53,$65,$74,$4e,$65,$78,$74,$45,$66,$66,$65,$63,$74,$50,$61,$6e,$0d,$0a,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$6d,$6f,$76,$20,$4e,$65,$78,$74,$45,$78,$53,$74,$65,$72,$65,$6f,$4d,$6f,$64,$2c,$00,$ \ No newline at end of file diff --git a/snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood ($0700).bin b/snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood ($0700).bin new file mode 100644 index 0000000000000000000000000000000000000000..76f11a2d163ea44e30b335b5cb4595e6aebd9abe GIT binary patch literal 4290 zcmYjU3v?6LnZCL+qle{@Wm^veGB(6SGRBd4+7O#DPn%%C5YhyKEK^`HC0Wr2#Y^H^ zp=ogo!{}@Xu)&9N8q&HoCTh34aDYHJJDep8#zR(;y{-kx>2T2EgbuP~3D>grpRrBy z>70A-+{gca|KmPX*q#1_dn4L6#QC3ag(KWMPnZPFAw8Fu$r8iqw8gForPE{aPO~^o zpqQVVodolmRveZHrb;iS8s9bXrY6ewxPyY)SmQM z?nbI~=&W~def1(o;WU%cpx3G?lEA8b+q9`u@~jrKDK{tEm}Q_dGjwXC&2v=LzSh*N zvD(XPUfq3wG!-paxq0W0aL&wm%Qt=Z2gq1hR$bq?PlZXXv9Q`Zmil|*Z}+daw#=!d zvkIKd2Dhgb%OD8ico zFqK;jo?F&R9BJswijQjexwUD2UhHKD z=F0?i`~Y^J(K3HAB(wInV!_DlH!{!Z#oD4(MRSD}(#l{f*3ET7Z;Q<(t_dE-;!D9c zoXir}ItnGKc;0d+p_{uLzN#fkH@DVF6wj+w1dy@-EWzl?{IU%1B{O{q8Qfm2xTkE4m(J?C1rEPYcc;qyaw~7$E56a!0yh$Qg4T!FAaB) zFwllm@x%CF=`n#|eq~H%1z*MCpc_vp$v65zI2aGoXOBz&w%IB$+KJuo=@g@bp1Vs+VoZTXFBfBGq(x4E+kNqL+-!o zSo4oNG(J4`boiQvoVlODQf4YX0LyL-g@X)^e+A7{{8f-UdMg@tLp{l}jBp>&adpv= z)kETH2ue+H&9dT}6&zXx%!_G`GH_@?UzWH@$c1oe`31n-gWc;g6y~Y;Zp;_=bniTq z%oQ;2bKBRnudRezc4n#iaUXanPVGVILmP$ap zSJHu(ik1meoVH;r_I9X3R?ORn^Kb_W z*r4!;YmJ$X0yrf2A>G_{ayqT!s-h$7hCIA=BsOIvK2=O`e|X{;*h8{#i!*B9L&<%t=-6|*UPDAU43g0I1XBc}pw5KU$MZB;WL9s7-I z8G(}ZX!8e*UwXu)K|78hPv87fg*o>tNW|S(-oWL-8Z1@>Yq7X6XvN~9U>?4}D%>^6 z`SK=N4{5joRBHk+^9$r1u3KLZLD*2wl}1PEhr|UAqvT|%goe!oi&-?BspX>yW0y)I zyRe`O5qPJ?2N?m$-j(V5Qn!Aiym}+IE;_PNUag|RIL$FZo172MbQjYs335Ppp_ZrP zd0O6Zc_FjY05eHxDocPK_4s(1JPv!{*|-*#PD+AJ@k^T3j?b)@XVy;6giz3uUfCH` zB<=n=4GC%Pr9lCvAqo>z;1K*1&1Q@XsFnp(ObXDgU!_}L4e6q`m8cs}d|~A&QGMb| zE3XDiC_Z}t3gck5=Z$m~T8CQDn`u|xHdKnW=^U+agfp3Jz z-TNXaKn64cA^@=pP%YjLqsurLflOr98d4#IM!O_mvYlVXui$I><$Mj-YVkby(#pLl zpPT5$D+WmI&4wEYo!@K_lILGBOn=27NS=N>m~8B&2aHceV`H0^)q=IzZD_QY27l5n zFq%%a^z@fpwtrCKCn6|yYYt2I(xc*>@flaytX{f_@T*xef}l&A0M9_JgIeE9M^vn- zmu_b>p(_WL_0oKy`xjZP3H-bmLIR&`7L+q2qFqqSDrI@ic!rOVr)4JSt1NYZ_F3Cm z)d5=i9>fFWvDpc_bRa=L_9%kYuqvbRB+&9{MiX?K%)vL2tD1PG)8ZDx)!StyyBi5b2uHn$rX25fMsCEYqB zGtCIQ7Mz3D)H!)CZ=8f9PeIbblK z>nUXl6)vd@JqL68bJz?~_O_VYOM7n0S5G?S^4uy~S|nlr6#ls|i_Y+~Ag=uLVv+aU z^C|JUGs#(=Gu_AoR~k$99Mty{;1`0QJ&+*09Ry!|3C&Iv^J_+-cu6kSdb&uTTF7Yf z`_){!&V9q!<@IH8sIIZC&=qdGpK5_Fj;!mJ&NQd%1kBeBKQh7v(VxvbBBb|Rouo;v zb?mi|ja;^SP@c2KeSrJz^*%{EWAUcFKW+cFI}g#6`E|QmPyO-sgY=a7>vkV%|M$Ct z>cSVl^Zld0{WSd4PhSnE3zzM9_cu2mWxi1VgZD4?j}|Q7 z)z;Y)wJdhM^U-HtXD{6PlMioxom0N;o!{J!TB~;a;^WZh%r*N?UVD%^f9s*&-+ek` z&G$d}bTGGa*RhLVWXyLR_V<&{E$?3VU(&htXZ``reD{%yf6c0FdjHeE+14C5_c?lD z+b=IYG_U;OukRLqgBi~-^BX)jiK1tiHHqgZVV{I!0>zVili7s8)YV`J%W0eu@P6(+=OLe_%~lr$3#u?-ZHVRe2jzTVEeYgNlTm?s|HtfiK-`QoPBrMZ!6xUJn)rubQk zuZnk2W#ph+qS}o(qH)PLGQ(9bm7fpI5fwZi`Z`;{s16D^37IkT#M z#d?lk=PSaE$1kMBisK(E&3k+~wD0p3gKi;9-o$yNo(` z#y|zsJpXCBZMtuIWKzq)1~q_IwVhrjaNK@i|ip_yb9R3eE3=pn_F>q%TiXN`e z4O7}EzR?}Z6_ITvve|4UxI|TgMC@VCm|X=P3t0KqmAAmkw`D6cA&Q4BEJ`*oXU$zk zKN(`EQD`=qq{mGbAslvr7C3c>8HzPB-?cd9%4JdVa!W32lG}1}t~P`C!G_Q^1dBu0 z5u^rm0PAMzS<^ewR2X8P!hxen zm*;opd*(;xVY9}PV|mfC%93v>v;5KgJ2P|4;wl)E?cIB2FWCErY%dCIKeA1Ub-bPm z?2T`v0&jo=U@j9~wP}ZEHn$m)HeEnH@{l8ew zS^m{>&C+9eXkp)bx^?&>721kgLKmsAD7$BPJ>?pHNgY~GwS-<$k4YY85xmFc=Xog{ z4;R>}ps0TjT+Dm;*ZFPIS`N85)G(UZ^Cp|8a0tq@!;gb9aj@n>;N!rx!1eJ+M$+Ir z*f#JFrip?Kg=3+!p|hc?&$aY*-xW`3?jrc@$lYQ-X+CUm=|lP#t&6Os)(q=EYg+XG Rr2nCQpZB~b;mj0p@YEbHUY}QZk;`h*<$T6aL$Ug`@;de8F#BDA|;hXe12_7bNK8<6?DMjS{JoGB$4C-_W8;T)AP}zN5_wL;AX{ z)wL(^f~9M>?Ea@lq)*E!t+E}LVTD?sR%(9{`bXf~zurI7y1FPfK9#amTIn-bf?O`Y z@t=JY9+f#4nh}&8I)359Tilm&MHJ8EN!eTWy?Hj$BM9Q^#}7uIDUx%*PvD+Oghh?* zf($>DVTaOk*Z^ZJ+Q6cn?9V*Hw4yw{k}GG?bo#4`9o&uq6?>Ls6-LXOF{6n-pNcEk z9_9+YhcYm?kyrZO#@24NC0!p(Joygh^_F`HmfbNzReD8w0skX$tLq)CDcAs`t>zlx zHP~^s@m?*rSktPzEg|AX_O~I?sD-{V%K@}y>EUbz!P)H202(vp=aInz=g`k<5D+0|&jhNyp!69KodV#3*O{h4J?;Xrd z3)`U&zT8gb`vzce!hUnQN6p$-Z4ck2eng z*ggX)Ce9a&#Vqi?UDSa7>E*nMGW!=}dxvazG3F?LD(*nTsaQergd4eH@%VU(z8}K& zRE5R*_tlvH$s;uu7XMv?bK-0lw75snaK^FFeTLH7f1|~sqDSRM40@!(+~OK`wWlry zJLHowpdnl2X|2<}?CCtC)2tbaNfqW}CzV)Kv#6G_Tg!E{@VZ`?k;=Xa;nfuEk#^f2 zw%9YXXPT~nyJKfC(6`u8*0-!@3q?o+n*@KYpP%7UXS_>hd`pEu#tSZu{g3BT)sQBt z8kUOknN)vGUuKV9STeQLazAEfiFanHZze4;NT*htEb;Mf8KWMMS)RmzRERShUPg~? zVZ)ng?jY?(4^@~RkYz(diMuI05Qc$=YWzrxKht2E2|psRwOwa9m^3+SdYG@A44EFT zR}%S3F%8b`WWEx-D-Ew#b|9GO`Fa4Hhh+r)Fa-~&y6j@2ThHpf6iDE<7A7z%s9#}}P?oXwZ38NcF*c{fZ3mtp(nVqh!&LDs6eWxT zN{iGi6*h~C-YsJmMixlOmUuC;M+*FmMMIX-Slchv2@c%3;Nn)kokg2zMkQ=Ze?`>! zV84+<*~vAyN55kmPe}6ADdYObv{2?+gWZT8-IOg1@#=_mVA}*ZM!JS9u3cCtbyZ@a z*tHl7C9YK5%|z^o4{nl<-d@<=`#_EO>`4OWXuGpB)S{w$yE?nud59~LE-ua9{jhoV z?Ps$+GyA7ONQqFCp%*EJ2*fiwa0!F_gqrgNlDcG~q6_nyVJ)s*?123ZC#y^6c&yob zK;m$Kt?K&e&UQc{d(bD#T<)4sw*y z`Alhk$;*A(Rai#+9-npi9zl>1I^wF&ED-0E!cB$=Bzl|)vruktPpqgv5AWVt719R zI21`!CVHTRiMOnbccT!8SS*v?*%p<|5g0~jwo7yb8DtxN54D+QyVSh@I#VIa!2!1ihH;l<`4&6!ps>TBso`YB|qr0D+5nk$%%sj4DtoIu@=; zK8&&vfk?C*<)c^79#n@;A{9zRE71nD4edimQ8W4(T8)a34w;bx8BjV}hqj_>REtia z@E8R?N*W=@_1_6ewl+1R2KSiS(Ci2aksxcpOJt~ZXe_Uym-@Q`^C`z_CNX|0#}=b; zEO+o_+jf3!NXQ-hFt0}rCiJgkVn@hXVO^BVT_%2nY>@XT8HF3ckUBszTBtQp$BdA0 zj~GVC>x>SD7691@$z@poq-P8eyaI?bbeVW4Ge!AzUMZ<1@oT}E4!N{U7a;F4L^J6~ zyw1p)N%3DG$iRiyvr`@<^>S485_yTal~;8u*TY?1wNYJspq^7G0OvN!$oim`M?58+!5O82JIjMn-_ zg5+y184TtY(b<-Nj_4BV9y*;omdt2{WQlmu2ub%Lc)G%&8oGaV$!Zbzn7FJ72HoJY zA@uduV;g6TWh~rEviC0a^9d`%=A(;N}{$|o7vyp9~IS03U?KpbwM(?mEZdKWlGuQ99Jn>oE>wn(< z>7Rqfb+6G(=Vwop=|B33{l=%`|41%4(DK3U5x;T$-cwg^j|7qm4xGMrcOsm&`N;X- z_I<5eQ`LCo_SkIdmb$jiA&;@3=In1i`z9g(;M*VdeY0T0;j_Pe%HB!t7e0<+k5M3k->S(jhy$K_dyh7J}Su$>j}`(`B6w18gYp@Qa@j6KoXYtls6^{z>B}jXeIO37ihbG+eBeM(ce02uqgHwT}R=AFFsaG)A>P8#)$4ozJQ1 zZbP9~x*~K8tcLMtQuX}|FK?Bk4$?3jtcx-Lb~KSghWxR(!7j$S(ePW?FMR_*juctu z{3zle@D2!%5?YB!sMr4gQ2Ps%jHVemAmO?@g@+52wl+;D@)#2!&?;#x?Gt+k;XDV_ zp?(bhYaHIB^fnC_!TT}1Q3)clE#AlcgsTPkfgeCdp)%@> zDUb;QgZ16crfz2=NSea_jmo>g5*|b(s;2O%jY=_IN)DWj(k<+4vJMy^V0MPMjes%4 zj8Q_X1=#uvl@SjG>jh+M(>fak8SK9%cz==Ya-*}++az@*TWoD$3rK@c;G>|svs)_W z_MUYkIaN0sIL_#$OsU@4_~$0K+1c&J&RbGMU6n*M2te`>VX4HCQVw~(0g{5TVpcW? z!`UIQb{jEtx_GR(8y?lCFwM$_q(#`-K)2Yt9BSM7F1-fwT&N(%bcj?NcN+H@n~WEX zea800_QczXsz32eve|8No|6u}JM212z|q)7w7O^_SU+zX7zTloA`~?cE)|5qGWc4MV|N(- z(a>4nSzkO_S8~MBPMm=ayN?k`DyOG+^PtM1=)drbcapJwSW literal 0 HcmV?d00001 diff --git a/snes/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s b/snes/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s new file mode 100644 index 00000000..1508054d --- /dev/null +++ b/snes/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s @@ -0,0 +1,1907 @@ +0700: 20 clrp +0701: cd ff mov x,#$ff +0703: bd mov sp,x +0704: 8f b0 f1 mov $f1,#$b0 +0707: 8f 20 fa mov $fa,#$20 +070a: 8f 81 f1 mov $f1,#$81 +070d: 3f d3 0e call $0ed3 +0710: 8f 00 13 mov $13,#$00 +0713: 8f 1a 14 mov $14,#$1a +0716: 8d 03 mov y,#$03 +0718: f6 02 00 mov a,$0002+y +071b: 16 22 07 or a,$0722+y +071e: d6 02 00 mov $0002+y,a +0721: fe f5 dbnz y,$0718 +0723: ab 1d inc $1d +0725: e4 23 mov a,$23 +0727: d0 05 bne $072e +0729: 3f 49 18 call $1849 +072c: 2f 03 bra $0731 +072e: 3f 51 08 call $0851 +0731: e4 f6 mov a,$f6 +0733: f0 03 beq $0738 +0735: 3f 7d 0b call $0b7d +0738: e4 fd mov a,$fd +073a: 60 clrc +073b: 84 1c adc a,$1c +073d: c4 1c mov $1c,a +073f: 68 05 cmp a,#$05 +0741: 90 ee bcc $0731 +0743: a8 05 sbc a,#$05 +0745: c4 1c mov $1c,a +0747: 68 14 cmp a,#$14 +0749: 90 d8 bcc $0723 +074b: 8f 00 1c mov $1c,#$00 +074e: 2f d3 bra $0723 +0750: 8d 00 mov y,#$00 +0752: 8f aa f4 mov $f4,#$aa +0755: 8f bb f5 mov $f5,#$bb +0758: f8 f4 mov x,$f4 +075a: c8 cc cmp x,#$cc +075c: d0 fa bne $0758 +075e: fa f6 00 mov ($00),($f6) +0761: fa f7 01 mov ($01),($f7) +0764: 7d mov a,x +0765: f8 f5 mov x,$f5 +0767: c4 f4 mov $f4,a +0769: d0 05 bne $0770 +076b: d8 f5 mov $f5,x +076d: 1f 00 00 jmp ($0000+x) +0770: cd 00 mov x,#$00 +0772: 3e f4 cmp x,$f4 +0774: d0 fc bne $0772 +0776: e4 f5 mov a,$f5 +0778: d8 f4 mov $f4,x +077a: d7 00 mov ($00)+y,a +077c: 3a 00 incw $00 +077e: 3e f4 cmp x,$f4 +0780: f0 fc beq $077e +0782: 3d inc x +0783: 3e f4 cmp x,$f4 +0785: f0 ef beq $0776 +0787: f8 f4 mov x,$f4 +0789: 2f d3 bra $075e +078b: 3f d3 0e call $0ed3 +078e: 8f b0 f1 mov $f1,#$b0 +0791: cd 00 mov x,#$00 +0793: f5 50 07 mov a,$0750+x +0796: d5 00 01 mov $0100+x,a +0799: 3d inc x +079a: c8 3b cmp x,#$3b +079c: 90 f5 bcc $0793 +079e: 5f 00 01 jmp $0100 + +07a1: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 +07b7: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 +07cd: db $08,$18,$28,$38,$48,$58,$68,$78 +07d5: db $07,$17,$27,$37,$47,$57,$67,$77 +07dd: db $04,$14,$24,$34,$44,$54,$64,$74 +07e5: db $02,$12,$22,$32,$42,$52,$62,$72 +07ed: db $00,$10,$20,$30,$40,$50,$60,$70 +07f5: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f +0805: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f +0811: db $02,$02,$02,$02,$02,$03,$03,$03 +0819: db $9e,$b3,$c8,$dd,$f2,$07,$1c,$31 +0821: db $03,$03,$03,$03,$03,$03,$03,$03 +0829: db $46,$5b,$70,$85,$9a,$af,$c4,$d9 +0831: db $03,$04,$04,$04,$04,$04,$04,$04 +0839: db $ee,$03,$18,$2d,$42,$57,$6c,$81 +0841: db $04,$04,$04,$04,$04,$05,$05,$05 +0849: db $96,$ac,$c2,$d8,$ee,$04,$1a,$30 + +0851: 3f 49 18 call $1849 +0854: 3f 7d 0b call $0b7d +0857: e5 00 02 mov a,$0200 +085a: f0 09 beq $0865 +085c: 60 clrc +085d: 85 01 02 adc a,$0201 +0860: c5 01 02 mov $0201,a +0863: 90 06 bcc $086b +0865: 3f 5c 14 call $145c +0868: 3f 7d 0b call $0b7d +086b: 8f 00 37 mov $37,#$00 +086e: 8f 00 4c mov $4c,#$00 +0871: 8f 7c f2 mov $f2,#$7c +0874: e4 f3 mov a,$f3 +0876: 04 49 or a,$49 +0878: 24 4f and a,$4f +087a: c4 49 mov $49,a +087c: 8f 00 f3 mov $f3,#$00 +087f: 24 4a and a,$4a +0881: 04 4b or a,$4b +0883: c4 4b mov $4b,a +0885: cd 07 mov x,#$07 +0887: 8f 81 15 mov $15,#$81 +088a: 8f 04 16 mov $16,#$04 +088d: 3f 6c 0b call $0b6c +0890: d8 17 mov $17,x +0892: f5 f5 07 mov a,$07f5+x +0895: c4 39 mov $39,a +0897: 48 ff eor a,#$ff +0899: c4 3a mov $3a,a +089b: f4 5b mov a,$5b+x +089d: 28 02 and a,#$02 +089f: c4 38 mov $38,a +08a1: d0 06 bne $08a9 +08a3: f5 7e 02 mov a,$027e+x +08a6: 5f ae 08 jmp $08ae +08a9: 3f 24 10 call $1024 +08ac: f8 17 mov x,$17 +08ae: 75 86 02 cmp a,$0286+x +08b1: d0 10 bne $08c3 +08b3: 3f be 11 call $11be +08b6: 3f 52 0b call $0b52 +08b9: e4 50 mov a,$50 +08bb: 24 4d and a,$4d +08bd: 24 39 and a,$39 +08bf: d0 43 bne $0904 +08c1: f0 44 beq $0907 +08c3: d5 86 02 mov $0286+x,a +08c6: 09 39 37 or ($37),($39) +08c9: 3f be 11 call $11be +08cc: 7d mov a,x +08cd: 1c asl a +08ce: 5d mov x,a +08cf: e4 51 mov a,$51 +08d1: d5 8e 02 mov $028e+x,a +08d4: e4 52 mov a,$52 +08d6: d5 8f 02 mov $028f+x,a +08d9: f8 17 mov x,$17 +08db: e4 53 mov a,$53 +08dd: 28 20 and a,#$20 +08df: f0 05 beq $08e6 +08e1: 29 3a 4a and ($4a),($3a) +08e4: 2f 03 bra $08e9 +08e6: 09 39 4a or ($4a),($39) +08e9: e4 53 mov a,$53 +08eb: 28 40 and a,#$40 +08ed: f0 05 beq $08f4 +08ef: 09 39 50 or ($50),($39) +08f2: 2f 03 bra $08f7 +08f4: 29 3a 50 and ($50),($3a) +08f7: 3f 52 0b call $0b52 +08fa: e4 50 mov a,$50 +08fc: 04 4d or a,$4d +08fe: 24 39 and a,$39 +0900: d0 02 bne $0904 +0902: f0 03 beq $0907 +0904: 09 39 4c or ($4c),($39) +0907: 1d dec x +0908: 30 0a bmi $0914 +090a: 80 setc +090b: b8 15 15 sbc $15,#$15 +090e: b8 00 16 sbc $16,#$00 +0911: 5f 8d 08 jmp $088d +0914: e4 4d mov a,$4d +0916: 24 4b and a,$4b +0918: 04 4c or a,$4c +091a: c4 4e mov $4e,a +091c: 8f 5c f2 mov $f2,#$5c +091f: c4 f3 mov $f3,a +0921: cd 07 mov x,#$07 +0923: 8f 30 15 mov $15,#$30 +0926: 8f 05 16 mov $16,#$05 +0929: 8f 00 3c mov $3c,#$00 +092c: 3f 6c 0b call $0b6c +092f: d8 17 mov $17,x +0931: e4 5a mov a,$5a +0933: d0 13 bne $0948 +0935: f4 5b mov a,$5b+x +0937: 28 08 and a,#$08 +0939: c4 3c mov $3c,a +093b: d0 06 bne $0943 +093d: f5 76 02 mov a,$0276+x +0940: 5f 48 09 jmp $0948 +0943: 3f 24 10 call $1024 +0946: f8 17 mov x,$17 +0948: fd mov y,a +0949: f5 6e 02 mov a,$026e+x +094c: c4 31 mov $31,a +094e: cf mul ya +094f: cd 64 mov x,#$64 +0951: 9e div ya,x +0952: f8 17 mov x,$17 +0954: eb 3c mov y,$3c +0956: f0 11 beq $0969 +0958: c4 2f mov $2f,a +095a: 8d 15 mov y,#$15 +095c: f7 15 mov a,($15)+y +095e: d0 04 bne $0964 +0960: e4 2f mov a,$2f +0962: 2f 05 bra $0969 +0964: e4 31 mov a,$31 +0966: 80 setc +0967: a4 2f sbc a,$2f +0969: c4 2f mov $2f,a +096b: f5 ed 07 mov a,$07ed+x +096e: fd mov y,a +096f: cb f2 mov $f2,y +0971: fa 2f f3 mov ($f3),($2f) +0974: e4 31 mov a,$31 +0976: 80 setc +0977: a4 2f sbc a,$2f +0979: fc inc y +097a: cb f2 mov $f2,y +097c: c4 f3 mov $f3,a +097e: 80 setc +097f: b8 16 15 sbc $15,#$16 +0982: b8 00 16 sbc $16,#$00 +0985: 1d dec x +0986: 30 03 bmi $098b +0988: 5f 2c 09 jmp $092c +098b: cd 07 mov x,#$07 +098d: 8f d9 15 mov $15,#$d9 +0990: 8f 03 16 mov $16,#$03 +0993: 3f 6c 0b call $0b6c +0996: d8 17 mov $17,x +0998: f4 5b mov a,$5b+x +099a: fd mov y,a +099b: 28 40 and a,#$40 +099d: 0d push psw +099e: dd mov a,y +099f: 28 04 and a,#$04 +09a1: 0d push psw +09a2: 7d mov a,x +09a3: fd mov y,a +09a4: 1c asl a +09a5: 5d mov x,a +09a6: f5 4f 02 mov a,$024f+x +09a9: c4 36 mov $36,a +09ab: f5 4e 02 mov a,$024e+x +09ae: c4 35 mov $35,a +09b0: 8e pop psw +09b1: f0 11 beq $09c4 +09b3: 4d push x +09b4: 3f 24 10 call $1024 +09b7: ce pop x +09b8: 7a 35 addw ya,$35 +09ba: 80 setc +09bb: a8 b0 sbc a,#$b0 +09bd: c4 35 mov $35,a +09bf: dd mov a,y +09c0: a8 04 sbc a,#$04 +09c2: c4 36 mov $36,a +09c4: f5 8f 02 mov a,$028f+x +09c7: fd mov y,a +09c8: f5 8e 02 mov a,$028e+x +09cb: 7a 35 addw ya,$35 +09cd: 8e pop psw +09ce: d0 03 bne $09d3 +09d0: 3f e8 11 call $11e8 +09d3: f8 17 mov x,$17 +09d5: d5 5e 02 mov $025e+x,a +09d8: dd mov a,y +09d9: d5 66 02 mov $0266+x,a +09dc: 80 setc +09dd: b8 15 15 sbc $15,#$15 +09e0: b8 00 16 sbc $16,#$00 +09e3: 1d dec x +09e4: 10 ad bpl $0993 +09e6: 8f 5c f2 mov $f2,#$5c +09e9: 8f 00 f3 mov $f3,#$00 +09ec: cd 07 mov x,#$07 +09ee: 8f 31 15 mov $15,#$31 +09f1: 8f 03 16 mov $16,#$03 +09f4: 3f 6c 0b call $0b6c +09f7: d8 17 mov $17,x +09f9: f5 f5 07 mov a,$07f5+x +09fc: c4 39 mov $39,a +09fe: 48 ff eor a,#$ff +0a00: c4 3a mov $3a,a +0a02: f4 5b mov a,$5b+x +0a04: 28 01 and a,#$01 +0a06: d0 06 bne $0a0e +0a08: f5 36 02 mov a,$0236+x +0a0b: 5f 13 0a jmp $0a13 +0a0e: 3f 24 10 call $1024 +0a11: f8 17 mov x,$17 +0a13: d5 3e 02 mov $023e+x,a +0a16: fd mov y,a +0a17: e4 37 mov a,$37 +0a19: 24 39 and a,$39 +0a1b: f0 0a beq $0a27 +0a1d: f5 dd 07 mov a,$07dd+x +0a20: c4 f2 mov $f2,a +0a22: f5 86 02 mov a,$0286+x +0a25: c4 f3 mov $f3,a +0a27: e4 48 mov a,$48 +0a29: 24 39 and a,$39 +0a2b: f0 05 beq $0a32 +0a2d: 29 3a 48 and ($48),($3a) +0a30: 2f 35 bra $0a67 +0a32: f5 cd 07 mov a,$07cd+x +0a35: c4 f2 mov $f2,a +0a37: dd mov a,y +0a38: 80 setc +0a39: a4 f3 sbc a,$f3 +0a3b: b0 08 bcs $0a45 +0a3d: 8f 80 2a mov $2a,#$80 +0a40: 48 ff eor a,#$ff +0a42: bc inc a +0a43: 2f 03 bra $0a48 +0a45: 8f c0 2a mov $2a,#$c0 +0a48: 5c lsr a +0a49: d0 08 bne $0a53 +0a4b: ad 00 cmp y,#$00 +0a4d: d0 04 bne $0a53 +0a4f: e8 82 mov a,#$82 +0a51: 2f 0e bra $0a61 +0a53: 8d 15 mov y,#$15 +0a55: 76 a1 07 cmp a,$07a1+y +0a58: 90 02 bcc $0a5c +0a5a: fe f9 dbnz y,$0a55 +0a5c: f6 b7 07 mov a,$07b7+y +0a5f: 04 2a or a,$2a +0a61: 75 46 02 cmp a,$0246+x +0a64: f0 0c beq $0a72 +0a66: fd mov y,a +0a67: f5 d5 07 mov a,$07d5+x +0a6a: c4 f2 mov $f2,a +0a6c: cb f3 mov $f3,y +0a6e: dd mov a,y +0a6f: d5 46 02 mov $0246+x,a +0a72: f5 e5 07 mov a,$07e5+x +0a75: c4 f2 mov $f2,a +0a77: fd mov y,a +0a78: f5 5e 02 mov a,$025e+x +0a7b: c4 f3 mov $f3,a +0a7d: fc inc y +0a7e: cb f2 mov $f2,y +0a80: f5 66 02 mov a,$0266+x +0a83: c4 f3 mov $f3,a +0a85: 80 setc +0a86: b8 15 15 sbc $15,#$15 +0a89: b8 00 16 sbc $16,#$00 +0a8c: 1d dec x +0a8d: 30 03 bmi $0a92 +0a8f: 5f f4 09 jmp $09f4 +0a92: 8f 4c f2 mov $f2,#$4c +0a95: fa 4e f3 mov ($f3),($4e) +0a98: e4 4e mov a,$4e +0a9a: 48 ff eor a,#$ff +0a9c: c4 4f mov $4f,a +0a9e: 29 4f 49 and ($49),($4f) +0aa1: 29 4f 4b and ($4b),($4f) +0aa4: 8f 00 4d mov $4d,#$00 +0aa7: 3f 7d 0b call $0b7d +0aaa: cd 07 mov x,#$07 +0aac: 8d 0e mov y,#$0e +0aae: f5 0d 02 mov a,$020d+x +0ab1: f0 2b beq $0ade +0ab3: f4 5b mov a,$5b+x +0ab5: 28 80 and a,#$80 +0ab7: f0 09 beq $0ac2 +0ab9: f5 f5 07 mov a,$07f5+x +0abc: 24 49 and a,$49 +0abe: d0 19 bne $0ad9 +0ac0: 2f 1c bra $0ade +0ac2: f6 1e 02 mov a,$021e+y +0ac5: 80 setc +0ac6: a8 01 sbc a,#$01 +0ac8: d6 1e 02 mov $021e+y,a +0acb: c4 2f mov $2f,a +0acd: f6 1f 02 mov a,$021f+y +0ad0: a8 00 sbc a,#$00 +0ad2: d6 1f 02 mov $021f+y,a +0ad5: 04 2f or a,$2f +0ad7: d0 05 bne $0ade +0ad9: e8 00 mov a,#$00 +0adb: d5 0d 02 mov $020d+x,a +0ade: dc dec y +0adf: dc dec y +0ae0: 1d dec x +0ae1: 10 cb bpl $0aae +0ae3: 3f 6c 0b call $0b6c +0ae6: ec 07 02 mov y,$0207 +0ae9: f0 66 beq $0b51 +0aeb: 8c 08 02 dec $0208 +0aee: d0 61 bne $0b51 +0af0: cc 08 02 mov $0208,y +0af3: e4 1e mov a,$1e +0af5: e9 09 02 mov x,$0209 +0af8: 30 0e bmi $0b08 +0afa: 60 clrc +0afb: 85 0a 02 adc a,$020a +0afe: b0 04 bcs $0b04 +0b00: 68 7f cmp a,#$7f +0b02: 90 13 bcc $0b17 +0b04: e8 7f mov a,#$7f +0b06: 2f 0a bra $0b12 +0b08: 80 setc +0b09: a5 0a 02 sbc a,$020a +0b0c: f0 04 beq $0b12 +0b0e: b0 07 bcs $0b17 +0b10: e8 00 mov a,#$00 +0b12: 8d 00 mov y,#$00 +0b14: cc 07 02 mov $0207,y +0b17: c4 1e mov $1e,a +0b19: 5d mov x,a +0b1a: 8f 2c f2 mov $f2,#$2c +0b1d: 65 0b 02 cmp a,$020b +0b20: 90 03 bcc $0b25 +0b22: e5 0b 02 mov a,$020b +0b25: c4 f3 mov $f3,a +0b27: 8f 3c f2 mov $f2,#$3c +0b2a: 7d mov a,x +0b2b: 65 0c 02 cmp a,$020c +0b2e: 90 03 bcc $0b33 +0b30: e5 0b 02 mov a,$020b +0b33: c4 f3 mov $f3,a +0b35: 8f 0c f2 mov $f2,#$0c +0b38: d8 f3 mov $f3,x +0b3a: 8f 1c f2 mov $f2,#$1c +0b3d: d8 f3 mov $f3,x +0b3f: e5 07 02 mov a,$0207 +0b42: d0 0d bne $0b51 +0b44: e5 06 02 mov a,$0206 +0b47: f0 08 beq $0b51 +0b49: 8f 00 64 mov $64,#$00 +0b4c: 8d 80 mov y,#$80 +0b4e: 5f 49 0c jmp $0c49 +0b51: 6f ret +0b52: e4 53 mov a,$53 +0b54: 10 0c bpl $0b62 +0b56: 28 1f and a,#$1f +0b58: 8f 6c f2 mov $f2,#$6c +0b5b: c4 f3 mov $f3,a +0b5d: 09 39 55 or ($55),($39) +0b60: 2f 03 bra $0b65 +0b62: 29 3a 55 and ($55),($3a) +0b65: 8f 3d f2 mov $f2,#$3d +0b68: fa 55 f3 mov ($f3),($55) +0b6b: 6f ret +0b6c: 4d push x +0b6d: e4 f6 mov a,$f6 +0b6f: f0 4c beq $0bbd +0b71: f8 f7 mov x,$f7 +0b73: c8 1e cmp x,#$1e +0b75: 90 46 bcc $0bbd +0b77: c8 23 cmp x,#$23 +0b79: b0 42 bcs $0bbd +0b7b: 2f 05 bra $0b82 +0b7d: 4d push x +0b7e: e4 f6 mov a,$f6 +0b80: f0 3b beq $0bbd +0b82: e4 f6 mov a,$f6 +0b84: 64 f6 cmp a,$f6 +0b86: d0 fa bne $0b82 +0b88: c4 1f mov $1f,a +0b8a: fa f4 21 mov ($21),($f4) +0b8d: fa f5 22 mov ($22),($f5) +0b90: e4 f7 mov a,$f7 +0b92: 28 fe and a,#$fe +0b94: c4 20 mov $20,a +0b96: 8f b1 f1 mov $f1,#$b1 +0b99: 28 fe and a,#$fe +0b9b: c4 20 mov $20,a +0b9d: 68 20 cmp a,#$20 +0b9f: f0 07 beq $0ba8 +0ba1: 68 22 cmp a,#$22 +0ba3: f0 03 beq $0ba8 +0ba5: fa 1f f6 mov ($f6),($1f) +0ba8: 5d mov x,a +0ba9: c8 29 cmp x,#$29 +0bab: b0 10 bcs $0bbd +0bad: e4 21 mov a,$21 +0baf: eb 22 mov y,$22 +0bb1: 3f bf 0b call $0bbf +0bb4: fa 21 f4 mov ($f4),($21) +0bb7: fa 22 f5 mov ($f5),($22) +0bba: fa 20 f7 mov ($f7),($20) +0bbd: ce pop x +0bbe: 6f ret +0bbf: 1f 54 19 jmp ($1954+x) +0bc2: 3f 0f 0f call $0f0f +0bc5: e8 01 mov a,#$01 +0bc7: 8d 08 mov y,#$08 +0bc9: cd 01 mov x,#$01 +0bcb: 3f e7 0b call $0be7 +0bce: 8f 6c f2 mov $f2,#$6c +0bd1: 8f 00 f3 mov $f3,#$00 +0bd4: 8f ff 23 mov $23,#$ff +0bd7: 6f ret +0bd8: da 42 movw $42,ya +0bda: 8f ff 41 mov $41,#$ff +0bdd: 6f ret +0bde: c4 5a mov $5a,a +0be0: 6f ret +0be1: e8 00 mov a,#$00 +0be3: c5 07 02 mov $0207,a +0be6: 6f ret +0be7: cd 01 mov x,#$01 +0be9: 2d push a +0bea: e8 00 mov a,#$00 +0bec: c5 06 02 mov $0206,a +0bef: ae pop a +0bf0: 2f 02 bra $0bf4 +0bf2: cd ff mov x,#$ff +0bf4: c5 07 02 mov $0207,a +0bf7: c5 08 02 mov $0208,a +0bfa: cc 0a 02 mov $020a,y +0bfd: c9 09 02 mov $0209,x +0c00: 6f ret +0c01: 8d ff mov y,#$ff +0c03: cc 05 02 mov $0205,y +0c06: 5f a0 0c jmp $0ca0 +0c09: 3f 5a 18 call $185a +0c0c: e5 fc 19 mov a,$19fc +0c0f: c5 35 06 mov $0635,a +0c12: e5 fd 19 mov a,$19fd +0c15: c5 36 06 mov $0636,a +0c18: 05 35 06 or a,$0635 +0c1b: f0 20 beq $0c3d +0c1d: 3f 5c 14 call $145c +0c20: e5 35 06 mov a,$0635 +0c23: 80 setc +0c24: a8 01 sbc a,#$01 +0c26: c5 35 06 mov $0635,a +0c29: e5 36 06 mov a,$0636 +0c2c: a8 00 sbc a,#$00 +0c2e: c5 36 06 mov $0636,a +0c31: b0 ea bcs $0c1d +0c33: cd 07 mov x,#$07 +0c35: e8 00 mov a,#$00 +0c37: d5 6e 02 mov $026e+x,a +0c3a: 1d dec x +0c3b: 10 fa bpl $0c37 +0c3d: 6f ret +0c3e: 8f 00 64 mov $64,#$00 +0c41: 68 00 cmp a,#$00 +0c43: d0 03 bne $0c48 +0c45: c5 46 05 mov $0546,a +0c48: 6f ret +0c49: c5 1d 02 mov $021d,a +0c4c: cd 07 mov x,#$07 +0c4e: ad 80 cmp y,#$80 +0c50: f0 17 beq $0c69 +0c52: e8 01 mov a,#$01 +0c54: b0 0e bcs $0c64 +0c56: ad 00 cmp y,#$00 +0c58: d0 08 bne $0c62 +0c5a: e5 1d 02 mov a,$021d +0c5d: 75 15 02 cmp a,$0215+x +0c60: d0 23 bne $0c85 +0c62: e8 80 mov a,#$80 +0c64: 75 0d 02 cmp a,$020d+x +0c67: d0 1c bne $0c85 +0c69: f5 d5 07 mov a,$07d5+x +0c6c: c4 f2 mov $f2,a +0c6e: e8 00 mov a,#$00 +0c70: 8f 9f f3 mov $f3,#$9f +0c73: d5 36 02 mov $0236+x,a +0c76: d5 0d 02 mov $020d+x,a +0c79: d5 7e 02 mov $027e+x,a +0c7c: d4 5b mov $5b+x,a +0c7e: f5 f5 07 mov a,$07f5+x +0c81: 04 4d or a,$4d +0c83: c4 4d mov $4d,a +0c85: 1d dec x +0c86: 10 c6 bpl $0c4e +0c88: 6f ret +0c89: 2d push a +0c8a: e8 00 mov a,#$00 +0c8c: c5 06 02 mov $0206,a +0c8f: ae pop a +0c90: 5f f2 0b jmp $0bf2 +0c93: 2d push a +0c94: e8 01 mov a,#$01 +0c96: c5 06 02 mov $0206,a +0c99: ae pop a +0c9a: 5f f2 0b jmp $0bf2 +0c9d: cc 05 02 mov $0205,y +0ca0: 8d 0e mov y,#$0e +0ca2: c5 1d 02 mov $021d,a +0ca5: 3f b2 0e call $0eb2 +0ca8: da 11 movw $11,ya +0caa: 8d 00 mov y,#$00 +0cac: f7 11 mov a,($11)+y +0cae: c4 44 mov $44,a +0cb0: 3a 11 incw $11 +0cb2: 8d 07 mov y,#$07 +0cb4: f7 11 mov a,($11)+y +0cb6: c4 45 mov $45,a +0cb8: 8d 06 mov y,#$06 +0cba: f7 11 mov a,($11)+y +0cbc: c4 46 mov $46,a +0cbe: 8f 80 47 mov $47,#$80 +0cc1: cd 07 mov x,#$07 +0cc3: 3f 16 0d call $0d16 +0cc6: 30 3e bmi $0d06 +0cc8: e8 80 mov a,#$80 +0cca: d5 0d 02 mov $020d+x,a +0ccd: e5 1d 02 mov a,$021d +0cd0: d5 15 02 mov $0215+x,a +0cd3: 8d 02 mov y,#$02 +0cd5: f7 11 mov a,($11)+y +0cd7: c4 3d mov $3d,a +0cd9: fc inc y +0cda: f7 11 mov a,($11)+y +0cdc: c4 3e mov $3e,a +0cde: 8d 04 mov y,#$04 +0ce0: f7 11 mov a,($11)+y +0ce2: c4 3f mov $3f,a +0ce4: fc inc y +0ce5: f7 11 mov a,($11)+y +0ce7: c4 40 mov $40,a +0ce9: e4 41 mov a,$41 +0ceb: f0 04 beq $0cf1 +0ced: ba 42 movw ya,$42 +0cef: da 3f movw $3f,ya +0cf1: 8d 01 mov y,#$01 +0cf3: f7 11 mov a,($11)+y +0cf5: 2d push a +0cf6: 8d 00 mov y,#$00 +0cf8: f7 11 mov a,($11)+y +0cfa: 8d 01 mov y,#$01 +0cfc: cc 04 02 mov $0204,y +0cff: ee pop y +0d00: 8f 00 cf mov $cf,#$00 +0d03: 3f 40 0d call $0d40 +0d06: 60 clrc +0d07: 98 08 11 adc $11,#$08 +0d0a: 90 02 bcc $0d0e +0d0c: ab 12 inc $12 +0d0e: 8b 44 dec $44 +0d10: d0 a0 bne $0cb2 +0d12: 8f 00 41 mov $41,#$00 +0d15: 6f ret +0d16: 8d 07 mov y,#$07 +0d18: e4 47 mov a,$47 +0d1a: 24 45 and a,$45 +0d1c: f0 0c beq $0d2a +0d1e: f5 0d 02 mov a,$020d+x +0d21: f0 15 beq $0d38 +0d23: e4 46 mov a,$46 +0d25: 75 2e 02 cmp a,$022e+x +0d28: b0 10 bcs $0d3a +0d2a: 4b 47 lsr $47 +0d2c: d0 05 bne $0d33 +0d2e: 8f 80 47 mov $47,#$80 +0d31: cd 08 mov x,#$08 +0d33: 1d dec x +0d34: dc dec y +0d35: 10 e1 bpl $0d18 +0d37: 6f ret +0d38: e4 46 mov a,$46 +0d3a: d5 2e 02 mov $022e+x,a +0d3d: e8 00 mov a,#$00 +0d3f: 6f ret +0d40: d8 3b mov $3b,x +0d42: 2d push a +0d43: e4 cf mov a,$cf +0d45: d0 08 bne $0d4f +0d47: f5 d5 07 mov a,$07d5+x +0d4a: c4 f2 mov $f2,a +0d4c: 8f 9f f3 mov $f3,#$9f +0d4f: dd mov a,y +0d50: d5 6e 02 mov $026e+x,a +0d53: 7d mov a,x +0d54: 1c asl a +0d55: 5d mov x,a +0d56: e4 3f mov a,$3f +0d58: d5 4e 02 mov $024e+x,a +0d5b: e4 40 mov a,$40 +0d5d: d5 4f 02 mov $024f+x,a +0d60: e4 3d mov a,$3d +0d62: d5 1e 02 mov $021e+x,a +0d65: e4 3e mov a,$3e +0d67: d5 1f 02 mov $021f+x,a +0d6a: ae pop a +0d6b: 8d 02 mov y,#$02 +0d6d: 3f b2 0e call $0eb2 +0d70: da 0f movw $0f,ya +0d72: f8 3b mov x,$3b +0d74: f5 f5 07 mov a,$07f5+x +0d77: c4 56 mov $56,a +0d79: 48 ff eor a,#$ff +0d7b: c4 57 mov $57,a +0d7d: 8d 00 mov y,#$00 +0d7f: f7 0f mov a,($0f)+y +0d81: 2d push a +0d82: e5 05 02 mov a,$0205 +0d85: 30 0a bmi $0d91 +0d87: ae pop a +0d88: 2d push a +0d89: 28 08 and a,#$08 +0d8b: f0 04 beq $0d91 +0d8d: ae pop a +0d8e: 48 08 eor a,#$08 +0d90: 2d push a +0d91: ae pop a +0d92: d4 5b mov $5b+x,a +0d94: c4 3c mov $3c,a +0d96: 28 20 and a,#$20 +0d98: f0 05 beq $0d9f +0d9a: 09 56 58 or ($58),($56) +0d9d: 2f 03 bra $0da2 +0d9f: 29 57 58 and ($58),($57) +0da2: 8f 2d f2 mov $f2,#$2d +0da5: fa 58 f3 mov ($f3),($58) +0da8: e4 cf mov a,$cf +0daa: d0 3e bne $0dea +0dac: e4 3c mov a,$3c +0dae: 28 10 and a,#$10 +0db0: f0 2f beq $0de1 +0db2: 8d 05 mov y,#$05 +0db4: f7 0f mov a,($0f)+y +0db6: 8d 0c mov y,#$0c +0db8: 3f b2 0e call $0eb2 +0dbb: 8d 00 mov y,#$00 +0dbd: f6 05 08 mov a,$0805+y +0dc0: c4 f2 mov $f2,a +0dc2: f7 18 mov a,($18)+y +0dc4: ad 01 cmp y,#$01 +0dc6: f0 04 beq $0dcc +0dc8: ad 02 cmp y,#$02 +0dca: d0 09 bne $0dd5 +0dcc: d6 0a 02 mov $020a+y,a +0dcf: 64 1e cmp a,$1e +0dd1: 90 02 bcc $0dd5 +0dd3: e4 1e mov a,$1e +0dd5: c4 f3 mov $f3,a +0dd7: fc inc y +0dd8: ad 0c cmp y,#$0c +0dda: 90 e1 bcc $0dbd +0ddc: 09 56 59 or ($59),($56) +0ddf: 2f 03 bra $0de4 +0de1: 29 57 59 and ($59),($57) +0de4: 8f 4d f2 mov $f2,#$4d +0de7: fa 59 f3 mov ($f3),($59) +0dea: e4 3c mov a,$3c +0dec: 28 01 and a,#$01 +0dee: 0d push psw +0def: 8d 01 mov y,#$01 +0df1: f7 0f mov a,($0f)+y +0df3: 8e pop psw +0df4: d0 08 bne $0dfe +0df6: f8 3b mov x,$3b +0df8: d5 36 02 mov $0236+x,a +0dfb: 5f 14 0e jmp $0e14 +0dfe: 8d 04 mov y,#$04 +0e00: 3f b2 0e call $0eb2 +0e03: f8 3b mov x,$3b +0e05: f5 19 08 mov a,$0819+x +0e08: c4 15 mov $15,a +0e0a: f5 11 08 mov a,$0811+x +0e0d: c4 16 mov $16,a +0e0f: ba 3d movw ya,$3d +0e11: 3f 89 0f call $0f89 +0e14: e4 3c mov a,$3c +0e16: 28 04 and a,#$04 +0e18: f0 1a beq $0e34 +0e1a: 8d 03 mov y,#$03 +0e1c: f7 0f mov a,($0f)+y +0e1e: 8d 06 mov y,#$06 +0e20: 3f b2 0e call $0eb2 +0e23: f8 3b mov x,$3b +0e25: f5 29 08 mov a,$0829+x +0e28: c4 15 mov $15,a +0e2a: f5 21 08 mov a,$0821+x +0e2d: c4 16 mov $16,a +0e2f: ba 3d movw ya,$3d +0e31: 3f 89 0f call $0f89 +0e34: e4 cf mov a,$cf +0e36: d0 76 bne $0eae +0e38: e5 05 02 mov a,$0205 +0e3b: 10 0c bpl $0e49 +0e3d: e4 3c mov a,$3c +0e3f: 28 08 and a,#$08 +0e41: 0d push psw +0e42: 8d 04 mov y,#$04 +0e44: f7 0f mov a,($0f)+y +0e46: 8e pop psw +0e47: d0 08 bne $0e51 +0e49: f8 3b mov x,$3b +0e4b: d5 76 02 mov $0276+x,a +0e4e: 5f 7e 0e jmp $0e7e +0e51: 8d 08 mov y,#$08 +0e53: 3f b2 0e call $0eb2 +0e56: f8 3b mov x,$3b +0e58: f5 49 08 mov a,$0849+x +0e5b: c4 15 mov $15,a +0e5d: f5 41 08 mov a,$0841+x +0e60: c4 16 mov $16,a +0e62: ba 3d movw ya,$3d +0e64: 3f 89 0f call $0f89 +0e67: 8d 07 mov y,#$07 +0e69: f7 15 mov a,($15)+y +0e6b: f0 0b beq $0e78 +0e6d: 8d 15 mov y,#$15 +0e6f: f7 15 mov a,($15)+y +0e71: d0 05 bne $0e78 +0e73: e8 ff mov a,#$ff +0e75: 5f 7a 0e jmp $0e7a +0e78: e8 00 mov a,#$00 +0e7a: 8d 15 mov y,#$15 +0e7c: d7 15 mov ($15)+y,a +0e7e: e4 3c mov a,$3c +0e80: 28 02 and a,#$02 +0e82: 0d push psw +0e83: 8d 02 mov y,#$02 +0e85: f7 0f mov a,($0f)+y +0e87: 8e pop psw +0e88: d0 08 bne $0e92 +0e8a: f8 3b mov x,$3b +0e8c: d5 7e 02 mov $027e+x,a +0e8f: 5f a8 0e jmp $0ea8 +0e92: 8d 0a mov y,#$0a +0e94: 3f b2 0e call $0eb2 +0e97: f8 3b mov x,$3b +0e99: f5 39 08 mov a,$0839+x +0e9c: c4 15 mov $15,a +0e9e: f5 31 08 mov a,$0831+x +0ea1: c4 16 mov $16,a +0ea3: ba 3d movw ya,$3d +0ea5: 3f 89 0f call $0f89 +0ea8: 09 56 4d or ($4d),($56) +0eab: 09 56 48 or ($48),($56) +0eae: 8f 00 cf mov $cf,#$00 +0eb1: 6f ret +0eb2: 8f 00 0e mov $0e,#$00 +0eb5: 1c asl a +0eb6: 2b 0e rol $0e +0eb8: 60 clrc +0eb9: 96 e0 19 adc a,$19e0+y +0ebc: c4 0d mov $0d,a +0ebe: e4 0e mov a,$0e +0ec0: 96 e1 19 adc a,$19e1+y +0ec3: c4 0e mov $0e,a +0ec5: 8d 01 mov y,#$01 +0ec7: f7 0d mov a,($0d)+y +0ec9: c4 19 mov $19,a +0ecb: dc dec y +0ecc: f7 0d mov a,($0d)+y +0ece: c4 18 mov $18,a +0ed0: eb 19 mov y,$19 +0ed2: 6f ret +0ed3: cd 3e mov x,#$3e +0ed5: 8d 0f mov y,#$0f +0ed7: 3f 27 0f call $0f27 +0eda: e8 00 mov a,#$00 +0edc: fd mov y,a +0edd: c4 00 mov $00,a +0edf: 8f 02 01 mov $01,#$02 +0ee2: d7 00 mov ($00)+y,a +0ee4: 3a 00 incw $00 +0ee6: 78 07 01 cmp $01,#$07 +0ee9: 90 f7 bcc $0ee2 +0eeb: d6 00 00 mov $0000+y,a +0eee: fc inc y +0eef: ad f0 cmp y,#$f0 +0ef1: 90 f8 bcc $0eeb +0ef3: 8d 00 mov y,#$00 +0ef5: 60 clrc +0ef6: d6 8a 00 mov $008a+y,a +0ef9: 88 19 adc a,#$19 +0efb: fc inc y +0efc: ad 08 cmp y,#$08 +0efe: d0 f6 bne $0ef6 +0f00: 9c dec a +0f01: c4 49 mov $49,a +0f03: c4 4b mov $4b,a +0f05: c4 50 mov $50,a +0f07: c4 4a mov $4a,a +0f09: c4 4f mov $4f,a +0f0b: 8f 00 1e mov $1e,#$00 +0f0e: 6f ret +0f0f: e5 e1 19 mov a,$19e1 +0f12: 8f 6d f2 mov $f2,#$6d +0f15: c4 f3 mov $f3,a +0f17: c4 01 mov $01,a +0f19: e8 00 mov a,#$00 +0f1b: fd mov y,a +0f1c: c4 00 mov $00,a +0f1e: d7 00 mov ($00)+y,a +0f20: fe fc dbnz y,$0f1e +0f22: ab 01 inc $01 +0f24: d0 f8 bne $0f1e +0f26: 6f ret +0f27: d8 00 mov $00,x +0f29: cb 01 mov $01,y +0f2b: 8d 00 mov y,#$00 +0f2d: f7 00 mov a,($00)+y +0f2f: 68 ff cmp a,#$ff +0f31: f0 0a beq $0f3d +0f33: c4 f2 mov $f2,a +0f35: fc inc y +0f36: f7 00 mov a,($00)+y +0f38: c4 f3 mov $f3,a +0f3a: fc inc y +0f3b: d0 f0 bne $0f2d +0f3d: 6f ret + +0f3e: db $6c,$3f,$3d,$00,$4d,$00,$7d,$00,$6d,$ff,$5d,$1a,$5c,$00,$2d,$00,$05,$00,$15,$00,$25,$00,$35,$00,$45,$00,$55,$00,$65,$00,$75,$00,$07,$00,$17,$00,$27,$00,$37,$00,$47,$00,$57,$00,$67,$00,$77,$00,$7c,$00,$2c,$00,$3c,$00,$0c,$00,$1c,$00,$04,$00,$14,$00,$24,$00,$34,$00,$44,$00,$54,$00,$64,$00,$74,$00,$ff + +0f89: da 2f movw $2f,ya +0f8b: 8d 07 mov y,#$07 +0f8d: f7 18 mov a,($18)+y +0f8f: d7 15 mov ($15)+y,a +0f91: dc dec y +0f92: 10 f9 bpl $0f8d +0f94: e4 18 mov a,$18 +0f96: 60 clrc +0f97: 88 08 adc a,#$08 +0f99: 8d 08 mov y,#$08 +0f9b: d7 15 mov ($15)+y,a +0f9d: e4 19 mov a,$19 +0f9f: 88 00 adc a,#$00 +0fa1: fc inc y +0fa2: d7 15 mov ($15)+y,a +0fa4: 8d 03 mov y,#$03 +0fa6: f7 15 mov a,($15)+y +0fa8: 5d mov x,a +0fa9: 8d 02 mov y,#$02 +0fab: f7 15 mov a,($15)+y +0fad: fd mov y,a +0fae: 7d mov a,x +0faf: cf mul ya +0fb0: da 33 movw $33,ya +0fb2: 4d push x +0fb3: ba 2f movw ya,$2f +0fb5: e9 04 02 mov x,$0204 +0fb8: d0 1d bne $0fd7 +0fba: 6d push y +0fbb: 5d mov x,a +0fbc: e5 02 02 mov a,$0202 +0fbf: ec 03 02 mov y,$0203 +0fc2: 3f 16 16 call $1616 +0fc5: da 31 movw $31,ya +0fc7: ce pop x +0fc8: e5 02 02 mov a,$0202 +0fcb: ec 03 02 mov y,$0203 +0fce: 3f 16 16 call $1616 +0fd1: 60 clrc +0fd2: 84 32 adc a,$32 +0fd4: fd mov y,a +0fd5: e4 31 mov a,$31 +0fd7: ce pop x +0fd8: 9a 33 subw ya,$33 +0fda: b0 03 bcs $0fdf +0fdc: e8 00 mov a,#$00 +0fde: fd mov y,a +0fdf: cb 34 mov $34,y +0fe1: 8d 0d mov y,#$0d +0fe3: d7 15 mov ($15)+y,a +0fe5: fc inc y +0fe6: e4 34 mov a,$34 +0fe8: d7 15 mov ($15)+y,a +0fea: 8d 03 mov y,#$03 +0fec: f7 15 mov a,($15)+y +0fee: bc inc a +0fef: 8d 0f mov y,#$0f +0ff1: d7 15 mov ($15)+y,a +0ff3: 68 03 cmp a,#$03 +0ff5: b0 06 bcs $0ffd +0ff7: 8d 04 mov y,#$04 +0ff9: e8 00 mov a,#$00 +0ffb: d7 15 mov ($15)+y,a +0ffd: 8d 08 mov y,#$08 +0fff: f7 15 mov a,($15)+y +1001: 8d 0a mov y,#$0a +1003: d7 15 mov ($15)+y,a +1005: 8d 09 mov y,#$09 +1007: f7 15 mov a,($15)+y +1009: 8d 0b mov y,#$0b +100b: d7 15 mov ($15)+y,a +100d: e8 01 mov a,#$01 +100f: 8d 14 mov y,#$14 +1011: d7 15 mov ($15)+y,a +1013: 9c dec a +1014: 8d 0c mov y,#$0c +1016: d7 15 mov ($15)+y,a +1018: 8d 12 mov y,#$12 +101a: d7 15 mov ($15)+y,a +101c: fc inc y +101d: d7 15 mov ($15)+y,a +101f: c4 28 mov $28,a +1021: 5f d2 10 jmp $10d2 +1024: 8d 14 mov y,#$14 +1026: f7 15 mov a,($15)+y +1028: f0 39 beq $1063 +102a: 8d 04 mov y,#$04 +102c: f7 15 mov a,($15)+y +102e: c4 28 mov $28,a +1030: 8d 0f mov y,#$0f +1032: f7 15 mov a,($15)+y +1034: c4 29 mov $29,a +1036: f0 03 beq $103b +1038: 9c dec a +1039: d0 06 bne $1041 +103b: 8d 03 mov y,#$03 +103d: f7 15 mov a,($15)+y +103f: 8d 0f mov y,#$0f +1041: d7 15 mov ($15)+y,a +1043: 78 02 29 cmp $29,#$02 +1046: 90 03 bcc $104b +1048: 5f d2 10 jmp $10d2 +104b: 8d 0c mov y,#$0c +104d: f7 15 mov a,($15)+y +104f: bc inc a +1050: 8d 05 mov y,#$05 +1052: 77 15 cmp a,($15)+y +1054: 90 17 bcc $106d +1056: 9c dec a +1057: 8d 01 mov y,#$01 +1059: 77 15 cmp a,($15)+y +105b: f0 6a beq $10c7 +105d: e8 00 mov a,#$00 +105f: 8d 14 mov y,#$14 +1061: d7 15 mov ($15)+y,a +1063: 8d 11 mov y,#$11 +1065: f7 15 mov a,($15)+y +1067: 2d push a +1068: dc dec y +1069: f7 15 mov a,($15)+y +106b: ee pop y +106c: 6f ret +106d: 8d 0c mov y,#$0c +106f: d7 15 mov ($15)+y,a +1071: 8d 06 mov y,#$06 +1073: f7 15 mov a,($15)+y +1075: 8d 0a mov y,#$0a +1077: 60 clrc +1078: 97 15 adc a,($15)+y +107a: d7 15 mov ($15)+y,a +107c: 90 07 bcc $1085 +107e: fc inc y +107f: f7 15 mov a,($15)+y +1081: 88 00 adc a,#$00 +1083: d7 15 mov ($15)+y,a +1085: 8d 0e mov y,#$0e +1087: f7 15 mov a,($15)+y +1089: 5d mov x,a +108a: dc dec y +108b: f7 15 mov a,($15)+y +108d: d0 04 bne $1093 +108f: c8 00 cmp x,#$00 +1091: f0 3f beq $10d2 +1093: 8d 03 mov y,#$03 +1095: 80 setc +1096: b7 15 sbc a,($15)+y +1098: 8d 0d mov y,#$0d +109a: d7 15 mov ($15)+y,a +109c: c4 33 mov $33,a +109e: 7d mov a,x +109f: a8 00 sbc a,#$00 +10a1: b0 06 bcs $10a9 +10a3: e8 00 mov a,#$00 +10a5: d7 15 mov ($15)+y,a +10a7: c4 33 mov $33,a +10a9: fc inc y +10aa: d7 15 mov ($15)+y,a +10ac: 04 33 or a,$33 +10ae: d0 0b bne $10bb +10b0: 8d 01 mov y,#$01 +10b2: f7 15 mov a,($15)+y +10b4: 68 ff cmp a,#$ff +10b6: f0 03 beq $10bb +10b8: 5f cb 10 jmp $10cb +10bb: 8d 0c mov y,#$0c +10bd: f7 15 mov a,($15)+y +10bf: 8d 01 mov y,#$01 +10c1: 77 15 cmp a,($15)+y +10c3: 90 0d bcc $10d2 +10c5: f0 0b beq $10d2 +10c7: 8d 00 mov y,#$00 +10c9: f7 15 mov a,($15)+y +10cb: 8d 0c mov y,#$0c +10cd: d7 15 mov ($15)+y,a +10cf: 3f 75 11 call $1175 +10d2: f8 28 mov x,$28 +10d4: f0 14 beq $10ea +10d6: 78 03 29 cmp $29,#$03 +10d9: 90 0f bcc $10ea +10db: 8d 13 mov y,#$13 +10dd: cd 03 mov x,#$03 +10df: f7 15 mov a,($15)+y +10e1: d4 24 mov $24+x,a +10e3: dc dec y +10e4: 1d dec x +10e5: 10 f8 bpl $10df +10e7: 5f 52 11 jmp $1152 +10ea: 3f 64 11 call $1164 +10ed: 8d 06 mov y,#$06 +10ef: f7 15 mov a,($15)+y +10f1: 5d mov x,a +10f2: 8d 00 mov y,#$00 +10f4: f7 1a mov a,($1a)+y +10f6: c8 01 cmp x,#$01 +10f8: f0 06 beq $1100 +10fa: 5d mov x,a +10fb: fc inc y +10fc: f7 1a mov a,($1a)+y +10fe: fd mov y,a +10ff: 7d mov a,x +1100: f8 28 mov x,$28 +1102: f0 52 beq $1156 +1104: 78 02 29 cmp $29,#$02 +1107: f0 4d beq $1156 +1109: da 2f movw $2f,ya +110b: 8d 11 mov y,#$11 +110d: f7 15 mov a,($15)+y +110f: c4 25 mov $25,a +1111: dc dec y +1112: f7 15 mov a,($15)+y +1114: c4 24 mov $24,a +1116: eb 25 mov y,$25 +1118: 80 setc +1119: 9a 2f subw ya,$2f +111b: da 26 movw $26,ya +111d: e8 00 mov a,#$00 +111f: 3c rol a +1120: c4 2f mov $2f,a +1122: d0 08 bne $112c +1124: 58 ff 26 eor $26,#$ff +1127: 58 ff 27 eor $27,#$ff +112a: 3a 26 incw $26 +112c: 8d 03 mov y,#$03 +112e: f7 15 mov a,($15)+y +1130: 5d mov x,a +1131: ba 26 movw ya,$26 +1133: 3f 90 11 call $1190 +1136: c4 26 mov $26,a +1138: d8 27 mov $27,x +113a: 78 01 2f cmp $2f,#$01 +113d: d0 08 bne $1147 +113f: 58 ff 26 eor $26,#$ff +1142: 58 ff 27 eor $27,#$ff +1145: 3a 26 incw $26 +1147: 8d 12 mov y,#$12 +1149: e4 26 mov a,$26 +114b: d7 15 mov ($15)+y,a +114d: fc inc y +114e: e4 27 mov a,$27 +1150: d7 15 mov ($15)+y,a +1152: ba 24 movw ya,$24 +1154: 7a 26 addw ya,$26 +1156: da 24 movw $24,ya +1158: 8d 10 mov y,#$10 +115a: d7 15 mov ($15)+y,a +115c: e4 25 mov a,$25 +115e: fc inc y +115f: d7 15 mov ($15)+y,a +1161: ba 24 movw ya,$24 +1163: 6f ret +1164: 8d 0a mov y,#$0a +1166: 5f 6b 11 jmp $116b +1169: 8d 08 mov y,#$08 +116b: f7 15 mov a,($15)+y +116d: c4 1a mov $1a,a +116f: fc inc y +1170: f7 15 mov a,($15)+y +1172: c4 1b mov $1b,a +1174: 6f ret +1175: 2d push a +1176: 3f 69 11 call $1169 +1179: 8d 06 mov y,#$06 +117b: f7 15 mov a,($15)+y +117d: fd mov y,a +117e: ae pop a +117f: cf mul ya +1180: 7a 1a addw ya,$1a +1182: da 1a movw $1a,ya +1184: 8d 0a mov y,#$0a +1186: e4 1a mov a,$1a +1188: d7 15 mov ($15)+y,a +118a: fc inc y +118b: e4 1b mov a,$1b +118d: d7 15 mov ($15)+y,a +118f: 6f ret +1190: c8 00 cmp x,#$00 +1192: d0 05 bne $1199 +1194: e8 ff mov a,#$ff +1196: fd mov y,a +1197: 5d mov x,a +1198: 6f ret +1199: cb 2c mov $2c,y +119b: 3e 2c cmp x,$2c +119d: f0 02 beq $11a1 +119f: b0 19 bcs $11ba +11a1: c4 2b mov $2b,a +11a3: dd mov a,y +11a4: 8d 00 mov y,#$00 +11a6: 9e div ya,x +11a7: c4 2d mov $2d,a +11a9: fd mov y,a +11aa: 7d mov a,x +11ab: cf mul ya +11ac: c4 2e mov $2e,a +11ae: e4 2c mov a,$2c +11b0: 80 setc +11b1: a4 2e sbc a,$2e +11b3: fd mov y,a +11b4: e4 2b mov a,$2b +11b6: 9e div ya,x +11b7: f8 2d mov x,$2d +11b9: 6f ret +11ba: 9e div ya,x +11bb: cd 00 mov x,#$00 +11bd: 6f ret +11be: f5 86 02 mov a,$0286+x +11c1: 8d 04 mov y,#$04 +11c3: cf mul ya +11c4: 7a 13 addw ya,$13 +11c6: da 00 movw $00,ya +11c8: 8d 01 mov y,#$01 +11ca: f7 00 mov a,($00)+y +11cc: c4 32 mov $32,a +11ce: dc dec y +11cf: f7 00 mov a,($00)+y +11d1: 80 setc +11d2: a8 03 sbc a,#$03 +11d4: c4 31 mov $31,a +11d6: b8 00 32 sbc $32,#$00 +11d9: f7 31 mov a,($31)+y +11db: c4 51 mov $51,a +11dd: fc inc y +11de: f7 31 mov a,($31)+y +11e0: c4 52 mov $52,a +11e2: fc inc y +11e3: f7 31 mov a,($31)+y +11e5: c4 53 mov $53,a +11e7: 6f ret +11e8: 60 clrc +11e9: 88 a0 adc a,#$a0 +11eb: 5d mov x,a +11ec: dd mov a,y +11ed: 88 05 adc a,#$05 +11ef: fd mov y,a +11f0: 7d mov a,x +11f1: ad 0a cmp y,#$0a +11f3: 90 06 bcc $11fb +11f5: d0 0a bne $1201 +11f7: 68 50 cmp a,#$50 +11f9: b0 06 bcs $1201 +11fb: 8f ff 54 mov $54,#$ff +11fe: 5f 17 12 jmp $1217 +1201: ad 80 cmp y,#$80 +1203: 90 0f bcc $1214 +1205: 8f 00 54 mov $54,#$00 +1208: 60 clrc +1209: 88 20 adc a,#$20 +120b: 5d mov x,a +120c: dd mov a,y +120d: 88 df adc a,#$df +120f: fd mov y,a +1210: 7d mov a,x +1211: 5f 17 12 jmp $1217 +1214: 8f 0a 54 mov $54,#$0a +1217: cd f0 mov x,#$f0 +1219: 9e div ya,x +121a: 78 ff 54 cmp $54,#$ff +121d: d0 02 bne $1221 +121f: c4 54 mov $54,a +1221: f6 3c 12 mov a,$123c+y +1224: c4 2f mov $2f,a +1226: f6 2c 13 mov a,$132c+y +1229: c4 30 mov $30,a +122b: e8 0a mov a,#$0a +122d: 80 setc +122e: a4 54 sbc a,$54 +1230: f0 07 beq $1239 +1232: fd mov y,a +1233: 4b 30 lsr $30 +1235: 6b 2f ror $2f +1237: fe fa dbnz y,$1233 +1239: ba 2f movw ya,$2f +123b: 6f ret + +123c: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 +132c: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f +141c: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 +143c: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 + +145c: e4 64 mov a,$64 +145e: d0 0c bne $146c +1460: e5 46 05 mov a,$0546 +1463: f0 22 beq $1487 +1465: e8 00 mov a,#$00 +1467: c5 46 05 mov $0546,a +146a: 2f f0 bra $145c +146c: e4 63 mov a,$63 +146e: 9c dec a +146f: c4 65 mov $65,a +1471: 1c asl a +1472: c4 66 mov $66,a +1474: 3f 6c 0b call $0b6c +1477: f8 65 mov x,$65 +1479: f4 68 mov a,$68+x +147b: 5d mov x,a +147c: 1f d8 18 jmp ($18d8+x) +147f: 8b 66 dec $66 +1481: 8b 66 dec $66 +1483: 8b 65 dec $65 +1485: 10 ed bpl $1474 +1487: 6f ret +1488: f8 65 mov x,$65 +148a: 9b 9b dec $9b+x +148c: d0 f1 bne $147f +148e: f5 47 05 mov a,$0547+x +1491: d4 9b mov $9b+x,a +1493: 9b a3 dec $a3+x +1495: d0 e8 bne $147f +1497: f4 68 mov a,$68+x +1499: e8 04 mov a,#$04 +149b: d4 68 mov $68+x,a +149d: 5f a0 14 jmp $14a0 +14a0: f8 65 mov x,$65 +14a2: f4 82 mov a,$82+x +14a4: 68 19 cmp a,#$19 +14a6: f0 25 beq $14cd +14a8: 60 clrc +14a9: 94 8a adc a,$8a+x +14ab: f8 66 mov x,$66 +14ad: c4 02 mov $02,a +14af: fd mov y,a +14b0: f6 3b 06 mov a,$063b+y +14b3: c4 00 mov $00,a +14b5: f6 3c 06 mov a,$063c+y +14b8: c4 01 mov $01,a +14ba: 8d 02 mov y,#$02 +14bc: f7 00 mov a,($00)+y +14be: 74 72 cmp a,$72+x +14c0: d0 0b bne $14cd +14c2: 8d 03 mov y,#$03 +14c4: f7 00 mov a,($00)+y +14c6: 74 73 cmp a,$73+x +14c8: d0 03 bne $14cd +14ca: 5f 32 17 jmp $1732 +14cd: 3f f2 15 call $15f2 +14d0: fd mov y,a +14d1: 28 20 and a,#$20 +14d3: c4 67 mov $67,a +14d5: f8 65 mov x,$65 +14d7: ad 80 cmp y,#$80 +14d9: 90 3d bcc $1518 +14db: ad f0 cmp y,#$f0 +14dd: 90 08 bcc $14e7 +14df: dd mov a,y +14e0: 28 0f and a,#$0f +14e2: 1c asl a +14e3: 5d mov x,a +14e4: 1f 2f 18 jmp ($182f+x) +14e7: f5 67 05 mov a,$0567+x +14ea: f0 4c beq $1538 +14ec: dd mov a,y +14ed: 28 08 and a,#$08 +14ef: 0d push psw +14f0: dd mov a,y +14f1: 28 07 and a,#$07 +14f3: bc inc a +14f4: 1c asl a +14f5: f8 66 mov x,$66 +14f7: 8e pop psw +14f8: f0 0d beq $1507 +14fa: 60 clrc +14fb: 94 be adc a,$be+x +14fd: d4 be mov $be+x,a +14ff: f4 bf mov a,$bf+x +1501: 88 00 adc a,#$00 +1503: d4 bf mov $bf+x,a +1505: 2f 31 bra $1538 +1507: c4 2f mov $2f,a +1509: f4 be mov a,$be+x +150b: 80 setc +150c: a4 2f sbc a,$2f +150e: d4 be mov $be+x,a +1510: f4 bf mov a,$bf+x +1512: a8 00 sbc a,#$00 +1514: d4 bf mov $bf+x,a +1516: 2f 20 bra $1538 +1518: f5 67 05 mov a,$0567+x +151b: f0 1b beq $1538 +151d: dd mov a,y +151e: 28 1f and a,#$1f +1520: fd mov y,a +1521: f8 66 mov x,$66 +1523: f4 ae mov a,$ae+x +1525: 60 clrc +1526: 96 1c 14 adc a,$141c+y +1529: d4 ae mov $ae+x,a +152b: f4 af mov a,$af+x +152d: 96 3c 14 adc a,$143c+y +1530: d4 af mov $af+x,a +1532: e8 00 mov a,#$00 +1534: d4 be mov $be+x,a +1536: d4 bf mov $bf+x,a +1538: 3f f2 15 call $15f2 +153b: 68 00 cmp a,#$00 +153d: d0 07 bne $1546 +153f: f8 65 mov x,$65 +1541: f4 68 mov a,$68+x +1543: 5f 74 14 jmp $1474 +1546: f8 65 mov x,$65 +1548: d4 a3 mov $a3+x,a +154a: fd mov y,a +154b: e4 ce mov a,$ce +154d: d0 0a bne $1559 +154f: f5 47 05 mov a,$0547+x +1552: d4 9b mov $9b+x,a +1554: cf mul ya +1555: da 3d movw $3d,ya +1557: 2f 08 bra $1561 +1559: f5 47 05 mov a,$0547+x +155c: d4 9b mov $9b+x,a +155e: 8f 00 ce mov $ce,#$00 +1561: 3f 16 18 call $1816 +1564: f5 6f 05 mov a,$056f+x +1567: 5d mov x,a +1568: f5 0d 02 mov a,$020d+x +156b: f0 0a beq $1577 +156d: e8 40 mov a,#$40 +156f: 75 2e 02 cmp a,$022e+x +1572: b0 05 bcs $1579 +1574: 5f ec 15 jmp $15ec +1577: e8 40 mov a,#$40 +1579: d5 2e 02 mov $022e+x,a +157c: e8 01 mov a,#$01 +157e: d5 0d 02 mov $020d+x,a +1581: d8 ab mov $ab,x +1583: 7d mov a,x +1584: f8 65 mov x,$65 +1586: f5 67 05 mov a,$0567+x +1589: d0 0c bne $1597 +158b: f8 66 mov x,$66 +158d: f4 ae mov a,$ae+x +158f: c4 3f mov $3f,a +1591: f4 af mov a,$af+x +1593: c4 40 mov $40,a +1595: 2f 1e bra $15b5 +1597: f8 66 mov x,$66 +1599: f4 ae mov a,$ae+x +159b: 60 clrc +159c: 94 be adc a,$be+x +159e: c4 3f mov $3f,a +15a0: f4 af mov a,$af+x +15a2: 94 bf adc a,$bf+x +15a4: c4 40 mov $40,a +15a6: f5 77 05 mov a,$0577+x +15a9: 60 clrc +15aa: 84 3f adc a,$3f +15ac: c4 3f mov $3f,a +15ae: f5 78 05 mov a,$0578+x +15b1: 84 40 adc a,$40 +15b3: c4 40 mov $40,a +15b5: eb 67 mov y,$67 +15b7: d0 0e bne $15c7 +15b9: 0b ab asl $ab +15bb: f8 ab mov x,$ab +15bd: d5 4f 02 mov $024f+x,a +15c0: e4 3f mov a,$3f +15c2: d5 4e 02 mov $024e+x,a +15c5: 2f 25 bra $15ec +15c7: f8 65 mov x,$65 +15c9: f5 4f 05 mov a,$054f+x +15cc: 60 clrc +15cd: 95 57 05 adc a,$0557+x +15d0: 10 02 bpl $15d4 +15d2: e8 7f mov a,#$7f +15d4: c4 ac mov $ac,a +15d6: f8 65 mov x,$65 +15d8: f5 5f 05 mov a,$055f+x +15db: f8 ab mov x,$ab +15dd: 8d 00 mov y,#$00 +15df: cc 04 02 mov $0204,y +15e2: 8d ff mov y,#$ff +15e4: cc 05 02 mov $0205,y +15e7: eb ac mov y,$ac +15e9: 3f 40 0d call $0d40 +15ec: 8f 00 cf mov $cf,#$00 +15ef: 5f 7f 14 jmp $147f +15f2: f8 66 mov x,$66 +15f4: e7 72 mov a,($72+x) +15f6: bb 72 inc $72+x +15f8: d0 02 bne $15fc +15fa: bb 73 inc $73+x +15fc: 6f ret +15fd: f8 65 mov x,$65 +15ff: e8 00 mov a,#$00 +1601: d4 68 mov $68+x,a +1603: 8b 64 dec $64 +1605: 5f 7f 14 jmp $147f +1608: f8 65 mov x,$65 +160a: f5 57 05 mov a,$0557+x +160d: 3f 2b 16 call $162b +1610: d5 57 05 mov $0557+x,a +1613: 5f a0 14 jmp $14a0 +1616: 6d push y +1617: 4d push x +1618: ee pop y +1619: cf mul ya +161a: da 2f movw $2f,ya +161c: 7d mov a,x +161d: ee pop y +161e: cf mul ya +161f: 6d push y +1620: 0b 2f asl $2f +1622: 84 30 adc a,$30 +1624: 5d mov x,a +1625: ae pop a +1626: 88 00 adc a,#$00 +1628: fd mov y,a +1629: 7d mov a,x +162a: 6f ret +162b: 4d push x +162c: fd mov y,a +162d: 6d push y +162e: 3f f2 15 call $15f2 +1631: cf mul ya +1632: da 2f movw $2f,ya +1634: ee pop y +1635: 3f f2 15 call $15f2 +1638: cf mul ya +1639: 6d push y +163a: 0b 2f asl $2f +163c: 84 30 adc a,$30 +163e: 5d mov x,a +163f: ae pop a +1640: 88 00 adc a,#$00 +1642: fd mov y,a +1643: d0 03 bne $1648 +1645: 7d mov a,x +1646: 10 02 bpl $164a +1648: e8 7f mov a,#$7f +164a: ce pop x +164b: 6f ret +164c: 3f f2 15 call $15f2 +164f: f8 65 mov x,$65 +1651: d5 57 05 mov $0557+x,a +1654: 5f a0 14 jmp $14a0 +1657: f8 65 mov x,$65 +1659: f5 6f 05 mov a,$056f+x +165c: 30 15 bmi $1673 +165e: fd mov y,a +165f: f6 0d 02 mov a,$020d+y +1662: 68 80 cmp a,#$80 +1664: f0 0d beq $1673 +1666: e8 00 mov a,#$00 +1668: d6 6e 02 mov $026e+y,a +166b: f6 d5 07 mov a,$07d5+y +166e: c4 f2 mov $f2,a +1670: 8f 9f f3 mov $f3,#$9f +1673: 3f f2 15 call $15f2 +1676: f8 65 mov x,$65 +1678: d4 a3 mov $a3+x,a +167a: f5 47 05 mov a,$0547+x +167d: d4 9b mov $9b+x,a +167f: 3f 16 18 call $1816 +1682: 5f 7f 14 jmp $147f +1685: 3f f2 15 call $15f2 +1688: f8 65 mov x,$65 +168a: d5 5f 05 mov $055f+x,a +168d: f4 82 mov a,$82+x +168f: 68 19 cmp a,#$19 +1691: f0 32 beq $16c5 +1693: 60 clrc +1694: 94 8a adc a,$8a+x +1696: f8 66 mov x,$66 +1698: c4 02 mov $02,a +169a: fd mov y,a +169b: f6 3b 06 mov a,$063b+y +169e: c4 00 mov $00,a +16a0: f6 3c 06 mov a,$063c+y +16a3: c4 01 mov $01,a +16a5: f6 39 06 mov a,$0639+y +16a8: 8d 09 mov y,#$09 +16aa: 77 00 cmp a,($00)+y +16ac: 90 02 bcc $16b0 +16ae: e8 00 mov a,#$00 +16b0: bc inc a +16b1: eb 02 mov y,$02 +16b3: d6 39 06 mov $0639+y,a +16b6: 60 clrc +16b7: 88 09 adc a,#$09 +16b9: fd mov y,a +16ba: f7 00 mov a,($00)+y +16bc: 68 ff cmp a,#$ff +16be: f0 05 beq $16c5 +16c0: f8 65 mov x,$65 +16c2: d5 5f 05 mov $055f+x,a +16c5: 5f a0 14 jmp $14a0 +16c8: f8 65 mov x,$65 +16ca: f4 82 mov a,$82+x +16cc: 80 setc +16cd: a8 05 sbc a,#$05 +16cf: d4 82 mov $82+x,a +16d1: 60 clrc +16d2: 94 8a adc a,$8a+x +16d4: fd mov y,a +16d5: cb 02 mov $02,y +16d7: f8 66 mov x,$66 +16d9: f4 72 mov a,$72+x +16db: d6 3b 06 mov $063b+y,a +16de: f4 73 mov a,$73+x +16e0: d6 3c 06 mov $063c+y,a +16e3: e8 00 mov a,#$00 +16e5: d6 38 06 mov $0638+y,a +16e8: 3f f2 15 call $15f2 +16eb: 2d push a +16ec: 3f f4 15 call $15f4 +16ef: 2d push a +16f0: 3f f4 15 call $15f4 +16f3: 3f f4 15 call $15f4 +16f6: 3f f4 15 call $15f4 +16f9: 3f f4 15 call $15f4 +16fc: fd mov y,a +16fd: 3f f4 15 call $15f4 +1700: 2d push a +1701: dd mov a,y +1702: 60 clrc +1703: 95 77 05 adc a,$0577+x +1706: d5 77 05 mov $0577+x,a +1709: ae pop a +170a: 95 78 05 adc a,$0578+x +170d: d5 78 05 mov $0578+x,a +1710: f8 65 mov x,$65 +1712: f5 57 05 mov a,$0557+x +1715: eb 02 mov y,$02 +1717: d6 3a 06 mov $063a+y,a +171a: 3f 2b 16 call $162b +171d: d5 57 05 mov $0557+x,a +1720: eb 02 mov y,$02 +1722: e8 00 mov a,#$00 +1724: d6 39 06 mov $0639+y,a +1727: f8 66 mov x,$66 +1729: ae pop a +172a: d4 73 mov $73+x,a +172c: ae pop a +172d: d4 72 mov $72+x,a +172f: 5f a0 14 jmp $14a0 +1732: eb 02 mov y,$02 +1734: f6 38 06 mov a,$0638+y +1737: bc inc a +1738: d6 38 06 mov $0638+y,a +173b: 8d 04 mov y,#$04 +173d: f7 00 mov a,($00)+y +173f: f0 07 beq $1748 +1741: eb 02 mov y,$02 +1743: 76 38 06 cmp a,$0638+y +1746: f0 0f beq $1757 +1748: 8d 00 mov y,#$00 +174a: f7 00 mov a,($00)+y +174c: d4 72 mov $72+x,a +174e: 8d 01 mov y,#$01 +1750: f7 00 mov a,($00)+y +1752: d4 73 mov $73+x,a +1754: 5f cd 14 jmp $14cd +1757: f5 77 05 mov a,$0577+x +175a: 80 setc +175b: 8d 05 mov y,#$05 +175d: b7 00 sbc a,($00)+y +175f: d5 77 05 mov $0577+x,a +1762: f5 78 05 mov a,$0578+x +1765: 8d 06 mov y,#$06 +1767: b7 00 sbc a,($00)+y +1769: d5 78 05 mov $0578+x,a +176c: eb 02 mov y,$02 +176e: f6 3a 06 mov a,$063a+y +1771: f8 65 mov x,$65 +1773: d5 57 05 mov $0557+x,a +1776: f8 66 mov x,$66 +1778: e4 00 mov a,$00 +177a: 60 clrc +177b: 88 0a adc a,#$0a +177d: d4 72 mov $72+x,a +177f: e4 01 mov a,$01 +1781: 88 00 adc a,#$00 +1783: d4 73 mov $73+x,a +1785: 8d 09 mov y,#$09 +1787: f7 00 mov a,($00)+y +1789: 60 clrc +178a: 94 72 adc a,$72+x +178c: d4 72 mov $72+x,a +178e: f4 73 mov a,$73+x +1790: 88 00 adc a,#$00 +1792: d4 73 mov $73+x,a +1794: f8 65 mov x,$65 +1796: f4 82 mov a,$82+x +1798: 60 clrc +1799: 88 05 adc a,#$05 +179b: d4 82 mov $82+x,a +179d: 5f a0 14 jmp $14a0 +17a0: 28 02 and a,#$02 +17a2: c4 67 mov $67,a +17a4: 3f f2 15 call $15f2 +17a7: d4 ae mov $ae+x,a +17a9: 3f f2 15 call $15f2 +17ac: d4 af mov $af+x,a +17ae: e8 00 mov a,#$00 +17b0: d4 be mov $be+x,a +17b2: d4 bf mov $bf+x,a +17b4: 5f 38 15 jmp $1538 +17b7: eb 65 mov y,$65 +17b9: fc inc y +17ba: f7 70 mov a,($70)+y +17bc: 8d 10 mov y,#$10 +17be: 3f b2 0e call $0eb2 +17c1: f8 66 mov x,$66 +17c3: d4 72 mov $72+x,a +17c5: db 73 mov $73+x,y +17c7: e8 1c mov a,#$1c +17c9: d4 ae mov $ae+x,a +17cb: e8 02 mov a,#$02 +17cd: d4 af mov $af+x,a +17cf: f8 65 mov x,$65 +17d1: e8 00 mov a,#$00 +17d3: d5 4f 05 mov $054f+x,a +17d6: d5 57 05 mov $0557+x,a +17d9: 5f a0 14 jmp $14a0 +17dc: 3f f2 15 call $15f2 +17df: c5 00 02 mov $0200,a +17e2: 3f f2 15 call $15f2 +17e5: c5 02 02 mov $0202,a +17e8: 3f f2 15 call $15f2 +17eb: c5 03 02 mov $0203,a +17ee: 5f a0 14 jmp $14a0 +17f1: e8 00 mov a,#$00 +17f3: fd mov y,a +17f4: da 3d movw $3d,ya +17f6: 8f 01 ce mov $ce,#$01 +17f9: 3f f2 15 call $15f2 +17fc: 2d push a +17fd: fd mov y,a +17fe: f8 65 mov x,$65 +1800: f5 47 05 mov a,$0547+x +1803: cf mul ya +1804: 7a 3d addw ya,$3d +1806: da 3d movw $3d,ya +1808: ae pop a +1809: 68 ff cmp a,#$ff +180b: f0 ec beq $17f9 +180d: 5f a0 14 jmp $14a0 +1810: 8f 01 cf mov $cf,#$01 +1813: 5f a0 14 jmp $14a0 +1816: e8 02 mov a,#$02 +1818: d4 68 mov $68+x,a +181a: 6f ret +181b: 78 80 ad cmp $ad,#$80 +181e: 90 08 bcc $1828 +1820: 60 clrc +1821: 84 ad adc a,$ad +1823: 10 09 bpl $182e +1825: e8 00 mov a,#$00 +1827: 6f ret +1828: 84 ad adc a,$ad +182a: 10 02 bpl $182e +182c: e8 7f mov a,#$7f +182e: 6f ret + +182f: dw $15fd,$1608,$164c,$1657,$1673,$1685,$16c8,$17a0,$17a0,$17b7,$17dc,$17f1,$1810 + +1849: e4 03 mov a,$03 +184b: 1c asl a +184c: 44 03 eor a,$03 +184e: 1c asl a +184f: 1c asl a +1850: 1c asl a +1851: 2b 05 rol $05 +1853: 2b 04 rol $04 +1855: 2b 03 rol $03 +1857: e4 05 mov a,$05 +1859: 6f ret +185a: 8f 00 ce mov $ce,#$00 +185d: 8f 00 cf mov $cf,#$00 +1860: 8d 1a mov y,#$1a +1862: 3f b2 0e call $0eb2 +1865: da 70 movw $70,ya +1867: 8d 00 mov y,#$00 +1869: f7 70 mov a,($70)+y +186b: c4 63 mov $63,a +186d: c4 64 mov $64,a +186f: f0 66 beq $18d7 +1871: 8f 00 65 mov $65,#$00 +1874: 8f 00 66 mov $66,#$00 +1877: fc inc y +1878: f7 70 mov a,($70)+y +187a: 6d push y +187b: 8d 10 mov y,#$10 +187d: 3f b2 0e call $0eb2 +1880: f8 66 mov x,$66 +1882: d4 72 mov $72+x,a +1884: dd mov a,y +1885: ee pop y +1886: d4 73 mov $73+x,a +1888: f8 65 mov x,$65 +188a: e8 19 mov a,#$19 +188c: d4 82 mov $82+x,a +188e: e8 04 mov a,#$04 +1890: d4 68 mov $68+x,a +1892: e8 ff mov a,#$ff +1894: d5 67 05 mov $0567+x,a +1897: e8 01 mov a,#$01 +1899: d5 47 05 mov $0547+x,a +189c: 7d mov a,x +189d: d5 6f 05 mov $056f+x,a +18a0: f8 66 mov x,$66 +18a2: e8 1c mov a,#$1c +18a4: d4 ae mov $ae+x,a +18a6: e8 02 mov a,#$02 +18a8: d4 af mov $af+x,a +18aa: e8 00 mov a,#$00 +18ac: d5 77 05 mov $0577+x,a +18af: d5 78 05 mov $0578+x,a +18b2: f8 65 mov x,$65 +18b4: d5 4f 05 mov $054f+x,a +18b7: d5 57 05 mov $0557+x,a +18ba: e8 00 mov a,#$00 +18bc: c5 00 02 mov $0200,a +18bf: c5 02 02 mov $0202,a +18c2: e8 01 mov a,#$01 +18c4: c5 03 02 mov $0203,a +18c7: e8 ff mov a,#$ff +18c9: c5 01 02 mov $0201,a +18cc: ab 66 inc $66 +18ce: ab 66 inc $66 +18d0: 3d inc x +18d1: d8 65 mov $65,x +18d3: 3e 63 cmp x,$63 +18d5: 90 a0 bcc $1877 +18d7: 6f ret + +18d8: dw $147f,$1488,$14a0 + +18de: ba 21 movw ya,$21 +18e0: da 0a movw $0a,ya +18e2: 6f ret +18e3: eb 21 mov y,$21 +18e5: fa 1f f6 mov ($f6),($1f) +18e8: 00 nop +18e9: 00 nop +18ea: 00 nop +18eb: 00 nop +18ec: e4 f4 mov a,$f4 +18ee: d7 0a mov ($0a)+y,a +18f0: dc dec y +18f1: e4 f5 mov a,$f5 +18f3: d7 0a mov ($0a)+y,a +18f5: dc dec y +18f6: e4 f6 mov a,$f6 +18f8: d7 0a mov ($0a)+y,a +18fa: dc dec y +18fb: e4 f7 mov a,$f7 +18fd: d7 0a mov ($0a)+y,a +18ff: dc dec y +1900: 10 ea bpl $18ec +1902: ba 0a movw ya,$0a +1904: 7a 21 addw ya,$21 +1906: da 0a movw $0a,ya +1908: 3a 0a incw $0a +190a: 8f b1 f1 mov $f1,#$b1 +190d: fa 1f f6 mov ($f6),($1f) +1910: 6f ret +1911: eb 21 mov y,$21 +1913: fa 1f f6 mov ($f6),($1f) +1916: e4 f6 mov a,$f6 +1918: 64 f6 cmp a,$f6 +191a: d0 fa bne $1916 +191c: 68 00 cmp a,#$00 +191e: f0 f6 beq $1916 +1920: 64 1f cmp a,$1f +1922: f0 f2 beq $1916 +1924: c4 1f mov $1f,a +1926: e4 f4 mov a,$f4 +1928: d7 0a mov ($0a)+y,a +192a: dc dec y +192b: 30 19 bmi $1946 +192d: e4 f5 mov a,$f5 +192f: d7 0a mov ($0a)+y,a +1931: dc dec y +1932: 30 12 bmi $1946 +1934: e4 f7 mov a,$f7 +1936: d7 0a mov ($0a)+y,a +1938: cb f7 mov $f7,y +193a: fa 0a f4 mov ($f4),($0a) +193d: fa 0b f5 mov ($f5),($0b) +1940: fa 1f f6 mov ($f6),($1f) +1943: dc dec y +1944: 10 d0 bpl $1916 +1946: 8f b1 f1 mov $f1,#$b1 +1949: fa 1f f6 mov ($f6),($1f) +194c: ba 0a movw ya,$0a +194e: 7a 21 addw ya,$21 +1950: da 0a movw $0a,ya +1952: 3a 0a incw $0a +1954: 6f ret +1955: 6f ret + +1956: dw $0bc2,$0c01,$0c09,$0000,$0000,$0000,$078b,$0c89,$0be7,$0be1,$0bde,$0bd8,$0c3e,$0c49,$18de,$18e3,$1911,$0c93,$0c9d,$1955 \ No newline at end of file diff --git a/snes/Sculptured Software/Super Star Wars ($0700).bin b/snes/Sculptured Software/Super Star Wars ($0700).bin new file mode 100644 index 0000000000000000000000000000000000000000..346001b157de09aa4b426d20e0d9dc57bd8214c6 GIT binary patch literal 4290 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 Rr2nCQul{@bqxzHj{|6>PC&T~% literal 0 HcmV?d00001 diff --git a/snes/Sculptured Software/Super Star Wars.s b/snes/Sculptured Software/Super Star Wars.s new file mode 100644 index 00000000..3404e410 --- /dev/null +++ b/snes/Sculptured Software/Super Star Wars.s @@ -0,0 +1,1683 @@ +0700: 20 clrp +0701: cd ff mov x,#$ff +0703: bd mov sp,x +0704: 8f 6c f2 mov $f2,#$6c +0707: d8 f3 mov $f3,x +0709: 8f b0 f1 mov $f1,#$b0 +070c: 8f 20 fa mov $fa,#$20 +070f: 8f 81 f1 mov $f1,#$81 +0712: 3f f7 0d call $0df7 +0715: 8f 00 0b mov $0b,#$00 +0718: 8f 18 0c mov $0c,#$18 +071b: 8d 03 mov y,#$03 +071d: f6 ff ff mov a,$ffff+y +0720: 16 27 07 or a,$0727+y +0723: d6 ff ff mov $ffff+y,a +0726: fe f5 dbnz y,$071d +0728: ab 15 inc $15 +072a: e4 1b mov a,$1b +072c: d0 05 bne $0733 +072e: 3f 86 15 call $1586 +0731: 2f 03 bra $0736 +0733: 3f 58 08 call $0858 +0736: e4 f6 mov a,$f6 +0738: f0 03 beq $073d +073a: 3f 3d 0b call $0b3d +073d: e4 fd mov a,$fd +073f: 60 clrc +0740: 84 14 adc a,$14 +0742: c4 14 mov $14,a +0744: 68 05 cmp a,#$05 +0746: 90 ee bcc $0736 +0748: a8 05 sbc a,#$05 +074a: c4 14 mov $14,a +074c: 68 14 cmp a,#$14 +074e: 90 d8 bcc $0728 +0750: 8f 00 14 mov $14,#$00 +0753: 2f d3 bra $0728 +0755: 8d 00 mov y,#$00 +0757: 8f aa f4 mov $f4,#$aa +075a: 8f bb f5 mov $f5,#$bb +075d: f8 f4 mov x,$f4 +075f: c8 cc cmp x,#$cc +0761: d0 fa bne $075d +0763: fa f6 03 mov ($03),($f6) +0766: fa f7 04 mov ($04),($f7) +0769: 7d mov a,x +076a: f8 f5 mov x,$f5 +076c: c4 f4 mov $f4,a +076e: d0 05 bne $0775 +0770: d8 f6 mov $f6,x +0772: 1f 03 00 jmp ($0003+x) +0775: cd 00 mov x,#$00 +0777: 3e f4 cmp x,$f4 +0779: d0 fc bne $0777 +077b: e4 f5 mov a,$f5 +077d: d7 03 mov ($03)+y,a +077f: f8 f4 mov x,$f4 +0781: d8 f4 mov $f4,x +0783: 3a 03 incw $03 +0785: 3e f4 cmp x,$f4 +0787: f0 fc beq $0785 +0789: 3d inc x +078a: 3e f4 cmp x,$f4 +078c: f0 ed beq $077b +078e: f8 f4 mov x,$f4 +0790: 2f d1 bra $0763 +0792: 3f f7 0d call $0df7 +0795: 8f b0 f1 mov $f1,#$b0 +0798: cd 00 mov x,#$00 +079a: f5 55 07 mov a,$0755+x +079d: d5 00 01 mov $0100+x,a +07a0: 3d inc x +07a1: c8 3d cmp x,#$3d +07a3: 90 f5 bcc $079a +07a5: 5f 00 01 jmp $0100 + +07a8: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 +07be: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 + +07d4: db $08,$18,$28,$38,$48,$58,$68,$78 +07dc: db $07,$17,$27,$37,$47,$57,$67,$77 +07e4: db $04,$14,$24,$34,$44,$54,$64,$74 +07ec: db $02,$12,$22,$32,$42,$52,$62,$72 +07f4: db $00,$10,$20,$30,$40,$50,$60,$70 +07fc: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f +080c: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f +0818: db $02,$02,$02,$02,$02,$03,$03,$03 +0820: db $97,$ac,$c1,$d6,$eb,$00,$15,$2a +0828: db $03,$03,$03,$03,$03,$03,$03,$03 +0830: db $3f,$54,$69,$7e,$93,$a8,$bd,$d2 +0838: db $03,$03,$04,$04,$04,$04,$04,$04 +0840: db $e7,$fc,$11,$26,$3b,$50,$65,$7a +0848: db $04,$04,$04,$04,$04,$04,$05,$05 +0850: db $8f,$a5,$bb,$d1,$e7,$fd,$13,$29 + +0858: 3f 86 15 call $1586 +085b: 3f 0a 13 call $130a +085e: 8f 00 2f mov $2f,#$00 +0861: 8f 00 44 mov $44,#$00 +0864: 8f 7c f2 mov $f2,#$7c +0867: e4 f3 mov a,$f3 +0869: 04 41 or a,$41 +086b: 24 47 and a,$47 +086d: c4 41 mov $41,a +086f: 8f 00 f3 mov $f3,#$00 +0872: 24 42 and a,$42 +0874: 04 43 or a,$43 +0876: c4 43 mov $43,a +0878: cd 07 mov x,#$07 +087a: 8f 7a 0d mov $0d,#$7a +087d: 8f 04 0e mov $0e,#$04 +0880: d8 0f mov $0f,x +0882: f5 fc 07 mov a,$07fc+x +0885: c4 31 mov $31,a +0887: 48 ff eor a,#$ff +0889: c4 32 mov $32,a +088b: f4 53 mov a,$53+x +088d: 28 02 and a,#$02 +088f: c4 30 mov $30,a +0891: d0 06 bne $0899 +0893: f5 77 02 mov a,$0277+x +0896: 5f 9e 08 jmp $089e +0899: 3f db 0e call $0edb +089c: f8 0f mov x,$0f +089e: 75 7f 02 cmp a,$027f+x +08a1: d0 10 bne $08b3 +08a3: 3f 75 10 call $1075 +08a6: 3f 23 0b call $0b23 +08a9: e4 48 mov a,$48 +08ab: 24 45 and a,$45 +08ad: 24 31 and a,$31 +08af: d0 43 bne $08f4 +08b1: f0 44 beq $08f7 +08b3: d5 7f 02 mov $027f+x,a +08b6: 09 31 2f or ($2f),($31) +08b9: 3f 75 10 call $1075 +08bc: 7d mov a,x +08bd: 1c asl a +08be: 5d mov x,a +08bf: e4 49 mov a,$49 +08c1: d5 87 02 mov $0287+x,a +08c4: e4 4a mov a,$4a +08c6: d5 88 02 mov $0288+x,a +08c9: f8 0f mov x,$0f +08cb: e4 4b mov a,$4b +08cd: 28 20 and a,#$20 +08cf: f0 05 beq $08d6 +08d1: 29 32 42 and ($42),($32) +08d4: 2f 03 bra $08d9 +08d6: 09 31 42 or ($42),($31) +08d9: e4 4b mov a,$4b +08db: 28 40 and a,#$40 +08dd: f0 05 beq $08e4 +08df: 09 31 48 or ($48),($31) +08e2: 2f 03 bra $08e7 +08e4: 29 32 48 and ($48),($32) +08e7: 3f 23 0b call $0b23 +08ea: e4 48 mov a,$48 +08ec: 04 45 or a,$45 +08ee: 24 31 and a,$31 +08f0: d0 02 bne $08f4 +08f2: f0 03 beq $08f7 +08f4: 09 31 44 or ($44),($31) +08f7: 1d dec x +08f8: 30 0a bmi $0904 +08fa: 80 setc +08fb: b8 15 0d sbc $0d,#$15 +08fe: b8 00 0e sbc $0e,#$00 +0901: 5f 80 08 jmp $0880 +0904: e4 45 mov a,$45 +0906: 24 43 and a,$43 +0908: 04 44 or a,$44 +090a: c4 46 mov $46,a +090c: 8f 5c f2 mov $f2,#$5c +090f: c4 f3 mov $f3,a +0911: cd 07 mov x,#$07 +0913: 8f d2 0d mov $0d,#$d2 +0916: 8f 03 0e mov $0e,#$03 +0919: d8 0f mov $0f,x +091b: f4 53 mov a,$53+x +091d: fd mov y,a +091e: 28 40 and a,#$40 +0920: 0d push psw +0921: dd mov a,y +0922: 28 04 and a,#$04 +0924: 0d push psw +0925: 7d mov a,x +0926: fd mov y,a +0927: 1c asl a +0928: 5d mov x,a +0929: f5 48 02 mov a,$0248+x +092c: c4 2e mov $2e,a +092e: f5 47 02 mov a,$0247+x +0931: c4 2d mov $2d,a +0933: 8e pop psw +0934: f0 11 beq $0947 +0936: 4d push x +0937: 3f db 0e call $0edb +093a: ce pop x +093b: 7a 2d addw ya,$2d +093d: 80 setc +093e: a8 b0 sbc a,#$b0 +0940: c4 2d mov $2d,a +0942: dd mov a,y +0943: a8 04 sbc a,#$04 +0945: c4 2e mov $2e,a +0947: f5 88 02 mov a,$0288+x +094a: fd mov y,a +094b: f5 87 02 mov a,$0287+x +094e: 7a 2d addw ya,$2d +0950: 8e pop psw +0951: d0 03 bne $0956 +0953: 3f 9f 10 call $109f +0956: f8 0f mov x,$0f +0958: d5 57 02 mov $0257+x,a +095b: dd mov a,y +095c: d5 5f 02 mov $025f+x,a +095f: 80 setc +0960: b8 15 0d sbc $0d,#$15 +0963: b8 00 0e sbc $0e,#$00 +0966: 1d dec x +0967: 10 b0 bpl $0919 +0969: 8f 5c f2 mov $f2,#$5c +096c: 8f 00 f3 mov $f3,#$00 +096f: cd 07 mov x,#$07 +0971: 8f 2a 0d mov $0d,#$2a +0974: 8f 03 0e mov $0e,#$03 +0977: d8 0f mov $0f,x +0979: f5 fc 07 mov a,$07fc+x +097c: c4 31 mov $31,a +097e: 48 ff eor a,#$ff +0980: c4 32 mov $32,a +0982: f4 53 mov a,$53+x +0984: 28 01 and a,#$01 +0986: d0 06 bne $098e +0988: f5 2f 02 mov a,$022f+x +098b: 5f 93 09 jmp $0993 +098e: 3f db 0e call $0edb +0991: f8 0f mov x,$0f +0993: d5 37 02 mov $0237+x,a +0996: fd mov y,a +0997: e4 2f mov a,$2f +0999: 24 31 and a,$31 +099b: f0 0a beq $09a7 +099d: f5 e4 07 mov a,$07e4+x +09a0: c4 f2 mov $f2,a +09a2: f5 7f 02 mov a,$027f+x +09a5: c4 f3 mov $f3,a +09a7: e4 40 mov a,$40 +09a9: 24 31 and a,$31 +09ab: f0 05 beq $09b2 +09ad: 29 32 40 and ($40),($32) +09b0: 2f 37 bra $09e9 +09b2: f5 d4 07 mov a,$07d4+x +09b5: c4 f2 mov $f2,a +09b7: dd mov a,y +09b8: 80 setc +09b9: a4 f3 sbc a,$f3 +09bb: b0 09 bcs $09c6 +09bd: 8f 80 22 mov $22,#$80 +09c0: 48 ff eor a,#$ff +09c2: bc inc a +09c3: 5f c9 09 jmp $09c9 +09c6: 8f c0 22 mov $22,#$c0 +09c9: 5c lsr a +09ca: d0 09 bne $09d5 +09cc: ad 00 cmp y,#$00 +09ce: d0 05 bne $09d5 +09d0: e8 82 mov a,#$82 +09d2: 5f e3 09 jmp $09e3 +09d5: 8d 15 mov y,#$15 +09d7: 76 a8 07 cmp a,$07a8+y +09da: 90 02 bcc $09de +09dc: fe f9 dbnz y,$09d7 +09de: f6 be 07 mov a,$07be+y +09e1: 04 22 or a,$22 +09e3: 75 3f 02 cmp a,$023f+x +09e6: f0 0c beq $09f4 +09e8: fd mov y,a +09e9: f5 dc 07 mov a,$07dc+x +09ec: c4 f2 mov $f2,a +09ee: cb f3 mov $f3,y +09f0: dd mov a,y +09f1: d5 3f 02 mov $023f+x,a +09f4: f5 ec 07 mov a,$07ec+x +09f7: c4 f2 mov $f2,a +09f9: fd mov y,a +09fa: f5 57 02 mov a,$0257+x +09fd: c4 f3 mov $f3,a +09ff: fc inc y +0a00: cb f2 mov $f2,y +0a02: f5 5f 02 mov a,$025f+x +0a05: c4 f3 mov $f3,a +0a07: 80 setc +0a08: b8 15 0d sbc $0d,#$15 +0a0b: b8 00 0e sbc $0e,#$00 +0a0e: 1d dec x +0a0f: 30 03 bmi $0a14 +0a11: 5f 77 09 jmp $0977 +0a14: 8f 4c f2 mov $f2,#$4c +0a17: fa 46 f3 mov ($f3),($46) +0a1a: e4 46 mov a,$46 +0a1c: 48 ff eor a,#$ff +0a1e: c4 47 mov $47,a +0a20: 29 47 41 and ($41),($47) +0a23: 29 47 43 and ($43),($47) +0a26: 8f 00 45 mov $45,#$00 +0a29: cd 07 mov x,#$07 +0a2b: 8f 29 0d mov $0d,#$29 +0a2e: 8f 05 0e mov $0e,#$05 +0a31: 8f 00 34 mov $34,#$00 +0a34: d8 0f mov $0f,x +0a36: e4 52 mov a,$52 +0a38: d0 13 bne $0a4d +0a3a: f4 53 mov a,$53+x +0a3c: 28 08 and a,#$08 +0a3e: c4 34 mov $34,a +0a40: d0 06 bne $0a48 +0a42: f5 6f 02 mov a,$026f+x +0a45: 5f 4d 0a jmp $0a4d +0a48: 3f db 0e call $0edb +0a4b: f8 0f mov x,$0f +0a4d: fd mov y,a +0a4e: f5 67 02 mov a,$0267+x +0a51: c4 29 mov $29,a +0a53: cf mul ya +0a54: cd 64 mov x,#$64 +0a56: 9e div ya,x +0a57: f8 0f mov x,$0f +0a59: eb 34 mov y,$34 +0a5b: f0 11 beq $0a6e +0a5d: c4 27 mov $27,a +0a5f: 8d 15 mov y,#$15 +0a61: f7 0d mov a,($0d)+y +0a63: d0 04 bne $0a69 +0a65: e4 27 mov a,$27 +0a67: 2f 05 bra $0a6e +0a69: e4 29 mov a,$29 +0a6b: 80 setc +0a6c: a4 27 sbc a,$27 +0a6e: c4 27 mov $27,a +0a70: f5 f4 07 mov a,$07f4+x +0a73: fd mov y,a +0a74: cb f2 mov $f2,y +0a76: fa 27 f3 mov ($f3),($27) +0a79: e4 29 mov a,$29 +0a7b: 80 setc +0a7c: a4 27 sbc a,$27 +0a7e: fc inc y +0a7f: cb f2 mov $f2,y +0a81: c4 f3 mov $f3,a +0a83: 80 setc +0a84: b8 16 0d sbc $0d,#$16 +0a87: b8 00 0e sbc $0e,#$00 +0a8a: 1d dec x +0a8b: 30 03 bmi $0a90 +0a8d: 5f 34 0a jmp $0a34 +0a90: cd 07 mov x,#$07 +0a92: 8d 0e mov y,#$0e +0a94: f5 06 02 mov a,$0206+x +0a97: f0 2b beq $0ac4 +0a99: f4 53 mov a,$53+x +0a9b: 28 80 and a,#$80 +0a9d: f0 09 beq $0aa8 +0a9f: f5 fc 07 mov a,$07fc+x +0aa2: 24 41 and a,$41 +0aa4: d0 19 bne $0abf +0aa6: 2f 1c bra $0ac4 +0aa8: f6 17 02 mov a,$0217+y +0aab: 80 setc +0aac: a8 01 sbc a,#$01 +0aae: d6 17 02 mov $0217+y,a +0ab1: c4 27 mov $27,a +0ab3: f6 18 02 mov a,$0218+y +0ab6: a8 00 sbc a,#$00 +0ab8: d6 18 02 mov $0218+y,a +0abb: 04 27 or a,$27 +0abd: d0 05 bne $0ac4 +0abf: e8 00 mov a,#$00 +0ac1: d5 06 02 mov $0206+x,a +0ac4: dc dec y +0ac5: dc dec y +0ac6: 1d dec x +0ac7: 10 cb bpl $0a94 +0ac9: ec 00 02 mov y,$0200 +0acc: f0 54 beq $0b22 +0ace: 8c 01 02 dec $0201 +0ad1: d0 4f bne $0b22 +0ad3: cc 01 02 mov $0201,y +0ad6: e4 16 mov a,$16 +0ad8: e9 02 02 mov x,$0202 +0adb: 30 0e bmi $0aeb +0add: 60 clrc +0ade: 85 03 02 adc a,$0203 +0ae1: b0 04 bcs $0ae7 +0ae3: 68 4b cmp a,#$4b +0ae5: 90 13 bcc $0afa +0ae7: e8 4b mov a,#$4b +0ae9: 2f 0a bra $0af5 +0aeb: 80 setc +0aec: a5 03 02 sbc a,$0203 +0aef: f0 04 beq $0af5 +0af1: b0 07 bcs $0afa +0af3: e8 00 mov a,#$00 +0af5: 8d 00 mov y,#$00 +0af7: cc 00 02 mov $0200,y +0afa: c4 16 mov $16,a +0afc: 5d mov x,a +0afd: 8f 2c f2 mov $f2,#$2c +0b00: 65 04 02 cmp a,$0204 +0b03: 90 03 bcc $0b08 +0b05: e5 04 02 mov a,$0204 +0b08: c4 f3 mov $f3,a +0b0a: 8f 3c f2 mov $f2,#$3c +0b0d: 7d mov a,x +0b0e: 65 05 02 cmp a,$0205 +0b11: 90 03 bcc $0b16 +0b13: e5 04 02 mov a,$0204 +0b16: c4 f3 mov $f3,a +0b18: 8f 0c f2 mov $f2,#$0c +0b1b: d8 f3 mov $f3,x +0b1d: 8f 1c f2 mov $f2,#$1c +0b20: d8 f3 mov $f3,x +0b22: 6f ret +0b23: e4 4b mov a,$4b +0b25: 10 0c bpl $0b33 +0b27: 28 1f and a,#$1f +0b29: 8f 6c f2 mov $f2,#$6c +0b2c: c4 f3 mov $f3,a +0b2e: 09 31 4d or ($4d),($31) +0b31: 2f 03 bra $0b36 +0b33: 29 32 4d and ($4d),($32) +0b36: 8f 3d f2 mov $f2,#$3d +0b39: fa 4d f3 mov ($f3),($4d) +0b3c: 6f ret +0b3d: c4 17 mov $17,a +0b3f: fa f4 19 mov ($19),($f4) +0b42: fa f5 1a mov ($1a),($f5) +0b45: e4 f7 mov a,$f7 +0b47: 8f b1 f1 mov $f1,#$b1 +0b4a: 28 fe and a,#$fe +0b4c: c4 18 mov $18,a +0b4e: fa 17 f6 mov ($f6),($17) +0b51: 5d mov x,a +0b52: c8 1d cmp x,#$1d +0b54: b0 13 bcs $0b69 +0b56: e4 19 mov a,$19 +0b58: eb 1a mov y,$1a +0b5a: 1f a4 17 jmp ($17a4+x) +0b5d: 8f ff 1b mov $1b,#$ff +0b60: 3f 41 0e call $0e41 +0b63: 8f 6c f2 mov $f2,#$6c +0b66: 8f 00 f3 mov $f3,#$00 +0b69: 6f ret +0b6a: da 3a movw $3a,ya +0b6c: 8f ff 39 mov $39,#$ff +0b6f: 6f ret +0b70: c4 52 mov $52,a +0b72: 6f ret +0b73: e8 00 mov a,#$00 +0b75: c5 00 02 mov $0200,a +0b78: 6f ret +0b79: cd 01 mov x,#$01 +0b7b: 2f 02 bra $0b7f +0b7d: cd ff mov x,#$ff +0b7f: c5 00 02 mov $0200,a +0b82: c5 01 02 mov $0201,a +0b85: cc 03 02 mov $0203,y +0b88: c9 02 02 mov $0202,x +0b8b: 6f ret +0b8c: 8f 00 5c mov $5c,#$00 +0b8f: 68 00 cmp a,#$00 +0b91: d0 03 bne $0b96 +0b93: c5 4f 05 mov $054f,a +0b96: 6f ret +0b97: c5 16 02 mov $0216,a +0b9a: cd 07 mov x,#$07 +0b9c: ad 80 cmp y,#$80 +0b9e: f0 17 beq $0bb7 +0ba0: e8 01 mov a,#$01 +0ba2: b0 0e bcs $0bb2 +0ba4: ad 00 cmp y,#$00 +0ba6: d0 08 bne $0bb0 +0ba8: e5 16 02 mov a,$0216 +0bab: 75 0e 02 cmp a,$020e+x +0bae: d0 22 bne $0bd2 +0bb0: e8 80 mov a,#$80 +0bb2: 75 06 02 cmp a,$0206+x +0bb5: d0 1b bne $0bd2 +0bb7: f5 dc 07 mov a,$07dc+x +0bba: c4 f2 mov $f2,a +0bbc: e8 00 mov a,#$00 +0bbe: c4 f3 mov $f3,a +0bc0: d5 2f 02 mov $022f+x,a +0bc3: d5 06 02 mov $0206+x,a +0bc6: d5 77 02 mov $0277+x,a +0bc9: d4 53 mov $53+x,a +0bcb: f5 fc 07 mov a,$07fc+x +0bce: 04 45 or a,$45 +0bd0: c4 45 mov $45,a +0bd2: 1d dec x +0bd3: 10 c7 bpl $0b9c +0bd5: 6f ret +0bd6: 8d 0e mov y,#$0e +0bd8: c5 16 02 mov $0216,a +0bdb: 3f bb 0d call $0dbb +0bde: da 09 movw $09,ya +0be0: 8d 00 mov y,#$00 +0be2: f7 09 mov a,($09)+y +0be4: c4 3c mov $3c,a +0be6: 3a 09 incw $09 +0be8: 8d 07 mov y,#$07 +0bea: f7 09 mov a,($09)+y +0bec: c4 3d mov $3d,a +0bee: 8d 06 mov y,#$06 +0bf0: f7 09 mov a,($09)+y +0bf2: c4 3e mov $3e,a +0bf4: 8f 80 3f mov $3f,#$80 +0bf7: cd 07 mov x,#$07 +0bf9: 3f 44 0c call $0c44 +0bfc: 30 36 bmi $0c34 +0bfe: e8 80 mov a,#$80 +0c00: d5 06 02 mov $0206+x,a +0c03: e5 16 02 mov a,$0216 +0c06: d5 0e 02 mov $020e+x,a +0c09: 8d 02 mov y,#$02 +0c0b: f7 09 mov a,($09)+y +0c0d: c4 35 mov $35,a +0c0f: fc inc y +0c10: f7 09 mov a,($09)+y +0c12: c4 36 mov $36,a +0c14: 8d 04 mov y,#$04 +0c16: f7 09 mov a,($09)+y +0c18: c4 37 mov $37,a +0c1a: fc inc y +0c1b: f7 09 mov a,($09)+y +0c1d: c4 38 mov $38,a +0c1f: e4 39 mov a,$39 +0c21: f0 04 beq $0c27 +0c23: ba 3a movw ya,$3a +0c25: da 37 movw $37,ya +0c27: 8d 01 mov y,#$01 +0c29: f7 09 mov a,($09)+y +0c2b: 2d push a +0c2c: 8d 00 mov y,#$00 +0c2e: f7 09 mov a,($09)+y +0c30: ee pop y +0c31: 3f 6e 0c call $0c6e +0c34: 60 clrc +0c35: 98 08 09 adc $09,#$08 +0c38: 90 02 bcc $0c3c +0c3a: ab 0a inc $0a +0c3c: 8b 3c dec $3c +0c3e: d0 a8 bne $0be8 +0c40: 8f 00 39 mov $39,#$00 +0c43: 6f ret +0c44: 8d 07 mov y,#$07 +0c46: e4 3f mov a,$3f +0c48: 24 3d and a,$3d +0c4a: f0 0c beq $0c58 +0c4c: f5 06 02 mov a,$0206+x +0c4f: f0 15 beq $0c66 +0c51: e4 3e mov a,$3e +0c53: 75 27 02 cmp a,$0227+x +0c56: b0 10 bcs $0c68 +0c58: 4b 3f lsr $3f +0c5a: d0 05 bne $0c61 +0c5c: 8f 80 3f mov $3f,#$80 +0c5f: cd 08 mov x,#$08 +0c61: 1d dec x +0c62: dc dec y +0c63: 10 e1 bpl $0c46 +0c65: 6f ret +0c66: e4 3e mov a,$3e +0c68: d5 27 02 mov $0227+x,a +0c6b: e8 00 mov a,#$00 +0c6d: 6f ret +0c6e: d8 33 mov $33,x +0c70: 2d push a +0c71: f5 dc 07 mov a,$07dc+x +0c74: c4 f2 mov $f2,a +0c76: 8f 9f f3 mov $f3,#$9f +0c79: dd mov a,y +0c7a: d5 67 02 mov $0267+x,a +0c7d: 7d mov a,x +0c7e: 1c asl a +0c7f: 5d mov x,a +0c80: e4 37 mov a,$37 +0c82: d5 47 02 mov $0247+x,a +0c85: e4 38 mov a,$38 +0c87: d5 48 02 mov $0248+x,a +0c8a: e4 35 mov a,$35 +0c8c: d5 17 02 mov $0217+x,a +0c8f: e4 36 mov a,$36 +0c91: d5 18 02 mov $0218+x,a +0c94: ae pop a +0c95: 8d 02 mov y,#$02 +0c97: 3f bb 0d call $0dbb +0c9a: da 07 movw $07,ya +0c9c: f8 33 mov x,$33 +0c9e: f5 fc 07 mov a,$07fc+x +0ca1: c4 4e mov $4e,a +0ca3: 48 ff eor a,#$ff +0ca5: c4 4f mov $4f,a +0ca7: 8d 00 mov y,#$00 +0ca9: f7 07 mov a,($07)+y +0cab: d4 53 mov $53+x,a +0cad: c4 34 mov $34,a +0caf: 28 20 and a,#$20 +0cb1: f0 05 beq $0cb8 +0cb3: 09 4e 50 or ($50),($4e) +0cb6: 2f 03 bra $0cbb +0cb8: 29 4f 50 and ($50),($4f) +0cbb: 8f 2d f2 mov $f2,#$2d +0cbe: fa 50 f3 mov ($f3),($50) +0cc1: e4 34 mov a,$34 +0cc3: 28 10 and a,#$10 +0cc5: f0 2f beq $0cf6 +0cc7: 8d 05 mov y,#$05 +0cc9: f7 07 mov a,($07)+y +0ccb: 8d 0c mov y,#$0c +0ccd: 3f bb 0d call $0dbb +0cd0: 8d 00 mov y,#$00 +0cd2: f6 0c 08 mov a,$080c+y +0cd5: c4 f2 mov $f2,a +0cd7: f7 10 mov a,($10)+y +0cd9: ad 01 cmp y,#$01 +0cdb: f0 04 beq $0ce1 +0cdd: ad 02 cmp y,#$02 +0cdf: d0 09 bne $0cea +0ce1: d6 03 02 mov $0203+y,a +0ce4: 64 16 cmp a,$16 +0ce6: 90 02 bcc $0cea +0ce8: e4 16 mov a,$16 +0cea: c4 f3 mov $f3,a +0cec: fc inc y +0ced: ad 0c cmp y,#$0c +0cef: 90 e1 bcc $0cd2 +0cf1: 09 4e 51 or ($51),($4e) +0cf4: 2f 03 bra $0cf9 +0cf6: 29 4f 51 and ($51),($4f) +0cf9: 8f 4d f2 mov $f2,#$4d +0cfc: fa 51 f3 mov ($f3),($51) +0cff: e4 34 mov a,$34 +0d01: 28 01 and a,#$01 +0d03: 0d push psw +0d04: 8d 01 mov y,#$01 +0d06: f7 07 mov a,($07)+y +0d08: 8e pop psw +0d09: d0 08 bne $0d13 +0d0b: f8 33 mov x,$33 +0d0d: d5 2f 02 mov $022f+x,a +0d10: 5f 29 0d jmp $0d29 +0d13: 8d 04 mov y,#$04 +0d15: 3f bb 0d call $0dbb +0d18: f8 33 mov x,$33 +0d1a: f5 20 08 mov a,$0820+x +0d1d: c4 0d mov $0d,a +0d1f: f5 18 08 mov a,$0818+x +0d22: c4 0e mov $0e,a +0d24: ba 35 movw ya,$35 +0d26: 3f 64 0e call $0e64 +0d29: e4 34 mov a,$34 +0d2b: 28 04 and a,#$04 +0d2d: f0 1a beq $0d49 +0d2f: 8d 03 mov y,#$03 +0d31: f7 07 mov a,($07)+y +0d33: 8d 06 mov y,#$06 +0d35: 3f bb 0d call $0dbb +0d38: f8 33 mov x,$33 +0d3a: f5 30 08 mov a,$0830+x +0d3d: c4 0d mov $0d,a +0d3f: f5 28 08 mov a,$0828+x +0d42: c4 0e mov $0e,a +0d44: ba 35 movw ya,$35 +0d46: 3f 64 0e call $0e64 +0d49: e4 34 mov a,$34 +0d4b: 28 08 and a,#$08 +0d4d: 0d push psw +0d4e: 8d 04 mov y,#$04 +0d50: f7 07 mov a,($07)+y +0d52: 8e pop psw +0d53: d0 08 bne $0d5d +0d55: f8 33 mov x,$33 +0d57: d5 6f 02 mov $026f+x,a +0d5a: 5f 8a 0d jmp $0d8a +0d5d: 8d 08 mov y,#$08 +0d5f: 3f bb 0d call $0dbb +0d62: f8 33 mov x,$33 +0d64: f5 50 08 mov a,$0850+x +0d67: c4 0d mov $0d,a +0d69: f5 48 08 mov a,$0848+x +0d6c: c4 0e mov $0e,a +0d6e: ba 35 movw ya,$35 +0d70: 3f 64 0e call $0e64 +0d73: 8d 07 mov y,#$07 +0d75: f7 0d mov a,($0d)+y +0d77: f0 0b beq $0d84 +0d79: 8d 15 mov y,#$15 +0d7b: f7 0d mov a,($0d)+y +0d7d: d0 05 bne $0d84 +0d7f: e8 ff mov a,#$ff +0d81: 5f 86 0d jmp $0d86 +0d84: e8 00 mov a,#$00 +0d86: 8d 15 mov y,#$15 +0d88: d7 0d mov ($0d)+y,a +0d8a: e4 34 mov a,$34 +0d8c: 28 02 and a,#$02 +0d8e: 0d push psw +0d8f: 8d 02 mov y,#$02 +0d91: f7 07 mov a,($07)+y +0d93: 8e pop psw +0d94: d0 08 bne $0d9e +0d96: f8 33 mov x,$33 +0d98: d5 77 02 mov $0277+x,a +0d9b: 5f b4 0d jmp $0db4 +0d9e: 8d 0a mov y,#$0a +0da0: 3f bb 0d call $0dbb +0da3: f8 33 mov x,$33 +0da5: f5 40 08 mov a,$0840+x +0da8: c4 0d mov $0d,a +0daa: f5 38 08 mov a,$0838+x +0dad: c4 0e mov $0e,a +0daf: ba 35 movw ya,$35 +0db1: 3f 64 0e call $0e64 +0db4: 09 4e 45 or ($45),($4e) +0db7: 09 4e 40 or ($40),($4e) +0dba: 6f ret +0dbb: 8f 00 06 mov $06,#$00 +0dbe: 1c asl a +0dbf: 2b 06 rol $06 +0dc1: 60 clrc +0dc2: 96 e0 17 adc a,$17e0+y +0dc5: c4 05 mov $05,a +0dc7: e4 06 mov a,$06 +0dc9: 96 e1 17 adc a,$17e1+y +0dcc: c4 06 mov $06,a +0dce: 8d 01 mov y,#$01 +0dd0: f7 05 mov a,($05)+y +0dd2: c4 11 mov $11,a +0dd4: dc dec y +0dd5: f7 05 mov a,($05)+y +0dd7: c4 10 mov $10,a +0dd9: eb 11 mov y,$11 +0ddb: 6f ret + +0ddc: db $6c,$ff,$3d,$00,$4d,$00,$7d,$00,$6d,$ff,$5d,$18,$5c,$00,$2d,$00,$7c,$00,$2c,$00,$3c,$00,$0c,$4b,$1c,$4b,$ff + +0df7: 8d 00 mov y,#$00 +0df9: f6 dc 0d mov a,$0ddc+y +0dfc: 68 ff cmp a,#$ff +0dfe: f0 0b beq $0e0b +0e00: c4 f2 mov $f2,a +0e02: fc inc y +0e03: f6 dc 0d mov a,$0ddc+y +0e06: c4 f3 mov $f3,a +0e08: fc inc y +0e09: d0 ee bne $0df9 +0e0b: cd 70 mov x,#$70 +0e0d: e8 00 mov a,#$00 +0e0f: d4 04 mov $04+x,a +0e11: d4 07 mov $07+x,a +0e13: d4 03 mov $03+x,a +0e15: d4 02 mov $02+x,a +0e17: e8 00 mov a,#$00 +0e19: d4 05 mov $05+x,a +0e1b: 7d mov a,x +0e1c: 80 setc +0e1d: a8 10 sbc a,#$10 +0e1f: 5d mov x,a +0e20: 10 eb bpl $0e0d +0e22: e8 02 mov a,#$02 +0e24: cd 07 mov x,#$07 +0e26: 3f 4b 0e call $0e4b +0e29: fd mov y,a +0e2a: d6 00 00 mov $0000+y,a +0e2d: fc inc y +0e2e: ad f0 cmp y,#$f0 +0e30: 90 f8 bcc $0e2a +0e32: 9c dec a +0e33: c4 41 mov $41,a +0e35: c4 43 mov $43,a +0e37: c4 48 mov $48,a +0e39: c4 42 mov $42,a +0e3b: c4 47 mov $47,a +0e3d: 8f 4b 16 mov $16,#$4b +0e40: 6f ret +0e41: e5 e1 17 mov a,$17e1 +0e44: 8f 6d f2 mov $f2,#$6d +0e47: c4 f3 mov $f3,a +0e49: cd 00 mov x,#$00 +0e4b: c5 55 0e mov $0e55,a +0e4e: e8 00 mov a,#$00 +0e50: c5 54 0e mov $0e54,a +0e53: c5 00 00 mov $0000,a +0e56: ac 54 0e inc $0e54 +0e59: d0 f8 bne $0e53 +0e5b: ac 55 0e inc $0e55 +0e5e: 1e 55 0e cmp x,$0e55 +0e61: d0 f0 bne $0e53 +0e63: 6f ret +0e64: da 27 movw $27,ya +0e66: 8d 07 mov y,#$07 +0e68: f7 10 mov a,($10)+y +0e6a: d7 0d mov ($0d)+y,a +0e6c: dc dec y +0e6d: 10 f9 bpl $0e68 +0e6f: e4 10 mov a,$10 +0e71: 60 clrc +0e72: 88 08 adc a,#$08 +0e74: 8d 08 mov y,#$08 +0e76: d7 0d mov ($0d)+y,a +0e78: e4 11 mov a,$11 +0e7a: 88 00 adc a,#$00 +0e7c: fc inc y +0e7d: d7 0d mov ($0d)+y,a +0e7f: 8d 03 mov y,#$03 +0e81: f7 0d mov a,($0d)+y +0e83: 5d mov x,a +0e84: 8d 02 mov y,#$02 +0e86: f7 0d mov a,($0d)+y +0e88: fd mov y,a +0e89: 7d mov a,x +0e8a: cf mul ya +0e8b: da 2b movw $2b,ya +0e8d: ba 27 movw ya,$27 +0e8f: 9a 2b subw ya,$2b +0e91: b0 03 bcs $0e96 +0e93: e8 00 mov a,#$00 +0e95: fd mov y,a +0e96: cb 2c mov $2c,y +0e98: 8d 0d mov y,#$0d +0e9a: d7 0d mov ($0d)+y,a +0e9c: fc inc y +0e9d: e4 2c mov a,$2c +0e9f: d7 0d mov ($0d)+y,a +0ea1: 8d 03 mov y,#$03 +0ea3: f7 0d mov a,($0d)+y +0ea5: bc inc a +0ea6: 8d 0f mov y,#$0f +0ea8: d7 0d mov ($0d)+y,a +0eaa: 68 03 cmp a,#$03 +0eac: b0 06 bcs $0eb4 +0eae: 8d 04 mov y,#$04 +0eb0: e8 00 mov a,#$00 +0eb2: d7 0d mov ($0d)+y,a +0eb4: 8d 08 mov y,#$08 +0eb6: f7 0d mov a,($0d)+y +0eb8: 8d 0a mov y,#$0a +0eba: d7 0d mov ($0d)+y,a +0ebc: 8d 09 mov y,#$09 +0ebe: f7 0d mov a,($0d)+y +0ec0: 8d 0b mov y,#$0b +0ec2: d7 0d mov ($0d)+y,a +0ec4: e8 01 mov a,#$01 +0ec6: 8d 14 mov y,#$14 +0ec8: d7 0d mov ($0d)+y,a +0eca: 9c dec a +0ecb: 8d 0c mov y,#$0c +0ecd: d7 0d mov ($0d)+y,a +0ecf: 8d 12 mov y,#$12 +0ed1: d7 0d mov ($0d)+y,a +0ed3: fc inc y +0ed4: d7 0d mov ($0d)+y,a +0ed6: c4 20 mov $20,a +0ed8: 5f 89 0f jmp $0f89 +0edb: 8d 14 mov y,#$14 +0edd: f7 0d mov a,($0d)+y +0edf: f0 39 beq $0f1a +0ee1: 8d 04 mov y,#$04 +0ee3: f7 0d mov a,($0d)+y +0ee5: c4 20 mov $20,a +0ee7: 8d 0f mov y,#$0f +0ee9: f7 0d mov a,($0d)+y +0eeb: c4 21 mov $21,a +0eed: f0 03 beq $0ef2 +0eef: 9c dec a +0ef0: d0 06 bne $0ef8 +0ef2: 8d 03 mov y,#$03 +0ef4: f7 0d mov a,($0d)+y +0ef6: 8d 0f mov y,#$0f +0ef8: d7 0d mov ($0d)+y,a +0efa: 78 02 21 cmp $21,#$02 +0efd: 90 03 bcc $0f02 +0eff: 5f 89 0f jmp $0f89 +0f02: 8d 0c mov y,#$0c +0f04: f7 0d mov a,($0d)+y +0f06: bc inc a +0f07: 8d 05 mov y,#$05 +0f09: 77 0d cmp a,($0d)+y +0f0b: 90 17 bcc $0f24 +0f0d: 9c dec a +0f0e: 8d 01 mov y,#$01 +0f10: 77 0d cmp a,($0d)+y +0f12: f0 6a beq $0f7e +0f14: e8 00 mov a,#$00 +0f16: 8d 14 mov y,#$14 +0f18: d7 0d mov ($0d)+y,a +0f1a: 8d 11 mov y,#$11 +0f1c: f7 0d mov a,($0d)+y +0f1e: 2d push a +0f1f: dc dec y +0f20: f7 0d mov a,($0d)+y +0f22: ee pop y +0f23: 6f ret +0f24: 8d 0c mov y,#$0c +0f26: d7 0d mov ($0d)+y,a +0f28: 8d 06 mov y,#$06 +0f2a: f7 0d mov a,($0d)+y +0f2c: 8d 0a mov y,#$0a +0f2e: 60 clrc +0f2f: 97 0d adc a,($0d)+y +0f31: d7 0d mov ($0d)+y,a +0f33: 90 07 bcc $0f3c +0f35: fc inc y +0f36: f7 0d mov a,($0d)+y +0f38: 88 00 adc a,#$00 +0f3a: d7 0d mov ($0d)+y,a +0f3c: 8d 0e mov y,#$0e +0f3e: f7 0d mov a,($0d)+y +0f40: 5d mov x,a +0f41: dc dec y +0f42: f7 0d mov a,($0d)+y +0f44: d0 04 bne $0f4a +0f46: c8 00 cmp x,#$00 +0f48: f0 3f beq $0f89 +0f4a: 8d 03 mov y,#$03 +0f4c: 80 setc +0f4d: b7 0d sbc a,($0d)+y +0f4f: 8d 0d mov y,#$0d +0f51: d7 0d mov ($0d)+y,a +0f53: c4 2b mov $2b,a +0f55: 7d mov a,x +0f56: a8 00 sbc a,#$00 +0f58: b0 06 bcs $0f60 +0f5a: e8 00 mov a,#$00 +0f5c: d7 0d mov ($0d)+y,a +0f5e: c4 2b mov $2b,a +0f60: fc inc y +0f61: d7 0d mov ($0d)+y,a +0f63: 04 2b or a,$2b +0f65: d0 0b bne $0f72 +0f67: 8d 01 mov y,#$01 +0f69: f7 0d mov a,($0d)+y +0f6b: 68 ff cmp a,#$ff +0f6d: f0 03 beq $0f72 +0f6f: 5f 82 0f jmp $0f82 +0f72: 8d 0c mov y,#$0c +0f74: f7 0d mov a,($0d)+y +0f76: 8d 01 mov y,#$01 +0f78: 77 0d cmp a,($0d)+y +0f7a: 90 0d bcc $0f89 +0f7c: f0 0b beq $0f89 +0f7e: 8d 00 mov y,#$00 +0f80: f7 0d mov a,($0d)+y +0f82: 8d 0c mov y,#$0c +0f84: d7 0d mov ($0d)+y,a +0f86: 3f 2c 10 call $102c +0f89: f8 20 mov x,$20 +0f8b: f0 14 beq $0fa1 +0f8d: 78 03 21 cmp $21,#$03 +0f90: 90 0f bcc $0fa1 +0f92: 8d 13 mov y,#$13 +0f94: cd 03 mov x,#$03 +0f96: f7 0d mov a,($0d)+y +0f98: d4 1c mov $1c+x,a +0f9a: dc dec y +0f9b: 1d dec x +0f9c: 10 f8 bpl $0f96 +0f9e: 5f 09 10 jmp $1009 +0fa1: 3f 1b 10 call $101b +0fa4: 8d 06 mov y,#$06 +0fa6: f7 0d mov a,($0d)+y +0fa8: 5d mov x,a +0fa9: 8d 00 mov y,#$00 +0fab: f7 12 mov a,($12)+y +0fad: c8 01 cmp x,#$01 +0faf: f0 06 beq $0fb7 +0fb1: 5d mov x,a +0fb2: fc inc y +0fb3: f7 12 mov a,($12)+y +0fb5: fd mov y,a +0fb6: 7d mov a,x +0fb7: f8 20 mov x,$20 +0fb9: f0 52 beq $100d +0fbb: 78 02 21 cmp $21,#$02 +0fbe: f0 4d beq $100d +0fc0: da 27 movw $27,ya +0fc2: 8d 11 mov y,#$11 +0fc4: f7 0d mov a,($0d)+y +0fc6: c4 1d mov $1d,a +0fc8: dc dec y +0fc9: f7 0d mov a,($0d)+y +0fcb: c4 1c mov $1c,a +0fcd: eb 1d mov y,$1d +0fcf: 80 setc +0fd0: 9a 27 subw ya,$27 +0fd2: da 1e movw $1e,ya +0fd4: e8 00 mov a,#$00 +0fd6: 3c rol a +0fd7: c4 27 mov $27,a +0fd9: d0 08 bne $0fe3 +0fdb: 58 ff 1e eor $1e,#$ff +0fde: 58 ff 1f eor $1f,#$ff +0fe1: 3a 1e incw $1e +0fe3: 8d 03 mov y,#$03 +0fe5: f7 0d mov a,($0d)+y +0fe7: 5d mov x,a +0fe8: ba 1e movw ya,$1e +0fea: 3f 47 10 call $1047 +0fed: c4 1e mov $1e,a +0fef: d8 1f mov $1f,x +0ff1: 78 01 27 cmp $27,#$01 +0ff4: d0 08 bne $0ffe +0ff6: 58 ff 1e eor $1e,#$ff +0ff9: 58 ff 1f eor $1f,#$ff +0ffc: 3a 1e incw $1e +0ffe: 8d 12 mov y,#$12 +1000: e4 1e mov a,$1e +1002: d7 0d mov ($0d)+y,a +1004: fc inc y +1005: e4 1f mov a,$1f +1007: d7 0d mov ($0d)+y,a +1009: ba 1c movw ya,$1c +100b: 7a 1e addw ya,$1e +100d: da 1c movw $1c,ya +100f: 8d 10 mov y,#$10 +1011: d7 0d mov ($0d)+y,a +1013: e4 1d mov a,$1d +1015: fc inc y +1016: d7 0d mov ($0d)+y,a +1018: ba 1c movw ya,$1c +101a: 6f ret +101b: 8d 0a mov y,#$0a +101d: 5f 22 10 jmp $1022 +1020: 8d 08 mov y,#$08 +1022: f7 0d mov a,($0d)+y +1024: c4 12 mov $12,a +1026: fc inc y +1027: f7 0d mov a,($0d)+y +1029: c4 13 mov $13,a +102b: 6f ret +102c: 2d push a +102d: 3f 20 10 call $1020 +1030: 8d 06 mov y,#$06 +1032: f7 0d mov a,($0d)+y +1034: fd mov y,a +1035: ae pop a +1036: cf mul ya +1037: 7a 12 addw ya,$12 +1039: da 12 movw $12,ya +103b: 8d 0a mov y,#$0a +103d: e4 12 mov a,$12 +103f: d7 0d mov ($0d)+y,a +1041: fc inc y +1042: e4 13 mov a,$13 +1044: d7 0d mov ($0d)+y,a +1046: 6f ret +1047: c8 00 cmp x,#$00 +1049: d0 05 bne $1050 +104b: e8 ff mov a,#$ff +104d: fd mov y,a +104e: 5d mov x,a +104f: 6f ret +1050: cb 24 mov $24,y +1052: 3e 24 cmp x,$24 +1054: f0 02 beq $1058 +1056: b0 19 bcs $1071 +1058: c4 23 mov $23,a +105a: dd mov a,y +105b: 8d 00 mov y,#$00 +105d: 9e div ya,x +105e: c4 25 mov $25,a +1060: fd mov y,a +1061: 7d mov a,x +1062: cf mul ya +1063: c4 26 mov $26,a +1065: e4 24 mov a,$24 +1067: 80 setc +1068: a4 26 sbc a,$26 +106a: fd mov y,a +106b: e4 23 mov a,$23 +106d: 9e div ya,x +106e: f8 25 mov x,$25 +1070: 6f ret +1071: 9e div ya,x +1072: cd 00 mov x,#$00 +1074: 6f ret +1075: f5 7f 02 mov a,$027f+x +1078: 8d 04 mov y,#$04 +107a: cf mul ya +107b: 7a 0b addw ya,$0b +107d: da 03 movw $03,ya +107f: 8d 01 mov y,#$01 +1081: f7 03 mov a,($03)+y +1083: c4 2a mov $2a,a +1085: dc dec y +1086: f7 03 mov a,($03)+y +1088: 80 setc +1089: a8 03 sbc a,#$03 +108b: c4 29 mov $29,a +108d: b8 00 2a sbc $2a,#$00 +1090: f7 29 mov a,($29)+y +1092: c4 49 mov $49,a +1094: fc inc y +1095: f7 29 mov a,($29)+y +1097: c4 4a mov $4a,a +1099: fc inc y +109a: f7 29 mov a,($29)+y +109c: c4 4b mov $4b,a +109e: 6f ret +109f: ad 04 cmp y,#$04 +10a1: 90 06 bcc $10a9 +10a3: d0 0a bne $10af +10a5: 68 b0 cmp a,#$b0 +10a7: b0 06 bcs $10af +10a9: 8f ff 4c mov $4c,#$ff +10ac: 5f c5 10 jmp $10c5 +10af: ad 80 cmp y,#$80 +10b1: 90 0f bcc $10c2 +10b3: 8f 00 4c mov $4c,#$00 +10b6: 60 clrc +10b7: 88 20 adc a,#$20 +10b9: 5d mov x,a +10ba: dd mov a,y +10bb: 88 df adc a,#$df +10bd: fd mov y,a +10be: 7d mov a,x +10bf: 5f c5 10 jmp $10c5 +10c2: 8f 04 4c mov $4c,#$04 +10c5: cd f0 mov x,#$f0 +10c7: 9e div ya,x +10c8: 78 ff 4c cmp $4c,#$ff +10cb: d0 02 bne $10cf +10cd: c4 4c mov $4c,a +10cf: f6 ea 10 mov a,$10ea+y +10d2: c4 27 mov $27,a +10d4: f6 da 11 mov a,$11da+y +10d7: c4 28 mov $28,a +10d9: e8 04 mov a,#$04 +10db: 80 setc +10dc: a4 4c sbc a,$4c +10de: f0 07 beq $10e7 +10e0: fd mov y,a +10e1: 4b 28 lsr $28 +10e3: 6b 27 ror $27 +10e5: fe fa dbnz y,$10e1 +10e7: ba 27 movw ya,$27 +10e9: 6f ret + +10ea: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 +11da: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f +12ca: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 +12ea: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 + +130a: e4 5c mov a,$5c +130c: d0 0f bne $131d +130e: e5 4f 05 mov a,$054f +1311: f0 22 beq $1335 +1313: e8 00 mov a,#$00 +1315: c5 4f 05 mov $054f,a +1318: 3f 0a 17 call $170a +131b: 2f ed bra $130a +131d: e4 5b mov a,$5b +131f: 9c dec a +1320: c4 5d mov $5d,a +1322: 1c asl a +1323: c4 5e mov $5e,a +1325: f8 5d mov x,$5d +1327: f4 61 mov a,$61+x +1329: 5d mov x,a +132a: 1f 98 17 jmp ($1798+x) +132d: 8b 5e dec $5e +132f: 8b 5e dec $5e +1331: 8b 5d dec $5d +1333: 10 f0 bpl $1325 +1335: 6f ret +1336: f8 5d mov x,$5d +1338: 9b 9b dec $9b+x +133a: d0 f1 bne $132d +133c: f5 60 05 mov a,$0560+x +133f: d4 9b mov $9b+x,a +1341: 9b a3 dec $a3+x +1343: d0 e8 bne $132d +1345: f4 61 mov a,$61+x +1347: 68 02 cmp a,#$02 +1349: d0 07 bne $1352 +134b: e8 06 mov a,#$06 +134d: d4 61 mov $61+x,a +134f: 5f 63 13 jmp $1363 +1352: e8 08 mov a,#$08 +1354: d4 61 mov $61+x,a +1356: 5f 59 15 jmp $1559 +1359: 3f b8 14 call $14b8 +135c: d4 ce mov $ce+x,a +135e: 3f b8 14 call $14b8 +1361: d4 cf mov $cf+x,a +1363: 3f b8 14 call $14b8 +1366: fd mov y,a +1367: 28 20 and a,#$20 +1369: c4 5f mov $5f,a +136b: dd mov a,y +136c: 28 40 and a,#$40 +136e: c4 60 mov $60,a +1370: f8 5d mov x,$5d +1372: d5 88 05 mov $0588+x,a +1375: ad 80 cmp y,#$80 +1377: 90 3d bcc $13b6 +1379: ad f0 cmp y,#$f0 +137b: 90 08 bcc $1385 +137d: dd mov a,y +137e: 28 0f and a,#$0f +1380: 1c asl a +1381: 5d mov x,a +1382: 1f 3c 15 jmp ($153c+x) +1385: f5 90 05 mov a,$0590+x +1388: f0 4c beq $13d6 +138a: dd mov a,y +138b: 28 08 and a,#$08 +138d: 0d push psw +138e: dd mov a,y +138f: 28 07 and a,#$07 +1391: bc inc a +1392: 1c asl a +1393: f8 5e mov x,$5e +1395: 8e pop psw +1396: f0 0d beq $13a5 +1398: 60 clrc +1399: 94 de adc a,$de+x +139b: d4 de mov $de+x,a +139d: f4 df mov a,$df+x +139f: 88 00 adc a,#$00 +13a1: d4 df mov $df+x,a +13a3: 2f 31 bra $13d6 +13a5: c4 27 mov $27,a +13a7: f4 de mov a,$de+x +13a9: 80 setc +13aa: a4 27 sbc a,$27 +13ac: d4 de mov $de+x,a +13ae: f4 df mov a,$df+x +13b0: a8 00 sbc a,#$00 +13b2: d4 df mov $df+x,a +13b4: 2f 20 bra $13d6 +13b6: f5 90 05 mov a,$0590+x +13b9: f0 1b beq $13d6 +13bb: dd mov a,y +13bc: 28 1f and a,#$1f +13be: fd mov y,a +13bf: f8 5e mov x,$5e +13c1: f4 ce mov a,$ce+x +13c3: 60 clrc +13c4: 96 ca 12 adc a,$12ca+y +13c7: d4 ce mov $ce+x,a +13c9: f4 cf mov a,$cf+x +13cb: 96 ea 12 adc a,$12ea+y +13ce: d4 cf mov $cf+x,a +13d0: e8 00 mov a,#$00 +13d2: d4 de mov $de+x,a +13d4: d4 df mov $df+x,a +13d6: 3f b8 14 call $14b8 +13d9: 68 00 cmp a,#$00 +13db: d0 12 bne $13ef +13dd: f8 5d mov x,$5d +13df: f4 61 mov a,$61+x +13e1: 68 08 cmp a,#$08 +13e3: d0 07 bne $13ec +13e5: e8 0a mov a,#$0a +13e7: d4 61 mov $61+x,a +13e9: 5f 97 15 jmp $1597 +13ec: 5f 25 13 jmp $1325 +13ef: f8 5d mov x,$5d +13f1: d4 a3 mov $a3+x,a +13f3: fd mov y,a +13f4: f5 60 05 mov a,$0560+x +13f7: d4 9b mov $9b+x,a +13f9: cf mul ya +13fa: da 35 movw $35,ya +13fc: 3f 18 15 call $1518 +13ff: f5 98 05 mov a,$0598+x +1402: 30 18 bmi $141c +1404: 5d mov x,a +1405: f5 06 02 mov a,$0206+x +1408: f0 0a beq $1414 +140a: e8 40 mov a,#$40 +140c: 75 27 02 cmp a,$0227+x +140f: b0 05 bcs $1416 +1411: 5f 2d 13 jmp $132d +1414: e8 40 mov a,#$40 +1416: d5 27 02 mov $0227+x,a +1419: 5f 3d 14 jmp $143d +141c: f5 a0 05 mov a,$05a0+x +141f: c4 3d mov $3d,a +1421: f5 a8 05 mov a,$05a8+x +1424: 30 04 bmi $142a +1426: eb 5f mov y,$5f +1428: f0 05 beq $142f +142a: 9c dec a +142b: 10 02 bpl $142f +142d: e8 07 mov a,#$07 +142f: 5d mov x,a +1430: f5 fc 07 mov a,$07fc+x +1433: c4 3f mov $3f,a +1435: 8f 40 3e mov $3e,#$40 +1438: 3f 44 0c call $0c44 +143b: 30 78 bmi $14b5 +143d: e8 01 mov a,#$01 +143f: d5 06 02 mov $0206+x,a +1442: d8 ab mov $ab,x +1444: 7d mov a,x +1445: f8 5d mov x,$5d +1447: d5 a8 05 mov $05a8+x,a +144a: f5 90 05 mov a,$0590+x +144d: d0 0c bne $145b +144f: f8 5e mov x,$5e +1451: f4 ce mov a,$ce+x +1453: c4 37 mov $37,a +1455: f4 cf mov a,$cf+x +1457: c4 38 mov $38,a +1459: 2f 25 bra $1480 +145b: f8 5e mov x,$5e +145d: f4 ce mov a,$ce+x +145f: 60 clrc +1460: 94 be adc a,$be+x +1462: fd mov y,a +1463: f4 cf mov a,$cf+x +1465: 94 bf adc a,$bf+x +1467: c4 38 mov $38,a +1469: dd mov a,y +146a: 60 clrc +146b: 94 ae adc a,$ae+x +146d: fd mov y,a +146e: e4 38 mov a,$38 +1470: 94 af adc a,$af+x +1472: c4 38 mov $38,a +1474: dd mov a,y +1475: 60 clrc +1476: 94 de adc a,$de+x +1478: c4 37 mov $37,a +147a: e4 38 mov a,$38 +147c: 94 df adc a,$df+x +147e: c4 38 mov $38,a +1480: eb 5f mov y,$5f +1482: d0 0f bne $1493 +1484: 0b ab asl $ab +1486: f8 ab mov x,$ab +1488: d5 48 02 mov $0248+x,a +148b: e4 37 mov a,$37 +148d: d5 47 02 mov $0247+x,a +1490: 5f 2d 13 jmp $132d +1493: f8 5d mov x,$5d +1495: f5 68 05 mov a,$0568+x +1498: 60 clrc +1499: 95 70 05 adc a,$0570+x +149c: 10 02 bpl $14a0 +149e: e8 7f mov a,#$7f +14a0: c4 ac mov $ac,a +14a2: e4 60 mov a,$60 +14a4: f0 02 beq $14a8 +14a6: e8 08 mov a,#$08 +14a8: 04 5d or a,$5d +14aa: 5d mov x,a +14ab: f5 78 05 mov a,$0578+x +14ae: f8 ab mov x,$ab +14b0: eb ac mov y,$ac +14b2: 3f 6e 0c call $0c6e +14b5: 5f 2d 13 jmp $132d +14b8: f8 5e mov x,$5e +14ba: e7 8b mov a,($8b+x) +14bc: bb 8b inc $8b+x +14be: d0 02 bne $14c2 +14c0: bb 8c inc $8c+x +14c2: 6f ret +14c3: f8 5d mov x,$5d +14c5: e8 0a mov a,#$0a +14c7: d4 61 mov $61+x,a +14c9: 5f 97 15 jmp $1597 +14cc: 3f b8 14 call $14b8 +14cf: c4 ad mov $ad,a +14d1: f8 5d mov x,$5d +14d3: f5 70 05 mov a,$0570+x +14d6: 3f 28 15 call $1528 +14d9: d5 70 05 mov $0570+x,a +14dc: 5f 63 13 jmp $1363 +14df: 3f b8 14 call $14b8 +14e2: f8 5d mov x,$5d +14e4: d5 70 05 mov $0570+x,a +14e7: 5f 63 13 jmp $1363 +14ea: f8 5d mov x,$5d +14ec: f5 a8 05 mov a,$05a8+x +14ef: 30 15 bmi $1506 +14f1: fd mov y,a +14f2: f6 06 02 mov a,$0206+y +14f5: 68 80 cmp a,#$80 +14f7: f0 0d beq $1506 +14f9: e8 00 mov a,#$00 +14fb: d6 67 02 mov $0267+y,a +14fe: f6 dc 07 mov a,$07dc+y +1501: c4 f2 mov $f2,a +1503: 8f 9f f3 mov $f3,#$9f +1506: 3f b8 14 call $14b8 +1509: f8 5d mov x,$5d +150b: d4 a3 mov $a3+x,a +150d: f5 60 05 mov a,$0560+x +1510: d4 9b mov $9b+x,a +1512: 3f 18 15 call $1518 +1515: 5f 2d 13 jmp $132d +1518: f4 61 mov a,$61+x +151a: 68 06 cmp a,#$06 +151c: d0 05 bne $1523 +151e: e8 02 mov a,#$02 +1520: 5f 25 15 jmp $1525 +1523: e8 04 mov a,#$04 +1525: d4 61 mov $61+x,a +1527: 6f ret +1528: 78 80 ad cmp $ad,#$80 +152b: 90 08 bcc $1535 +152d: 60 clrc +152e: 84 ad adc a,$ad +1530: 10 09 bpl $153b +1532: e8 00 mov a,#$00 +1534: 6f ret +1535: 84 ad adc a,$ad +1537: 10 02 bpl $153b +1539: e8 7f mov a,#$7f +153b: 6f ret + +153c: dw $14c3,$14cc,$14df,$14ea,$1506 + +1546: 3f b8 14 call $14b8 +1549: f8 5d mov x,$5d +154b: d5 b0 05 mov $05b0+x,a +154e: e8 00 mov a,#$00 +1550: d4 de mov $de+x,a +1552: d4 df mov $df+x,a +1554: f8 5d mov x,$5d +1556: d5 88 05 mov $0588+x,a +1559: f8 5d mov x,$5d +155b: f5 90 05 mov a,$0590+x +155e: f0 19 beq $1579 +1560: f5 b0 05 mov a,$05b0+x +1563: 8d 12 mov y,#$12 +1565: 3f bb 0d call $0dbb +1568: 3f 86 15 call $1586 +156b: 28 0e and a,#$0e +156d: fd mov y,a +156e: f8 5e mov x,$5e +1570: f7 10 mov a,($10)+y +1572: d4 ce mov $ce+x,a +1574: fc inc y +1575: f7 10 mov a,($10)+y +1577: d4 cf mov $cf+x,a +1579: 8f 20 5f mov $5f,#$20 +157c: f8 5d mov x,$5d +157e: f5 88 05 mov a,$0588+x +1581: c4 60 mov $60,a +1583: 5f d6 13 jmp $13d6 +1586: e4 00 mov a,$00 +1588: 1c asl a +1589: 44 00 eor a,$00 +158b: 1c asl a +158c: 1c asl a +158d: 1c asl a +158e: 2b 02 rol $02 +1590: 2b 01 rol $01 +1592: 2b 00 rol $00 +1594: e4 02 mov a,$02 +1596: 6f ret +1597: 3f 9e 15 call $159e +159a: 5d mov x,a +159b: 1f 6f 16 jmp ($166f+x) +159e: f8 5e mov x,$5e +15a0: e7 7b mov a,($7b+x) +15a2: bb 7b inc $7b+x +15a4: d0 02 bne $15a8 +15a6: bb 7c inc $7c+x +15a8: 6f ret +15a9: f8 5d mov x,$5d +15ab: e8 0c mov a,#$0c +15ad: d4 61 mov $61+x,a +15af: 5f 87 16 jmp $1687 +15b2: 8d 00 mov y,#$00 +15b4: f8 5e mov x,$5e +15b6: 3f a0 15 call $15a0 +15b9: ad 10 cmp y,#$10 +15bb: b0 04 bcs $15c1 +15bd: d6 3f 05 mov $053f+y,a +15c0: fc inc y +15c1: 3f a0 15 call $15a0 +15c4: 68 14 cmp a,#$14 +15c6: f0 ee beq $15b6 +15c8: 68 16 cmp a,#$16 +15ca: d0 dd bne $15a9 +15cc: dd mov a,y +15cd: 5d mov x,a +15ce: 3f 86 15 call $1586 +15d1: 8d 00 mov y,#$00 +15d3: 9e div ya,x +15d4: f6 3f 05 mov a,$053f+y +15d7: 8d 10 mov y,#$10 +15d9: 3f 62 16 call $1662 +15dc: 2f 05 bra $15e3 +15de: 8d 10 mov y,#$10 +15e0: 3f 5d 16 call $165d +15e3: e8 06 mov a,#$06 +15e5: d4 61 mov $61+x,a +15e7: 5f 59 13 jmp $1359 +15ea: 8d 14 mov y,#$14 +15ec: 3f 5d 16 call $165d +15ef: e8 08 mov a,#$08 +15f1: d4 61 mov $61+x,a +15f3: 5f 46 15 jmp $1546 +15f6: 3f 9e 15 call $159e +15f9: eb 5e mov y,$5e +15fb: d6 be 00 mov $00be+y,a +15fe: 3f a0 15 call $15a0 +1601: d6 bf 00 mov $00bf+y,a +1604: 5f 97 15 jmp $1597 +1607: 3f 9e 15 call $159e +160a: f8 5d mov x,$5d +160c: d5 78 05 mov $0578+x,a +160f: 5f 97 15 jmp $1597 +1612: 3f 9e 15 call $159e +1615: f8 5d mov x,$5d +1617: d5 80 05 mov $0580+x,a +161a: 5f 97 15 jmp $1597 +161d: 3f 9e 15 call $159e +1620: c4 ad mov $ad,a +1622: f8 5d mov x,$5d +1624: f5 68 05 mov a,$0568+x +1627: 3f 28 15 call $1528 +162a: d5 68 05 mov $0568+x,a +162d: 5f 97 15 jmp $1597 +1630: 3f 9e 15 call $159e +1633: f8 5d mov x,$5d +1635: d5 68 05 mov $0568+x,a +1638: 5f 97 15 jmp $1597 +163b: e8 ff mov a,#$ff +163d: f8 5d mov x,$5d +163f: d5 90 05 mov $0590+x,a +1642: 5f 97 15 jmp $1597 +1645: 3f 9e 15 call $159e +1648: eb 5e mov y,$5e +164a: d6 ce 00 mov $00ce+y,a +164d: 3f a0 15 call $15a0 +1650: d6 cf 00 mov $00cf+y,a +1653: e8 00 mov a,#$00 +1655: f8 5d mov x,$5d +1657: d5 90 05 mov $0590+x,a +165a: 5f 97 15 jmp $1597 +165d: 6d push y +165e: 3f 9e 15 call $159e +1661: ee pop y +1662: 3f bb 0d call $0dbb +1665: f8 5e mov x,$5e +1667: d4 8b mov $8b+x,a +1669: dd mov a,y +166a: d4 8c mov $8c+x,a +166c: f8 5d mov x,$5d +166e: 6f ret + +166f: dw $15a9,$15de,$15ea,$15f6,$1607,$1612,$163b,$1645,$161d,$1630,$15b2,$15a9 + +168e: f8 5e mov x,$5e +1690: e7 6b mov a,($6b+x) +1692: bb 6b inc $6b+x +1694: d0 02 bne $1698 +1696: bb 6c inc $6c+x +1698: 6f ret +1699: f8 5d mov x,$5d +169b: e8 00 mov a,#$00 +169d: d4 61 mov $61+x,a +169f: 8b 5c dec $5c +16a1: 5f 2d 13 jmp $132d +16a4: f8 5e mov x,$5e +16a6: f5 50 05 mov a,$0550+x +16a9: d4 6b mov $6b+x,a +16ab: f5 51 05 mov a,$0551+x +16ae: d4 6c mov $6c+x,a +16b0: 5f 87 16 jmp $1687 +16b3: 3f 8e 16 call $168e +16b6: f8 5d mov x,$5d +16b8: d5 60 05 mov $0560+x,a +16bb: 5f 87 16 jmp $1687 +16be: 3f 8e 16 call $168e +16c1: eb 5e mov y,$5e +16c3: d6 ae 00 mov $00ae+y,a +16c6: 3f 90 16 call $1690 +16c9: d6 af 00 mov $00af+y,a +16cc: 5f 87 16 jmp $1687 +16cf: 3f 8e 16 call $168e +16d2: 8d 16 mov y,#$16 +16d4: 3f bb 0d call $0dbb +16d7: f8 5e mov x,$5e +16d9: d4 7b mov $7b+x,a +16db: dd mov a,y +16dc: d4 7c mov $7c+x,a +16de: f8 5d mov x,$5d +16e0: e8 0a mov a,#$0a +16e2: d4 61 mov $61+x,a +16e4: 5f 97 15 jmp $1597 +16e7: 3f 8e 16 call $168e +16ea: f8 5d mov x,$5d +16ec: d5 98 05 mov $0598+x,a +16ef: 68 ff cmp a,#$ff +16f1: d0 08 bne $16fb +16f3: 3f 8e 16 call $168e +16f6: f8 5d mov x,$5d +16f8: d5 a0 05 mov $05a0+x,a +16fb: 5f 87 16 jmp $1687 +16fe: 99 adc (x),(y) +16ff: 16 a4 16 or a,$16a4+y +1702: b3 16 be bbc5 $16,$16c3 +1705: 16 cf 16 or a,$16cf+y +1708: e7 16 mov a,($16+x) +170a: 8d 93 mov y,#$93 +170c: f9 5a mov x,$5a+y +170e: f6 b7 05 mov a,$05b7+y +1711: d6 5a 00 mov $005a+y,a +1714: 7d mov a,x +1715: d6 b7 05 mov $05b7+y,a +1718: fe f2 dbnz y,$170c +171a: 8d 69 mov y,#$69 +171c: f6 4e 05 mov a,$054e+y +171f: 5d mov x,a +1720: f6 4a 06 mov a,$064a+y +1723: d6 4e 05 mov $054e+y,a +1726: 7d mov a,x +1727: d6 4a 06 mov $064a+y,a +172a: fe f0 dbnz y,$171c +172c: 6f ret +172d: 3f 36 17 call $1736 +1730: e8 01 mov a,#$01 +1732: c5 4f 05 mov $054f,a +1735: 6f ret +1736: 2d push a +1737: 3f 0a 17 call $170a +173a: ae pop a +173b: 8d 1a mov y,#$1a +173d: 3f bb 0d call $0dbb +1740: da 69 movw $69,ya +1742: 8d 00 mov y,#$00 +1744: f7 69 mov a,($69)+y +1746: c4 5b mov $5b,a +1748: c4 5c mov $5c,a +174a: f0 4b beq $1797 +174c: 8f 00 5d mov $5d,#$00 +174f: 8f 00 5e mov $5e,#$00 +1752: fc inc y +1753: f7 69 mov a,($69)+y +1755: 6d push y +1756: 8d 18 mov y,#$18 +1758: 3f bb 0d call $0dbb +175b: f8 5e mov x,$5e +175d: d5 50 05 mov $0550+x,a +1760: d4 6b mov $6b+x,a +1762: dd mov a,y +1763: ee pop y +1764: d5 51 05 mov $0551+x,a +1767: d4 6c mov $6c+x,a +1769: e8 00 mov a,#$00 +176b: d4 ae mov $ae+x,a +176d: d4 af mov $af+x,a +176f: d4 be mov $be+x,a +1771: d4 bf mov $bf+x,a +1773: f8 5d mov x,$5d +1775: e8 0c mov a,#$0c +1777: d4 61 mov $61+x,a +1779: e8 ff mov a,#$ff +177b: d5 90 05 mov $0590+x,a +177e: d5 a8 05 mov $05a8+x,a +1781: e8 00 mov a,#$00 +1783: d5 68 05 mov $0568+x,a +1786: d5 70 05 mov $0570+x,a +1789: d5 88 05 mov $0588+x,a +178c: ab 5e inc $5e +178e: ab 5e inc $5e +1790: 3d inc x +1791: d8 5d mov $5d,x +1793: 3e 5b cmp x,$5b +1795: 90 bb bcc $1752 +1797: 6f ret + +1798: dw $132d,$1336,$1336,$1363,$1559,$1597,$1687,$0b5d,$0bd6,$173b,$1736,$172d,$170a,$0792,$0b7d,$0b79,$0b73,$0b70,$0b6a,$0b8c,$0b97 \ No newline at end of file diff --git a/snes/Sculptured Software/The Jungle Book ($0700).bin b/snes/Sculptured Software/The Jungle Book ($0700).bin new file mode 100644 index 0000000000000000000000000000000000000000..3a99a81a738a01f99287dbfa70c17aa8fe7c4ed2 GIT binary patch literal 6114 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 literal 0 HcmV?d00001 diff --git a/snes/Sculptured Software/The Jungle Book.s b/snes/Sculptured Software/The Jungle Book.s new file mode 100644 index 00000000..3ffac981 --- /dev/null +++ b/snes/Sculptured Software/The Jungle Book.s @@ -0,0 +1,2388 @@ +0700: 20 clrp +0701: cd ff mov x,#$ff +0703: bd mov sp,x +0704: 8f a0 fa mov $fa,#$a0 +0707: 8f a0 fb mov $fb,#$a0 +070a: 8f 20 fc mov $fc,#$20 +070d: 8f 87 f1 mov $f1,#$87 +0710: 3f c0 10 call $10c0 +0713: 8f 00 24 mov $24,#$00 +0716: 8f 1f 25 mov $25,#$1f +0719: 8f 01 f6 mov $f6,#$01 +071c: 62 08 set3 $08 +071e: 3f be 0b call $0bbe +0721: 3f 85 0b call $0b85 +0724: 33 07 f7 bbc1 $07,$071e +0727: 8d 10 mov y,#$10 +0729: 3f 4a 07 call $074a +072c: 83 07 12 bbs4 $07,$0741 +072f: e4 fe mov a,$fe +0731: f0 0e beq $0741 +0733: e4 c9 mov a,$c9 +0735: f0 07 beq $073e +0737: 60 clrc +0738: 84 ca adc a,$ca +073a: c4 ca mov $ca,a +073c: 90 03 bcc $0741 +073e: 3f 50 17 call $1750 +0741: e4 fd mov a,$fd +0743: f0 d9 beq $071e +0745: 3f 7b 08 call $087b +0748: 2f d4 bra $071e +074a: e4 ff mov a,$ff +074c: d0 03 bne $0751 +074e: e8 01 mov a,#$01 +0750: 6f ret +0751: cb 3b mov $3b,y +0753: 8f 00 3a mov $3a,#$00 +0756: cd 14 mov x,#$14 +0758: e4 f6 mov a,$f6 +075a: f0 03 beq $075f +075c: 3f be 0b call $0bbe +075f: eb 3b mov y,$3b +0761: f5 4a 08 mov a,$084a+x +0764: c4 f2 mov $f2,a +0766: f5 28 02 mov a,$0228+x +0769: 64 f3 cmp a,$f3 +076b: f0 0f beq $077c +076d: b0 09 bcs $0778 +076f: 8b f3 dec $f3 +0771: dc dec y +0772: d0 f5 bne $0769 +0774: ab 3a inc $3a +0776: 2f 04 bra $077c +0778: ab f3 inc $f3 +077a: 2f f5 bra $0771 +077c: 1d dec x +077d: 10 d9 bpl $0758 +077f: e4 3a mov a,$3a +0781: 6f ret +0782: 8f aa f4 mov $f4,#$aa +0785: 8f bb f5 mov $f5,#$bb +0788: e8 cc mov a,#$cc +078a: fa f4 ef mov ($ef),($f4) +078d: 69 f4 ef cmp ($ef),($f4) +0790: d0 f8 bne $078a +0792: 2e ef f5 cbne $ef,$078a +0795: e4 ef mov a,$ef +0797: fa f6 3d mov ($3d),($f6) +079a: fa f7 3e mov ($3e),($f7) +079d: fd mov y,a +079e: e4 f5 mov a,$f5 +07a0: cb f4 mov $f4,y +07a2: d0 08 bne $07ac +07a4: 8f b0 f1 mov $f1,#$b0 +07a7: cb f5 mov $f5,y +07a9: 5f 00 07 jmp $0700 +07ac: cd 00 mov x,#$00 +07ae: 7d mov a,x +07af: fa f4 ef mov ($ef),($f4) +07b2: 69 f4 ef cmp ($ef),($f4) +07b5: d0 f8 bne $07af +07b7: 2e ef f5 cbne $ef,$07af +07ba: e4 f5 mov a,$f5 +07bc: d8 f4 mov $f4,x +07be: d5 be 07 mov $07be+x,a +07c1: 7d mov a,x +07c2: 3d inc x +07c3: d0 02 bne $07c7 +07c5: ab 3e inc $3e +07c7: fa f4 ef mov ($ef),($f4) +07ca: 69 f4 ef cmp ($ef),($f4) +07cd: d0 f8 bne $07c7 +07cf: 64 ef cmp a,$ef +07d1: f0 f4 beq $07c7 +07d3: 3e ef cmp x,$ef +07d5: d0 be bne $0795 +07d7: e4 f5 mov a,$f5 +07d9: d8 f4 mov $f4,x +07db: 2f e1 bra $07be +07dd: 72 08 clr3 $08 +07df: 8d 80 mov y,#$80 +07e1: 3f 42 0d call $0d42 +07e4: 3f 16 11 call $1116 +07e7: 32 07 clr1 $07 +07e9: 8f 6c f2 mov $f2,#$6c +07ec: 8f 3f f3 mov $f3,#$3f +07ef: cd 00 mov x,#$00 +07f1: f5 82 07 mov a,$0782+x +07f4: d4 00 mov $00+x,a +07f6: 3d inc x +07f7: c8 5b cmp x,#$5b +07f9: 90 f6 bcc $07f1 +07fb: 5f 00 00 jmp $0000 + +07fe: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 +0814: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00,$08,$18,$28,$38,$48,$58,$68,$78,$07,$17,$27,$37,$47,$57,$67,$77,$04,$14,$24,$34,$44,$54,$64,$74,$02,$12,$22,$32,$42,$52,$62,$72,$00,$10,$20,$30,$40,$50,$60,$70,$01,$11,$21,$31,$41,$51,$61,$71,$2c,$3c,$0d,$0c,$1c,$01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f,$7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f + +087b: 3f be 0b call $0bbe +087e: 8f 00 44 mov $44,#$00 +0881: 8f 00 55 mov $55,#$00 +0884: 8f 7c f2 mov $f2,#$7c +0887: e4 f3 mov a,$f3 +0889: 24 58 and a,$58 +088b: c4 52 mov $52,a +088d: 8f 00 f3 mov $f3,#$00 +0890: cd 07 mov x,#$07 +0892: 3f be 0b call $0bbe +0895: d8 28 mov $28,x +0897: 7d mov a,x +0898: 60 clrc +0899: 88 10 adc a,#$10 +089b: c4 2d mov $2d,a +089d: f5 5f 08 mov a,$085f+x +08a0: c4 45 mov $45,a +08a2: 48 ff eor a,#$ff +08a4: c4 46 mov $46,a +08a6: f4 62 mov a,$62+x +08a8: c4 48 mov $48,a +08aa: a2 08 set5 $08 +08ac: 23 48 06 bbs1 $48,$08b5 +08af: f5 ec fc mov a,$fcec+x +08b2: 5f c3 08 jmp $08c3 +08b5: eb 2d mov y,$2d +08b7: f6 e3 04 mov a,$04e3+y +08ba: d0 02 bne $08be +08bc: b2 08 clr5 $08 +08be: 3f 9c 12 call $129c +08c1: f8 28 mov x,$28 +08c3: 75 f4 fc cmp a,$fcf4+x +08c6: d0 0d bne $08d5 +08c8: 3f 5a 14 call $145a +08cb: e4 5d mov a,$5d +08cd: 24 56 and a,$56 +08cf: 24 45 and a,$45 +08d1: d0 43 bne $0916 +08d3: 2f 44 bra $0919 +08d5: d5 f4 fc mov $fcf4+x,a +08d8: 09 45 44 or ($44),($45) +08db: 3f 5a 14 call $145a +08de: 7d mov a,x +08df: 1c asl a +08e0: 5d mov x,a +08e1: e5 04 01 mov a,$0104 +08e4: d5 4b 01 mov $014b+x,a +08e7: e5 05 01 mov a,$0105 +08ea: d5 4c 01 mov $014c+x,a +08ed: f8 28 mov x,$28 +08ef: e4 5e mov a,$5e +08f1: 28 20 and a,#$20 +08f3: f0 05 beq $08fa +08f5: 29 46 53 and ($53),($46) +08f8: 2f 03 bra $08fd +08fa: 09 45 53 or ($53),($45) +08fd: b3 08 0b bbc5 $08,$090b +0900: e4 5e mov a,$5e +0902: 28 40 and a,#$40 +0904: f0 05 beq $090b +0906: 09 45 5d or ($5d),($45) +0909: 2f 03 bra $090e +090b: 29 46 5d and ($5d),($46) +090e: e4 5d mov a,$5d +0910: 04 56 or a,$56 +0912: 24 45 and a,$45 +0914: f0 03 beq $0919 +0916: 09 45 55 or ($55),($45) +0919: 1d dec x +091a: 30 03 bmi $091f +091c: 5f 92 08 jmp $0892 +091f: e4 56 mov a,$56 +0921: 24 53 and a,$53 +0923: 04 54 or a,$54 +0925: c4 54 mov $54,a +0927: 24 54 and a,$54 +0929: 04 55 or a,$55 +092b: c4 57 mov $57,a +092d: 8f 5c f2 mov $f2,#$5c +0930: c4 f3 mov $f3,a +0932: cd 07 mov x,#$07 +0934: 3f be 0b call $0bbe +0937: d8 28 mov $28,x +0939: f5 5f 08 mov a,$085f+x +093c: c4 45 mov $45,a +093e: 7d mov a,x +093f: 60 clrc +0940: 88 18 adc a,#$18 +0942: c4 2d mov $2d,a +0944: e5 a2 03 mov a,$03a2 +0947: d0 12 bne $095b +0949: f4 62 mov a,$62+x +094b: c4 48 mov $48,a +094d: 63 48 06 bbs3 $48,$0956 +0950: f5 e4 fc mov a,$fce4+x +0953: 5f 5b 09 jmp $095b +0956: 3f 9c 12 call $129c +0959: f8 28 mov x,$28 +095b: 60 clrc +095c: 95 9a 03 adc a,$039a+x +095f: 30 06 bmi $0967 +0961: 70 04 bvs $0967 +0963: 68 65 cmp a,#$65 +0965: 30 0b bmi $0972 +0967: f5 9a 03 mov a,$039a+x +096a: 30 04 bmi $0970 +096c: e8 64 mov a,#$64 +096e: 2f 02 bra $0972 +0970: e8 00 mov a,#$00 +0972: fd mov y,a +0973: f5 43 01 mov a,$0143+x +0976: c4 3c mov $3c,a +0978: cf mul ya +0979: cd 64 mov x,#$64 +097b: 9e div ya,x +097c: f8 28 mov x,$28 +097e: 73 48 14 bbc3 $48,$0995 +0981: c4 3a mov $3a,a +0983: 6d push y +0984: eb 2d mov y,$2d +0986: f6 c3 03 mov a,$03c3+y +0989: ee pop y +098a: d0 04 bne $0990 +098c: e4 3a mov a,$3a +098e: 2f 05 bra $0995 +0990: e4 3c mov a,$3c +0992: 80 setc +0993: a4 3a sbc a,$3a +0995: c4 3a mov $3a,a +0997: d5 28 02 mov $0228+x,a +099a: e4 3c mov a,$3c +099c: 80 setc +099d: a4 3a sbc a,$3a +099f: d5 30 02 mov $0230+x,a +09a2: 1d dec x +09a3: 30 03 bmi $09a8 +09a5: 5f 34 09 jmp $0934 +09a8: cd 07 mov x,#$07 +09aa: 3f be 0b call $0bbe +09ad: d8 28 mov $28,x +09af: 7d mov a,x +09b0: 60 clrc +09b1: 88 08 adc a,#$08 +09b3: c4 2d mov $2d,a +09b5: f4 62 mov a,$62+x +09b7: c4 48 mov $48,a +09b9: 7d mov a,x +09ba: 1c asl a +09bb: 5d mov x,a +09bc: f5 d5 fc mov a,$fcd5+x +09bf: c4 43 mov $43,a +09c1: f5 d4 fc mov a,$fcd4+x +09c4: c4 42 mov $42,a +09c6: 53 48 15 bbc2 $48,$09de +09c9: 4d push x +09ca: 42 08 set2 $08 +09cc: 3f 9c 12 call $129c +09cf: 52 08 clr2 $08 +09d1: ce pop x +09d2: 7a 42 addw ya,$42 +09d4: 80 setc +09d5: a8 b0 sbc a,#$b0 +09d7: c4 42 mov $42,a +09d9: dd mov a,y +09da: a8 04 sbc a,#$04 +09dc: c4 43 mov $43,a +09de: f5 4c 01 mov a,$014c+x +09e1: fd mov y,a +09e2: f5 4b 01 mov a,$014b+x +09e5: 7a 42 addw ya,$42 +09e7: da 3a movw $3a,ya +09e9: fb d8 mov y,$d8+x +09eb: f4 d7 mov a,$d7+x +09ed: 7a 3a addw ya,$3a +09ef: c3 48 03 bbs6 $48,$09f5 +09f2: 3f dc 14 call $14dc +09f5: da 3a movw $3a,ya +09f7: e4 28 mov a,$28 +09f9: 1c asl a +09fa: 5d mov x,a +09fb: f5 5c 01 mov a,$015c+x +09fe: fd mov y,a +09ff: f5 5b 01 mov a,$015b+x +0a02: 7a 3a addw ya,$3a +0a04: f8 28 mov x,$28 +0a06: d5 33 01 mov $0133+x,a +0a09: dd mov a,y +0a0a: d5 3b 01 mov $013b+x,a +0a0d: 1d dec x +0a0e: 10 9a bpl $09aa +0a10: 8f 5c f2 mov $f2,#$5c +0a13: 8f 00 f3 mov $f3,#$00 +0a16: cd 07 mov x,#$07 +0a18: 3f be 0b call $0bbe +0a1b: d8 28 mov $28,x +0a1d: 7d mov a,x +0a1e: 60 clrc +0a1f: 88 00 adc a,#$00 +0a21: c4 2d mov $2d,a +0a23: f5 5f 08 mov a,$085f+x +0a26: c4 45 mov $45,a +0a28: 48 ff eor a,#$ff +0a2a: c4 46 mov $46,a +0a2c: f4 62 mov a,$62+x +0a2e: c4 48 mov $48,a +0a30: 03 48 07 bbs0 $48,$0a3a +0a33: f5 23 01 mov a,$0123+x +0a36: fd mov y,a +0a37: 5f 47 0a jmp $0a47 +0a3a: 3f 9c 12 call $129c +0a3d: fd mov y,a +0a3e: f8 28 mov x,$28 +0a40: b3 07 04 bbc5 $07,$0a47 +0a43: e8 00 mov a,#$00 +0a45: d4 6a mov $6a+x,a +0a47: e8 80 mov a,#$80 +0a49: de 6a 04 cbne $6a+x,$0a50 +0a4c: e4 5a mov a,$5a +0a4e: 2f 02 bra $0a52 +0a50: e4 59 mov a,$59 +0a52: cf mul ya +0a53: f5 92 03 mov a,$0392+x +0a56: cf mul ya +0a57: dd mov a,y +0a58: d5 2b 01 mov $012b+x,a +0a5b: e4 51 mov a,$51 +0a5d: 24 45 and a,$45 +0a5f: d0 35 bne $0a96 +0a61: f5 2a 08 mov a,$082a+x +0a64: c4 f2 mov $f2,a +0a66: dd mov a,y +0a67: 80 setc +0a68: a4 f3 sbc a,$f3 +0a6a: b0 08 bcs $0a74 +0a6c: 8f 80 39 mov $39,#$80 +0a6f: 48 ff eor a,#$ff +0a71: bc inc a +0a72: 2f 03 bra $0a77 +0a74: 8f c0 39 mov $39,#$c0 +0a77: 5c lsr a +0a78: d0 08 bne $0a82 +0a7a: ad 00 cmp y,#$00 +0a7c: d0 04 bne $0a82 +0a7e: e8 82 mov a,#$82 +0a80: 2f 0e bra $0a90 +0a82: 8d 15 mov y,#$15 +0a84: 76 fe 07 cmp a,$07fe+y +0a87: 90 02 bcc $0a8b +0a89: fe f9 dbnz y,$0a84 +0a8b: f6 14 08 mov a,$0814+y +0a8e: 04 39 or a,$39 +0a90: 75 cc fc cmp a,$fccc+x +0a93: f0 20 beq $0ab5 +0a95: fd mov y,a +0a96: 29 46 51 and ($51),($46) +0a99: f5 4a 08 mov a,$084a+x +0a9c: c4 f2 mov $f2,a +0a9e: f5 28 02 mov a,$0228+x +0aa1: c4 f3 mov $f3,a +0aa3: ab f2 inc $f2 +0aa5: f5 30 02 mov a,$0230+x +0aa8: c4 f3 mov $f3,a +0aaa: f5 32 08 mov a,$0832+x +0aad: c4 f2 mov $f2,a +0aaf: cb f3 mov $f3,y +0ab1: dd mov a,y +0ab2: d5 cc fc mov $fccc+x,a +0ab5: f5 42 08 mov a,$0842+x +0ab8: c4 f2 mov $f2,a +0aba: fd mov y,a +0abb: f5 33 01 mov a,$0133+x +0abe: c4 f3 mov $f3,a +0ac0: fc inc y +0ac1: cb f2 mov $f2,y +0ac3: f5 3b 01 mov a,$013b+x +0ac6: c4 f3 mov $f3,a +0ac8: 1d dec x +0ac9: 30 03 bmi $0ace +0acb: 5f 18 0a jmp $0a18 +0ace: 8f 4c f2 mov $f2,#$4c +0ad1: fa 57 f3 mov ($f3),($57) +0ad4: e4 57 mov a,$57 +0ad6: 48 ff eor a,#$ff +0ad8: c4 58 mov $58,a +0ada: 29 58 52 and ($52),($58) +0add: 29 58 54 and ($54),($58) +0ae0: 8f 00 56 mov $56,#$00 +0ae3: 3f be 0b call $0bbe +0ae6: 8d 07 mov y,#$07 +0ae8: cd 0e mov x,#$0e +0aea: 3f be 0b call $0bbe +0aed: f6 6a 00 mov a,$006a+y +0af0: f0 31 beq $0b23 +0af2: f6 62 00 mov a,$0062+y +0af5: c4 48 mov $48,a +0af7: f3 48 07 bbc7 $48,$0b01 +0afa: f6 5f 08 mov a,$085f+y +0afd: 24 52 and a,$52 +0aff: d0 1d bne $0b1e +0b01: f6 6a 00 mov a,$006a+y +0b04: 68 80 cmp a,#$80 +0b06: d0 1b bne $0b23 +0b08: f6 46 02 mov a,$0246+y +0b0b: 28 02 and a,#$02 +0b0d: d0 14 bne $0b23 +0b0f: 9b 73 dec $73+x +0b11: f4 73 mov a,$73+x +0b13: 2e 05 02 cbne $05,$0b18 +0b16: 9b 74 dec $74+x +0b18: f4 73 mov a,$73+x +0b1a: 14 74 or a,$74+x +0b1c: d0 05 bne $0b23 +0b1e: e8 80 mov a,#$80 +0b20: 3f 7b 17 call $177b +0b23: 1d dec x +0b24: 1d dec x +0b25: dc dec y +0b26: 10 c2 bpl $0aea +0b28: 3f be 0b call $0bbe +0b2b: ec 43 02 mov y,$0243 +0b2e: f0 54 beq $0b84 +0b30: 6e cc 51 dbnz $cc,$0b84 +0b33: cb cc mov $cc,y +0b35: e5 3b 02 mov a,$023b +0b38: f8 cd mov x,$cd +0b3a: 30 0d bmi $0b49 +0b3c: 60 clrc +0b3d: 84 ce adc a,$ce +0b3f: b0 04 bcs $0b45 +0b41: 68 7f cmp a,#$7f +0b43: 90 12 bcc $0b57 +0b45: e8 7f mov a,#$7f +0b47: 2f 09 bra $0b52 +0b49: 80 setc +0b4a: a4 ce sbc a,$ce +0b4c: f0 04 beq $0b52 +0b4e: b0 07 bcs $0b57 +0b50: e8 00 mov a,#$00 +0b52: 8d 00 mov y,#$00 +0b54: cc 43 02 mov $0243,y +0b57: 5d mov x,a +0b58: 65 44 02 cmp a,$0244 +0b5b: 90 03 bcc $0b60 +0b5d: e5 44 02 mov a,$0244 +0b60: c5 38 02 mov $0238,a +0b63: 7d mov a,x +0b64: c5 3b 02 mov $023b,a +0b67: c5 3c 02 mov $023c,a +0b6a: 65 45 02 cmp a,$0245 +0b6d: 90 03 bcc $0b72 +0b6f: e5 45 02 mov a,$0245 +0b72: c5 39 02 mov $0239,a +0b75: e5 43 02 mov a,$0243 +0b78: d0 0a bne $0b84 +0b7a: aa 07 40 mov1 c,$0007,2 +0b7d: 90 05 bcc $0b84 +0b7f: 8d 80 mov y,#$80 +0b81: 5f 42 0d jmp $0d42 +0b84: 6f ret +0b85: 32 08 clr1 $08 +0b87: e4 e7 mov a,$e7 +0b89: f0 2f beq $0bba +0b8b: 9c dec a +0b8c: c4 e7 mov $e7,a +0b8e: f8 e9 mov x,$e9 +0b90: f5 90 10 mov a,$1090+x +0b93: 28 fe and a,#$fe +0b95: c4 30 mov $30,a +0b97: f5 a0 10 mov a,$10a0+x +0b9a: c4 31 mov $31,a +0b9c: f5 b0 10 mov a,$10b0+x +0b9f: c4 32 mov $32,a +0ba1: 3d inc x +0ba2: c8 10 cmp x,#$10 +0ba4: d0 02 bne $0ba8 +0ba6: cd 00 mov x,#$00 +0ba8: d8 e9 mov $e9,x +0baa: e4 30 mov a,$30 +0bac: 5d mov x,a +0bad: 28 fe and a,#$fe +0baf: c8 45 cmp x,#$45 +0bb1: b0 07 bcs $0bba +0bb3: e4 31 mov a,$31 +0bb5: eb 32 mov y,$32 +0bb7: 3f bb 0b call $0bbb +0bba: 6f ret +0bbb: 1f 45 1e jmp ($1e45+x) +0bbe: 73 08 24 bbc3 $08,$0be5 +0bc1: 69 03 f6 cmp ($f6),($03) +0bc4: f0 1f beq $0be5 +0bc6: 23 08 1c bbs1 $08,$0be5 +0bc9: 2d push a +0bca: e4 f6 mov a,$f6 +0bcc: f0 16 beq $0be4 +0bce: 2e f6 13 cbne $f6,$0be4 +0bd1: e4 f7 mov a,$f7 +0bd3: 68 1e cmp a,#$1e +0bd5: d0 30 bne $0c07 +0bd7: fa f4 18 mov ($18),($f4) +0bda: fa f5 19 mov ($19),($f5) +0bdd: e4 f6 mov a,$f6 +0bdf: 8f b7 f1 mov $f1,#$b7 +0be2: c4 f6 mov $f6,a +0be4: ae pop a +0be5: 6f ret +0be6: 6d push y +0be7: 4d push x +0be8: ba f4 movw ya,$f4 +0bea: da 1a movw $1a,ya +0bec: f8 f6 mov x,$f6 +0bee: 8f b7 f1 mov $f1,#$b7 +0bf1: 8d 00 mov y,#$00 +0bf3: f7 1a mov a,($1a)+y +0bf5: c4 f4 mov $f4,a +0bf7: fc inc y +0bf8: f7 1a mov a,($1a)+y +0bfa: c4 f5 mov $f5,a +0bfc: fc inc y +0bfd: f7 1a mov a,($1a)+y +0bff: c4 f7 mov $f7,a +0c01: d8 f6 mov $f6,x +0c03: ce pop x +0c04: ee pop y +0c05: ae pop a +0c06: 6f ret +0c07: 68 22 cmp a,#$22 +0c09: f0 52 beq $0c5d +0c0b: 68 0c cmp a,#$0c +0c0d: f0 d7 beq $0be6 +0c0f: 68 0e cmp a,#$0e +0c11: d0 03 bne $0c16 +0c13: 5f dd 07 jmp $07dd +0c16: 68 02 cmp a,#$02 +0c18: d0 15 bne $0c2f +0c1a: 4d push x +0c1b: 6d push y +0c1c: e4 f6 mov a,$f6 +0c1e: 8f b7 f1 mov $f1,#$b7 +0c21: 2d push a +0c22: 72 08 clr3 $08 +0c24: 3f d2 0c call $0cd2 +0c27: 62 08 set3 $08 +0c29: ae pop a +0c2a: c4 f6 mov $f6,a +0c2c: ee pop y +0c2d: 2f 2b bra $0c5a +0c2f: 4d push x +0c30: f8 e8 mov x,$e8 +0c32: d5 90 10 mov $1090+x,a +0c35: e4 f4 mov a,$f4 +0c37: d5 a0 10 mov $10a0+x,a +0c3a: e4 f5 mov a,$f5 +0c3c: d5 b0 10 mov $10b0+x,a +0c3f: e4 f6 mov a,$f6 +0c41: 8f b7 f1 mov $f1,#$b7 +0c44: c4 f6 mov $f6,a +0c46: 3d inc x +0c47: c8 10 cmp x,#$10 +0c49: d0 02 bne $0c4d +0c4b: cd 00 mov x,#$00 +0c4d: d8 e8 mov $e8,x +0c4f: e4 e7 mov a,$e7 +0c51: bc inc a +0c52: c4 e7 mov $e7,a +0c54: 68 10 cmp a,#$10 +0c56: d0 02 bne $0c5a +0c58: 22 08 set1 $08 +0c5a: ce pop x +0c5b: ae pop a +0c5c: 6f ret +0c5d: 6d push y +0c5e: 4d push x +0c5f: f8 f4 mov x,$f4 +0c61: e4 f6 mov a,$f6 +0c63: 8f b7 f1 mov $f1,#$b7 +0c66: c4 f6 mov $f6,a +0c68: 4d push x +0c69: e4 18 mov a,$18 +0c6b: c5 94 0c mov $0c94,a +0c6e: c5 9c 0c mov $0c9c,a +0c71: c5 a3 0c mov $0ca3,a +0c74: e4 19 mov a,$19 +0c76: c5 95 0c mov $0c95,a +0c79: c5 9d 0c mov $0c9d,a +0c7c: c5 a4 0c mov $0ca4,a +0c7f: e4 f6 mov a,$f6 +0c81: f0 fc beq $0c7f +0c83: 2e f6 f9 cbne $f6,$0c7f +0c86: ba f4 movw ya,$f4 +0c88: da 1a movw $1a,ya +0c8a: ba f6 movw ya,$f6 +0c8c: 8f b7 f1 mov $f1,#$b7 +0c8f: c4 f6 mov $f6,a +0c91: e4 1a mov a,$1a +0c93: d5 93 0c mov $0c93+x,a +0c96: 1d dec x +0c97: 30 0f bmi $0ca8 +0c99: e4 1b mov a,$1b +0c9b: d5 9b 0c mov $0c9b+x,a +0c9e: 1d dec x +0c9f: 30 07 bmi $0ca8 +0ca1: dd mov a,y +0ca2: d5 a2 0c mov $0ca2+x,a +0ca5: 1d dec x +0ca6: 10 d7 bpl $0c7f +0ca8: e4 f6 mov a,$f6 +0caa: f0 fc beq $0ca8 +0cac: 2e f6 f9 cbne $f6,$0ca8 +0caf: ba f4 movw ya,$f4 +0cb1: da 1a movw $1a,ya +0cb3: ba f6 movw ya,$f6 +0cb5: 8f b7 f1 mov $f1,#$b7 +0cb8: c4 f6 mov $f6,a +0cba: ad 01 cmp y,#$01 +0cbc: d0 07 bne $0cc5 +0cbe: ae pop a +0cbf: ba 1a movw ya,$1a +0cc1: da 18 movw $18,ya +0cc3: 2f 09 bra $0cce +0cc5: ae pop a +0cc6: 8d 00 mov y,#$00 +0cc8: 7a 18 addw ya,$18 +0cca: da 18 movw $18,ya +0ccc: 3a 18 incw $18 +0cce: ce pop x +0ccf: ee pop y +0cd0: ae pop a +0cd1: 6f ret +0cd2: 3f 34 11 call $1134 +0cd5: 3f 2a 11 call $112a +0cd8: 22 07 set1 $07 +0cda: 6f ret +0cdb: c5 a2 03 mov $03a2,a +0cde: 6f ret +0cdf: e8 00 mov a,#$00 +0ce1: c5 43 02 mov $0243,a +0ce4: 6f ret +0ce5: cd 01 mov x,#$01 +0ce7: 52 07 clr2 $07 +0ce9: 2f 02 bra $0ced +0ceb: cd ff mov x,#$ff +0ced: c5 43 02 mov $0243,a +0cf0: c4 cc mov $cc,a +0cf2: cb ce mov $ce,y +0cf4: d8 cd mov $cd,x +0cf6: 6f ret +0cf7: 2d push a +0cf8: dd mov a,y +0cf9: 28 7f and a,#$7f +0cfb: c5 3e 02 mov $023e,a +0cfe: ae pop a +0cff: 92 08 clr4 $08 +0d01: 2f 02 bra $0d05 +0d03: 82 08 set4 $08 +0d05: 8f ff cb mov $cb,#$ff +0d08: 5f 95 0d jmp $0d95 +0d0b: 3f f9 1c call $1cf9 +0d0e: e5 fc 1e mov a,$1efc +0d11: c5 63 06 mov $0663,a +0d14: e5 fd 1e mov a,$1efd +0d17: c5 64 06 mov $0664,a +0d1a: 05 63 06 or a,$0663 +0d1d: f0 20 beq $0d3f +0d1f: 3f 50 17 call $1750 +0d22: e5 63 06 mov a,$0663 +0d25: 80 setc +0d26: a8 01 sbc a,#$01 +0d28: c5 63 06 mov $0663,a +0d2b: e5 64 06 mov a,$0664 +0d2e: a8 00 sbc a,#$00 +0d30: c5 64 06 mov $0664,a +0d33: b0 ea bcs $0d1f +0d35: cd 07 mov x,#$07 +0d37: e8 00 mov a,#$00 +0d39: d5 43 01 mov $0143+x,a +0d3c: 1d dec x +0d3d: 10 fa bpl $0d39 +0d3f: 6f ret +0d40: 8d ff mov y,#$ff +0d42: cd 07 mov x,#$07 +0d44: ad 80 cmp y,#$80 +0d46: f0 04 beq $0d4c +0d48: ad ff cmp y,#$ff +0d4a: d0 05 bne $0d51 +0d4c: 82 07 set4 $07 +0d4e: 8f 00 84 mov $84,#$00 +0d51: c4 72 mov $72,a +0d53: ad 80 cmp y,#$80 +0d55: f0 16 beq $0d6d +0d57: e8 01 mov a,#$01 +0d59: ad ff cmp y,#$ff +0d5b: f0 0d beq $0d6a +0d5d: ad 00 cmp y,#$00 +0d5f: d0 07 bne $0d68 +0d61: e4 72 mov a,$72 +0d63: 75 1b 01 cmp a,$011b+x +0d66: d0 1d bne $0d85 +0d68: e8 80 mov a,#$80 +0d6a: de 6a 18 cbne $6a+x,$0d85 +0d6d: f5 32 08 mov a,$0832+x +0d70: c4 f2 mov $f2,a +0d72: 8f 9f f3 mov $f3,#$9f +0d75: e8 00 mov a,#$00 +0d77: d5 23 01 mov $0123+x,a +0d7a: d4 6a mov $6a+x,a +0d7c: d4 62 mov $62+x,a +0d7e: f5 5f 08 mov a,$085f+x +0d81: 04 56 or a,$56 +0d83: c4 56 mov $56,a +0d85: 1d dec x +0d86: 10 cb bpl $0d53 +0d88: 6f ret +0d89: 52 07 clr2 $07 +0d8b: 5f eb 0c jmp $0ceb +0d8e: 42 07 set2 $07 +0d90: 5f eb 0c jmp $0ceb +0d93: cb cb mov $cb,y +0d95: 8d 0e mov y,#$0e +0d97: c4 72 mov $72,a +0d99: 3f 63 10 call $1063 +0d9c: da 22 movw $22,ya +0d9e: 8d 00 mov y,#$00 +0da0: f7 22 mov a,($22)+y +0da2: c4 4d mov $4d,a +0da4: 3a 22 incw $22 +0da6: 8d 07 mov y,#$07 +0da8: f7 22 mov a,($22)+y +0daa: 24 0a and a,$0a +0dac: c4 4e mov $4e,a +0dae: 8d 06 mov y,#$06 +0db0: f7 22 mov a,($22)+y +0db2: c4 4f mov $4f,a +0db4: 8f 80 50 mov $50,#$80 +0db7: cd 07 mov x,#$07 +0db9: 3f 70 0e call $0e70 +0dbc: 10 03 bpl $0dc1 +0dbe: 5f 42 0e jmp $0e42 +0dc1: 83 08 07 bbs4 $08,$0dcb +0dc4: e8 02 mov a,#$02 +0dc6: 15 46 02 or a,$0246+x +0dc9: 2f 05 bra $0dd0 +0dcb: e8 fd mov a,#$fd +0dcd: 35 46 02 and a,$0246+x +0dd0: d5 46 02 mov $0246+x,a +0dd3: e8 80 mov a,#$80 +0dd5: d4 6a mov $6a+x,a +0dd7: e5 3e 02 mov a,$023e +0dda: d4 cf mov $cf+x,a +0ddc: e5 3f 02 mov a,$023f +0ddf: d5 92 03 mov $0392+x,a +0de2: e5 40 02 mov a,$0240 +0de5: d5 9a 03 mov $039a+x,a +0de8: e5 8e 03 mov a,$038e +0deb: c4 0d mov $0d,a +0ded: e5 90 03 mov a,$0390 +0df0: c4 0c mov $0c,a +0df2: e5 8f 03 mov a,$038f +0df5: c4 0e mov $0e,a +0df7: e5 91 03 mov a,$0391 +0dfa: c4 0f mov $0f,a +0dfc: 7d mov a,x +0dfd: 1c asl a +0dfe: fd mov y,a +0dff: e8 00 mov a,#$00 +0e01: d6 5b 01 mov $015b+y,a +0e04: d6 5c 01 mov $015c+y,a +0e07: c5 3d 02 mov $023d,a +0e0a: e5 41 02 mov a,$0241 +0e0d: d6 d7 00 mov $00d7+y,a +0e10: e5 42 02 mov a,$0242 +0e13: d6 d8 00 mov $00d8+y,a +0e16: e4 72 mov a,$72 +0e18: d5 1b 01 mov $011b+x,a +0e1b: 8d 02 mov y,#$02 +0e1d: f7 22 mov a,($22)+y +0e1f: c4 49 mov $49,a +0e21: fc inc y +0e22: f7 22 mov a,($22)+y +0e24: c4 4a mov $4a,a +0e26: 8d 04 mov y,#$04 +0e28: f7 22 mov a,($22)+y +0e2a: c4 4b mov $4b,a +0e2c: fc inc y +0e2d: f7 22 mov a,($22)+y +0e2f: c4 4c mov $4c,a +0e31: 8d 01 mov y,#$01 +0e33: f7 22 mov a,($22)+y +0e35: 2d push a +0e36: 8d 00 mov y,#$00 +0e38: f7 22 mov a,($22)+y +0e3a: 02 07 set0 $07 +0e3c: ee pop y +0e3d: 72 07 clr3 $07 +0e3f: 3f e5 0e call $0ee5 +0e42: 60 clrc +0e43: 98 08 22 adc $22,#$08 +0e46: 90 02 bcc $0e4a +0e48: ab 23 inc $23 +0e4a: 8b 4d dec $4d +0e4c: f0 03 beq $0e51 +0e4e: 5f a6 0d jmp $0da6 +0e51: e8 00 mov a,#$00 +0e53: c5 3e 02 mov $023e,a +0e56: c5 41 02 mov $0241,a +0e59: c5 42 02 mov $0242,a +0e5c: c5 40 02 mov $0240,a +0e5f: c5 8e 03 mov $038e,a +0e62: c5 90 03 mov $0390,a +0e65: c5 8f 03 mov $038f,a +0e68: c5 91 03 mov $0391,a +0e6b: 9c dec a +0e6c: c5 3f 02 mov $023f,a +0e6f: 6f ret +0e70: 8f 00 09 mov $09,#$00 +0e73: 83 09 5a bbs4 $09,$0ed0 +0e76: 8d 07 mov y,#$07 +0e78: 8f ff 3a mov $3a,#$ff +0e7b: 8f ff 3b mov $3b,#$ff +0e7e: 73 09 08 bbc3 $09,$0e89 +0e81: c8 08 cmp x,#$08 +0e83: b0 4b bcs $0ed0 +0e85: 8d 00 mov y,#$00 +0e87: 2f 09 bra $0e92 +0e89: 3f be 0b call $0bbe +0e8c: e4 50 mov a,$50 +0e8e: 24 4e and a,$4e +0e90: f0 1f beq $0eb1 +0e92: f4 6a mov a,$6a+x +0e94: f0 41 beq $0ed7 +0e96: e4 4f mov a,$4f +0e98: 03 09 06 bbs0 $09,$0ea1 +0e9b: 74 10 cmp a,$10+x +0e9d: b0 38 bcs $0ed7 +0e9f: 2f 10 bra $0eb1 +0ea1: 74 10 cmp a,$10+x +0ea3: f0 0c beq $0eb1 +0ea5: 90 0a bcc $0eb1 +0ea7: f4 10 mov a,$10+x +0ea9: 64 3b cmp a,$3b +0eab: b0 04 bcs $0eb1 +0ead: c4 3b mov $3b,a +0eaf: d8 3a mov $3a,x +0eb1: 53 09 0c bbc2 $09,$0ec0 +0eb4: 0b 50 asl $50 +0eb6: d0 05 bne $0ebd +0eb8: 8f 01 50 mov $50,#$01 +0ebb: cd ff mov x,#$ff +0ebd: 3d inc x +0ebe: 2f 0a bra $0eca +0ec0: 4b 50 lsr $50 +0ec2: d0 05 bne $0ec9 +0ec4: 8f 80 50 mov $50,#$80 +0ec7: cd 08 mov x,#$08 +0ec9: 1d dec x +0eca: dc dec y +0ecb: 10 bc bpl $0e89 +0ecd: 03 09 03 bbs0 $09,$0ed3 +0ed0: e8 ff mov a,#$ff +0ed2: 6f ret +0ed3: f8 3a mov x,$3a +0ed5: 30 f9 bmi $0ed0 +0ed7: 33 09 04 bbc1 $09,$0ede +0eda: f4 6a mov a,$6a+x +0edc: d0 f2 bne $0ed0 +0ede: e4 4f mov a,$4f +0ee0: d4 10 mov $10+x,a +0ee2: e8 00 mov a,#$00 +0ee4: 6f ret +0ee5: d8 28 mov $28,x +0ee7: d8 47 mov $47,x +0ee9: 2d push a +0eea: f5 46 02 mov a,$0246+x +0eed: 28 fe and a,#$fe +0eef: d5 46 02 mov $0246+x,a +0ef2: 63 07 08 bbs3 $07,$0efd +0ef5: f5 32 08 mov a,$0832+x +0ef8: c4 f2 mov $f2,a +0efa: 8f 9f f3 mov $f3,#$9f +0efd: dd mov a,y +0efe: d5 43 01 mov $0143+x,a +0f01: 7d mov a,x +0f02: 1c asl a +0f03: 5d mov x,a +0f04: e4 4b mov a,$4b +0f06: d5 d4 fc mov $fcd4+x,a +0f09: e4 4c mov a,$4c +0f0b: d5 d5 fc mov $fcd5+x,a +0f0e: e4 49 mov a,$49 +0f10: d4 73 mov $73+x,a +0f12: e4 4a mov a,$4a +0f14: d4 74 mov $74+x,a +0f16: ae pop a +0f17: 8d 02 mov y,#$02 +0f19: 3f 63 10 call $1063 +0f1c: da 20 movw $20,ya +0f1e: f8 47 mov x,$47 +0f20: f5 5f 08 mov a,$085f+x +0f23: c4 60 mov $60,a +0f25: 48 ff eor a,#$ff +0f27: c4 61 mov $61,a +0f29: 8d 00 mov y,#$00 +0f2b: f7 20 mov a,($20)+y +0f2d: 2d push a +0f2e: e4 cb mov a,$cb +0f30: 30 0a bmi $0f3c +0f32: ae pop a +0f33: 2d push a +0f34: 28 08 and a,#$08 +0f36: f0 04 beq $0f3c +0f38: ae pop a +0f39: 48 08 eor a,#$08 +0f3b: 2d push a +0f3c: ae pop a +0f3d: d4 62 mov $62+x,a +0f3f: c4 48 mov $48,a +0f41: 8f 2d f2 mov $f2,#$2d +0f44: 28 20 and a,#$20 +0f46: f0 05 beq $0f4d +0f48: 09 60 f3 or ($f3),($60) +0f4b: 2f 03 bra $0f50 +0f4d: 29 61 f3 and ($f3),($61) +0f50: 63 07 6a bbs3 $07,$0fbd +0f53: b0 68 bcs $0fbd +0f55: 93 48 5f bbc4 $48,$0fb7 +0f58: 13 08 05 bbc0 $08,$0f60 +0f5b: e5 06 01 mov a,$0106 +0f5e: 2f 04 bra $0f64 +0f60: 8d 05 mov y,#$05 +0f62: f7 20 mov a,($20)+y +0f64: 8d 0c mov y,#$0c +0f66: 3f 63 10 call $1063 +0f69: 8d 00 mov y,#$00 +0f6b: f6 6f 08 mov a,$086f+y +0f6e: c4 f2 mov $f2,a +0f70: f7 29 mov a,($29)+y +0f72: ad 01 cmp y,#$01 +0f74: f0 08 beq $0f7e +0f76: ad 03 cmp y,#$03 +0f78: f0 0f beq $0f89 +0f7a: ad 02 cmp y,#$02 +0f7c: d0 10 bne $0f8e +0f7e: d6 43 02 mov $0243+y,a +0f81: 65 3b 02 cmp a,$023b +0f84: 90 03 bcc $0f89 +0f86: e5 3b 02 mov a,$023b +0f89: d6 37 02 mov $0237+y,a +0f8c: 2f 02 bra $0f90 +0f8e: c4 f3 mov $f3,a +0f90: fc inc y +0f91: ad 0c cmp y,#$0c +0f93: 90 d6 bcc $0f6b +0f95: 8f 6c f2 mov $f2,#$6c +0f98: e4 f3 mov a,$f3 +0f9a: 28 20 and a,#$20 +0f9c: f0 11 beq $0faf +0f9e: e5 e1 1e mov a,$1ee1 +0fa1: 8f 6d f2 mov $f2,#$6d +0fa4: c4 f3 mov $f3,a +0fa6: 8f 6c f2 mov $f2,#$6c +0fa9: e8 df mov a,#$df +0fab: 24 f3 and a,$f3 +0fad: c4 f3 mov $f3,a +0faf: 8f 4d f2 mov $f2,#$4d +0fb2: 09 60 f3 or ($f3),($60) +0fb5: 2f 06 bra $0fbd +0fb7: 8f 4d f2 mov $f2,#$4d +0fba: 29 61 f3 and ($f3),($61) +0fbd: e4 47 mov a,$47 +0fbf: 60 clrc +0fc0: 88 00 adc a,#$00 +0fc2: c4 2d mov $2d,a +0fc4: 8d 01 mov y,#$01 +0fc6: f7 20 mov a,($20)+y +0fc8: 03 48 08 bbs0 $48,$0fd3 +0fcb: f8 47 mov x,$47 +0fcd: d5 23 01 mov $0123+x,a +0fd0: 5f de 0f jmp $0fde +0fd3: 8d 04 mov y,#$04 +0fd5: 3f 63 10 call $1063 +0fd8: fa 0d 0b mov ($0b),($0d) +0fdb: 3f cf 11 call $11cf +0fde: e4 47 mov a,$47 +0fe0: 60 clrc +0fe1: 88 08 adc a,#$08 +0fe3: c4 2d mov $2d,a +0fe5: 53 48 13 bbc2 $48,$0ffb +0fe8: 8d 03 mov y,#$03 +0fea: f7 20 mov a,($20)+y +0fec: 8d 06 mov y,#$06 +0fee: 3f 63 10 call $1063 +0ff1: fa 0e 0b mov ($0b),($0e) +0ff4: 42 08 set2 $08 +0ff6: 3f cf 11 call $11cf +0ff9: 52 08 clr2 $08 +0ffb: e4 47 mov a,$47 +0ffd: 60 clrc +0ffe: 88 18 adc a,#$18 +1000: c4 2d mov $2d,a +1002: 63 07 5b bbs3 $07,$1060 +1005: e4 cb mov a,$cb +1007: 10 07 bpl $1010 +1009: 8d 04 mov y,#$04 +100b: f7 20 mov a,($20)+y +100d: 63 48 08 bbs3 $48,$1018 +1010: f8 47 mov x,$47 +1012: d5 e4 fc mov $fce4+x,a +1015: 5f 39 10 jmp $1039 +1018: 8d 08 mov y,#$08 +101a: 3f 63 10 call $1063 +101d: fa 0f 0b mov ($0b),($0f) +1020: 3f cf 11 call $11cf +1023: eb 2d mov y,$2d +1025: f6 e3 04 mov a,$04e3+y +1028: f0 0a beq $1034 +102a: f6 c3 03 mov a,$03c3+y +102d: d0 05 bne $1034 +102f: e8 ff mov a,#$ff +1031: 5f 36 10 jmp $1036 +1034: e8 00 mov a,#$00 +1036: d6 c3 03 mov $03c3+y,a +1039: e4 47 mov a,$47 +103b: 60 clrc +103c: 88 10 adc a,#$10 +103e: c4 2d mov $2d,a +1040: 8d 02 mov y,#$02 +1042: f7 20 mov a,($20)+y +1044: 23 48 08 bbs1 $48,$104f +1047: f8 47 mov x,$47 +1049: d5 ec fc mov $fcec+x,a +104c: 5f 5a 10 jmp $105a +104f: 8d 0a mov y,#$0a +1051: 3f 63 10 call $1063 +1054: fa 0c 0b mov ($0b),($0c) +1057: 3f cf 11 call $11cf +105a: 09 60 56 or ($56),($60) +105d: 09 60 51 or ($51),($60) +1060: 72 07 clr3 $07 +1062: 6f ret +1063: 3f be 0b call $0bbe +1066: 8f 00 1f mov $1f,#$00 +1069: 1c asl a +106a: 2b 1f rol $1f +106c: 60 clrc +106d: 96 e0 1e adc a,$1ee0+y +1070: c4 1e mov $1e,a +1072: e4 1f mov a,$1f +1074: 96 e1 1e adc a,$1ee1+y +1077: c4 1f mov $1f,a +1079: 8d 01 mov y,#$01 +107b: f7 1e mov a,($1e)+y +107d: c4 2a mov $2a,a +107f: dc dec y +1080: f7 1e mov a,($1e)+y +1082: c4 29 mov $29,a +1084: eb 2a mov y,$2a +1086: 6f ret + +1087: db $0f,$00,$00,$00,$00,$00,$00,$00,$00 +1090: db $12,$16,$2e,$06,$16,$28,$16,$28,$16,$28,$16,$28,$16,$28,$04,$04,$01,$00,$ff,$05,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$09,$29,$01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 + +10c0: e8 87 mov a,#$87 +10c2: c5 20 02 mov $0220,a +10c5: c5 22 02 mov $0222,a +10c8: e8 87 mov a,#$87 +10ca: c5 21 02 mov $0221,a +10cd: c5 23 02 mov $0223,a +10d0: e8 00 mov a,#$00 +10d2: 5d mov x,a +10d3: d5 00 01 mov $0100+x,a +10d6: af mov (x)+,a +10d7: c8 f0 cmp x,#$f0 +10d9: 90 f8 bcc $10d3 +10db: 5d mov x,a +10dc: d5 00 02 mov $0200+x,a +10df: d5 00 03 mov $0300+x,a +10e2: d5 00 04 mov $0400+x,a +10e5: d5 00 05 mov $0500+x,a +10e8: d5 00 06 mov $0600+x,a +10eb: d5 00 fc mov $fc00+x,a +10ee: d5 00 fd mov $fd00+x,a +10f1: d5 00 fe mov $fe00+x,a +10f4: d5 00 ff mov $ff00+x,a +10f7: 3d inc x +10f8: d0 e2 bne $10dc +10fa: e8 ff mov a,#$ff +10fc: c4 52 mov $52,a +10fe: c4 54 mov $54,a +1100: c4 5d mov $5d,a +1102: c4 53 mov $53,a +1104: c4 58 mov $58,a +1106: c4 59 mov $59,a +1108: c4 5a mov $5a,a +110a: c5 3f 02 mov $023f,a +110d: c4 05 mov $05,a +110f: c4 06 mov $06,a +1111: c4 0a mov $0a,a +1113: 82 07 set4 $07 +1115: 6f ret +1116: cd 14 mov x,#$14 +1118: e8 00 mov a,#$00 +111a: d5 28 02 mov $0228+x,a +111d: 1d dec x +111e: 10 fa bpl $111a +1120: 8d 01 mov y,#$01 +1122: 3f 4a 07 call $074a +1125: 68 00 cmp a,#$00 +1127: d0 f7 bne $1120 +1129: 6f ret +112a: e8 7f mov a,#$7f +112c: c5 3b 02 mov $023b,a +112f: c5 3c 02 mov $023c,a +1132: 2f ec bra $1120 +1134: 3f 16 11 call $1116 +1137: cd 74 mov x,#$74 +1139: 8d 11 mov y,#$11 +113b: 3f 5d 11 call $115d +113e: e5 e1 1e mov a,$1ee1 +1141: 8f 6d f2 mov $f2,#$6d +1144: c4 f3 mov $f3,a +1146: 68 ff cmp a,#$ff +1148: f0 12 beq $115c +114a: c4 01 mov $01,a +114c: e8 00 mov a,#$00 +114e: fd mov y,a +114f: c4 00 mov $00,a +1151: d7 00 mov ($00)+y,a +1153: fe fc dbnz y,$1151 +1155: ab 01 inc $01 +1157: 78 fc 01 cmp $01,#$fc +115a: d0 f5 bne $1151 +115c: 6f ret +115d: d8 00 mov $00,x +115f: cb 01 mov $01,y +1161: 8d 00 mov y,#$00 +1163: f7 00 mov a,($00)+y +1165: 68 ff cmp a,#$ff +1167: f0 0a beq $1173 +1169: c4 f2 mov $f2,a +116b: fc inc y +116c: f7 00 mov a,($00)+y +116e: c4 f3 mov $f3,a +1170: fc inc y +1171: d0 f0 bne $1163 +1173: 6f ret + +1174: db $3d,$00,$4d,$00,$0d,$00,$7d,$00,$0f,$00,$1f,$00,$2f,$00,$3f,$00,$4f,$00,$5f,$00,$6f,$00,$7f,$00,$6d,$ff,$2c,$00,$3c,$00,$0c,$00,$1c,$00,$5d,$02,$5c,$00,$2d,$00,$04,$08,$14,$08,$24,$08,$34,$08,$44,$08,$54,$08,$64,$08,$74,$08,$07,$00,$17,$00,$27,$00,$37,$00,$47,$00,$57,$00,$67,$00,$77,$00,$05,$00,$15,$00,$25,$00,$35,$00,$45,$00,$55,$00,$65,$00,$75,$00,$7c,$00,$ff + +11cf: f8 2d mov x,$2d +11d1: 8d 07 mov y,#$07 +11d3: f7 29 mov a,($29)+y +11d5: d5 e3 04 mov $04e3+x,a +11d8: dc dec y +11d9: dc dec y +11da: f7 29 mov a,($29)+y +11dc: d5 03 04 mov $0403+x,a +11df: dc dec y +11e0: f7 29 mov a,($29)+y +11e2: d5 c3 04 mov $04c3+x,a +11e5: dc dec y +11e6: f7 29 mov a,($29)+y +11e8: d5 23 04 mov $0423+x,a +11eb: dc dec y +11ec: f7 29 mov a,($29)+y +11ee: d5 43 04 mov $0443+x,a +11f1: dc dec y +11f2: f7 29 mov a,($29)+y +11f4: d5 83 04 mov $0483+x,a +11f7: dc dec y +11f8: f7 29 mov a,($29)+y +11fa: d5 63 04 mov $0463+x,a +11fd: eb 2d mov y,$2d +11ff: e4 29 mov a,$29 +1201: 60 clrc +1202: 88 08 adc a,#$08 +1204: d6 43 05 mov $0543+y,a +1207: e4 2a mov a,$2a +1209: 88 00 adc a,#$00 +120b: d6 63 05 mov $0563+y,a +120e: f6 23 04 mov a,$0423+y +1211: cd 00 mov x,#$00 +1213: eb 0b mov y,$0b +1215: f0 23 beq $123a +1217: cf mul ya +1218: cb 3a mov $3a,y +121a: c4 3b mov $3b,a +121c: cd 05 mov x,#$05 +121e: 4b 3a lsr $3a +1220: 7c ror a +1221: 1d dec x +1222: d0 fa bne $121e +1224: eb 3a mov y,$3a +1226: ad 00 cmp y,#$00 +1228: d0 08 bne $1232 +122a: 68 00 cmp a,#$00 +122c: f0 0a beq $1238 +122e: f8 3b mov x,$3b +1230: 2f 08 bra $123a +1232: cd 01 mov x,#$01 +1234: e8 ff mov a,#$ff +1236: 2f 02 bra $123a +1238: 5d mov x,a +1239: bc inc a +123a: eb 2d mov y,$2d +123c: d6 23 04 mov $0423+y,a +123f: 7d mov a,x +1240: 48 ff eor a,#$ff +1242: 08 e0 or a,#$e0 +1244: d6 a3 03 mov $03a3+y,a +1247: e8 ff mov a,#$ff +1249: d6 e3 03 mov $03e3+y,a +124c: 3f be 0b call $0bbe +124f: 5d mov x,a +1250: f6 43 04 mov a,$0443+y +1253: fd mov y,a +1254: 7d mov a,x +1255: cf mul ya +1256: da 40 movw $40,ya +1258: 03 07 06 bbs0 $07,$1261 +125b: ba 05 movw ya,$05 +125d: da 40 movw $40,ya +125f: 2f 0a bra $126b +1261: ba 49 movw ya,$49 +1263: 9a 40 subw ya,$40 +1265: b0 02 bcs $1269 +1267: ba 49 movw ya,$49 +1269: cb 41 mov $41,y +126b: eb 2d mov y,$2d +126d: d6 83 05 mov $0583+y,a +1270: e4 41 mov a,$41 +1272: d6 a3 05 mov $05a3+y,a +1275: f6 23 04 mov a,$0423+y +1278: bc inc a +1279: d0 01 bne $127c +127b: 9c dec a +127c: d6 03 05 mov $0503+y,a +127f: 68 03 cmp a,#$03 +1281: b0 05 bcs $1288 +1283: e8 00 mov a,#$00 +1285: d6 c3 04 mov $04c3+y,a +1288: e8 01 mov a,#$01 +128a: d6 a3 04 mov $04a3+y,a +128d: 9c dec a +128e: d6 23 05 mov $0523+y,a +1291: d6 44 ff mov $ff44+y,a +1294: d6 64 ff mov $ff64+y,a +1297: c4 37 mov $37,a +1299: 5f 6e 13 jmp $136e +129c: eb 2d mov y,$2d +129e: b2 07 clr5 $07 +12a0: f6 c3 04 mov a,$04c3+y +12a3: c4 37 mov $37,a +12a5: f6 a3 04 mov a,$04a3+y +12a8: f0 42 beq $12ec +12aa: f6 a3 03 mov a,$03a3+y +12ad: 60 clrc +12ae: 96 e3 03 adc a,$03e3+y +12b1: d6 e3 03 mov $03e3+y,a +12b4: 90 18 bcc $12ce +12b6: f6 03 05 mov a,$0503+y +12b9: c4 38 mov $38,a +12bb: f0 03 beq $12c0 +12bd: 9c dec a +12be: d0 03 bne $12c3 +12c0: f6 23 04 mov a,$0423+y +12c3: d6 03 05 mov $0503+y,a +12c6: 78 02 38 cmp $38,#$02 +12c9: 90 08 bcc $12d3 +12cb: 5f 6e 13 jmp $136e +12ce: 8f 00 37 mov $37,#$00 +12d1: 2f f8 bra $12cb +12d3: eb 2d mov y,$2d +12d5: f6 23 05 mov a,$0523+y +12d8: bc inc a +12d9: 76 03 04 cmp a,$0403+y +12dc: 90 1b bcc $12f9 +12de: 9c dec a +12df: 76 83 04 cmp a,$0483+y +12e2: d0 03 bne $12e7 +12e4: 5f 68 13 jmp $1368 +12e7: e8 00 mov a,#$00 +12e9: d6 a3 04 mov $04a3+y,a +12ec: a2 07 set5 $07 +12ee: f6 24 ff mov a,$ff24+y +12f1: 2d push a +12f2: f6 04 ff mov a,$ff04+y +12f5: ee pop y +12f6: 5f 1f 14 jmp $141f +12f9: d6 23 05 mov $0523+y,a +12fc: f6 a3 05 mov a,$05a3+y +12ff: 16 83 05 or a,$0583+y +1302: f0 6a beq $136e +1304: f8 28 mov x,$28 +1306: f5 46 02 mov a,$0246+x +1309: 28 02 and a,#$02 +130b: f0 24 beq $1331 +130d: e8 01 mov a,#$01 +130f: 74 6a cmp a,$6a+x +1311: d0 03 bne $1316 +1313: 83 07 09 bbs4 $07,$131f +1316: eb 28 mov y,$28 +1318: f6 46 02 mov a,$0246+y +131b: 28 01 and a,#$01 +131d: f0 3d beq $135c +131f: e8 00 mov a,#$00 +1321: d6 73 00 mov $0073+y,a +1324: d6 74 00 mov $0074+y,a +1327: eb 2d mov y,$2d +1329: d6 83 05 mov $0583+y,a +132c: d6 a3 05 mov $05a3+y,a +132f: 2f 21 bra $1352 +1331: f6 83 05 mov a,$0583+y +1334: 80 setc +1335: b6 23 04 sbc a,$0423+y +1338: d6 83 05 mov $0583+y,a +133b: c4 40 mov $40,a +133d: f6 a3 05 mov a,$05a3+y +1340: a8 00 sbc a,#$00 +1342: b0 07 bcs $134b +1344: e8 00 mov a,#$00 +1346: d6 83 05 mov $0583+y,a +1349: c4 40 mov $40,a +134b: d6 a3 05 mov $05a3+y,a +134e: 04 40 or a,$40 +1350: d0 0a bne $135c +1352: f6 83 04 mov a,$0483+y +1355: 76 03 04 cmp a,$0403+y +1358: 90 11 bcc $136b +135a: a2 07 set5 $07 +135c: eb 2d mov y,$2d +135e: f6 23 05 mov a,$0523+y +1361: 76 83 04 cmp a,$0483+y +1364: 90 08 bcc $136e +1366: f0 06 beq $136e +1368: f6 63 04 mov a,$0463+y +136b: d6 23 05 mov $0523+y,a +136e: eb 2d mov y,$2d +1370: f8 37 mov x,$37 +1372: f0 1c beq $1390 +1374: 78 03 38 cmp $38,#$03 +1377: 90 17 bcc $1390 +1379: f6 04 ff mov a,$ff04+y +137c: c4 33 mov $33,a +137e: f6 24 ff mov a,$ff24+y +1381: c4 34 mov $34,a +1383: f6 44 ff mov a,$ff44+y +1386: c4 35 mov $35,a +1388: f6 64 ff mov a,$ff64+y +138b: c4 36 mov $36,a +138d: 5f 0d 14 jmp $140d +1390: f6 43 05 mov a,$0543+y +1393: c4 2b mov $2b,a +1395: f6 63 05 mov a,$0563+y +1398: c4 2c mov $2c,a +139a: f6 23 05 mov a,$0523+y +139d: fd mov y,a +139e: 43 08 07 bbs2 $08,$13a8 +13a1: f7 2b mov a,($2b)+y +13a3: 8d 40 mov y,#$40 +13a5: cf mul ya +13a6: 2f 10 bra $13b8 +13a8: 8d 02 mov y,#$02 +13aa: cf mul ya +13ab: 7a 2b addw ya,$2b +13ad: da 2b movw $2b,ya +13af: 8d 01 mov y,#$01 +13b1: f7 2b mov a,($2b)+y +13b3: dc dec y +13b4: 2d push a +13b5: f7 2b mov a,($2b)+y +13b7: ee pop y +13b8: f8 37 mov x,$37 +13ba: f0 55 beq $1411 +13bc: 78 02 38 cmp $38,#$02 +13bf: f0 50 beq $1411 +13c1: da 3a movw $3a,ya +13c3: eb 2d mov y,$2d +13c5: f6 24 ff mov a,$ff24+y +13c8: c4 34 mov $34,a +13ca: f6 04 ff mov a,$ff04+y +13cd: c4 33 mov $33,a +13cf: eb 34 mov y,$34 +13d1: 80 setc +13d2: 9a 3a subw ya,$3a +13d4: da 35 movw $35,ya +13d6: e8 00 mov a,#$00 +13d8: 3c rol a +13d9: c4 3a mov $3a,a +13db: d0 08 bne $13e5 +13dd: 58 ff 35 eor $35,#$ff +13e0: 58 ff 36 eor $36,#$ff +13e3: 3a 35 incw $35 +13e5: eb 2d mov y,$2d +13e7: f6 23 04 mov a,$0423+y +13ea: 5d mov x,a +13eb: ba 35 movw ya,$35 +13ed: 3f 2a 14 call $142a +13f0: c4 35 mov $35,a +13f2: d8 36 mov $36,x +13f4: 78 01 3a cmp $3a,#$01 +13f7: d0 08 bne $1401 +13f9: 58 ff 35 eor $35,#$ff +13fc: 58 ff 36 eor $36,#$ff +13ff: 3a 35 incw $35 +1401: eb 2d mov y,$2d +1403: e4 35 mov a,$35 +1405: d6 44 ff mov $ff44+y,a +1408: e4 36 mov a,$36 +140a: d6 64 ff mov $ff64+y,a +140d: ba 33 movw ya,$33 +140f: 7a 35 addw ya,$35 +1411: da 33 movw $33,ya +1413: eb 2d mov y,$2d +1415: d6 04 ff mov $ff04+y,a +1418: e4 34 mov a,$34 +141a: d6 24 ff mov $ff24+y,a +141d: ba 33 movw ya,$33 +141f: 43 08 07 bbs2 $08,$1429 +1422: cd 40 mov x,#$40 +1424: 9e div ya,x +1425: 8d 00 mov y,#$00 +1427: da 33 movw $33,ya +1429: 6f ret +142a: c8 00 cmp x,#$00 +142c: d0 04 bne $1432 +142e: 1d dec x +142f: 7d mov a,x +1430: fd mov y,a +1431: 6f ret +1432: 40 setp +1433: cb 01 mov $01,y +1435: 3e 01 cmp x,$01 +1437: f0 02 beq $143b +1439: b0 1a bcs $1455 +143b: c4 00 mov $00,a +143d: dd mov a,y +143e: 8d 00 mov y,#$00 +1440: 9e div ya,x +1441: c4 02 mov $02,a +1443: fd mov y,a +1444: 7d mov a,x +1445: cf mul ya +1446: c4 03 mov $03,a +1448: e4 01 mov a,$01 +144a: 80 setc +144b: a4 03 sbc a,$03 +144d: fd mov y,a +144e: e4 00 mov a,$00 +1450: 9e div ya,x +1451: f8 02 mov x,$02 +1453: 20 clrp +1454: 6f ret +1455: 9e div ya,x +1456: cd 00 mov x,#$00 +1458: 20 clrp +1459: 6f ret +145a: 4d push x +145b: f5 f4 fc mov a,$fcf4+x +145e: 8d 04 mov y,#$04 +1460: cf mul ya +1461: 7a 24 addw ya,$24 +1463: da 00 movw $00,ya +1465: f5 3a 08 mov a,$083a+x +1468: c4 f2 mov $f2,a +146a: 7d mov a,x +146b: 1c asl a +146c: 1c asl a +146d: 5d mov x,a +146e: f5 02 02 mov a,$0202+x +1471: c5 26 02 mov $0226,a +1474: f5 03 02 mov a,$0203+x +1477: c5 27 02 mov $0227,a +147a: 8f 09 f3 mov $f3,#$09 +147d: 8d 00 mov y,#$00 +147f: f7 00 mov a,($00)+y +1481: d5 00 02 mov $0200+x,a +1484: fc inc y +1485: f7 00 mov a,($00)+y +1487: d5 01 02 mov $0201+x,a +148a: fc inc y +148b: f7 00 mov a,($00)+y +148d: d5 02 02 mov $0202+x,a +1490: fc inc y +1491: f7 00 mov a,($00)+y +1493: d5 03 02 mov $0203+x,a +1496: 8d 01 mov y,#$01 +1498: f7 00 mov a,($00)+y +149a: c4 3d mov $3d,a +149c: dc dec y +149d: f7 00 mov a,($00)+y +149f: 80 setc +14a0: a8 03 sbc a,#$03 +14a2: c4 3c mov $3c,a +14a4: b8 00 3d sbc $3d,#$00 +14a7: f7 3c mov a,($3c)+y +14a9: c5 04 01 mov $0104,a +14ac: fc inc y +14ad: f7 3c mov a,($3c)+y +14af: c5 05 01 mov $0105,a +14b2: fc inc y +14b3: f7 3c mov a,($3c)+y +14b5: c4 5e mov $5e,a +14b7: 10 14 bpl $14cd +14b9: 28 1f and a,#$1f +14bb: 8f 6c f2 mov $f2,#$6c +14be: 38 e0 f3 and $f3,#$e0 +14c1: 04 f3 or a,$f3 +14c3: c4 f3 mov $f3,a +14c5: 8f 3d f2 mov $f2,#$3d +14c8: 09 45 f3 or ($f3),($45) +14cb: 2f 06 bra $14d3 +14cd: 8f 3d f2 mov $f2,#$3d +14d0: 29 46 f3 and ($f3),($46) +14d3: ce pop x +14d4: f5 3a 08 mov a,$083a+x +14d7: c4 f2 mov $f2,a +14d9: d8 f3 mov $f3,x +14db: 6f ret +14dc: 60 clrc +14dd: 88 a0 adc a,#$a0 +14df: 5d mov x,a +14e0: dd mov a,y +14e1: 88 05 adc a,#$05 +14e3: fd mov y,a +14e4: 7d mov a,x +14e5: ad 0a cmp y,#$0a +14e7: 90 06 bcc $14ef +14e9: d0 0a bne $14f5 +14eb: 68 50 cmp a,#$50 +14ed: b0 06 bcs $14f5 +14ef: 8f ff 5f mov $5f,#$ff +14f2: 5f 0b 15 jmp $150b +14f5: ad 80 cmp y,#$80 +14f7: 90 0f bcc $1508 +14f9: 8f 00 5f mov $5f,#$00 +14fc: 60 clrc +14fd: 88 20 adc a,#$20 +14ff: 5d mov x,a +1500: dd mov a,y +1501: 88 df adc a,#$df +1503: fd mov y,a +1504: 7d mov a,x +1505: 5f 0b 15 jmp $150b +1508: 8f 0a 5f mov $5f,#$0a +150b: cd f0 mov x,#$f0 +150d: 9e div ya,x +150e: 78 ff 5f cmp $5f,#$ff +1511: d0 02 bne $1515 +1513: c4 5f mov $5f,a +1515: f6 30 15 mov a,$1530+y +1518: c4 3a mov $3a,a +151a: f6 20 16 mov a,$1620+y +151d: c4 3b mov $3b,a +151f: e8 0a mov a,#$0a +1521: 80 setc +1522: a4 5f sbc a,$5f +1524: f0 07 beq $152d +1526: fd mov y,a +1527: 4b 3b lsr $3b +1529: 6b 3a ror $3a +152b: fe fa dbnz y,$1527 +152d: ba 3a movw ya,$3a +152f: 6f ret + +1530: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 +1620: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f +1710: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 +1730: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 + +1750: 3f c4 17 call $17c4 +1753: 8f 00 85 mov $85,#$00 +1756: e4 84 mov a,$84 +1758: f0 20 beq $177a +175a: e4 83 mov a,$83 +175c: 9c dec a +175d: c4 86 mov $86,a +175f: 3f be 0b call $0bbe +1762: f8 85 mov x,$85 +1764: f5 07 01 mov a,$0107+x +1767: 30 0a bmi $1773 +1769: 5d mov x,a +176a: c4 86 mov $86,a +176c: f5 66 03 mov a,$0366+x +176f: 5d mov x,a +1770: 1f 3d 1e jmp ($1e3d+x) +1773: ab 85 inc $85 +1775: 69 83 85 cmp ($85),($83) +1778: d0 e5 bne $175f +177a: 6f ret +177b: c4 3a mov $3a,a +177d: f6 62 00 mov a,$0062+y +1780: 28 80 and a,#$80 +1782: f0 08 beq $178c +1784: f6 10 00 mov a,$0010+y +1787: 9c dec a +1788: d6 10 00 mov $0010+y,a +178b: 6f ret +178c: f6 6a 00 mov a,$006a+y +178f: 64 3a cmp a,$3a +1791: d0 07 bne $179a +1793: f6 10 00 mov a,$0010+y +1796: 5c lsr a +1797: d6 10 00 mov $0010+y,a +179a: 6f ret +179b: f8 86 mov x,$86 +179d: 9b b2 dec $b2+x +179f: d0 d2 bne $1773 +17a1: 2f 19 bra $17bc +17a3: f8 86 mov x,$86 +17a5: 9b b2 dec $b2+x +17a7: d0 ca bne $1773 +17a9: e8 04 mov a,#$04 +17ab: d5 66 03 mov $0366+x,a +17ae: 5f a5 18 jmp $18a5 +17b1: 3f 0a 18 call $180a +17b4: e8 00 mov a,#$00 +17b6: d5 c6 02 mov $02c6+x,a +17b9: d5 da 02 mov $02da+x,a +17bc: e8 06 mov a,#$06 +17be: d5 66 03 mov $0366+x,a +17c1: 5f 3a 18 jmp $183a +17c4: d3 07 2f bbc6 $07,$17f6 +17c7: d2 07 clr6 $07 +17c9: f8 83 mov x,$83 +17cb: f0 29 beq $17f6 +17cd: e8 ff mov a,#$ff +17cf: 1d dec x +17d0: d5 07 01 mov $0107+x,a +17d3: 1d dec x +17d4: 10 fa bpl $17d0 +17d6: f8 83 mov x,$83 +17d8: 1d dec x +17d9: 8f 00 3a mov $3a,#$00 +17dc: eb 3a mov y,$3a +17de: f6 07 01 mov a,$0107+y +17e1: 30 14 bmi $17f7 +17e3: fd mov y,a +17e4: f5 b2 02 mov a,$02b2+x +17e7: 76 b2 02 cmp a,$02b2+y +17ea: b0 0b bcs $17f7 +17ec: ab 3a inc $3a +17ee: 78 14 3a cmp $3a,#$14 +17f1: d0 e9 bne $17dc +17f3: 1d dec x +17f4: 10 e3 bpl $17d9 +17f6: 6f ret +17f7: eb 3a mov y,$3a +17f9: 4d push x +17fa: 40 setp +17fb: f6 07 01 mov a,$0107+y +17fe: d9 07 mov $07+y,x +1800: 5d mov x,a +1801: fc inc y +1802: 68 ff cmp a,#$ff +1804: d0 f5 bne $17fb +1806: ce pop x +1807: 20 clrp +1808: 2f e9 bra $17f3 +180a: f5 27 06 mov a,$0627+x +180d: 30 15 bmi $1824 +180f: fd mov y,a +1810: f6 6a 00 mov a,$006a+y +1813: 68 01 cmp a,#$01 +1815: d0 0d bne $1824 +1817: e8 01 mov a,#$01 +1819: 16 46 02 or a,$0246+y +181c: d6 46 02 mov $0246+y,a +181f: e8 01 mov a,#$01 +1821: 3f 7b 17 call $177b +1824: 6f ret +1825: c4 02 mov $02,a +1827: 7d mov a,x +1828: 8d 05 mov y,#$05 +182a: cf mul ya +182b: 60 clrc +182c: 84 02 adc a,$02 +182e: fd mov y,a +182f: cb 02 mov $02,y +1831: 6f ret +1832: 01 tcall 0 +1833: 02 04 set0 $04 +1835: 08 10 or a,#$10 +1837: 20 clrp +1838: 40 setp +1839: 80 setc +183a: f8 86 mov x,$86 +183c: f5 c6 02 mov a,$02c6+x +183f: c4 3a mov $3a,a +1841: f5 da 02 mov a,$02da+x +1844: c4 3b mov $3b,a +1846: 3f 62 1a call $1a62 +1849: fd mov y,a +184a: 28 0f and a,#$0f +184c: 2d push a +184d: dd mov a,y +184e: 5c lsr a +184f: 5c lsr a +1850: 5c lsr a +1851: 5c lsr a +1852: f0 28 beq $187c +1854: 60 clrc +1855: 88 f8 adc a,#$f8 +1857: 8d 00 mov y,#$00 +1859: 68 00 cmp a,#$00 +185b: 10 01 bpl $185e +185d: dc dec y +185e: 7a 3a addw ya,$3a +1860: d5 c6 02 mov $02c6+x,a +1863: dd mov a,y +1864: d5 da 02 mov $02da+x,a +1867: 8f 00 87 mov $87,#$00 +186a: 3f 3a 19 call $193a +186d: f8 86 mov x,$86 +186f: ae pop a +1870: 68 00 cmp a,#$00 +1872: f0 c6 beq $183a +1874: d4 b2 mov $b2+x,a +1876: 3f 4b 1c call $1c4b +1879: 5f 73 17 jmp $1773 +187c: ae pop a +187d: dd mov a,y +187e: 68 00 cmp a,#$00 +1880: d0 03 bne $1885 +1882: 5f a9 17 jmp $17a9 +1885: 68 01 cmp a,#$01 +1887: d0 0b bne $1894 +1889: 3f 62 1a call $1a62 +188c: d4 b2 mov $b2+x,a +188e: 3f 4b 1c call $1c4b +1891: 5f 73 17 jmp $1773 +1894: 68 02 cmp a,#$02 +1896: d0 05 bne $189d +1898: 3f 0a 18 call $180a +189b: 2f 9d bra $183a +189d: f4 b2 mov a,$b2+x +189f: 2d push a +18a0: 3f 62 1a call $1a62 +18a3: 2f b2 bra $1857 +18a5: f8 86 mov x,$86 +18a7: f5 4e 02 mov a,$024e+x +18aa: 68 05 cmp a,#$05 +18ac: f0 1e beq $18cc +18ae: 3f 25 18 call $1825 +18b1: f6 68 fd mov a,$fd68+y +18b4: c4 00 mov $00,a +18b6: f6 04 fd mov a,$fd04+y +18b9: c4 01 mov $01,a +18bb: 8d 02 mov y,#$02 +18bd: f7 00 mov a,($00)+y +18bf: de 8a 0a cbne $8a+x,$18cc +18c2: 8d 03 mov y,#$03 +18c4: f7 00 mov a,($00)+y +18c6: de 9e 03 cbne $9e+x,$18cc +18c9: 5f 9b 1b jmp $1b9b +18cc: 3f 62 1a call $1a62 +18cf: fd mov y,a +18d0: ad e0 cmp y,#$e0 +18d2: 90 16 bcc $18ea +18d4: dd mov a,y +18d5: 28 1f and a,#$1f +18d7: 1c asl a +18d8: fd mov y,a +18d9: f6 a0 1c mov a,$1ca0+y +18dc: c5 e8 18 mov $18e8,a +18df: f6 a1 1c mov a,$1ca1+y +18e2: c5 e9 18 mov $18e9,a +18e5: eb 3a mov y,$3a +18e7: 5f 10 19 jmp $1910 +18ea: ad c0 cmp y,#$c0 +18ec: 90 06 bcc $18f4 +18ee: 80 setc +18ef: a8 bf sbc a,#$bf +18f1: 5f e4 1a jmp $1ae4 +18f4: ad 00 cmp y,#$00 +18f6: 10 06 bpl $18fe +18f8: 80 setc +18f9: a8 60 sbc a,#$60 +18fb: fd mov y,a +18fc: 2f 16 bra $1914 +18fe: 2d push a +18ff: 5c lsr a +1900: 5c lsr a +1901: 5c lsr a +1902: 80 setc +1903: a8 08 sbc a,#$08 +1905: 60 clrc +1906: 95 76 02 adc a,$0276+x +1909: fd mov y,a +190a: ae pop a +190b: 28 07 and a,#$07 +190d: bc inc a +190e: 2f 07 bra $1917 +1910: 3f 62 1a call $1a62 +1913: fd mov y,a +1914: 3f 62 1a call $1a62 +1917: 2d push a +1918: e8 00 mov a,#$00 +191a: d5 c6 02 mov $02c6+x,a +191d: d5 da 02 mov $02da+x,a +1920: dd mov a,y +1921: d5 76 02 mov $0276+x,a +1924: 8f 01 87 mov $87,#$01 +1927: f3 07 02 bbc7 $07,$192c +192a: 8b 87 dec $87 +192c: f2 07 clr7 $07 +192e: ae pop a +192f: 3f 35 19 call $1935 +1932: 5f 73 17 jmp $1773 +1935: d4 b2 mov $b2+x,a +1937: 3f 45 1c call $1c45 +193a: e4 87 mov a,$87 +193c: f0 06 beq $1944 +193e: 3f 0a 18 call $180a +1941: 73 07 16 bbc3 $07,$195a +1944: f5 27 06 mov a,$0627+x +1947: 30 0d bmi $1956 +1949: fd mov y,a +194a: 7d mov a,x +194b: 08 80 or a,#$80 +194d: 76 cf 00 cmp a,$00cf+y +1950: d0 04 bne $1956 +1952: dd mov a,y +1953: 5d mov x,a +1954: 2f 44 bra $199a +1956: ab 87 inc $87 +1958: 72 07 clr3 $07 +195a: e8 ff mov a,#$ff +195c: d5 27 06 mov $0627+x,a +195f: f5 b2 02 mov a,$02b2+x +1962: c4 4f mov $4f,a +1964: f5 eb 05 mov a,$05eb+x +1967: c4 09 mov $09,a +1969: f5 13 06 mov a,$0613+x +196c: c4 4e mov $4e,a +196e: f5 ff 05 mov a,$05ff+x +1971: 5d mov x,a +1972: f5 32 18 mov a,$1832+x +1975: c4 50 mov $50,a +1977: f5 7a 03 mov a,$037a+x +197a: 28 01 and a,#$01 +197c: d0 17 bne $1995 +197e: 3f 73 0e call $0e73 +1981: 30 12 bmi $1995 +1983: d3 09 12 bbc6 $09,$1998 +1986: 7d mov a,x +1987: 53 09 03 bbc2 $09,$198d +198a: bc inc a +198b: 2f 01 bra $198e +198d: 9c dec a +198e: 28 07 and a,#$07 +1990: d5 ff 05 mov $05ff+x,a +1993: 2f 03 bra $1998 +1995: 5f 5d 1a jmp $1a5d +1998: 7d mov a,x +1999: fd mov y,a +199a: f8 86 mov x,$86 +199c: d5 27 06 mov $0627+x,a +199f: 7d mov a,x +19a0: 08 80 or a,#$80 +19a2: d6 cf 00 mov $00cf+y,a +19a5: e4 87 mov a,$87 +19a7: f0 00 beq $19a9 +19a9: cb c6 mov $c6,y +19ab: e8 01 mov a,#$01 +19ad: d6 6a 00 mov $006a+y,a +19b0: f5 b2 02 mov a,$02b2+x +19b3: d6 10 00 mov $0010+y,a +19b6: dd mov a,y +19b7: 1c asl a +19b8: fd mov y,a +19b9: f5 ee 02 mov a,$02ee+x +19bc: d6 5b 01 mov $015b+y,a +19bf: f5 02 03 mov a,$0302+x +19c2: d6 5c 01 mov $015c+y,a +19c5: f5 76 02 mov a,$0276+x +19c8: 8d 14 mov y,#$14 +19ca: cf mul ya +19cb: 80 setc +19cc: a8 84 sbc a,#$84 +19ce: c4 4b mov $4b,a +19d0: dd mov a,y +19d1: a8 03 sbc a,#$03 +19d3: c4 4c mov $4c,a +19d5: f5 da 02 mov a,$02da+x +19d8: fd mov y,a +19d9: f5 c6 02 mov a,$02c6+x +19dc: 7a 4b addw ya,$4b +19de: da 4b movw $4b,ya +19e0: f5 4f 06 mov a,$064f+x +19e3: fd mov y,a +19e4: f5 3b 06 mov a,$063b+x +19e7: 7a 4b addw ya,$4b +19e9: 7a 5b addw ya,$5b +19eb: da 4b movw $4b,ya +19ed: dd mov a,y +19ee: eb 87 mov y,$87 +19f0: d0 13 bne $1a05 +19f2: c4 2f mov $2f,a +19f4: fa 4b 2e mov ($2e),($4b) +19f7: 8f d4 00 mov $00,#$d4 +19fa: 8f fc 01 mov $01,#$fc +19fd: 7d mov a,x +19fe: 08 80 or a,#$80 +1a00: 3f 0e 1e call $1e0e +1a03: 2f 58 bra $1a5d +1a05: f5 c3 05 mov a,$05c3+x +1a08: 10 02 bpl $1a0c +1a0a: e8 7f mov a,#$7f +1a0c: c4 c7 mov $c7,a +1a0e: e4 c6 mov a,$c6 +1a10: 1c asl a +1a11: fd mov y,a +1a12: e8 00 mov a,#$00 +1a14: 12 07 clr0 $07 +1a16: d6 d7 00 mov $00d7+y,a +1a19: d6 d8 00 mov $00d8+y,a +1a1c: e4 c6 mov a,$c6 +1a1e: fd mov y,a +1a1f: f6 46 02 mov a,$0246+y +1a22: 08 02 or a,#$02 +1a24: d6 46 02 mov $0246+y,a +1a27: e8 ff mov a,#$ff +1a29: d6 92 03 mov $0392+y,a +1a2c: f5 9e 02 mov a,$029e+x +1a2f: d6 9a 03 mov $039a+y,a +1a32: f5 16 03 mov a,$0316+x +1a35: c4 0d mov $0d,a +1a37: f5 62 02 mov a,$0262+x +1a3a: c5 3d 02 mov $023d,a +1a3d: f5 3e 03 mov a,$033e+x +1a40: c4 0c mov $0c,a +1a42: f5 52 03 mov a,$0352+x +1a45: c4 0f mov $0f,a +1a47: f5 2a 03 mov a,$032a+x +1a4a: c4 0e mov $0e,a +1a4c: eb c7 mov y,$c7 +1a4e: f5 8a 02 mov a,$028a+x +1a51: cf mul ya +1a52: f5 d7 05 mov a,$05d7+x +1a55: f8 c6 mov x,$c6 +1a57: 8f ff cb mov $cb,#$ff +1a5a: 3f e5 0e call $0ee5 +1a5d: ab 87 inc $87 +1a5f: 72 07 clr3 $07 +1a61: 6f ret +1a62: 3f be 0b call $0bbe +1a65: f8 86 mov x,$86 +1a67: f4 8a mov a,$8a+x +1a69: c5 72 1a mov $1a72,a +1a6c: f4 9e mov a,$9e+x +1a6e: c5 73 1a mov $1a73,a +1a71: e5 4d ba mov a,$ba4d +1a74: bb 8a inc $8a+x +1a76: d0 02 bne $1a7a +1a78: bb 9e inc $9e+x +1a7a: 6f ret +1a7b: 3f 62 1a call $1a62 +1a7e: c4 0a mov $0a,a +1a80: 2f 09 bra $1a8b +1a82: e8 08 mov a,#$08 +1a84: d5 eb 05 mov $05eb+x,a +1a87: 7d mov a,x +1a88: d5 ff 05 mov $05ff+x,a +1a8b: 5f a5 18 jmp $18a5 +1a8e: 3f 62 1a call $1a62 +1a91: d5 eb 05 mov $05eb+x,a +1a94: 3f 62 1a call $1a62 +1a97: d5 ff 05 mov $05ff+x,a +1a9a: 3f 62 1a call $1a62 +1a9d: d5 13 06 mov $0613+x,a +1aa0: 2f e9 bra $1a8b +1aa2: 3f 0a 18 call $180a +1aa5: e8 00 mov a,#$00 +1aa7: d5 66 03 mov $0366+x,a +1aaa: 8b 84 dec $84 +1aac: 5f 73 17 jmp $1773 +1aaf: f5 c3 05 mov a,$05c3+x +1ab2: 3f ba 1a call $1aba +1ab5: d5 c3 05 mov $05c3+x,a +1ab8: 2f d1 bra $1a8b +1aba: 4d push x +1abb: fd mov y,a +1abc: 6d push y +1abd: 3f 62 1a call $1a62 +1ac0: cf mul ya +1ac1: da 3a movw $3a,ya +1ac3: ee pop y +1ac4: 3f 62 1a call $1a62 +1ac7: cf mul ya +1ac8: 6d push y +1ac9: 0b 3a asl $3a +1acb: 84 3b adc a,$3b +1acd: 5d mov x,a +1ace: ae pop a +1acf: 88 00 adc a,#$00 +1ad1: fd mov y,a +1ad2: d0 03 bne $1ad7 +1ad4: 7d mov a,x +1ad5: 10 02 bpl $1ad9 +1ad7: e8 7f mov a,#$7f +1ad9: ce pop x +1ada: 6f ret +1adb: 3f 62 1a call $1a62 +1ade: d5 c3 05 mov $05c3+x,a +1ae1: 5f a5 18 jmp $18a5 +1ae4: 2d push a +1ae5: 3f 0a 18 call $180a +1ae8: ae pop a +1ae9: d4 b2 mov $b2+x,a +1aeb: 3f 45 1c call $1c45 +1aee: 5f 73 17 jmp $1773 +1af1: e8 40 mov a,#$40 +1af3: 2f f4 bra $1ae9 +1af5: e8 20 mov a,#$20 +1af7: 2f f0 bra $1ae9 +1af9: e8 80 mov a,#$80 +1afb: 2f ec bra $1ae9 +1afd: e8 00 mov a,#$00 +1aff: 2f e8 bra $1ae9 +1b01: 3f 62 1a call $1a62 +1b04: d5 d7 05 mov $05d7+x,a +1b07: f5 4e 02 mov a,$024e+x +1b0a: 68 05 cmp a,#$05 +1b0c: f0 2b beq $1b39 +1b0e: 3f 25 18 call $1825 +1b11: f6 68 fd mov a,$fd68+y +1b14: c4 00 mov $00,a +1b16: f6 04 fd mov a,$fd04+y +1b19: c4 01 mov $01,a +1b1b: f6 04 fc mov a,$fc04+y +1b1e: 8d 09 mov y,#$09 +1b20: 77 00 cmp a,($00)+y +1b22: 90 02 bcc $1b26 +1b24: e8 00 mov a,#$00 +1b26: bc inc a +1b27: eb 02 mov y,$02 +1b29: d6 04 fc mov $fc04+y,a +1b2c: 60 clrc +1b2d: 88 09 adc a,#$09 +1b2f: fd mov y,a +1b30: f7 00 mov a,($00)+y +1b32: 68 ff cmp a,#$ff +1b34: f0 03 beq $1b39 +1b36: d5 d7 05 mov $05d7+x,a +1b39: 5f a5 18 jmp $18a5 +1b3c: f5 4e 02 mov a,$024e+x +1b3f: 9c dec a +1b40: d5 4e 02 mov $024e+x,a +1b43: 3f 25 18 call $1825 +1b46: f4 8a mov a,$8a+x +1b48: d6 68 fd mov $fd68+y,a +1b4b: f4 9e mov a,$9e+x +1b4d: d6 04 fd mov $fd04+y,a +1b50: e8 00 mov a,#$00 +1b52: d6 68 fc mov $fc68+y,a +1b55: 3f 62 1a call $1a62 +1b58: 2d push a +1b59: 3f 67 1a call $1a67 +1b5c: 2d push a +1b5d: 3f 67 1a call $1a67 +1b60: 3f 67 1a call $1a67 +1b63: 3f 67 1a call $1a67 +1b66: 3f 67 1a call $1a67 +1b69: fd mov y,a +1b6a: 3f 67 1a call $1a67 +1b6d: 2d push a +1b6e: dd mov a,y +1b6f: 60 clrc +1b70: 95 3b 06 adc a,$063b+x +1b73: d5 3b 06 mov $063b+x,a +1b76: ae pop a +1b77: 95 4f 06 adc a,$064f+x +1b7a: d5 4f 06 mov $064f+x,a +1b7d: f5 c3 05 mov a,$05c3+x +1b80: eb 02 mov y,$02 +1b82: d6 04 fe mov $fe04+y,a +1b85: 3f ba 1a call $1aba +1b88: d5 c3 05 mov $05c3+x,a +1b8b: eb 02 mov y,$02 +1b8d: e8 00 mov a,#$00 +1b8f: d6 04 fc mov $fc04+y,a +1b92: ae pop a +1b93: d4 9e mov $9e+x,a +1b95: ae pop a +1b96: d4 8a mov $8a+x,a +1b98: 5f a5 18 jmp $18a5 +1b9b: eb 02 mov y,$02 +1b9d: f6 68 fc mov a,$fc68+y +1ba0: bc inc a +1ba1: d6 68 fc mov $fc68+y,a +1ba4: 8d 04 mov y,#$04 +1ba6: f7 00 mov a,($00)+y +1ba8: f0 07 beq $1bb1 +1baa: eb 02 mov y,$02 +1bac: 76 68 fc cmp a,$fc68+y +1baf: f0 0f beq $1bc0 +1bb1: 8d 00 mov y,#$00 +1bb3: f7 00 mov a,($00)+y +1bb5: d4 8a mov $8a+x,a +1bb7: 8d 01 mov y,#$01 +1bb9: f7 00 mov a,($00)+y +1bbb: d4 9e mov $9e+x,a +1bbd: 5f cc 18 jmp $18cc +1bc0: f5 3b 06 mov a,$063b+x +1bc3: 80 setc +1bc4: 8d 05 mov y,#$05 +1bc6: b7 00 sbc a,($00)+y +1bc8: d5 3b 06 mov $063b+x,a +1bcb: f5 4f 06 mov a,$064f+x +1bce: 8d 06 mov y,#$06 +1bd0: b7 00 sbc a,($00)+y +1bd2: d5 4f 06 mov $064f+x,a +1bd5: eb 02 mov y,$02 +1bd7: f6 04 fe mov a,$fe04+y +1bda: d5 c3 05 mov $05c3+x,a +1bdd: e4 00 mov a,$00 +1bdf: 60 clrc +1be0: 88 0a adc a,#$0a +1be2: d4 8a mov $8a+x,a +1be4: e4 01 mov a,$01 +1be6: 88 00 adc a,#$00 +1be8: d4 9e mov $9e+x,a +1bea: 8d 09 mov y,#$09 +1bec: f7 00 mov a,($00)+y +1bee: 60 clrc +1bef: 94 8a adc a,$8a+x +1bf1: d4 8a mov $8a+x,a +1bf3: f4 9e mov a,$9e+x +1bf5: 88 00 adc a,#$00 +1bf7: d4 9e mov $9e+x,a +1bf9: f5 4e 02 mov a,$024e+x +1bfc: bc inc a +1bfd: d5 4e 02 mov $024e+x,a +1c00: 5f a5 18 jmp $18a5 +1c03: 3f 0a 18 call $180a +1c06: 2f 03 bra $1c0b +1c08: 3f 25 1d call $1d25 +1c0b: 5f a5 18 jmp $18a5 +1c0e: 3f 62 1a call $1a62 +1c11: c4 c9 mov $c9,a +1c13: 2f f6 bra $1c0b +1c15: 3f 62 1a call $1a62 +1c18: d5 9e 02 mov $029e+x,a +1c1b: 2f ee bra $1c0b +1c1d: 3f 62 1a call $1a62 +1c20: d5 ee 02 mov $02ee+x,a +1c23: 3f 62 1a call $1a62 +1c26: d5 02 03 mov $0302+x,a +1c29: 2f e0 bra $1c0b +1c2b: 3f 62 1a call $1a62 +1c2e: d5 b2 02 mov $02b2+x,a +1c31: c2 07 set6 $07 +1c33: 2f d6 bra $1c0b +1c35: 3f 62 1a call $1a62 +1c38: d5 8a 02 mov $028a+x,a +1c3b: 2f ce bra $1c0b +1c3d: 62 07 set3 $07 +1c3f: 2f ca bra $1c0b +1c41: e2 07 set7 $07 +1c43: 2f c6 bra $1c0b +1c45: e8 02 mov a,#$02 +1c47: d5 66 03 mov $0366+x,a +1c4a: 6f ret +1c4b: e8 08 mov a,#$08 +1c4d: d5 66 03 mov $0366+x,a +1c50: 6f ret +1c51: 78 80 c8 cmp $c8,#$80 +1c54: 90 08 bcc $1c5e +1c56: 60 clrc +1c57: 84 c8 adc a,$c8 +1c59: 10 09 bpl $1c64 +1c5b: e8 00 mov a,#$00 +1c5d: 6f ret +1c5e: 84 c8 adc a,$c8 +1c60: 10 02 bpl $1c64 +1c62: e8 7f mov a,#$7f +1c64: 6f ret +1c65: 3f 62 1a call $1a62 +1c68: d5 16 03 mov $0316+x,a +1c6b: 2f 9e bra $1c0b +1c6d: 3f 62 1a call $1a62 +1c70: d5 62 02 mov $0262+x,a +1c73: 2f 96 bra $1c0b +1c75: 3f 62 1a call $1a62 +1c78: d5 52 03 mov $0352+x,a +1c7b: 2f 8e bra $1c0b +1c7d: 3f 62 1a call $1a62 +1c80: d5 2a 03 mov $032a+x,a +1c83: 2f f6 bra $1c7b +1c85: 3f 62 1a call $1a62 +1c88: d5 3e 03 mov $033e+x,a +1c8b: 2f ee bra $1c7b +1c8d: 3f 46 1d call $1d46 +1c90: 2f e9 bra $1c7b +1c92: 3f 62 1a call $1a62 +1c95: d5 3b 06 mov $063b+x,a +1c98: 3f 62 1a call $1a62 +1c9b: d5 4f 06 mov $064f+x,a +1c9e: 2f db bra $1c7b + +1ca0: $1d,$1c,$65,$1c,$75,$1c,$85,$1c,$7d,$1c,$8e,$1a,$82,$1a,$8d,$1c,$00,$00,$7b,$1a,$03,$1c,$b4,$17,$b1,$17,$35,$1c,$e2,$1c,$10,$19,$a2,$1a,$af,$1a,$db,$1a,$2b,$1c,$41,$1c,$01,$1b,$3c,$1b,$92,$1c,$f5,$1a,$08,$1c,$0e,$1c,$15,$1c,$3d,$1c,$f1,$1a,$f9,$1a,$fd,$1a,$6d,$1c + +1ce2: 3f 62 1a call $1a62 +1ce5: dd mov a,y +1ce6: 1c asl a +1ce7: fd mov y,a +1ce8: f6 e0 1c mov a,$1ce0+y +1ceb: c5 f7 1c mov $1cf7,a +1cee: f6 e1 1c mov a,$1ce1+y +1cf1: c5 f8 1c mov $1cf8,a +1cf4: eb 3a mov y,$3a +1cf6: 5f f6 1c jmp $1cf6 +1cf9: 2d push a +1cfa: 3f 40 0d call $0d40 +1cfd: ae pop a +1cfe: 92 07 clr4 $07 +1d00: 8d 1a mov y,#$1a +1d02: 3f 63 10 call $1063 +1d05: da 88 movw $88,ya +1d07: 8d 00 mov y,#$00 +1d09: f7 88 mov a,($88)+y +1d0b: c4 83 mov $83,a +1d0d: c4 84 mov $84,a +1d0f: f0 13 beq $1d24 +1d11: cb 86 mov $86,y +1d13: 3f 25 1d call $1d25 +1d16: ab 86 inc $86 +1d18: e8 00 mov a,#$00 +1d1a: f8 86 mov x,$86 +1d1c: d5 7a 03 mov $037a+x,a +1d1f: 69 83 86 cmp ($86),($83) +1d22: d0 ef bne $1d13 +1d24: 6f ret +1d25: eb 86 mov y,$86 +1d27: fc inc y +1d28: f7 88 mov a,($88)+y +1d2a: 8d 10 mov y,#$10 +1d2c: 3f 63 10 call $1063 +1d2f: f8 86 mov x,$86 +1d31: d4 8a mov $8a+x,a +1d33: dd mov a,y +1d34: d4 9e mov $9e+x,a +1d36: e8 ff mov a,#$ff +1d38: c4 ca mov $ca,a +1d3a: c4 0a mov $0a,a +1d3c: e8 05 mov a,#$05 +1d3e: d5 4e 02 mov $024e+x,a +1d41: e8 04 mov a,#$04 +1d43: d5 66 03 mov $0366+x,a +1d46: 72 07 clr3 $07 +1d48: f2 07 clr7 $07 +1d4a: f8 86 mov x,$86 +1d4c: e8 08 mov a,#$08 +1d4e: d5 eb 05 mov $05eb+x,a +1d51: 7d mov a,x +1d52: d5 ff 05 mov $05ff+x,a +1d55: e8 00 mov a,#$00 +1d57: d5 76 02 mov $0276+x,a +1d5a: d5 c6 02 mov $02c6+x,a +1d5d: d5 da 02 mov $02da+x,a +1d60: d5 3b 06 mov $063b+x,a +1d63: d5 4f 06 mov $064f+x,a +1d66: d5 ee 02 mov $02ee+x,a +1d69: d5 02 03 mov $0302+x,a +1d6c: d5 16 03 mov $0316+x,a +1d6f: d5 62 02 mov $0262+x,a +1d72: d5 52 03 mov $0352+x,a +1d75: d5 3e 03 mov $033e+x,a +1d78: d5 2a 03 mov $032a+x,a +1d7b: d5 9e 02 mov $029e+x,a +1d7e: 9c dec a +1d7f: d5 27 06 mov $0627+x,a +1d82: d5 8a 02 mov $028a+x,a +1d85: e8 40 mov a,#$40 +1d87: d5 b2 02 mov $02b2+x,a +1d8a: e8 7f mov a,#$7f +1d8c: d5 c3 05 mov $05c3+x,a +1d8f: c2 07 set6 $07 +1d91: 8f 6a 00 mov $00,#$6a +1d94: 8f 00 01 mov $01,#$00 +1d97: 7d mov a,x +1d98: 08 80 or a,#$80 +1d9a: 8d 00 mov y,#$00 +1d9c: 5f dd 1d jmp $1ddd +1d9f: c4 59 mov $59,a +1da1: 6f ret +1da2: c4 5a mov $5a,a +1da4: 6f ret +1da5: da 5b movw $5b,ya +1da7: 6f ret +1da8: da 2e movw $2e,ya +1daa: 6f ret +1dab: c4 fb mov $fb,a +1dad: 6f ret +1dae: 28 7f and a,#$7f +1db0: c5 3e 02 mov $023e,a +1db3: 6f ret +1db4: 12 08 clr0 $08 +1db6: c5 06 01 mov $0106,a +1db9: 68 ff cmp a,#$ff +1dbb: f0 02 beq $1dbf +1dbd: 02 08 set0 $08 +1dbf: 6f ret +1dc0: c5 3f 02 mov $023f,a +1dc3: 6f ret +1dc4: c5 40 02 mov $0240,a +1dc7: 6f ret +1dc8: c5 41 02 mov $0241,a +1dcb: cc 42 02 mov $0242,y +1dce: 6f ret +1dcf: 8f 9a 00 mov $00,#$9a +1dd2: 8f 03 01 mov $01,#$03 +1dd5: 2f 06 bra $1ddd +1dd7: 8f 92 00 mov $00,#$92 +1dda: 8f 03 01 mov $01,#$03 +1ddd: c4 3a mov $3a,a +1ddf: dd mov a,y +1de0: 5d mov x,a +1de1: e8 07 mov a,#$07 +1de3: fd mov y,a +1de4: f6 cf 00 mov a,$00cf+y +1de7: 2e 3a 03 cbne $3a,$1ded +1dea: 7d mov a,x +1deb: d7 00 mov ($00)+y,a +1ded: dc dec y +1dee: 10 f4 bpl $1de4 +1df0: 6f ret +1df1: 28 7f and a,#$7f +1df3: c4 3a mov $3a,a +1df5: cd 07 mov x,#$07 +1df7: f4 cf mov a,$cf+x +1df9: 2e 3a 08 cbne $3a,$1e04 +1dfc: f5 46 02 mov a,$0246+x +1dff: 08 03 or a,#$03 +1e01: d5 46 02 mov $0246+x,a +1e04: 1d dec x +1e05: 10 f0 bpl $1df7 +1e07: 6f ret +1e08: 8f d7 00 mov $00,#$d7 +1e0b: 8f 00 01 mov $01,#$00 +1e0e: c4 3a mov $3a,a +1e10: e8 0f mov a,#$0f +1e12: fd mov y,a +1e13: e8 07 mov a,#$07 +1e15: 5d mov x,a +1e16: f4 cf mov a,$cf+x +1e18: 2e 3a 0a cbne $3a,$1e25 +1e1b: e4 2f mov a,$2f +1e1d: d7 00 mov ($00)+y,a +1e1f: dc dec y +1e20: e4 2e mov a,$2e +1e22: d7 00 mov ($00)+y,a +1e24: fc inc y +1e25: dc dec y +1e26: dc dec y +1e27: 1d dec x +1e28: 10 ec bpl $1e16 +1e2a: 6f ret +1e2b: 5d mov x,a +1e2c: e8 01 mov a,#$01 +1e2e: 15 7a 03 or a,$037a+x +1e31: d5 7a 03 mov $037a+x,a +1e34: 6f ret +1e35: 5d mov x,a +1e36: e8 fe mov a,#$fe +1e38: 35 7a 03 and a,$037a+x +1e3b: 2f f4 bra $1e31 + +1e3d: dw $1773,$17a3,$18a5,$183a,$179b,$0cd2,$0d03,$0d0b,$0cf7,$1df1,$0000,$07dd,$0d89,$0ce5,$0cdf,$0cdb,$0000,$0d40,$0d42,$0000,$0000,$0000,$0d8e,$0d93,$1d9f,$1dab,$1da5,$1da2,$1dc8,$1dae,$1dc0,$1dd7,$1da8,$1e08,$1dc4,$1dcf,$1db4,$1e2b,$1e35 + +;Uncompiled source code +1e8b: db $0a,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$62,$72,$61,$20,$54,$4e,$4d,$65,$6c,$0d,$0a,$0d,$0a,$4d,$65,$6c,$6f,$64,$79,$5f,$53,$65,$74,$53,$74,$65,$72,$65,$6f,$41,$72,$74,$0d,$0a,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$63,$61,$6c,$6c,$20,$20,$46,$65,$74,$63,$68,$5f,$4d,$65,$6c,$20 \ No newline at end of file diff --git a/snes/Sculptured Software/WWF Super WrestleMania ($0700).bin b/snes/Sculptured Software/WWF Super WrestleMania ($0700).bin new file mode 100644 index 0000000000000000000000000000000000000000..91a37fba324436168db3b5d38523ac8390c89480 GIT binary patch literal 4306 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 ZYD Date: Fri, 23 May 2025 21:07:37 -0700 Subject: [PATCH 002/116] Add files via upload Fix for Pink Panther and added 1 more game. --- .../Pink Panther in Pink Goes to Hollywood.s | 8 +- ...Wars - The Empire Strikes Back ($0700).bin | Bin 0 -> 4742 bytes ...uper Star Wars - The Empire Strikes Back.s | 1912 +++++++++++++++++ 3 files changed, 1915 insertions(+), 5 deletions(-) create mode 100644 snes/Sculptured Software/Super Star Wars - The Empire Strikes Back ($0700).bin create mode 100644 snes/Sculptured Software/Super Star Wars - The Empire Strikes Back.s diff --git a/snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s b/snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s index 90b496bf..d0d37a6a 100644 --- a/snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s +++ b/snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s @@ -1610,11 +1610,9 @@ 16f6: f8 5d mov x,$5d 16f8: d5 a0 05 mov $05a0+x,a 16fb: 5f 87 16 jmp $1687 -16fe: 99 adc (x),(y) -16ff: 16 a4 16 or a,$16a4+y -1702: b3 16 be bbc5 $16,$16c3 -1705: 16 cf 16 or a,$16cf+y -1708: e7 16 mov a,($16+x) + +16fe: dw $1687, $1699, $16a4, $16b3, $16be, $16cf, $16e7 + 170a: 8d 93 mov y,#$93 170c: f9 5a mov x,$5a+y 170e: f6 b7 05 mov a,$05b7+y diff --git a/snes/Sculptured Software/Super Star Wars - The Empire Strikes Back ($0700).bin b/snes/Sculptured Software/Super Star Wars - The Empire Strikes Back ($0700).bin new file mode 100644 index 0000000000000000000000000000000000000000..b01281c23b8b09d6f5cb145993dadc7b08a0fe37 GIT binary patch literal 4742 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 Date: Sun, 1 Jun 2025 19:51:19 -0700 Subject: [PATCH 003/116] Add files via upload Same fix applied to Super Star Wars 1. --- snes/Sculptured Software/Super Star Wars.s | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/snes/Sculptured Software/Super Star Wars.s b/snes/Sculptured Software/Super Star Wars.s index 3404e410..7f1d68ae 100644 --- a/snes/Sculptured Software/Super Star Wars.s +++ b/snes/Sculptured Software/Super Star Wars.s @@ -1454,6 +1454,7 @@ 157e: f5 88 05 mov a,$0588+x 1581: c4 60 mov $60,a 1583: 5f d6 13 jmp $13d6 + 1586: e4 00 mov a,$00 1588: 1c asl a 1589: 44 00 eor a,$00 @@ -1468,6 +1469,7 @@ 1597: 3f 9e 15 call $159e 159a: 5d mov x,a 159b: 1f 6f 16 jmp ($166f+x) + 159e: f8 5e mov x,$5e 15a0: e7 7b mov a,($7b+x) 15a2: bb 7b inc $7b+x @@ -1607,11 +1609,9 @@ 16f6: f8 5d mov x,$5d 16f8: d5 a0 05 mov $05a0+x,a 16fb: 5f 87 16 jmp $1687 -16fe: 99 adc (x),(y) -16ff: 16 a4 16 or a,$16a4+y -1702: b3 16 be bbc5 $16,$16c3 -1705: 16 cf 16 or a,$16cf+y -1708: e7 16 mov a,($16+x) + +16fc: dw $1699,$16a4,$16b3,$16be,$16cf,$16e7 + 170a: 8d 93 mov y,#$93 170c: f9 5a mov x,$5a+y 170e: f6 b7 05 mov a,$05b7+y From 1af7027819198a264de05ce65f1782eb24c19aa5 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sun, 1 Jun 2025 20:03:02 -0700 Subject: [PATCH 004/116] Add files via upload Another fix. --- snes/Sculptured Software/The Jungle Book.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/snes/Sculptured Software/The Jungle Book.s b/snes/Sculptured Software/The Jungle Book.s index 3ffac981..7bfc8f4c 100644 --- a/snes/Sculptured Software/The Jungle Book.s +++ b/snes/Sculptured Software/The Jungle Book.s @@ -2214,7 +2214,7 @@ 1c9b: d5 4f 06 mov $064f+x,a 1c9e: 2f db bra $1c7b -1ca0: $1d,$1c,$65,$1c,$75,$1c,$85,$1c,$7d,$1c,$8e,$1a,$82,$1a,$8d,$1c,$00,$00,$7b,$1a,$03,$1c,$b4,$17,$b1,$17,$35,$1c,$e2,$1c,$10,$19,$a2,$1a,$af,$1a,$db,$1a,$2b,$1c,$41,$1c,$01,$1b,$3c,$1b,$92,$1c,$f5,$1a,$08,$1c,$0e,$1c,$15,$1c,$3d,$1c,$f1,$1a,$f9,$1a,$fd,$1a,$6d,$1c +1ca0: dw $1c1d,$1c65,$1c75,$1c85,$1c7d,$1a8e,$1a82,$1c8d,$0000,$1a7b,$1c03,$17b4,$17b1,$1c35,$1ce2,$1910,$1aa2,$1aaf,$1adb,$1c2b,$1c41,$1b01,$1b3c,$1c92,$1af5,$1c08,$1c0e,$1c15,$1c3d,$1af1,$1af9,$1afd,$1c6d 1ce2: 3f 62 1a call $1a62 1ce5: dd mov a,y From 09514054093c7b20ed83337d5735bd74caac9d56 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Mon, 2 Jun 2025 18:09:35 -0700 Subject: [PATCH 005/116] Add files via upload Even more fixes. --- snes/Sculptured Software/The Jungle Book.s | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/snes/Sculptured Software/The Jungle Book.s b/snes/Sculptured Software/The Jungle Book.s index 7bfc8f4c..b9d629f9 100644 --- a/snes/Sculptured Software/The Jungle Book.s +++ b/snes/Sculptured Software/The Jungle Book.s @@ -1693,12 +1693,9 @@ 182e: fd mov y,a 182f: cb 02 mov $02,y 1831: 6f ret -1832: 01 tcall 0 -1833: 02 04 set0 $04 -1835: 08 10 or a,#$10 -1837: 20 clrp -1838: 40 setp -1839: 80 setc + +1832: db $01,$02,$04,$08,$10,$20,$40,$80 + 183a: f8 86 mov x,$86 183c: f5 c6 02 mov a,$02c6+x 183f: c4 3a mov $3a,a From 62a991721751feabdd2889c88d2746df9c2b1162 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:43:32 -0700 Subject: [PATCH 006/116] Add files via upload Cleaned up disassembly and added some comments. Also added Return of the Jedi. --- Mortal Kombat 3.s | 2646 +++++++++++++++++ Pink Panther in Pink Goes to Hollywood.s | 1879 ++++++++++++ ...o's Modern Life - Spunky's Dangerous Day.s | 2094 +++++++++++++ ...Star Wars - Return of the Jedi ($0700).bin | Bin 0 -> 6100 bytes Super Star Wars - Return of the Jedi.s | 2634 ++++++++++++++++ Super Star Wars - The Empire Strikes Back.s | 2039 +++++++++++++ Super Star Wars.s | 1876 ++++++++++++ The Jungle Book.s | 2644 ++++++++++++++++ WWF Super WrestleMania.s | 1897 ++++++++++++ 9 files changed, 17709 insertions(+) create mode 100644 Mortal Kombat 3.s create mode 100644 Pink Panther in Pink Goes to Hollywood.s create mode 100644 Rocko's Modern Life - Spunky's Dangerous Day.s create mode 100644 Super Star Wars - Return of the Jedi ($0700).bin create mode 100644 Super Star Wars - Return of the Jedi.s create mode 100644 Super Star Wars - The Empire Strikes Back.s create mode 100644 Super Star Wars.s create mode 100644 The Jungle Book.s create mode 100644 WWF Super WrestleMania.s diff --git a/Mortal Kombat 3.s b/Mortal Kombat 3.s new file mode 100644 index 00000000..dfb35fc3 --- /dev/null +++ b/Mortal Kombat 3.s @@ -0,0 +1,2646 @@ +0700: 20 clrp +0701: cd ff mov x,#$ff ; set stack pointer +0703: bd mov sp,x +0704: 8f a0 fa mov $fa,#$a0 ; stop all timers +0707: 8f a0 fb mov $fb,#$a0 +070a: 8f 20 fc mov $fc,#$20 +070d: 8f 87 f1 mov $f1,#$87 ; clear COM ports +0710: 3f 9f 10 call $109f ; initialize all sound +0713: 8f 00 24 mov $24,#$00 +0716: 8f 1f 25 mov $25,#$1f ; install permanent pointer to the wave source dir +0719: 8f 01 f6 mov $f6,#$01 +071c: 62 08 set3 $08 +071e: 3f f3 0b call $0bf3 +0721: 3f 63 0b call $0b63 +0724: 33 07 f7 bbc1 $07,$071e +0727: 8d 10 mov y,#$10 +0729: 3f 4a 07 call $074a +072c: 83 07 12 bbs4 $07,$0741 +072f: e4 fe mov a,$fe +0731: f0 0e beq $0741 +0733: e4 cd mov a,$cd +0735: f0 07 beq $073e +0737: 60 clrc +0738: 84 ce adc a,$ce +073a: c4 ce mov $ce,a +073c: 90 03 bcc $0741 +073e: 3f f0 16 call $16f0 +0741: e4 fd mov a,$fd +0743: f0 d9 beq $071e +0745: 3f 30 08 call $0830 +0748: 2f d4 bra $071e +074a: e4 ff mov a,$ff +074c: d0 03 bne $0751 +074e: e8 01 mov a,#$01 +0750: 6f ret + +0751: cb 3b mov $3b,y +0753: 8f 00 3a mov $3a,#$00 +0756: cd 14 mov x,#$14 +0758: e4 f6 mov a,$f6 +075a: f0 03 beq $075f +075c: 3f f3 0b call $0bf3 +075f: eb 3b mov y,$3b +0761: f5 ff 07 mov a,$07ff+x +0764: c4 f2 mov $f2,a +0766: f5 28 02 mov a,$0228+x +0769: fa f3 3c mov ($3c),($f3) +076c: 64 3c cmp a,$3c +076e: f0 0f beq $077f +0770: b0 09 bcs $077b +0772: 8b 3c dec $3c +0774: dc dec y +0775: d0 f5 bne $076c +0777: ab 3a inc $3a +0779: 2f 04 bra $077f +077b: ab 3c inc $3c +077d: 2f f5 bra $0774 +077f: fa 3c f3 mov ($f3),($3c) +0782: 1d dec x +0783: 10 d3 bpl $0758 +0785: e4 3a mov a,$3a +0787: 6f ret + +0788: e2 08 set7 $08 +078a: 2f 02 bra $078e +078c: f2 08 clr7 $08 +078e: 72 08 clr3 $08 +0790: 8d 80 mov y,#$80 +0792: 3f 52 0d call $0d52 +0795: 3f ed 10 call $10ed +0798: 8f 6c f2 mov $f2,#$6c +079b: 8f 3f f3 mov $f3,#$3f +079e: e3 08 0f bbs7 $08,$07b0 +07a1: cd 00 mov x,#$00 +07a3: f5 80 fe mov a,$fe80+x +07a6: af mov (x)+,a +07a7: c8 61 cmp x,#$61 +07a9: 90 f8 bcc $07a3 +07ab: 5f 00 00 jmp $0000 + +07ae: 4f c0 pcall $c0 +07b0: 5f 00 07 jmp $0700 + +; gain tables +07b3: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 +07c9: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 + +; DSP registers: VxENVX +07df: db $08,$18,$28,$38,$48,$58,$68,$78 +; DSP registers: VxGAIN +07e7: db $07,$17,$27,$37,$47,$57,$67,$77 +; DSP registers: VxSCRN (select sample) +07ef: db $04,$14,$24,$34,$44,$54,$64,$74 +; DSP registers: VxPITCHL +07f7: db $02,$12,$22,$32,$42,$52,$62,$72 +; DSP registers: VxVOLL +07ff: db $00,$10,$20,$30,$40,$50,$60,$70,$01,$11,$21,$31,$41,$51,$61,$71,$2c,$3c,$0d,$0c,$1c + +; voice numbers and bits for clearing those void bits +0814: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f + +; echo poke registers +0824: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f + +0830: 3f f3 0b call $0bf3 ; que command +0833: 8f 00 49 mov $49,#$00 ; reset sample flags +0836: 8f 00 5b mov $5b,#$00 +0839: 8f 7c f2 mov $f2,#$7c +083c: e4 f3 mov a,$f3 +083e: 24 5e and a,$5e +0840: c4 58 mov $58,a +0842: 8f 00 f3 mov $f3,#$00 +0845: cd 07 mov x,#$07 ; find out all channels changing waves +0847: 3f f3 0b call $0bf3 ; (to restart them, starting with 7) +084a: d8 28 mov $28,x +084c: 7d mov a,x +084d: 60 clrc +084e: 88 10 adc a,#$10 +0850: c4 2d mov $2d,a +0852: f5 14 08 mov a,$0814+x +0855: c4 4a mov $4a,a +0857: 48 ff eor a,#$ff +0859: c4 4b mov $4b,a +085b: f4 67 mov a,$67+x +085d: c4 4d mov $4d,a +085f: a2 08 set5 $08 +0861: 23 4d 06 bbs1 $4d,$086a +0864: f5 ec fc mov a,$fcec+x +0867: 5f 78 08 jmp $0878 + +086a: eb 2d mov y,$2d +086c: f6 e3 04 mov a,$04e3+y +086f: d0 02 bne $0873 +0871: b2 08 clr5 $08 +0873: 3f 7c 12 call $127c +0876: f8 28 mov x,$28 +0878: 75 f4 fc cmp a,$fcf4+x +087b: d0 0d bne $088a +087d: 3f 3a 14 call $143a +0880: e4 63 mov a,$63 +0882: 24 5c and a,$5c +0884: 24 4a and a,$4a +0886: d0 43 bne $08cb +0888: 2f 44 bra $08ce +088a: d5 f4 fc mov $fcf4+x,a +088d: 09 4a 49 or ($49),($4a) +0890: 3f 3a 14 call $143a +0893: 7d mov a,x +0894: 1c asl a +0895: 5d mov x,a +0896: e5 04 01 mov a,$0104 +0899: d5 4b 01 mov $014b+x,a +089c: e5 05 01 mov a,$0105 +089f: d5 4c 01 mov $014c+x,a +08a2: f8 28 mov x,$28 +08a4: e4 64 mov a,$64 +08a6: 28 20 and a,#$20 +08a8: f0 05 beq $08af +08aa: 29 4b 59 and ($59),($4b) +08ad: 2f 03 bra $08b2 +08af: 09 4a 59 or ($59),($4a) +08b2: b3 08 0b bbc5 $08,$08c0 +08b5: e4 64 mov a,$64 +08b7: 28 40 and a,#$40 +08b9: f0 05 beq $08c0 +08bb: 09 4a 63 or ($63),($4a) +08be: 2f 03 bra $08c3 +08c0: 29 4b 63 and ($63),($4b) +08c3: e4 63 mov a,$63 +08c5: 04 5c or a,$5c +08c7: 24 4a and a,$4a +08c9: f0 03 beq $08ce +08cb: 09 4a 5b or ($5b),($4a) +08ce: 1d dec x +08cf: 30 03 bmi $08d4 +08d1: 5f 47 08 jmp $0847 + +08d4: e4 5c mov a,$5c +08d6: 24 59 and a,$59 +08d8: 04 5a or a,$5a +08da: c4 5a mov $5a,a +08dc: 24 5a and a,$5a +08de: 04 5b or a,$5b +08e0: c4 5d mov $5d,a +08e2: 8f 5c f2 mov $f2,#$5c +08e5: c4 f3 mov $f3,a +08e7: cd 07 mov x,#$07 +08e9: 3f f3 0b call $0bf3 +08ec: d8 28 mov $28,x +08ee: f5 14 08 mov a,$0814+x +08f1: c4 4a mov $4a,a +08f3: 7d mov a,x +08f4: 60 clrc +08f5: 88 18 adc a,#$18 +08f7: c4 2d mov $2d,a +08f9: e5 a2 03 mov a,$03a2 +08fc: d0 12 bne $0910 +08fe: f4 67 mov a,$67+x +0900: c4 4d mov $4d,a +0902: 63 4d 06 bbs3 $4d,$090b +0905: f5 e4 fc mov a,$fce4+x +0908: 5f 10 09 jmp $0910 + +090b: 3f 7c 12 call $127c +090e: f8 28 mov x,$28 +0910: 60 clrc +0911: 95 9a 03 adc a,$039a+x +0914: 30 06 bmi $091c +0916: 70 04 bvs $091c +0918: 68 65 cmp a,#$65 +091a: 30 0b bmi $0927 +091c: f5 9a 03 mov a,$039a+x +091f: 30 04 bmi $0925 +0921: e8 64 mov a,#$64 +0923: 2f 02 bra $0927 +0925: e8 00 mov a,#$00 +0927: fd mov y,a +0928: f5 43 01 mov a,$0143+x +092b: c4 3c mov $3c,a +092d: cf mul ya +092e: cd 64 mov x,#$64 +0930: 9e div ya,x +0931: f8 28 mov x,$28 +0933: 73 4d 14 bbc3 $4d,$094a +0936: c4 3a mov $3a,a +0938: 6d push y +0939: eb 2d mov y,$2d +093b: f6 c3 03 mov a,$03c3+y +093e: ee pop y +093f: d0 04 bne $0945 +0941: e4 3a mov a,$3a +0943: 2f 05 bra $094a +0945: e4 3c mov a,$3c +0947: 80 setc +0948: a4 3a sbc a,$3a +094a: c4 3a mov $3a,a +094c: d5 28 02 mov $0228+x,a +094f: e4 3c mov a,$3c +0951: 80 setc +0952: a4 3a sbc a,$3a +0954: d5 30 02 mov $0230+x,a +0957: 1d dec x +0958: 30 03 bmi $095d +095a: 5f e9 08 jmp $08e9 + +095d: cd 07 mov x,#$07 ; process pitch envelopes (start with ch 7) +095f: 3f f3 0b call $0bf3 +0962: d8 28 mov $28,x +0964: 7d mov a,x +0965: 60 clrc +0966: 88 08 adc a,#$08 +0968: c4 2d mov $2d,a +096a: f4 67 mov a,$67+x +096c: c4 4d mov $4d,a +096e: 7d mov a,x +096f: 1c asl a +0970: 5d mov x,a +0971: f5 d5 fc mov a,$fcd5+x +0974: c4 48 mov $48,a +0976: f5 d4 fc mov a,$fcd4+x +0979: c4 47 mov $47,a +097b: 53 4d 15 bbc2 $4d,$0993 +097e: 4d push x +097f: 42 08 set2 $08 +0981: 3f 7c 12 call $127c +0984: 52 08 clr2 $08 +0986: ce pop x +0987: 7a 47 addw ya,$47 +0989: 80 setc +098a: a8 b0 sbc a,#$b0 +098c: c4 47 mov $47,a +098e: dd mov a,y +098f: a8 04 sbc a,#$04 +0991: c4 48 mov $48,a +0993: f5 4c 01 mov a,$014c+x +0996: fd mov y,a +0997: f5 4b 01 mov a,$014b+x +099a: 7a 47 addw ya,$47 +099c: da 3a movw $3a,ya +099e: fb db mov y,$db+x +09a0: f4 da mov a,$da+x +09a2: 7a 3a addw ya,$3a +09a4: c3 4d 03 bbs6 $4d,$09aa +09a7: 3f bc 14 call $14bc ; translate note to frequency +09aa: da 3a movw $3a,ya ; add in hardware tuning +09ac: e4 28 mov a,$28 ; word addressing +09ae: 1c asl a +09af: 5d mov x,a +09b0: f5 5c 01 mov a,$015c+x +09b3: fd mov y,a +09b4: f5 5b 01 mov a,$015b+x +09b7: 7a 3a addw ya,$3a +09b9: f8 28 mov x,$28 +09bb: d5 33 01 mov $0133+x,a +09be: dd mov a,y +09bf: d5 3b 01 mov $013b+x,a +09c2: 1d dec x +09c3: 10 9a bpl $095f +09c5: 8f 5c f2 mov $f2,#$5c +09c8: 8f 00 f3 mov $f3,#$00 +09cb: cd 07 mov x,#$07 +09cd: 3f f3 0b call $0bf3 +09d0: d8 28 mov $28,x +09d2: 7d mov a,x +09d3: 60 clrc +09d4: 88 00 adc a,#$00 +09d6: c4 2d mov $2d,a +09d8: f5 14 08 mov a,$0814+x +09db: c4 4a mov $4a,a +09dd: 48 ff eor a,#$ff +09df: c4 4b mov $4b,a +09e1: f4 67 mov a,$67+x +09e3: c4 4d mov $4d,a +09e5: 03 4d 07 bbs0 $4d,$09ef +09e8: f5 23 01 mov a,$0123+x +09eb: fd mov y,a +09ec: 5f fc 09 jmp $09fc + +09ef: 3f 7c 12 call $127c +09f2: fd mov y,a +09f3: f8 28 mov x,$28 +09f5: b3 07 04 bbc5 $07,$09fc +09f8: e8 00 mov a,#$00 +09fa: d4 6f mov $6f+x,a +09fc: e8 80 mov a,#$80 +09fe: de 6f 04 cbne $6f+x,$0a05 +0a01: e4 60 mov a,$60 +0a03: 2f 02 bra $0a07 +0a05: e4 5f mov a,$5f +0a07: cf mul ya +0a08: f5 92 03 mov a,$0392+x +0a0b: cf mul ya +0a0c: dd mov a,y +0a0d: d5 2b 01 mov $012b+x,a +0a10: 8f c0 39 mov $39,#$c0 +0a13: f5 df 07 mov a,$07df+x +0a16: c4 f2 mov $f2,a +0a18: dd mov a,y +0a19: 80 setc +0a1a: a4 f3 sbc a,$f3 +0a1c: b0 06 bcs $0a24 +0a1e: 8f 80 39 mov $39,#$80 +0a21: 48 ff eor a,#$ff +0a23: bc inc a +0a24: c4 3e mov $3e,a +0a26: e4 4a mov a,$4a +0a28: 24 57 and a,$57 +0a2a: d0 06 bne $0a32 +0a2c: e4 56 mov a,$56 +0a2e: 24 4a and a,$4a +0a30: d0 23 bne $0a55 +0a32: e4 3e mov a,$3e +0a34: 5c lsr a +0a35: d0 08 bne $0a3f +0a37: ad 00 cmp y,#$00 +0a39: d0 04 bne $0a3f +0a3b: e8 82 mov a,#$82 +0a3d: 2f 0e bra $0a4d +0a3f: 8d 15 mov y,#$15 +0a41: 76 b3 07 cmp a,$07b3+y +0a44: 90 02 bcc $0a48 +0a46: fe f9 dbnz y,$0a41 +0a48: f6 c9 07 mov a,$07c9+y +0a4b: 04 39 or a,$39 +0a4d: 75 cc fc cmp a,$fccc+x +0a50: f0 41 beq $0a93 +0a52: fd mov y,a +0a53: 2f 17 bra $0a6c +0a55: 8f 00 39 mov $39,#$00 +0a58: e4 3e mov a,$3e +0a5a: 68 60 cmp a,#$60 +0a5c: 90 0e bcc $0a6c +0a5e: ad 60 cmp y,#$60 +0a60: 90 04 bcc $0a66 +0a62: 8d df mov y,#$df +0a64: 2f 06 bra $0a6c +0a66: ad 20 cmp y,#$20 +0a68: b0 02 bcs $0a6c +0a6a: 8d 9e mov y,#$9e +0a6c: 29 4b 56 and ($56),($4b) +0a6f: f5 ff 07 mov a,$07ff+x +0a72: c4 f2 mov $f2,a +0a74: f5 28 02 mov a,$0228+x +0a77: 2d push a +0a78: e4 4a mov a,$4a +0a7a: 24 57 and a,$57 +0a7c: ae pop a +0a7d: d0 09 bne $0a88 +0a7f: c4 f3 mov $f3,a +0a81: ab f2 inc $f2 +0a83: f5 30 02 mov a,$0230+x +0a86: c4 f3 mov $f3,a +0a88: f5 e7 07 mov a,$07e7+x +0a8b: c4 f2 mov $f2,a +0a8d: cb f3 mov $f3,y +0a8f: dd mov a,y +0a90: d5 cc fc mov $fccc+x,a +0a93: f5 f7 07 mov a,$07f7+x +0a96: c4 f2 mov $f2,a +0a98: fd mov y,a +0a99: f5 33 01 mov a,$0133+x +0a9c: c4 f3 mov $f3,a +0a9e: fc inc y +0a9f: cb f2 mov $f2,y +0aa1: f5 3b 01 mov a,$013b+x +0aa4: c4 f3 mov $f3,a +0aa6: 1d dec x +0aa7: 30 03 bmi $0aac +0aa9: 5f cd 09 jmp $09cd + +0aac: 8f 4c f2 mov $f2,#$4c +0aaf: fa 5d f3 mov ($f3),($5d) +0ab2: e4 5d mov a,$5d +0ab4: 48 ff eor a,#$ff +0ab6: c4 5e mov $5e,a +0ab8: 29 5e 58 and ($58),($5e) +0abb: 29 5e 5a and ($5a),($5e) +0abe: 8f 00 5c mov $5c,#$00 +0ac1: 3f f3 0b call $0bf3 +0ac4: 8d 07 mov y,#$07 +0ac6: cd 0e mov x,#$0e +0ac8: 3f f3 0b call $0bf3 +0acb: f6 6f 00 mov a,$006f+y +0ace: f0 31 beq $0b01 +0ad0: f6 67 00 mov a,$0067+y +0ad3: c4 4d mov $4d,a +0ad5: f3 4d 07 bbc7 $4d,$0adf +0ad8: f6 14 08 mov a,$0814+y +0adb: 24 58 and a,$58 +0add: d0 1d bne $0afc +0adf: f6 6f 00 mov a,$006f+y +0ae2: 68 80 cmp a,#$80 +0ae4: d0 1b bne $0b01 +0ae6: f6 46 02 mov a,$0246+y +0ae9: 28 02 and a,#$02 +0aeb: d0 14 bne $0b01 +0aed: 9b 78 dec $78+x +0aef: f4 78 mov a,$78+x +0af1: 2e 05 02 cbne $05,$0af6 +0af4: 9b 79 dec $79+x +0af6: f4 78 mov a,$78+x +0af8: 14 79 or a,$79+x +0afa: d0 05 bne $0b01 +0afc: e8 00 mov a,#$00 +0afe: d6 6f 00 mov $006f+y,a +0b01: 1d dec x +0b02: 1d dec x +0b03: dc dec y +0b04: 10 c2 bpl $0ac8 +0b06: 3f f3 0b call $0bf3 +0b09: ec 43 02 mov y,$0243 +0b0c: f0 54 beq $0b62 +0b0e: 6e cf 51 dbnz $cf,$0b62 +0b11: cb cf mov $cf,y +0b13: e5 3b 02 mov a,$023b +0b16: f8 d0 mov x,$d0 +0b18: 30 0d bmi $0b27 +0b1a: 60 clrc +0b1b: 84 d1 adc a,$d1 +0b1d: b0 04 bcs $0b23 +0b1f: 68 7f cmp a,#$7f +0b21: 90 12 bcc $0b35 +0b23: e8 7f mov a,#$7f +0b25: 2f 09 bra $0b30 +0b27: 80 setc +0b28: a4 d1 sbc a,$d1 +0b2a: f0 04 beq $0b30 +0b2c: b0 07 bcs $0b35 +0b2e: e8 00 mov a,#$00 +0b30: 8d 00 mov y,#$00 +0b32: cc 43 02 mov $0243,y +0b35: 5d mov x,a +0b36: 65 44 02 cmp a,$0244 +0b39: 90 03 bcc $0b3e +0b3b: e5 44 02 mov a,$0244 +0b3e: c5 38 02 mov $0238,a +0b41: 7d mov a,x +0b42: c5 3b 02 mov $023b,a +0b45: c5 3c 02 mov $023c,a +0b48: 65 45 02 cmp a,$0245 +0b4b: 90 03 bcc $0b50 +0b4d: e5 45 02 mov a,$0245 +0b50: c5 39 02 mov $0239,a +0b53: e5 43 02 mov a,$0243 +0b56: d0 0a bne $0b62 +0b58: aa 07 40 mov1 c,$0007,2 +0b5b: 90 05 bcc $0b62 +0b5d: 8d 80 mov y,#$80 +0b5f: 5f 52 0d jmp $0d52 + +0b62: 6f ret + +0b63: 32 08 clr1 $08 +0b65: e4 ea mov a,$ea +0b67: f0 3a beq $0ba3 +0b69: 9c dec a +0b6a: c4 ea mov $ea,a +0b6c: f8 ec mov x,$ec +0b6e: f5 87 10 mov a,$1087+x +0b71: 28 fe and a,#$fe +0b73: c4 30 mov $30,a +0b75: c4 f7 mov $f7,a +0b77: f5 04 fd mov a,$fd04+x +0b7a: c4 31 mov $31,a +0b7c: c4 f4 mov $f4,a +0b7e: f5 1c fd mov a,$fd1c+x +0b81: c4 f5 mov $f5,a +0b83: c4 32 mov $32,a +0b85: 3d inc x +0b86: c8 18 cmp x,#$18 +0b88: d0 02 bne $0b8c +0b8a: cd 00 mov x,#$00 +0b8c: d8 ec mov $ec,x +0b8e: e4 30 mov a,$30 +0b90: 5d mov x,a +0b91: 28 fe and a,#$fe +0b93: c8 4d cmp x,#$4d +0b95: b0 0c bcs $0ba3 +0b97: e4 31 mov a,$31 +0b99: eb 32 mov y,$32 +0b9b: 3f a4 0b call $0ba4 +0b9e: 3f f3 0b call $0bf3 +0ba1: 2f c0 bra $0b63 +0ba3: 6f ret + +0ba4: 1f 00 1e jmp ($1e00+x) + +0ba7: 79 cmp (x),(y) +0ba8: 0c 40 0c asl $0c40 +0bab: 40 setp +0bac: 0c 40 0c asl $0c40 +0baf: 40 setp +0bb0: 0c 3b 0c asl $0c3b +0bb3: 8c 07 40 dec $4007 +0bb6: 0c 40 0c asl $0c40 +0bb9: 40 setp +0bba: 0c 40 0c asl $0c40 +0bbd: 40 setp +0bbe: 0c 40 0c asl $0c40 +0bc1: 40 setp +0bc2: 0c 4e 1e asl $1e4e +0bc5: 40 setp +0bc6: 0c 8a 0c asl $0c8a +0bc9: 40 setp +0bca: 0c 40 0c asl $0c40 +0bcd: 40 setp +0bce: 0c 40 0c asl $0c40 +0bd1: 40 setp +0bd2: 0c 40 0c asl $0c40 +0bd5: 40 setp +0bd6: 0c 40 0c asl $0c40 +0bd9: 40 setp +0bda: 0c 40 0c asl $0c40 +0bdd: 40 setp +0bde: 0c 40 0c asl $0c40 +0be1: 40 setp +0be2: 0c 40 0c asl $0c40 +0be5: 40 setp +0be6: 0c 40 0c asl $0c40 +0be9: 40 setp +0bea: 0c 40 0c asl $0c40 +0bed: 88 07 adc a,#$07 +0bef: 40 setp +0bf0: 0c 58 1e asl $1e58 +0bf3: 73 08 0c bbc3 $08,$0c02 +0bf6: 2d push a +0bf7: 32 09 clr1 $09 +0bf9: e4 f6 mov a,$f6 +0bfb: 2e f6 fb cbne $f6,$0bf9 +0bfe: 2e 03 02 cbne $03,$0c03 +0c01: ae pop a +0c02: 6f ret + +0c03: 2e ed 02 cbne $ed,$0c08 +0c06: ae pop a +0c07: 6f ret + +0c08: 22 09 set1 $09 +0c0a: fa ed ee mov ($ee),($ed) +0c0d: c4 ed mov $ed,a +0c0f: fa f4 f4 mov ($f4),($f4) +0c12: fa f5 f5 mov ($f5),($f5) +0c15: fa f7 f7 mov ($f7),($f7) +0c18: e4 f7 mov a,$f7 +0c1a: f0 e5 beq $0c01 +0c1c: 6d push y +0c1d: 4d push x +0c1e: 5d mov x,a +0c1f: c4 30 mov $30,a +0c21: 68 4d cmp a,#$4d +0c23: b0 0c bcs $0c31 +0c25: ba f4 movw ya,$f4 +0c27: da 31 movw $31,ya +0c29: 69 f6 ed cmp ($ed),($f6) +0c2c: d0 03 bne $0c31 +0c2e: 3f 38 0c call $0c38 +0c31: ce pop x +0c32: ee pop y +0c33: ae pop a +0c34: 23 09 bc bbs1 $09,$0bf3 +0c37: 6f ret + +0c38: 1f a5 0b jmp ($0ba5+x) + +0c3b: 6f ret + +0c3c: d8 31 mov $31,x +0c3e: 2f 0b bra $0c4b +0c40: 23 08 08 bbs1 $08,$0c4b +0c43: e4 f6 mov a,$f6 +0c45: 8f b7 f1 mov $f1,#$b7 +0c48: c4 f6 mov $f6,a +0c4a: 7d mov a,x +0c4b: 23 08 25 bbs1 $08,$0c73 +0c4e: f8 eb mov x,$eb +0c50: d5 87 10 mov $1087+x,a +0c53: e4 31 mov a,$31 +0c55: d5 04 fd mov $fd04+x,a +0c58: dd mov a,y +0c59: d5 1c fd mov $fd1c+x,a +0c5c: 3d inc x +0c5d: c8 18 cmp x,#$18 +0c5f: d0 02 bne $0c63 +0c61: cd 00 mov x,#$00 +0c63: d8 eb mov $eb,x +0c65: e4 ea mov a,$ea +0c67: bc inc a +0c68: c4 ea mov $ea,a +0c6a: 68 18 cmp a,#$18 +0c6c: d0 0a bne $0c78 +0c6e: 22 08 set1 $08 +0c70: 32 09 clr1 $09 +0c72: 6f ret + +0c73: fa ee ed mov ($ed),($ee) +0c76: 32 09 clr1 $09 +0c78: 6f ret + +0c79: e4 f6 mov a,$f6 +0c7b: 8f b7 f1 mov $f1,#$b7 +0c7e: 2d push a +0c7f: 72 08 clr3 $08 +0c81: 3f e2 0c call $0ce2 +0c84: 62 08 set3 $08 +0c86: ae pop a +0c87: c4 f6 mov $f6,a +0c89: 6f ret + +0c8a: 8d 00 mov y,#$00 +0c8c: e8 01 mov a,#$01 +0c8e: da 1a movw $1a,ya +0c90: e4 f6 mov a,$f6 +0c92: 2e f6 fb cbne $f6,$0c90 +0c95: 5d mov x,a +0c96: ba f4 movw ya,$f4 +0c98: ad 00 cmp y,#$00 +0c9a: f0 3e beq $0cda +0c9c: 8f b7 f1 mov $f1,#$b7 +0c9f: d8 f6 mov $f6,x +0ca1: c5 c5 0c mov $0cc5,a +0ca4: cc c6 0c mov $0cc6,y +0ca7: 7a 1a addw ya,$1a +0ca9: c5 cc 0c mov $0ccc,a +0cac: cc cd 0c mov $0ccd,y +0caf: 7a 1a addw ya,$1a +0cb1: c5 d3 0c mov $0cd3,a +0cb4: cc d4 0c mov $0cd4,y +0cb7: cd 00 mov x,#$00 +0cb9: e4 f6 mov a,$f6 +0cbb: 2e f6 fb cbne $f6,$0cb9 +0cbe: d0 02 bne $0cc2 +0cc0: 2f f7 bra $0cb9 +0cc2: e4 f4 mov a,$f4 +0cc4: d5 36 ba mov $ba36+x,a +0cc7: ba f5 movw ya,$f5 +0cc9: 30 c5 bmi $0c90 +0ccb: d5 37 ba mov $ba37+x,a +0cce: e4 f7 mov a,$f7 +0cd0: cb f6 mov $f6,y +0cd2: d5 38 ba mov $ba38+x,a +0cd5: 3d inc x +0cd6: 3d inc x +0cd7: 3d inc x +0cd8: 2f e8 bra $0cc2 +0cda: 8f b7 f1 mov $f1,#$b7 +0cdd: d8 ed mov $ed,x +0cdf: d8 f6 mov $f6,x +0ce1: 6f ret + +0ce2: 3f 12 11 call $1112 +0ce5: 3f 08 11 call $1108 +0ce8: 22 07 set1 $07 +0cea: 6f ret + +0ceb: c5 a2 03 mov $03a2,a +0cee: 6f ret + +0cef: e8 00 mov a,#$00 +0cf1: c5 43 02 mov $0243,a +0cf4: 6f ret + +0cf5: cd 01 mov x,#$01 +0cf7: 52 07 clr2 $07 +0cf9: 2f 02 bra $0cfd +0cfb: cd ff mov x,#$ff +0cfd: c5 43 02 mov $0243,a +0d00: c4 cf mov $cf,a +0d02: cb d1 mov $d1,y +0d04: d8 d0 mov $d0,x +0d06: 6f ret + +0d07: 2d push a +0d08: dd mov a,y +0d09: 28 7f and a,#$7f +0d0b: c5 3e 02 mov $023e,a +0d0e: ae pop a +0d0f: 92 08 clr4 $08 +0d11: 2f 05 bra $0d18 +0d13: cc 40 02 mov $0240,y +0d16: 82 08 set4 $08 +0d18: 5f ae 0d jmp $0dae + +0d1b: 3f 93 1c call $1c93 +0d1e: e5 fc 1e mov a,$1efc +0d21: c5 8b 06 mov $068b,a +0d24: e5 fd 1e mov a,$1efd +0d27: c5 8c 06 mov $068c,a +0d2a: 05 8b 06 or a,$068b +0d2d: f0 20 beq $0d4f +0d2f: 3f f0 16 call $16f0 +0d32: e5 8b 06 mov a,$068b +0d35: 80 setc +0d36: a8 01 sbc a,#$01 +0d38: c5 8b 06 mov $068b,a +0d3b: e5 8c 06 mov a,$068c +0d3e: a8 00 sbc a,#$00 +0d40: c5 8c 06 mov $068c,a +0d43: b0 ea bcs $0d2f +0d45: cd 07 mov x,#$07 +0d47: e8 00 mov a,#$00 +0d49: d5 43 01 mov $0143+x,a +0d4c: 1d dec x +0d4d: 10 fa bpl $0d49 +0d4f: 6f ret + +0d50: 8d ff mov y,#$ff +0d52: cd 07 mov x,#$07 +0d54: ad 80 cmp y,#$80 +0d56: f0 04 beq $0d5c +0d58: ad ff cmp y,#$ff +0d5a: d0 08 bne $0d64 +0d5c: 82 07 set4 $07 +0d5e: 8f 00 89 mov $89,#$00 +0d61: 8f ff 0c mov $0c,#$ff +0d64: c4 77 mov $77,a +0d66: ad 80 cmp y,#$80 +0d68: f0 1b beq $0d85 +0d6a: f4 d2 mov a,$d2+x +0d6c: 68 ff cmp a,#$ff +0d6e: f0 30 beq $0da0 +0d70: 68 00 cmp a,#$00 +0d72: 10 06 bpl $0d7a +0d74: ad ff cmp y,#$ff +0d76: f0 0d beq $0d85 +0d78: 2f 26 bra $0da0 +0d7a: ad 00 cmp y,#$00 +0d7c: d0 07 bne $0d85 +0d7e: f5 1b 01 mov a,$011b+x +0d81: 64 77 cmp a,$77 +0d83: d0 1b bne $0da0 +0d85: f5 e7 07 mov a,$07e7+x +0d88: c4 f2 mov $f2,a +0d8a: 8f 9f f3 mov $f3,#$9f +0d8d: f5 ef 07 mov a,$07ef+x +0d90: e8 00 mov a,#$00 +0d92: d5 23 01 mov $0123+x,a +0d95: d4 6f mov $6f+x,a +0d97: d4 67 mov $67+x,a +0d99: f5 14 08 mov a,$0814+x +0d9c: 04 5c or a,$5c +0d9e: c4 5c mov $5c,a +0da0: 1d dec x +0da1: 10 c3 bpl $0d66 +0da3: 6f ret + +0da4: 52 07 clr2 $07 +0da6: 5f fb 0c jmp $0cfb + +0da9: 42 07 set2 $07 +0dab: 5f fb 0c jmp $0cfb + +0dae: 8d 0e mov y,#$0e +0db0: c4 77 mov $77,a +0db2: 3f 63 10 call $1063 +0db5: da 22 movw $22,ya +0db7: 8d 00 mov y,#$00 +0db9: f7 22 mov a,($22)+y +0dbb: c4 52 mov $52,a +0dbd: 3a 22 incw $22 +0dbf: 8d 07 mov y,#$07 +0dc1: f7 22 mov a,($22)+y +0dc3: 24 0c and a,$0c +0dc5: c4 53 mov $53,a +0dc7: 8d 06 mov y,#$06 +0dc9: f7 22 mov a,($22)+y +0dcb: c4 54 mov $54,a +0dcd: 8f 80 55 mov $55,#$80 +0dd0: cd 07 mov x,#$07 +0dd2: 3f 89 0e call $0e89 +0dd5: 10 03 bpl $0dda +0dd7: 5f 5b 0e jmp $0e5b + +0dda: 83 08 07 bbs4 $08,$0de4 +0ddd: e8 02 mov a,#$02 +0ddf: 15 46 02 or a,$0246+x +0de2: 2f 05 bra $0de9 +0de4: e8 fd mov a,#$fd +0de6: 35 46 02 and a,$0246+x +0de9: d5 46 02 mov $0246+x,a +0dec: e8 80 mov a,#$80 +0dee: d4 6f mov $6f+x,a +0df0: e5 3e 02 mov a,$023e +0df3: d4 d2 mov $d2+x,a +0df5: e5 3f 02 mov a,$023f +0df8: d5 92 03 mov $0392+x,a +0dfb: e5 40 02 mov a,$0240 +0dfe: d5 9a 03 mov $039a+x,a +0e01: e5 8e 03 mov a,$038e +0e04: c4 0f mov $0f,a +0e06: e5 90 03 mov a,$0390 +0e09: c4 0e mov $0e,a +0e0b: e5 8f 03 mov a,$038f +0e0e: c4 10 mov $10,a +0e10: e5 91 03 mov a,$0391 +0e13: c4 11 mov $11,a +0e15: 7d mov a,x +0e16: 1c asl a +0e17: fd mov y,a +0e18: e8 00 mov a,#$00 +0e1a: d6 5b 01 mov $015b+y,a +0e1d: d6 5c 01 mov $015c+y,a +0e20: c5 3d 02 mov $023d,a +0e23: e5 41 02 mov a,$0241 +0e26: d6 da 00 mov $00da+y,a +0e29: e5 42 02 mov a,$0242 +0e2c: d6 db 00 mov $00db+y,a +0e2f: e4 77 mov a,$77 +0e31: d5 1b 01 mov $011b+x,a +0e34: 8d 02 mov y,#$02 +0e36: f7 22 mov a,($22)+y +0e38: c4 4e mov $4e,a +0e3a: fc inc y +0e3b: f7 22 mov a,($22)+y +0e3d: c4 4f mov $4f,a +0e3f: 8d 04 mov y,#$04 +0e41: f7 22 mov a,($22)+y +0e43: c4 50 mov $50,a +0e45: fc inc y +0e46: f7 22 mov a,($22)+y +0e48: c4 51 mov $51,a +0e4a: 8d 01 mov y,#$01 +0e4c: f7 22 mov a,($22)+y +0e4e: 2d push a +0e4f: 8d 00 mov y,#$00 +0e51: f7 22 mov a,($22)+y +0e53: 02 07 set0 $07 +0e55: ee pop y +0e56: 72 07 clr3 $07 +0e58: 3f 04 0f call $0f04 +0e5b: 60 clrc +0e5c: 98 08 22 adc $22,#$08 +0e5f: 90 02 bcc $0e63 +0e61: ab 23 inc $23 +0e63: 8b 52 dec $52 +0e65: f0 03 beq $0e6a +0e67: 5f bf 0d jmp $0dbf + +0e6a: e8 00 mov a,#$00 +0e6c: c5 3e 02 mov $023e,a +0e6f: c5 41 02 mov $0241,a +0e72: c5 42 02 mov $0242,a +0e75: c5 40 02 mov $0240,a +0e78: c5 8e 03 mov $038e,a +0e7b: c5 90 03 mov $0390,a +0e7e: c5 8f 03 mov $038f,a +0e81: c5 91 03 mov $0391,a +0e84: 9c dec a +0e85: c5 3f 02 mov $023f,a +0e88: 6f ret + +0e89: 8f 01 0b mov $0b,#$01 +0e8c: 03 09 03 bbs0 $09,$0e92 +0e8f: 8f 00 0b mov $0b,#$00 +0e92: 83 0b 5a bbs4 $0b,$0eef +0e95: 8d 07 mov y,#$07 +0e97: 8f ff 3a mov $3a,#$ff +0e9a: 8f ff 3b mov $3b,#$ff +0e9d: 73 0b 08 bbc3 $0b,$0ea8 +0ea0: c8 08 cmp x,#$08 +0ea2: b0 4b bcs $0eef +0ea4: 8d 00 mov y,#$00 +0ea6: 2f 09 bra $0eb1 +0ea8: 3f f3 0b call $0bf3 +0eab: e4 55 mov a,$55 +0ead: 24 53 and a,$53 +0eaf: f0 1f beq $0ed0 +0eb1: f4 6f mov a,$6f+x +0eb3: f0 41 beq $0ef6 +0eb5: e4 54 mov a,$54 +0eb7: 03 0b 06 bbs0 $0b,$0ec0 +0eba: 74 12 cmp a,$12+x +0ebc: b0 38 bcs $0ef6 +0ebe: 2f 10 bra $0ed0 +0ec0: 74 12 cmp a,$12+x +0ec2: f0 0c beq $0ed0 +0ec4: 90 0a bcc $0ed0 +0ec6: f4 12 mov a,$12+x +0ec8: 64 3b cmp a,$3b +0eca: b0 04 bcs $0ed0 +0ecc: c4 3b mov $3b,a +0ece: d8 3a mov $3a,x +0ed0: 53 0b 0c bbc2 $0b,$0edf +0ed3: 0b 55 asl $55 +0ed5: d0 05 bne $0edc +0ed7: 8f 01 55 mov $55,#$01 +0eda: cd ff mov x,#$ff +0edc: 3d inc x +0edd: 2f 0a bra $0ee9 +0edf: 4b 55 lsr $55 +0ee1: d0 05 bne $0ee8 +0ee3: 8f 80 55 mov $55,#$80 +0ee6: cd 08 mov x,#$08 +0ee8: 1d dec x +0ee9: dc dec y +0eea: 10 bc bpl $0ea8 +0eec: 03 0b 03 bbs0 $0b,$0ef2 +0eef: e8 ff mov a,#$ff +0ef1: 6f ret + +0ef2: f8 3a mov x,$3a +0ef4: 30 f9 bmi $0eef +0ef6: 33 0b 04 bbc1 $0b,$0efd +0ef9: f4 6f mov a,$6f+x +0efb: d0 f2 bne $0eef +0efd: e4 54 mov a,$54 +0eff: d4 12 mov $12+x,a +0f01: e8 00 mov a,#$00 +0f03: 6f ret + +0f04: d8 28 mov $28,x ; play sound (instrument) +0f06: d8 4c mov $4c,x +0f08: 2d push a +0f09: f5 46 02 mov a,$0246+x +0f0c: 28 fe and a,#$fe +0f0e: d5 46 02 mov $0246+x,a +0f11: 63 07 08 bbs3 $07,$0f1c +0f14: f5 e7 07 mov a,$07e7+x +0f17: c4 f2 mov $f2,a +0f19: 8f 9f f3 mov $f3,#$9f +0f1c: dd mov a,y +0f1d: d5 43 01 mov $0143+x,a +0f20: 7d mov a,x +0f21: 1c asl a +0f22: 5d mov x,a +0f23: e4 50 mov a,$50 +0f25: d5 d4 fc mov $fcd4+x,a +0f28: e4 51 mov a,$51 +0f2a: d5 d5 fc mov $fcd5+x,a +0f2d: e4 4e mov a,$4e +0f2f: d4 78 mov $78+x,a +0f31: e4 4f mov a,$4f +0f33: d4 79 mov $79+x,a +0f35: ae pop a +0f36: 8d 02 mov y,#$02 +0f38: 3f 63 10 call $1063 +0f3b: da 20 movw $20,ya ;get current voice and instrument +0f3d: f8 4c mov x,$4c +0f3f: f5 14 08 mov a,$0814+x ;get channel bit mask ID +0f42: c4 65 mov $65,a +0f44: 48 ff eor a,#$ff ;and store inversion +0f46: c4 66 mov $66,a +0f48: e4 57 mov a,$57 ;get mode flags +0f4a: 63 07 05 bbs3 $07,$0f52 +0f4d: 35 1c 08 and a,$081c+x +0f50: 2f 03 bra $0f55 +0f52: 15 14 08 or a,$0814+x +0f55: c4 57 mov $57,a +0f57: 8d 00 mov y,#$00 +0f59: f7 20 mov a,($20)+y +0f5b: d4 67 mov $67+x,a +0f5d: c4 4d mov $4d,a +0f5f: 8f 2d f2 mov $f2,#$2d +0f62: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) +0f64: f0 05 beq $0f6b ; if not... +0f66: 09 65 f3 or ($f3),($65) ; turn pitch mod on +0f69: 2f 03 bra $0f6e +0f6b: 29 66 f3 and ($f3),($66) ; turn pitch mod off +0f6e: 63 07 50 bbs3 $07,$0fc1 ; slur handler +0f71: b0 4e bcs $0fc1 +0f73: 93 4d 45 bbc4 $4d,$0fbb +0f76: 13 08 05 bbc0 $08,$0f7e +0f79: e5 06 01 mov a,$0106 +0f7c: 2f 04 bra $0f82 +0f7e: 8d 05 mov y,#$05 ; default echo +0f80: f7 20 mov a,($20)+y +0f82: 8d 0c mov y,#$0c ; look for echo +0f84: 3f 63 10 call $1063 +0f87: 8d 00 mov y,#$00 +0f89: f6 24 08 mov a,$0824+y ; get the echo register values to "poke" +0f8c: c4 f2 mov $f2,a ; (from the table) +0f8e: f7 29 mov a,($29)+y ; now get info to feed to the registers +0f90: ad 01 cmp y,#$01 ; (from the echo environment) +0f92: f0 08 beq $0f9c +0f94: ad 03 cmp y,#$03 +0f96: f0 0f beq $0fa7 +0f98: ad 02 cmp y,#$02 +0f9a: d0 10 bne $0fac +0f9c: d6 43 02 mov $0243+y,a +0f9f: 65 3b 02 cmp a,$023b +0fa2: 90 03 bcc $0fa7 +0fa4: e5 3b 02 mov a,$023b +0fa7: d6 37 02 mov $0237+y,a +0faa: 2f 02 bra $0fae +0fac: c4 f3 mov $f3,a +0fae: fc inc y +0faf: ad 0c cmp y,#$0c ; repeat for every byte of the array +0fb1: 90 d6 bcc $0f89 +0fb3: 8f 4d f2 mov $f2,#$4d +0fb6: 09 65 f3 or ($f3),($65) +0fb9: 2f 06 bra $0fc1 +0fbb: 8f 4d f2 mov $f2,#$4d +0fbe: 29 66 f3 and ($f3),($66) +0fc1: e4 4c mov a,$4c +0fc3: 60 clrc +0fc4: 88 00 adc a,#$00 +0fc6: c4 2d mov $2d,a +0fc8: 8d 01 mov y,#$01 +0fca: f7 20 mov a,($20)+y +0fcc: 03 4d 08 bbs0 $4d,$0fd7 +0fcf: f8 4c mov x,$4c +0fd1: d5 23 01 mov $0123+x,a +0fd4: 5f e2 0f jmp $0fe2 + +0fd7: 8d 04 mov y,#$04 +0fd9: 3f 63 10 call $1063 +0fdc: fa 0f 0d mov ($0d),($0f) +0fdf: 3f ac 11 call $11ac +0fe2: e4 4c mov a,$4c +0fe4: 60 clrc +0fe5: 88 08 adc a,#$08 +0fe7: c4 2d mov $2d,a +0fe9: 53 4d 13 bbc2 $4d,$0fff +0fec: 8d 03 mov y,#$03 +0fee: f7 20 mov a,($20)+y +0ff0: 8d 06 mov y,#$06 +0ff2: 3f 63 10 call $1063 +0ff5: fa 10 0d mov ($0d),($10) +0ff8: 42 08 set2 $08 +0ffa: 3f ac 11 call $11ac +0ffd: 52 08 clr2 $08 +0fff: e4 4c mov a,$4c +1001: 60 clrc +1002: 88 18 adc a,#$18 +1004: c4 2d mov $2d,a +1006: 63 07 57 bbs3 $07,$1060 +1009: 8d 04 mov y,#$04 +100b: f7 20 mov a,($20)+y ; now get the amplitude +100d: 63 4d 08 bbs3 $4d,$1018 +1010: f8 4c mov x,$4c +1012: d5 e4 fc mov $fce4+x,a +1015: 5f 39 10 jmp $1039 + +1018: 8d 08 mov y,#$08 +101a: 3f 63 10 call $1063 +101d: fa 11 0d mov ($0d),($11) +1020: 3f ac 11 call $11ac +1023: eb 2d mov y,$2d +1025: f6 e3 04 mov a,$04e3+y +1028: f0 0a beq $1034 +102a: f6 c3 03 mov a,$03c3+y +102d: d0 05 bne $1034 +102f: e8 ff mov a,#$ff +1031: 5f 36 10 jmp $1036 + +1034: e8 00 mov a,#$00 +1036: d6 c3 03 mov $03c3+y,a +1039: e4 4c mov a,$4c +103b: 60 clrc +103c: 88 10 adc a,#$10 +103e: c4 2d mov $2d,a +1040: 8d 02 mov y,#$02 +1042: f7 20 mov a,($20)+y +1044: 23 4d 08 bbs1 $4d,$104f +1047: f8 4c mov x,$4c +1049: d5 ec fc mov $fcec+x,a +104c: 5f 5a 10 jmp $105a + +104f: 8d 0a mov y,#$0a +1051: 3f 63 10 call $1063 +1054: fa 0e 0d mov ($0d),($0e) +1057: 3f ac 11 call $11ac +105a: 09 65 5c or ($5c),($65) +105d: 09 65 56 or ($56),($65) +1060: 72 07 clr3 $07 +1062: 6f ret + +1063: 3f f3 0b call $0bf3 ; load current song/sfx/etc. address into stack +1066: 8f 00 1f mov $1f,#$00 +1069: 1c asl a +106a: 2b 1f rol $1f +106c: 60 clrc +106d: 96 e0 1e adc a,$1ee0+y +1070: c4 1e mov $1e,a +1072: e4 1f mov a,$1f +1074: 96 e1 1e adc a,$1ee1+y +1077: c4 1f mov $1f,a +1079: 8d 01 mov y,#$01 +107b: f7 1e mov a,($1e)+y +107d: c4 2a mov $2a,a +107f: dc dec y +1080: f7 1e mov a,($1e)+y +1082: c4 29 mov $29,a +1084: eb 2a mov y,$2a +1086: 6f ret + +1087: db $4a,$06,$1c,$1a,$4a,$06,$1c,$1a,$06,$1c,$1a,$4a,$06,$1c,$1a,$4a,$06,$1c,$1a,$4a,$06,$1c + +; initalize sound registers +109f: 3f ed 10 call $10ed +10a2: cd 51 mov x,#$51 +10a4: 8d 11 mov y,#$11 +10a6: 3f 3a 11 call $113a +10a9: e8 00 mov a,#$00 +10ab: 5d mov x,a +10ac: fd mov y,a +10ad: d5 00 01 mov $0100+x,a +10b0: af mov (x)+,a +10b1: c8 f0 cmp x,#$f0 +10b3: 90 f8 bcc $10ad +10b5: 5d mov x,a +10b6: d5 00 02 mov $0200+x,a +10b9: d5 00 03 mov $0300+x,a +10bc: d5 00 04 mov $0400+x,a +10bf: d5 00 05 mov $0500+x,a +10c2: d5 00 06 mov $0600+x,a +10c5: d5 00 fc mov $fc00+x,a +10c8: d5 00 fd mov $fd00+x,a +10cb: d5 00 ff mov $ff00+x,a +10ce: 3d inc x +10cf: d0 e5 bne $10b6 +10d1: e8 ff mov a,#$ff +10d3: c4 58 mov $58,a +10d5: c4 5a mov $5a,a +10d7: c4 63 mov $63,a +10d9: c4 59 mov $59,a +10db: c4 5e mov $5e,a +10dd: c4 5f mov $5f,a +10df: c4 60 mov $60,a +10e1: c5 3f 02 mov $023f,a +10e4: c4 05 mov $05,a +10e6: c4 06 mov $06,a +10e8: c4 0c mov $0c,a +10ea: 82 07 set4 $07 +10ec: 6f ret + +10ed: cd 14 mov x,#$14 +10ef: e8 00 mov a,#$00 +10f1: d5 28 02 mov $0228+x,a +10f4: 1d dec x +10f5: 10 fa bpl $10f1 +10f7: 8f 10 3a mov $3a,#$10 +10fa: 8d 10 mov y,#$10 +10fc: 3f 4a 07 call $074a +10ff: 68 00 cmp a,#$00 +1101: f0 04 beq $1107 +1103: 8b 3a dec $3a +1105: d0 f0 bne $10f7 +1107: 6f ret + +1108: e8 7f mov a,#$7f +110a: c5 3b 02 mov $023b,a +110d: c5 3c 02 mov $023c,a +1110: 2f e5 bra $10f7 +1112: e5 e1 1e mov a,$1ee1 +1115: 8f 6d f2 mov $f2,#$6d +1118: c4 f3 mov $f3,a +111a: 68 ff cmp a,#$ff +111c: f0 1b beq $1139 +111e: c4 01 mov $01,a +1120: e8 00 mov a,#$00 +1122: fd mov y,a +1123: c4 00 mov $00,a +1125: d7 00 mov ($00)+y,a +1127: fe fc dbnz y,$1125 +1129: ab 01 inc $01 +112b: 78 fc 01 cmp $01,#$fc +112e: d0 f5 bne $1125 +1130: 8f 6c f2 mov $f2,#$6c +1133: e8 df mov a,#$df +1135: 24 f3 and a,$f3 +1137: c4 f3 mov $f3,a +1139: 6f ret + +113a: d8 00 mov $00,x +113c: cb 01 mov $01,y +113e: 8d 00 mov y,#$00 +1140: f7 00 mov a,($00)+y +1142: 68 ff cmp a,#$ff +1144: f0 0a beq $1150 +1146: c4 f2 mov $f2,a +1148: fc inc y +1149: f7 00 mov a,($00)+y +114b: c4 f3 mov $f3,a +114d: fc inc y +114e: d0 f0 bne $1140 +1150: 6f ret + +; pre-defined DSP flags +1151: db $3d,$00 ; NON (noise enable) +1153: db $4d,$00 ; EON (echo enable) +1155: db $0d,$00 ; EFB (echo feedback) +1157: db $7d,$00 ; EDL (echo delay) +1159: db $0f,$00 ; COEF (channel 1) +115b: db $1f,$00 ; COEF (channel 2) +115d: db $2f,$00 ; COEF (channel 3) +115f: db $3f,$00 ; COEF (channel 4) +1161: db $4f,$00 ; COEF (channel 5) +1163: db $5f,$00 ; COEF (channel 6) +1165: db $6f,$00 ; COEF (channel 7) +1167: db $7f,$00 ; COEF (channel 8) +1169: db $6d,$ff ; ESA (echo buffer start offset) +116b: db $2c,$00 ; EVOL (L) (echo volume - left) +116d: db $3c,$00 ; EVOL (R) (echo volume - right) +116f: db $0c,$00 ; MVOL (L) (main volume - left) +1171: db $1c,$00 ; MVOL (R) (main volume - right) +1173: db $5d,$02 ; DIR (offset of source directory) +1175: db $5c,$00 ; KOF (key off) +1177: db $2d,$00 ; PMON (pitch modulation) +1179: db $04,$08 ; SRCN (source number - channel 1) +117b: db $14,$08 ; SRCN (source number - channel 2) +117d: db $24,$08 ; SRCN (source number - channel 3) +117f: db $34,$08 ; SRCN (source number - channel 4) +1181: db $44,$08 ; SRCN (source number - channel 5) +1183: db $54,$08 ; SRCN (source number - channel 6) +1185: db $64,$08 ; SRCN (source number - channel 7) +1187: db $74,$08 ; SRCN (source number - channel 8) +1189: db $07,$00 ; GAIN (channel 1) +118b: db $17,$00 ; GAIN (channel 2) +118d: db $27,$00 ; GAIN (channel 3) +118f: db $37,$00 ; GAIN (channel 4) +1191: db $47,$00 ; GAIN (channel 5) +1193: db $57,$00 ; GAIN (channel 6) +1195: db $67,$00 ; GAIN (channel 7) +1197: db $77,$00 ; GAIN (channel 8) +1199: db $05,$00 ; ASDR (1 - channel 1) +119b: db $15,$00 ; ASDR (1 - channel 2) +119d: db $25,$00 ; ASDR (1 - channel 3) +119f: db $35,$00 ; ASDR (1 - channel 4) +11a1: db $45,$00 ; ASDR (1 - channel 5) +11a3: db $55,$00 ; ASDR (1 - channel 6) +11a5: db $65,$00 ; ASDR (1 - channel 7) +11a7: db $75,$00 ; ASDR (1 - channel 8) +11a9: db $7c,$00 ; ENDX +11ab: db $ff + +11ac: 3f f3 0b call $0bf3 +11af: f8 2d mov x,$2d +11b1: 8d 07 mov y,#$07 +11b3: f7 29 mov a,($29)+y +11b5: d5 e3 04 mov $04e3+x,a +11b8: dc dec y +11b9: dc dec y +11ba: f7 29 mov a,($29)+y +11bc: d5 03 04 mov $0403+x,a +11bf: dc dec y +11c0: f7 29 mov a,($29)+y +11c2: d5 c3 04 mov $04c3+x,a +11c5: dc dec y +11c6: f7 29 mov a,($29)+y +11c8: d5 23 04 mov $0423+x,a +11cb: dc dec y +11cc: f7 29 mov a,($29)+y +11ce: d5 43 04 mov $0443+x,a +11d1: dc dec y +11d2: f7 29 mov a,($29)+y +11d4: d5 83 04 mov $0483+x,a +11d7: dc dec y +11d8: f7 29 mov a,($29)+y +11da: d5 63 04 mov $0463+x,a +11dd: eb 2d mov y,$2d +11df: e4 29 mov a,$29 +11e1: 60 clrc +11e2: 88 08 adc a,#$08 +11e4: d6 43 05 mov $0543+y,a +11e7: e4 2a mov a,$2a +11e9: 88 00 adc a,#$00 +11eb: d6 63 05 mov $0563+y,a +11ee: f6 23 04 mov a,$0423+y +11f1: cd 00 mov x,#$00 +11f3: eb 0d mov y,$0d +11f5: f0 23 beq $121a +11f7: cf mul ya +11f8: cb 3a mov $3a,y +11fa: c4 3b mov $3b,a +11fc: cd 05 mov x,#$05 +11fe: 4b 3a lsr $3a +1200: 7c ror a +1201: 1d dec x +1202: d0 fa bne $11fe +1204: eb 3a mov y,$3a +1206: ad 00 cmp y,#$00 +1208: d0 08 bne $1212 +120a: 68 00 cmp a,#$00 +120c: f0 0a beq $1218 +120e: f8 3b mov x,$3b +1210: 2f 08 bra $121a +1212: cd 01 mov x,#$01 +1214: e8 ff mov a,#$ff +1216: 2f 02 bra $121a +1218: 5d mov x,a +1219: bc inc a +121a: eb 2d mov y,$2d +121c: d6 23 04 mov $0423+y,a +121f: 7d mov a,x +1220: 48 ff eor a,#$ff +1222: 08 e0 or a,#$e0 +1224: d6 a3 03 mov $03a3+y,a +1227: e8 ff mov a,#$ff +1229: d6 e3 03 mov $03e3+y,a +122c: 3f f3 0b call $0bf3 +122f: 5d mov x,a +1230: f6 43 04 mov a,$0443+y +1233: fd mov y,a +1234: 7d mov a,x +1235: cf mul ya +1236: da 45 movw $45,ya +1238: 03 07 06 bbs0 $07,$1241 +123b: ba 05 movw ya,$05 +123d: da 45 movw $45,ya +123f: 2f 0a bra $124b +1241: ba 4e movw ya,$4e +1243: 9a 45 subw ya,$45 +1245: b0 02 bcs $1249 +1247: ba 4e movw ya,$4e +1249: cb 46 mov $46,y +124b: eb 2d mov y,$2d +124d: d6 83 05 mov $0583+y,a +1250: e4 46 mov a,$46 +1252: d6 a3 05 mov $05a3+y,a +1255: f6 23 04 mov a,$0423+y +1258: bc inc a +1259: d0 01 bne $125c +125b: 9c dec a +125c: d6 03 05 mov $0503+y,a +125f: 68 03 cmp a,#$03 +1261: b0 05 bcs $1268 +1263: e8 00 mov a,#$00 +1265: d6 c3 04 mov $04c3+y,a +1268: e8 01 mov a,#$01 +126a: d6 a3 04 mov $04a3+y,a +126d: 9c dec a +126e: d6 23 05 mov $0523+y,a +1271: d6 44 ff mov $ff44+y,a +1274: d6 64 ff mov $ff64+y,a +1277: c4 37 mov $37,a +1279: 5f 4e 13 jmp $134e + +127c: eb 2d mov y,$2d +127e: b2 07 clr5 $07 +1280: f6 c3 04 mov a,$04c3+y +1283: c4 37 mov $37,a +1285: f6 a3 04 mov a,$04a3+y +1288: f0 42 beq $12cc +128a: f6 a3 03 mov a,$03a3+y +128d: 60 clrc +128e: 96 e3 03 adc a,$03e3+y +1291: d6 e3 03 mov $03e3+y,a +1294: 90 18 bcc $12ae +1296: f6 03 05 mov a,$0503+y +1299: c4 38 mov $38,a +129b: f0 03 beq $12a0 +129d: 9c dec a +129e: d0 03 bne $12a3 +12a0: f6 23 04 mov a,$0423+y +12a3: d6 03 05 mov $0503+y,a +12a6: 78 02 38 cmp $38,#$02 +12a9: 90 08 bcc $12b3 +12ab: 5f 4e 13 jmp $134e + +12ae: 8f 00 37 mov $37,#$00 +12b1: 2f f8 bra $12ab +12b3: eb 2d mov y,$2d +12b5: f6 23 05 mov a,$0523+y +12b8: bc inc a +12b9: 76 03 04 cmp a,$0403+y +12bc: 90 1b bcc $12d9 +12be: 9c dec a +12bf: 76 83 04 cmp a,$0483+y +12c2: d0 03 bne $12c7 +12c4: 5f 48 13 jmp $1348 + +12c7: e8 00 mov a,#$00 +12c9: d6 a3 04 mov $04a3+y,a +12cc: a2 07 set5 $07 +12ce: f6 24 ff mov a,$ff24+y +12d1: 2d push a +12d2: f6 04 ff mov a,$ff04+y +12d5: ee pop y +12d6: 5f ff 13 jmp $13ff + +12d9: d6 23 05 mov $0523+y,a +12dc: f6 a3 05 mov a,$05a3+y +12df: 16 83 05 or a,$0583+y +12e2: f0 6a beq $134e +12e4: f8 28 mov x,$28 +12e6: f5 46 02 mov a,$0246+x +12e9: 28 02 and a,#$02 +12eb: f0 24 beq $1311 +12ed: e8 01 mov a,#$01 +12ef: 74 6f cmp a,$6f+x +12f1: d0 03 bne $12f6 +12f3: 83 07 09 bbs4 $07,$12ff +12f6: eb 28 mov y,$28 +12f8: f6 46 02 mov a,$0246+y +12fb: 28 01 and a,#$01 +12fd: f0 3d beq $133c +12ff: e8 00 mov a,#$00 +1301: d6 78 00 mov $0078+y,a +1304: d6 79 00 mov $0079+y,a +1307: eb 2d mov y,$2d +1309: d6 83 05 mov $0583+y,a +130c: d6 a3 05 mov $05a3+y,a +130f: 2f 21 bra $1332 +1311: f6 83 05 mov a,$0583+y +1314: 80 setc +1315: b6 23 04 sbc a,$0423+y +1318: d6 83 05 mov $0583+y,a +131b: c4 45 mov $45,a +131d: f6 a3 05 mov a,$05a3+y +1320: a8 00 sbc a,#$00 +1322: b0 07 bcs $132b +1324: e8 00 mov a,#$00 +1326: d6 83 05 mov $0583+y,a +1329: c4 45 mov $45,a +132b: d6 a3 05 mov $05a3+y,a +132e: 04 45 or a,$45 +1330: d0 0a bne $133c +1332: f6 83 04 mov a,$0483+y +1335: 76 03 04 cmp a,$0403+y +1338: 90 11 bcc $134b +133a: a2 07 set5 $07 +133c: eb 2d mov y,$2d +133e: f6 23 05 mov a,$0523+y +1341: 76 83 04 cmp a,$0483+y +1344: 90 08 bcc $134e +1346: f0 06 beq $134e +1348: f6 63 04 mov a,$0463+y +134b: d6 23 05 mov $0523+y,a +134e: eb 2d mov y,$2d +1350: f8 37 mov x,$37 +1352: f0 1c beq $1370 +1354: 78 03 38 cmp $38,#$03 +1357: 90 17 bcc $1370 +1359: f6 04 ff mov a,$ff04+y +135c: c4 33 mov $33,a +135e: f6 24 ff mov a,$ff24+y +1361: c4 34 mov $34,a +1363: f6 44 ff mov a,$ff44+y +1366: c4 35 mov $35,a +1368: f6 64 ff mov a,$ff64+y +136b: c4 36 mov $36,a +136d: 5f ed 13 jmp $13ed + +1370: f6 43 05 mov a,$0543+y +1373: c4 2b mov $2b,a +1375: f6 63 05 mov a,$0563+y +1378: c4 2c mov $2c,a +137a: f6 23 05 mov a,$0523+y +137d: fd mov y,a +137e: 43 08 07 bbs2 $08,$1388 +1381: f7 2b mov a,($2b)+y +1383: 8d 40 mov y,#$40 +1385: cf mul ya +1386: 2f 10 bra $1398 +1388: 8d 02 mov y,#$02 +138a: cf mul ya +138b: 7a 2b addw ya,$2b +138d: da 2b movw $2b,ya +138f: 8d 01 mov y,#$01 +1391: f7 2b mov a,($2b)+y +1393: dc dec y +1394: 2d push a +1395: f7 2b mov a,($2b)+y +1397: ee pop y +1398: f8 37 mov x,$37 +139a: f0 55 beq $13f1 +139c: 78 02 38 cmp $38,#$02 +139f: f0 50 beq $13f1 +13a1: da 3a movw $3a,ya +13a3: eb 2d mov y,$2d +13a5: f6 24 ff mov a,$ff24+y +13a8: c4 34 mov $34,a +13aa: f6 04 ff mov a,$ff04+y +13ad: c4 33 mov $33,a +13af: eb 34 mov y,$34 +13b1: 80 setc +13b2: 9a 3a subw ya,$3a +13b4: da 35 movw $35,ya +13b6: e8 00 mov a,#$00 +13b8: 3c rol a +13b9: c4 3a mov $3a,a +13bb: d0 08 bne $13c5 +13bd: 58 ff 35 eor $35,#$ff +13c0: 58 ff 36 eor $36,#$ff +13c3: 3a 35 incw $35 +13c5: eb 2d mov y,$2d +13c7: f6 23 04 mov a,$0423+y +13ca: 5d mov x,a +13cb: ba 35 movw ya,$35 +13cd: 3f 0a 14 call $140a +13d0: c4 35 mov $35,a +13d2: d8 36 mov $36,x +13d4: 78 01 3a cmp $3a,#$01 +13d7: d0 08 bne $13e1 +13d9: 58 ff 35 eor $35,#$ff +13dc: 58 ff 36 eor $36,#$ff +13df: 3a 35 incw $35 +13e1: eb 2d mov y,$2d +13e3: e4 35 mov a,$35 +13e5: d6 44 ff mov $ff44+y,a +13e8: e4 36 mov a,$36 +13ea: d6 64 ff mov $ff64+y,a +13ed: ba 33 movw ya,$33 +13ef: 7a 35 addw ya,$35 +13f1: da 33 movw $33,ya +13f3: eb 2d mov y,$2d +13f5: d6 04 ff mov $ff04+y,a +13f8: e4 34 mov a,$34 +13fa: d6 24 ff mov $ff24+y,a +13fd: ba 33 movw ya,$33 +13ff: 43 08 07 bbs2 $08,$1409 +1402: cd 40 mov x,#$40 +1404: 9e div ya,x +1405: 8d 00 mov y,#$00 +1407: da 33 movw $33,ya +1409: 6f ret + +140a: c8 00 cmp x,#$00 +140c: d0 04 bne $1412 +140e: 1d dec x +140f: 7d mov a,x +1410: fd mov y,a +1411: 6f ret + +1412: 40 setp +1413: cb 01 mov $01,y +1415: 3e 01 cmp x,$01 +1417: f0 02 beq $141b +1419: b0 1a bcs $1435 +141b: c4 00 mov $00,a +141d: dd mov a,y +141e: 8d 00 mov y,#$00 +1420: 9e div ya,x +1421: c4 02 mov $02,a +1423: fd mov y,a +1424: 7d mov a,x +1425: cf mul ya +1426: c4 03 mov $03,a +1428: e4 01 mov a,$01 +142a: 80 setc +142b: a4 03 sbc a,$03 +142d: fd mov y,a +142e: e4 00 mov a,$00 +1430: 9e div ya,x +1431: f8 02 mov x,$02 +1433: 20 clrp +1434: 6f ret + +1435: 9e div ya,x +1436: cd 00 mov x,#$00 +1438: 20 clrp +1439: 6f ret + +143a: 4d push x +143b: f5 f4 fc mov a,$fcf4+x +143e: 8d 04 mov y,#$04 +1440: cf mul ya +1441: 7a 24 addw ya,$24 +1443: da 00 movw $00,ya +1445: f5 ef 07 mov a,$07ef+x +1448: c4 f2 mov $f2,a +144a: 7d mov a,x +144b: 1c asl a +144c: 1c asl a +144d: 5d mov x,a +144e: f5 02 02 mov a,$0202+x +1451: c5 26 02 mov $0226,a +1454: f5 03 02 mov a,$0203+x +1457: c5 27 02 mov $0227,a +145a: 8f 09 f3 mov $f3,#$09 +145d: 8d 00 mov y,#$00 +145f: f7 00 mov a,($00)+y +1461: d5 00 02 mov $0200+x,a +1464: fc inc y +1465: f7 00 mov a,($00)+y +1467: d5 01 02 mov $0201+x,a +146a: fc inc y +146b: f7 00 mov a,($00)+y +146d: d5 02 02 mov $0202+x,a +1470: fc inc y +1471: f7 00 mov a,($00)+y +1473: d5 03 02 mov $0203+x,a +1476: 8d 01 mov y,#$01 +1478: f7 00 mov a,($00)+y +147a: c4 3d mov $3d,a +147c: dc dec y +147d: f7 00 mov a,($00)+y +147f: 80 setc +1480: a8 03 sbc a,#$03 +1482: c4 3c mov $3c,a +1484: b8 00 3d sbc $3d,#$00 +1487: f7 3c mov a,($3c)+y +1489: c5 04 01 mov $0104,a +148c: fc inc y +148d: f7 3c mov a,($3c)+y +148f: c5 05 01 mov $0105,a +1492: fc inc y +1493: f7 3c mov a,($3c)+y +1495: c4 64 mov $64,a +1497: 10 14 bpl $14ad +1499: 28 1f and a,#$1f +149b: 8f 6c f2 mov $f2,#$6c +149e: 38 e0 f3 and $f3,#$e0 +14a1: 04 f3 or a,$f3 +14a3: c4 f3 mov $f3,a +14a5: 8f 3d f2 mov $f2,#$3d +14a8: 09 4a f3 or ($f3),($4a) +14ab: 2f 06 bra $14b3 +14ad: 8f 3d f2 mov $f2,#$3d +14b0: 29 4b f3 and ($f3),($4b) +14b3: ce pop x +14b4: f5 ef 07 mov a,$07ef+x +14b7: c4 f2 mov $f2,a +14b9: d8 f3 mov $f3,x +14bb: 6f ret + +14bc: 60 clrc +14bd: 88 a0 adc a,#$a0 ; add offset to input frequency (1440) +14bf: 5d mov x,a +14c0: dd mov a,y +14c1: 88 05 adc a,#$05 +14c3: fd mov y,a +14c4: 7d mov a,x +14c5: ad 0a cmp y,#$0a ; check if it is in within positive range +14c7: 90 06 bcc $14cf ; in range +14c9: d0 0a bne $14d5 ; out of range +14cb: 68 50 cmp a,#$50 +14cd: b0 06 bcs $14d5 ; out of range +14cf: 8f ff 44 mov $44,#$ff +14d2: 5f eb 14 jmp $14eb + +14d5: ad 80 cmp y,#$80 +14d7: 90 0f bcc $14e8 +14d9: 8f 00 44 mov $44,#$00 +14dc: 60 clrc +14dd: 88 20 adc a,#$20 +14df: 5d mov x,a +14e0: dd mov a,y +14e1: 88 df adc a,#$df +14e3: fd mov y,a +14e4: 7d mov a,x +14e5: 5f eb 14 jmp $14eb + +14e8: 8f 0a 44 mov $44,#$0a +14eb: cd f0 mov x,#$f0 +14ed: 9e div ya,x +14ee: 78 ff 44 cmp $44,#$ff +14f1: d0 02 bne $14f5 +14f3: c4 44 mov $44,a +14f5: f6 10 15 mov a,$1510+y ;get pitch value (from table) +14f8: c4 3a mov $3a,a +14fa: f6 00 16 mov a,$1600+y +14fd: c4 3b mov $3b,a +14ff: e8 0a mov a,#$0a +1501: 80 setc +1502: a4 44 sbc a,$44 +1504: f0 07 beq $150d +1506: fd mov y,a +1507: 4b 3b lsr $3b +1509: 6b 3a ror $3a +150b: fe fa dbnz y,$1507 +150d: ba 3a movw ya,$3a +150f: 6f ret + +; pitch table (low byte) +1510: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 + +; pitch table (high byte) +1600: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f + +16f0: 3f 6a 17 call $176a +16f3: 8f 00 8a mov $8a,#$00 +16f6: e4 89 mov a,$89 +16f8: f0 20 beq $171a +16fa: e4 88 mov a,$88 +16fc: 9c dec a +16fd: c4 8b mov $8b,a +16ff: 3f f3 0b call $0bf3 +1702: f8 8a mov x,$8a +1704: f5 07 01 mov a,$0107+x +1707: 30 0a bmi $1713 +1709: 5d mov x,a +170a: c4 8b mov $8b,a +170c: f5 66 03 mov a,$0366+x +170f: 5d mov x,a +1710: 1f f8 1d jmp ($1df8+x) + +1713: ab 8a inc $8a +1715: 69 88 8a cmp ($8a),($88) +1718: d0 e5 bne $16ff +171a: 6f ret + +171b: c4 3a mov $3a,a +171d: f6 67 00 mov a,$0067+y +1720: 28 80 and a,#$80 +1722: f0 08 beq $172c +1724: f6 12 00 mov a,$0012+y +1727: 9c dec a +1728: d6 12 00 mov $0012+y,a +172b: 6f ret + +172c: f6 6f 00 mov a,$006f+y +172f: 64 3a cmp a,$3a +1731: d0 07 bne $173a +1733: f6 12 00 mov a,$0012+y +1736: 5c lsr a +1737: d6 12 00 mov $0012+y,a +173a: 6f ret + +173b: 3f f3 0b call $0bf3 +173e: f8 8b mov x,$8b +1740: 9b b7 dec $b7+x +1742: d0 cf bne $1713 +1744: 2f 1c bra $1762 +1746: 3f f3 0b call $0bf3 +1749: f8 8b mov x,$8b +174b: 9b b7 dec $b7+x +174d: d0 c4 bne $1713 +174f: e8 04 mov a,#$04 +1751: d5 66 03 mov $0366+x,a +1754: 5f 56 18 jmp $1856 + +; vcmd ec - set pitch bend state and release +1757: 3f b0 17 call $17b0 + +; vcmd eb - set pitch bend state +175a: e8 00 mov a,#$00 +175c: d5 c6 02 mov $02c6+x,a +175f: d5 da 02 mov $02da+x,a +1762: e8 06 mov a,#$06 +1764: d5 66 03 mov $0366+x,a +1767: 5f e8 17 jmp $17e8 + +176a: d3 07 2f bbc6 $07,$179c +176d: d2 07 clr6 $07 +176f: f8 88 mov x,$88 +1771: f0 29 beq $179c +1773: e8 ff mov a,#$ff +1775: 1d dec x +1776: d5 07 01 mov $0107+x,a +1779: 1d dec x +177a: 10 fa bpl $1776 +177c: f8 88 mov x,$88 +177e: 1d dec x +177f: 8f 00 3a mov $3a,#$00 +1782: eb 3a mov y,$3a +1784: f6 07 01 mov a,$0107+y +1787: 30 14 bmi $179d +1789: fd mov y,a +178a: f5 b2 02 mov a,$02b2+x +178d: 76 b2 02 cmp a,$02b2+y +1790: b0 0b bcs $179d +1792: ab 3a inc $3a +1794: 78 14 3a cmp $3a,#$14 +1797: d0 e9 bne $1782 +1799: 1d dec x +179a: 10 e3 bpl $177f +179c: 6f ret + +179d: eb 3a mov y,$3a +179f: 4d push x +17a0: 40 setp +17a1: f6 07 01 mov a,$0107+y +17a4: d9 07 mov $07+y,x +17a6: 5d mov x,a +17a7: fc inc y +17a8: 68 ff cmp a,#$ff +17aa: d0 f5 bne $17a1 +17ac: ce pop x +17ad: 20 clrp +17ae: 2f e9 bra $1799 +17b0: f5 27 06 mov a,$0627+x +17b3: 30 1d bmi $17d2 +17b5: fd mov y,a +17b6: 7d mov a,x +17b7: 08 80 or a,#$80 +17b9: 76 d2 00 cmp a,$00d2+y +17bc: d0 14 bne $17d2 +17be: e8 01 mov a,#$01 +17c0: 16 46 02 or a,$0246+y +17c3: d6 46 02 mov $0246+y,a +17c6: e8 01 mov a,#$01 +17c8: 3f 1b 17 call $171b +17cb: f5 7a 03 mov a,$037a+x +17ce: 28 02 and a,#$02 +17d0: d0 00 bne $17d2 +17d2: 6f ret + +17d3: c4 02 mov $02,a +17d5: 7d mov a,x +17d6: 8d 05 mov y,#$05 +17d8: cf mul ya +17d9: 60 clrc +17da: 84 02 adc a,$02 +17dc: fd mov y,a +17dd: cb 02 mov $02,y +17df: 6f ret + +; voice numbers +17e0: db $01,$02,$04,$08,$10,$20,$40,$80 + +17e8: 3f f3 0b call $0bf3 +17eb: f8 8b mov x,$8b +17ed: f5 c6 02 mov a,$02c6+x +17f0: c4 3a mov $3a,a +17f2: f5 da 02 mov a,$02da+x +17f5: c4 3b mov $3b,a +17f7: 3f 29 1a call $1a29 +17fa: fd mov y,a +17fb: 28 0f and a,#$0f +17fd: 2d push a +17fe: dd mov a,y +17ff: 5c lsr a +1800: 5c lsr a +1801: 5c lsr a +1802: 5c lsr a +1803: f0 28 beq $182d +1805: 60 clrc +1806: 88 f8 adc a,#$f8 +1808: 8d 00 mov y,#$00 +180a: 68 00 cmp a,#$00 +180c: 10 01 bpl $180f +180e: dc dec y +180f: 7a 3a addw ya,$3a +1811: d5 c6 02 mov $02c6+x,a +1814: dd mov a,y +1815: d5 da 02 mov $02da+x,a +1818: 8f 00 8c mov $8c,#$00 +181b: 3f ee 18 call $18ee +181e: f8 8b mov x,$8b +1820: ae pop a +1821: 68 00 cmp a,#$00 +1823: f0 c3 beq $17e8 +1825: d4 b7 mov $b7+x,a +1827: 3f 12 1c call $1c12 +182a: 5f 13 17 jmp $1713 + +182d: ae pop a +182e: dd mov a,y +182f: 68 00 cmp a,#$00 +1831: d0 03 bne $1836 +1833: 5f 4f 17 jmp $174f + +1836: 68 01 cmp a,#$01 +1838: d0 0b bne $1845 +183a: 3f 29 1a call $1a29 +183d: d4 b7 mov $b7+x,a +183f: 3f 12 1c call $1c12 +1842: 5f 13 17 jmp $1713 + +1845: 68 02 cmp a,#$02 +1847: d0 05 bne $184e +1849: 3f b0 17 call $17b0 +184c: 2f 9a bra $17e8 +184e: f4 b7 mov a,$b7+x +1850: 2d push a +1851: 3f 29 1a call $1a29 +1854: 2f b2 bra $1808 +1856: f8 8b mov x,$8b +1858: f5 4e 02 mov a,$024e+x +185b: 68 05 cmp a,#$05 +185d: f0 1e beq $187d +185f: 3f d3 17 call $17d3 +1862: f6 98 fd mov a,$fd98+y +1865: c4 00 mov $00,a +1867: f6 34 fd mov a,$fd34+y +186a: c4 01 mov $01,a +186c: 8d 02 mov y,#$02 +186e: f7 00 mov a,($00)+y +1870: de 8f 0a cbne $8f+x,$187d +1873: 8d 03 mov y,#$03 +1875: f7 00 mov a,($00)+y +1877: de a3 03 cbne $a3+x,$187d + +; play melody byte +187a: 5f 62 1b jmp $1b62 + +187d: 3f f3 0b call $0bf3 +1880: 3f 29 1a call $1a29 ; get 1 byte +1883: fd mov y,a ; separate the flags +1884: ad e0 cmp y,#$e0 ; check if it's a vector command +1886: 90 16 bcc $189e ; if not a vector... +1888: dd mov a,y +1889: 28 1f and a,#$1f ; mask off bits +188b: 1c asl a +188c: fd mov y,a +188d: f6 53 1c mov a,$1c53+y +1890: c5 9c 18 mov $189c,a +1893: f6 54 1c mov a,$1c54+y +1896: c5 9d 18 mov $189d,a +1899: eb 3a mov y,$3a +189b: 5f c8 1a jmp $1ac8 + +189e: ad c0 cmp y,#$c0 ; is it a rest? +18a0: 90 06 bcc $18a8 +18a2: 80 setc +18a3: a8 bf sbc a,#$bf ; get the duration +18a5: 5f ab 1a jmp $1aab ; and set rest + +18a8: ad 00 cmp y,#$00 ; is it a relative note? +18aa: 10 06 bpl $18b2 ; if so, play the note +18ac: 80 setc ; otherwise, it must be an absolute note... +18ad: a8 60 sbc a,#$60 +18af: fd mov y,a +18b0: 2f 16 bra $18c8 +18b2: 2d push a +18b3: 5c lsr a +18b4: 5c lsr a +18b5: 5c lsr a +18b6: 80 setc +18b7: a8 08 sbc a,#$08 +18b9: 60 clrc +18ba: 95 76 02 adc a,$0276+x +18bd: fd mov y,a +18be: ae pop a +18bf: 28 07 and a,#$07 +18c1: bc inc a +18c2: 2f 07 bra $18cb + +; vcmd ef - play absolute note +18c4: 3f 29 1a call $1a29 +18c7: fd mov y,a +18c8: 3f 29 1a call $1a29 +18cb: 2d push a +18cc: e8 00 mov a,#$00 +18ce: d5 c6 02 mov $02c6+x,a +18d1: d5 da 02 mov $02da+x,a +18d4: dd mov a,y +18d5: d5 76 02 mov $0276+x,a +18d8: 8f 01 8c mov $8c,#$01 +18db: f3 07 02 bbc7 $07,$18e0 +18de: 8b 8c dec $8c +18e0: f2 07 clr7 $07 +18e2: ae pop a +18e3: 3f e9 18 call $18e9 +18e6: 5f 13 17 jmp $1713 + +18e9: d4 b7 mov $b7+x,a +18eb: 3f 0c 1c call $1c0c +18ee: f5 7a 03 mov a,$037a+x +18f1: 28 01 and a,#$01 +18f3: d0 61 bne $1956 +18f5: e4 8c mov a,$8c +18f7: f0 06 beq $18ff +18f9: 3f b0 17 call $17b0 +18fc: 73 07 16 bbc3 $07,$1915 +18ff: f5 27 06 mov a,$0627+x +1902: 30 0d bmi $1911 +1904: fd mov y,a +1905: 7d mov a,x +1906: 08 80 or a,#$80 +1908: 76 d2 00 cmp a,$00d2+y +190b: d0 04 bne $1911 +190d: dd mov a,y +190e: 5d mov x,a +190f: 2f 4a bra $195b +1911: ab 8c inc $8c +1913: 72 07 clr3 $07 +1915: e8 ff mov a,#$ff +1917: d5 27 06 mov $0627+x,a +191a: f5 b2 02 mov a,$02b2+x +191d: c4 54 mov $54,a +191f: f5 eb 05 mov a,$05eb+x +1922: c4 0b mov $0b,a +1924: f5 13 06 mov a,$0613+x +1927: c4 53 mov $53,a +1929: f5 ff 05 mov a,$05ff+x +192c: 5d mov x,a +192d: f5 e0 17 mov a,$17e0+x +1930: c4 55 mov $55,a +1932: 3f 92 0e call $0e92 +1935: 30 1f bmi $1956 +1937: f5 7a 03 mov a,$037a+x +193a: 28 fd and a,#$fd +193c: b3 0b 02 bbc5 $0b,$1941 +193f: 08 02 or a,#$02 +1941: d5 7a 03 mov $037a+x,a +1944: d3 0b 12 bbc6 $0b,$1959 +1947: 7d mov a,x +1948: 53 0b 03 bbc2 $0b,$194e +194b: bc inc a +194c: 2f 01 bra $194f +194e: 9c dec a +194f: 28 07 and a,#$07 +1951: d5 ff 05 mov $05ff+x,a +1954: 2f 03 bra $1959 +1956: 5f 24 1a jmp $1a24 + +1959: 7d mov a,x +195a: fd mov y,a +195b: f8 8b mov x,$8b +195d: d5 27 06 mov $0627+x,a +1960: 7d mov a,x +1961: 08 80 or a,#$80 +1963: d6 d2 00 mov $00d2+y,a +1966: e4 8c mov a,$8c +1968: f0 00 beq $196a +196a: cb cb mov $cb,y +196c: e8 01 mov a,#$01 +196e: d6 6f 00 mov $006f+y,a +1971: f5 b2 02 mov a,$02b2+x +1974: d6 12 00 mov $0012+y,a +1977: dd mov a,y +1978: 1c asl a +1979: fd mov y,a +197a: f5 ee 02 mov a,$02ee+x +197d: d6 5b 01 mov $015b+y,a +1980: f5 02 03 mov a,$0302+x +1983: d6 5c 01 mov $015c+y,a +1986: f5 76 02 mov a,$0276+x +1989: 8d 14 mov y,#$14 +198b: cf mul ya +198c: 80 setc +198d: a8 84 sbc a,#$84 +198f: c4 50 mov $50,a +1991: dd mov a,y +1992: a8 03 sbc a,#$03 +1994: c4 51 mov $51,a +1996: f5 da 02 mov a,$02da+x +1999: fd mov y,a +199a: f5 c6 02 mov a,$02c6+x +199d: 7a 50 addw ya,$50 +199f: da 50 movw $50,ya +19a1: f5 4f 06 mov a,$064f+x +19a4: fd mov y,a +19a5: f5 3b 06 mov a,$063b+x +19a8: 7a 50 addw ya,$50 +19aa: 7a 61 addw ya,$61 +19ac: da 50 movw $50,ya +19ae: f5 77 06 mov a,$0677+x +19b1: fd mov y,a +19b2: f5 63 06 mov a,$0663+x +19b5: 7a 50 addw ya,$50 +19b7: dd mov a,y +19b8: eb 8c mov y,$8c +19ba: d0 13 bne $19cf +19bc: c4 3d mov $3d,a +19be: fa 50 3c mov ($3c),($50) +19c1: 8f d4 00 mov $00,#$d4 +19c4: 8f fc 01 mov $01,#$fc +19c7: 7d mov a,x +19c8: 08 80 or a,#$80 +19ca: 3f b8 1d call $1db8 +19cd: 2f 55 bra $1a24 +19cf: f5 c3 05 mov a,$05c3+x +19d2: 10 02 bpl $19d6 +19d4: e8 7f mov a,#$7f +19d6: c4 cc mov $cc,a +19d8: e4 cb mov a,$cb +19da: 1c asl a +19db: fd mov y,a +19dc: e8 00 mov a,#$00 +19de: 12 07 clr0 $07 +19e0: d6 da 00 mov $00da+y,a +19e3: d6 db 00 mov $00db+y,a +19e6: e4 cb mov a,$cb +19e8: fd mov y,a +19e9: f6 46 02 mov a,$0246+y +19ec: 08 02 or a,#$02 +19ee: d6 46 02 mov $0246+y,a +19f1: e8 ff mov a,#$ff +19f3: d6 92 03 mov $0392+y,a +19f6: f5 9e 02 mov a,$029e+x +19f9: d6 9a 03 mov $039a+y,a +19fc: f5 16 03 mov a,$0316+x +19ff: c4 0f mov $0f,a +1a01: f5 62 02 mov a,$0262+x +1a04: c5 3d 02 mov $023d,a +1a07: f5 3e 03 mov a,$033e+x +1a0a: c4 0e mov $0e,a +1a0c: f5 52 03 mov a,$0352+x +1a0f: c4 11 mov $11,a +1a11: f5 2a 03 mov a,$032a+x +1a14: c4 10 mov $10,a +1a16: eb cc mov y,$cc +1a18: f5 8a 02 mov a,$028a+x +1a1b: cf mul ya +1a1c: f5 d7 05 mov a,$05d7+x +1a1f: f8 cb mov x,$cb +1a21: 3f 04 0f call $0f04 +1a24: ab 8c inc $8c +1a26: 72 07 clr3 $07 +1a28: 6f ret + +1a29: 3f f3 0b call $0bf3 +1a2c: f8 8b mov x,$8b +1a2e: f4 8f mov a,$8f+x +1a30: c5 39 1a mov $1a39,a +1a33: f4 a3 mov a,$a3+x +1a35: c5 3a 1a mov $1a3a,a +1a38: e5 53 9e mov a,$9e53 +1a3b: bb 8f inc $8f+x +1a3d: d0 02 bne $1a41 +1a3f: bb a3 inc $a3+x +1a41: 6f ret + +; vcmd e9 - set effects mask +1a42: 3f 29 1a call $1a29 +1a45: c4 0c mov $0c,a +1a47: 2f 09 bra $1a52 + +; vcmd e6 - set standard allocation +1a49: e8 08 mov a,#$08 +1a4b: d5 eb 05 mov $05eb+x,a +1a4e: 7d mov a,x +1a4f: d5 ff 05 mov $05ff+x,a +1a52: 5f 56 18 jmp $1856 + +; vcmd e5 - set channel allocation +1a55: 3f 29 1a call $1a29 +1a58: d5 eb 05 mov $05eb+x,a +1a5b: 3f 29 1a call $1a29 +1a5e: d5 ff 05 mov $05ff+x,a +1a61: 3f 29 1a call $1a29 +1a64: d5 13 06 mov $0613+x,a +1a67: 2f e9 bra $1a52 + +; vcmd f0 - end of sequence +1a69: 3f b0 17 call $17b0 +1a6c: e8 00 mov a,#$00 +1a6e: d5 66 03 mov $0366+x,a +1a71: 8b 89 dec $89 +1a73: 5f 13 17 jmp $1713 + +; vcmd f1 - delta expression +1a76: f5 c3 05 mov a,$05c3+x +1a79: 3f 81 1a call $1a81 +1a7c: d5 c3 05 mov $05c3+x,a +1a7f: 2f d1 bra $1a52 +1a81: 4d push x +1a82: fd mov y,a +1a83: 6d push y +1a84: 3f 29 1a call $1a29 +1a87: cf mul ya +1a88: da 3a movw $3a,ya +1a8a: ee pop y +1a8b: 3f 29 1a call $1a29 +1a8e: cf mul ya +1a8f: 6d push y +1a90: 0b 3a asl $3a +1a92: 84 3b adc a,$3b +1a94: 5d mov x,a +1a95: ae pop a +1a96: 88 00 adc a,#$00 +1a98: fd mov y,a +1a99: d0 03 bne $1a9e +1a9b: 7d mov a,x +1a9c: 10 02 bpl $1aa0 +1a9e: e8 7f mov a,#$7f +1aa0: ce pop x +1aa1: 6f ret + +; vcmd f2 - absolute expression +1aa2: 3f 29 1a call $1a29 +1aa5: d5 c3 05 mov $05c3+x,a +1aa8: 5f 56 18 jmp $1856 + +1aab: 2d push a +1aac: 3f b0 17 call $17b0 +1aaf: ae pop a +1ab0: d4 b7 mov $b7+x,a +1ab2: 3f 0c 1c call $1c0c +1ab5: 5f 13 17 jmp $1713 + +; vcmd fd - set time (delay) - 64 +1ab8: e8 40 mov a,#$40 +1aba: 2f f4 bra $1ab0 + +; vcnd f8 - set time (delay) - 32 +1abc: e8 20 mov a,#$20 +1abe: 2f f0 bra $1ab0 + +; vcmd fe - set time (delay) - 128 +1ac0: e8 80 mov a,#$80 +1ac2: 2f ec bra $1ab0 + +; vcmd ff - set time (delay) - 256 +1ac4: e8 00 mov a,#$00 +1ac6: 2f e8 bra $1ab0 + +; vcmd f5 - set sound (instrument) +1ac8: 3f 29 1a call $1a29 +1acb: d5 d7 05 mov $05d7+x,a +1ace: f5 4e 02 mov a,$024e+x +1ad1: 68 05 cmp a,#$05 +1ad3: f0 2b beq $1b00 +1ad5: 3f d3 17 call $17d3 +1ad8: f6 98 fd mov a,$fd98+y +1adb: c4 00 mov $00,a +1add: f6 34 fd mov a,$fd34+y +1ae0: c4 01 mov $01,a +1ae2: f6 04 fc mov a,$fc04+y +1ae5: 8d 09 mov y,#$09 +1ae7: 77 00 cmp a,($00)+y +1ae9: 90 02 bcc $1aed +1aeb: e8 00 mov a,#$00 +1aed: bc inc a +1aee: eb 02 mov y,$02 +1af0: d6 04 fc mov $fc04+y,a +1af3: 60 clrc +1af4: 88 09 adc a,#$09 +1af6: fd mov y,a +1af7: f7 00 mov a,($00)+y +1af9: 68 ff cmp a,#$ff +1afb: f0 03 beq $1b00 +1afd: d5 d7 05 mov $05d7+x,a +1b00: 5f 56 18 jmp $1856 + +; vcmd f6 - play phrase +1b03: f5 4e 02 mov a,$024e+x +1b06: 9c dec a +1b07: d5 4e 02 mov $024e+x,a +1b0a: 3f d3 17 call $17d3 +1b0d: f4 8f mov a,$8f+x +1b0f: d6 98 fd mov $fd98+y,a +1b12: f4 a3 mov a,$a3+x +1b14: d6 34 fd mov $fd34+y,a +1b17: e8 00 mov a,#$00 +1b19: d6 68 fc mov $fc68+y,a +1b1c: 3f 29 1a call $1a29 +1b1f: 2d push a +1b20: 3f 2e 1a call $1a2e +1b23: 2d push a +1b24: 3f 2e 1a call $1a2e +1b27: 3f 2e 1a call $1a2e +1b2a: 3f 2e 1a call $1a2e +1b2d: 3f 2e 1a call $1a2e +1b30: fd mov y,a +1b31: 3f 2e 1a call $1a2e +1b34: 2d push a +1b35: dd mov a,y +1b36: 60 clrc +1b37: 95 3b 06 adc a,$063b+x +1b3a: d5 3b 06 mov $063b+x,a +1b3d: ae pop a +1b3e: 95 4f 06 adc a,$064f+x +1b41: d5 4f 06 mov $064f+x,a +1b44: f5 c3 05 mov a,$05c3+x +1b47: eb 02 mov y,$02 +1b49: d6 00 fe mov $fe00+y,a +1b4c: 3f 81 1a call $1a81 +1b4f: d5 c3 05 mov $05c3+x,a +1b52: eb 02 mov y,$02 +1b54: e8 00 mov a,#$00 +1b56: d6 04 fc mov $fc04+y,a +1b59: ae pop a +1b5a: d4 a3 mov $a3+x,a +1b5c: ae pop a +1b5d: d4 8f mov $8f+x,a +1b5f: 5f 56 18 jmp $1856 + +1b62: eb 02 mov y,$02 +1b64: f6 68 fc mov a,$fc68+y +1b67: bc inc a +1b68: d6 68 fc mov $fc68+y,a +1b6b: 8d 04 mov y,#$04 +1b6d: f7 00 mov a,($00)+y +1b6f: f0 07 beq $1b78 +1b71: eb 02 mov y,$02 +1b73: 76 68 fc cmp a,$fc68+y +1b76: f0 0f beq $1b87 +1b78: 8d 00 mov y,#$00 +1b7a: f7 00 mov a,($00)+y +1b7c: d4 8f mov $8f+x,a +1b7e: 8d 01 mov y,#$01 +1b80: f7 00 mov a,($00)+y +1b82: d4 a3 mov $a3+x,a +1b84: 5f 7d 18 jmp $187d + +1b87: f5 3b 06 mov a,$063b+x +1b8a: 80 setc +1b8b: 8d 05 mov y,#$05 +1b8d: b7 00 sbc a,($00)+y +1b8f: d5 3b 06 mov $063b+x,a +1b92: f5 4f 06 mov a,$064f+x +1b95: 8d 06 mov y,#$06 +1b97: b7 00 sbc a,($00)+y +1b99: d5 4f 06 mov $064f+x,a +1b9c: eb 02 mov y,$02 +1b9e: f6 00 fe mov a,$fe00+y +1ba1: d5 c3 05 mov $05c3+x,a +1ba4: e4 00 mov a,$00 +1ba6: 60 clrc +1ba7: 88 0a adc a,#$0a +1ba9: d4 8f mov $8f+x,a +1bab: e4 01 mov a,$01 +1bad: 88 00 adc a,#$00 +1baf: d4 a3 mov $a3+x,a +1bb1: 8d 09 mov y,#$09 +1bb3: f7 00 mov a,($00)+y +1bb5: 60 clrc +1bb6: 94 8f adc a,$8f+x +1bb8: d4 8f mov $8f+x,a +1bba: f4 a3 mov a,$a3+x +1bbc: 88 00 adc a,#$00 +1bbe: d4 a3 mov $a3+x,a +1bc0: f5 4e 02 mov a,$024e+x +1bc3: bc inc a +1bc4: d5 4e 02 mov $024e+x,a +1bc7: 5f 56 18 jmp $1856 + +; vcmd ea - set release +1bca: 3f b0 17 call $17b0 +1bcd: 2f 03 bra $1bd2 + +; vcmd f9 - go to loop +1bcf: 3f c7 1c call $1cc7 +1bd2: 5f 56 18 jmp $1856 + +; vcmd fa - set tempo +1bd5: 3f 29 1a call $1a29 +1bd8: c4 cd mov $cd,a +1bda: 2f f6 bra $1bd2 + +; vcmd fb - set panning +1bdc: 3f 29 1a call $1a29 +1bdf: d5 9e 02 mov $029e+x,a +1be2: 2f ee bra $1bd2 + +; vcmd e0 - set hardware detune +1be4: 3f 29 1a call $1a29 +1be7: d5 ee 02 mov $02ee+x,a +1bea: 3f 29 1a call $1a29 +1bed: d5 02 03 mov $0302+x,a +1bf0: 2f e0 bra $1bd2 + +; vcmd f3 - set priority +1bf2: 3f 29 1a call $1a29 +1bf5: d5 b2 02 mov $02b2+x,a +1bf8: c2 07 set6 $07 +1bfa: 2f d6 bra $1bd2 + +; vcmd ed - set velocity +1bfc: 3f 29 1a call $1a29 +1bff: d5 8a 02 mov $028a+x,a +1c02: 2f ce bra $1bd2 + +1c04: 62 07 set3 $07 +1c06: 2f ca bra $1bd2 + +; vcmd f4 - set tied note +1c08: e2 07 set7 $07 +1c0a: 2f c6 bra $1bd2 + +1c0c: e8 02 mov a,#$02 +1c0e: d5 66 03 mov $0366+x,a +1c11: 6f ret + +1c12: e8 08 mov a,#$08 +1c14: d5 66 03 mov $0366+x,a +1c17: 6f ret + +; vcmd e1 - set amplitude articulation +1c18: 3f 29 1a call $1a29 +1c1b: d5 16 03 mov $0316+x,a +1c1e: 2f b2 bra $1bd2 + +1c20: 3f 29 1a call $1a29 +1c23: d5 62 02 mov $0262+x,a +1c26: 2f aa bra $1bd2 + +; vcmd e2 - set stereo articulation +1c28: 3f 29 1a call $1a29 +1c2b: d5 52 03 mov $0352+x,a +1c2e: 2f a2 bra $1bd2 + +; vcmd e4 - set pitch articulation +1c30: 3f 29 1a call $1a29 +1c33: d5 2a 03 mov $032a+x,a +1c36: 2f f6 bra $1c2e + +; vcmd e3 - set tone articulation +1c38: 3f 29 1a call $1a29 +1c3b: d5 3e 03 mov $033e+x,a +1c3e: 2f ee bra $1c2e + +; vcmd e7 - reset track +1c40: 3f e4 1c call $1ce4 +1c43: 2f e9 bra $1c2e + +; vcmd f7 - set detune +1c45: 3f 29 1a call $1a29 +1c48: d5 63 06 mov $0663+x,a +1c4b: 3f 29 1a call $1a29 +1c4e: d5 77 06 mov $0677+x,a +1c51: 2f db bra $1c2e + +; vcmd table (e0-ff) +1c53: dw $1be4 ; e0 - set hardware detune +1c55: dw $1c18 ; e1 - set amplitude articulation +1c57: dw $1c28 ; e2 - set stereo articulation +1c59: dw $1c38 ; e3 - set tone articulation +1c5b: dw $1c30 ; e4 - set pitch articulation +1c5d: dw $1a55 ; e5 - set channel allocation +1c5f: dw $1a49 ; e6 - set standard allocation +1c61: dw $1c40 ; e7 - reset track +1c63: dw $0000 ; e8 - redirect track (disabled) +1c65: dw $1a42 ; e9 - set effects mask +1c67: dw $1bca ; ea - set release +1c69: dw $175a ; eb - set pitch bend state +1c6b: dw $1757 ; ec - set pitch bend state and release +1c6d: dw $1bfc ; ed - set velocity +1c6f: dw $0000 ; ee - extended command (disabled) +1c70: dw $18c4 ; ef - play absolute note +1c72: dw $1a69 ; f0 - end of sequence +1c74: dw $1a76 ; f1 - delta expression +1c76: dw $1aa2 ; f2 - absolute expression +1c78: dw $1bf2 ; f3 - set priority +1c7a: dw $1c08 ; f4 - set tied note +1c7c: dw $1ac8 ; f5 - set sound (instrument) +1c7e: dw $1b03 ; f6 - play phrase +1c80: dw $1c45 ; f7 - set detune +1c82: dw $1abc ; f8 - set time (delay) - 32 +1c84: dw $1bcf ; f9 - go to loop +1c86: dw $1bd5 ; fa - set tempo +1c88: dw $1bdc ; fb - set panning +1c8a: dw $1c04 ; fc - set no retrigger +1c8c: dw $1ab8 ; fd - set time (delay) - 64 +1c8e: dw $1ac0 ; fe - set time (delay) - 128 +1c90: dw $1ac4 ; ff - set time (delay) - 256 + +1c93: 2d push a +1c94: 3f 50 0d call $0d50 +1c97: ae pop a +1c98: 92 07 clr4 $07 +1c9a: 8d 1a mov y,#$1a +1c9c: 3f 63 10 call $1063 +1c9f: da 8d movw $8d,ya +1ca1: 8d 00 mov y,#$00 +1ca3: f7 8d mov a,($8d)+y +1ca5: c4 88 mov $88,a +1ca7: c4 89 mov $89,a +1ca9: f0 1b beq $1cc6 +1cab: cb 8b mov $8b,y +1cad: 3f c7 1c call $1cc7 +1cb0: ab 8b inc $8b +1cb2: e8 00 mov a,#$00 +1cb4: d3 08 02 bbc6 $08,$1cb9 +1cb7: e8 01 mov a,#$01 +1cb9: f8 8b mov x,$8b +1cbb: 35 7a 03 and a,$037a+x +1cbe: d5 7a 03 mov $037a+x,a +1cc1: 69 88 8b cmp ($8b),($88) +1cc4: d0 e7 bne $1cad +1cc6: 6f ret + +1cc7: e4 8b mov a,$8b +1cc9: 5d mov x,a +1cca: 1c asl a +1ccb: bc inc a +1ccc: fd mov y,a +1ccd: f7 8d mov a,($8d)+y +1ccf: d4 8f mov $8f+x,a +1cd1: fc inc y +1cd2: f7 8d mov a,($8d)+y +1cd4: d4 a3 mov $a3+x,a +1cd6: e8 ff mov a,#$ff +1cd8: c4 ce mov $ce,a +1cda: e8 05 mov a,#$05 +1cdc: d5 4e 02 mov $024e+x,a +1cdf: e8 04 mov a,#$04 +1ce1: d5 66 03 mov $0366+x,a +1ce4: 72 07 clr3 $07 +1ce6: f2 07 clr7 $07 +1ce8: f8 8b mov x,$8b +1cea: e8 08 mov a,#$08 +1cec: d5 eb 05 mov $05eb+x,a +1cef: 7d mov a,x +1cf0: d5 ff 05 mov $05ff+x,a +1cf3: e8 00 mov a,#$00 +1cf5: d5 76 02 mov $0276+x,a +1cf8: d5 c6 02 mov $02c6+x,a +1cfb: d5 da 02 mov $02da+x,a +1cfe: d5 3b 06 mov $063b+x,a +1d01: d5 4f 06 mov $064f+x,a +1d04: d5 63 06 mov $0663+x,a +1d07: d5 77 06 mov $0677+x,a +1d0a: d5 ee 02 mov $02ee+x,a +1d0d: d5 02 03 mov $0302+x,a +1d10: d5 16 03 mov $0316+x,a +1d13: d5 62 02 mov $0262+x,a +1d16: d5 52 03 mov $0352+x,a +1d19: d5 3e 03 mov $033e+x,a +1d1c: d5 2a 03 mov $032a+x,a +1d1f: d5 9e 02 mov $029e+x,a +1d22: 9c dec a +1d23: d5 27 06 mov $0627+x,a +1d26: d5 8a 02 mov $028a+x,a +1d29: e8 40 mov a,#$40 +1d2b: d5 b2 02 mov $02b2+x,a +1d2e: e8 7f mov a,#$7f +1d30: d5 c3 05 mov $05c3+x,a +1d33: c2 07 set6 $07 +1d35: 8f 6f 00 mov $00,#$6f +1d38: 8f 00 01 mov $01,#$00 +1d3b: 7d mov a,x +1d3c: 08 80 or a,#$80 +1d3e: 8d 00 mov y,#$00 +1d40: 5f 81 1d jmp $1d81 + +1d43: c4 5f mov $5f,a +1d45: 6f ret + +1d46: c4 60 mov $60,a +1d48: 6f ret + +1d49: da 61 movw $61,ya +1d4b: 6f ret + +1d4c: da 2e movw $2e,ya +1d4e: 6f ret + +1d4f: c4 fb mov $fb,a +1d51: 6f ret + +1d52: 28 7f and a,#$7f +1d54: c5 3e 02 mov $023e,a +1d57: 6f ret + +1d58: 12 08 clr0 $08 +1d5a: c5 06 01 mov $0106,a +1d5d: 68 ff cmp a,#$ff +1d5f: f0 02 beq $1d63 +1d61: 02 08 set0 $08 +1d63: 6f ret + +1d64: c5 3f 02 mov $023f,a +1d67: 6f ret + +1d68: c5 40 02 mov $0240,a +1d6b: 6f ret + +1d6c: c5 41 02 mov $0241,a +1d6f: cc 42 02 mov $0242,y +1d72: 6f ret + +1d73: 8f 9a 00 mov $00,#$9a +1d76: 8f 03 01 mov $01,#$03 +1d79: 2f 06 bra $1d81 + +1d7b: 8f 92 00 mov $00,#$92 +1d7e: 8f 03 01 mov $01,#$03 +1d81: c4 3a mov $3a,a +1d83: dd mov a,y +1d84: 5d mov x,a +1d85: e8 07 mov a,#$07 +1d87: fd mov y,a +1d88: f6 d2 00 mov a,$00d2+y +1d8b: 2e 3a 03 cbne $3a,$1d91 +1d8e: 7d mov a,x +1d8f: d7 00 mov ($00)+y,a +1d91: dc dec y +1d92: 10 f4 bpl $1d88 +1d94: 6f ret + +1d95: 28 7f and a,#$7f +1d97: c4 3a mov $3a,a +1d99: cd 07 mov x,#$07 +1d9b: f4 d2 mov a,$d2+x +1d9d: 2e 3a 08 cbne $3a,$1da8 +1da0: f5 46 02 mov a,$0246+x +1da3: 08 03 or a,#$03 +1da5: d5 46 02 mov $0246+x,a +1da8: 1d dec x +1da9: 10 f0 bpl $1d9b +1dab: 6f ret + +1dac: 8f da 00 mov $00,#$da +1daf: 8f 00 01 mov $01,#$00 +1db2: fa 2e 3c mov ($3c),($2e) +1db5: fa 2f 3d mov ($3d),($2f) +1db8: c4 3a mov $3a,a +1dba: e8 0f mov a,#$0f +1dbc: fd mov y,a +1dbd: e8 07 mov a,#$07 +1dbf: 5d mov x,a +1dc0: f4 d2 mov a,$d2+x +1dc2: 2e 3a 0a cbne $3a,$1dcf +1dc5: e4 3d mov a,$3d +1dc7: d7 00 mov ($00)+y,a +1dc9: dc dec y +1dca: e4 3c mov a,$3c +1dcc: d7 00 mov ($00)+y,a +1dce: fc inc y +1dcf: dc dec y +1dd0: dc dec y +1dd1: 1d dec x +1dd2: 10 ec bpl $1dc0 +1dd4: 6f ret + +1dd5: 5d mov x,a +1dd6: e8 01 mov a,#$01 +1dd8: 15 7a 03 or a,$037a+x +1ddb: d5 7a 03 mov $037a+x,a +1dde: 6f ret + +1ddf: 5d mov x,a +1de0: e8 fe mov a,#$fe +1de2: 35 7a 03 and a,$037a+x +1de5: 2f f4 bra $1ddb +1de7: 2e 03 03 cbne $03,$1ded +1dea: d2 08 clr6 $08 +1dec: 6f ret + +1ded: c2 08 set6 $08 +1def: 6f ret + +1df0: 02 09 set0 $09 +1df2: 2e 03 02 cbne $03,$1df7 +1df5: 12 09 clr0 $09 +1df7: 6f ret + +1df8: dw $1713,$1746,$1856,$17e8,$173b,$0ce2,$0d16,$0d1b,$0d07,$1d95,$0000,$078c,$0da4,$0cf5,$0cef,$0ceb,$0000,$0d50,$0d52,$1e55,$0000,$0000,$0da9,$0d13,$1d43,$1d4f,$1d49,$1d46,$1d6c,$1d52,$1d64,$1d7b,$1d4c,$1dac,$1d68,$1d73,$1d58,$1dd5,$1ddf,$1de7,$0788,$1df0,$1e5f + +; uncompiled source code +1e95: db $20,$20,$20,$20,$20,$20,$20,$20,$72,$65,$74,$0d,$0a,$53,$65,$74,$4e,$65,$78,$74,$45,$66,$66,$65,$63,$74,$50,$61,$6e,$0d,$0a,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$6d,$6f,$76,$20,$4e,$65,$78,$74,$45,$78,$53,$74,$65,$72,$65,$6f,$4d,$6f,$64,$2c,$00,$ \ No newline at end of file diff --git a/Pink Panther in Pink Goes to Hollywood.s b/Pink Panther in Pink Goes to Hollywood.s new file mode 100644 index 00000000..a0efa0fe --- /dev/null +++ b/Pink Panther in Pink Goes to Hollywood.s @@ -0,0 +1,1879 @@ +0700: 20 clrp +0701: cd ff mov x,#$ff ; set stack pointer +0703: bd mov sp,x +0704: 8f 6c f2 mov $f2,#$6c ; reset DSP flags +0707: d8 f3 mov $f3,x +0709: 8f b0 f1 mov $f1,#$b0 ; clear input ports APUI00-APUI04 +070c: 8f 20 fa mov $fa,#$20 +070f: 8f 81 f1 mov $f1,#$81 ; toggle timer 2 +0712: 3f f7 0d call $0df7 ; clear/reset routine +0715: 8f 00 0b mov $0b,#$00 ; variables = sample directory start +0718: 8f 18 0c mov $0c,#$18 +071b: 8d 03 mov y,#$03 ; set temporary storage +071d: f6 ff ff mov a,$ffff+y +0720: 16 27 07 or a,$0727+y +0723: d6 ff ff mov $ffff+y,a +0726: fe f5 dbnz y,$071d +0728: ab 15 inc $15 +072a: e4 1b mov a,$1b +072c: d0 05 bne $0733 +072e: 3f 86 15 call $1586 ; do a random number generator (RNG) +0731: 2f 03 bra $0736 +0733: 3f 58 08 call $0858 +0736: e4 f6 mov a,$f6 +0738: f0 03 beq $073d +073a: 3f 3d 0b call $0b3d +073d: e4 fd mov a,$fd +073f: 60 clrc +0740: 84 14 adc a,$14 +0742: c4 14 mov $14,a +0744: 68 05 cmp a,#$05 +0746: 90 ee bcc $0736 +0748: a8 05 sbc a,#$05 +074a: c4 14 mov $14,a +074c: 68 14 cmp a,#$14 +074e: 90 d8 bcc $0728 +0750: 8f 00 14 mov $14,#$00 +0753: 2f d3 bra $0728 +0755: 8d 00 mov y,#$00 +0757: 8f aa f4 mov $f4,#$aa +075a: 8f bb f5 mov $f5,#$bb +075d: f8 f4 mov x,$f4 +075f: c8 cc cmp x,#$cc +0761: d0 fa bne $075d +0763: fa f6 03 mov ($03),($f6) +0766: fa f7 04 mov ($04),($f7) +0769: 7d mov a,x +076a: f8 f5 mov x,$f5 +076c: c4 f4 mov $f4,a +076e: d0 05 bne $0775 +0770: d8 f6 mov $f6,x +0772: 1f 03 00 jmp ($0003+x) + +0775: cd 00 mov x,#$00 +0777: 3e f4 cmp x,$f4 +0779: d0 fc bne $0777 +077b: e4 f5 mov a,$f5 +077d: d7 03 mov ($03)+y,a +077f: f8 f4 mov x,$f4 +0781: d8 f4 mov $f4,x +0783: 3a 03 incw $03 +0785: 3e f4 cmp x,$f4 +0787: f0 fc beq $0785 +0789: 3d inc x +078a: 3e f4 cmp x,$f4 +078c: f0 ed beq $077b +078e: f8 f4 mov x,$f4 +0790: 2f d1 bra $0763 +0792: 3f f7 0d call $0df7 +0795: 8f b0 f1 mov $f1,#$b0 +0798: cd 00 mov x,#$00 +079a: f5 55 07 mov a,$0755+x +079d: d5 00 01 mov $0100+x,a +07a0: 3d inc x +07a1: c8 3d cmp x,#$3d +07a3: 90 f5 bcc $079a +07a5: 5f 00 01 jmp $0100 + +; gain tables +07a8: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 +07be: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 + +; DSP registers: VxENVX +07d4: db $08,$18,$28,$38,$48,$58,$68,$78 +; DSP registers: VxGAIN +07dd: db $07,$17,$27,$37,$47,$57,$67,$77 +; DSP registers: VxSCRN (select sample) +07e4: db $04,$14,$24,$34,$44,$54,$64,$74 +; DSP registers: VxPITCHL +07ec: db $02,$12,$22,$32,$42,$52,$62,$72 +; DSP registers: VxVOLL +07f4: db $00,$10,$20,$30,$40,$50,$60,$70 + +; voice numbers and bits for clearing those void bits +07fc: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f + +; echo poke registers +080c: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f + +0818: db $02,$02,$02,$02,$02,$03,$03,$03 +0820: db $97,$ac,$c1,$d6,$eb,$00,$15,$2a + +0828: db $03,$03,$03,$03,$03,$03,$03,$03 +0830: db $3f,$54,$69,$7e,$93,$a8,$bd,$d2 + +0838: db $03,$03,$04,$04,$04,$04,$04,$04 +0840: db $e7,$fc,$11,$26,$3b,$50,$65,$7a + +0848: db $04,$04,$04,$04,$04,$04,$05,$05 +0850: db $8f,$a5,$bb,$d1,$e7,$fd,$13,$29 + +0858: 3f 86 15 call $1586 ; use RNG +085b: 3f 0a 13 call $130a +085e: 8f 00 2f mov $2f,#$00 +0861: 8f 00 44 mov $44,#$00 +0864: 8f 7c f2 mov $f2,#$7c ; clear end of sample flags? +0867: e4 f3 mov a,$f3 +0869: 04 41 or a,$41 +086b: 24 47 and a,$47 +086d: c4 41 mov $41,a +086f: 8f 00 f3 mov $f3,#$00 +0872: 24 42 and a,$42 +0874: 04 43 or a,$43 +0876: c4 43 mov $43,a +0878: cd 07 mov x,#$07 +087a: 8f 7a 0d mov $0d,#$7a +087d: 8f 04 0e mov $0e,#$04 +0880: d8 0f mov $0f,x +0882: f5 fc 07 mov a,$07fc+x ; clear voice number bits +0885: c4 31 mov $31,a +0887: 48 ff eor a,#$ff +0889: c4 32 mov $32,a +088b: f4 53 mov a,$53+x +088d: 28 02 and a,#$02 +088f: c4 30 mov $30,a +0891: d0 06 bne $0899 +0893: f5 77 02 mov a,$0277+x +0896: 5f 9e 08 jmp $089e + +0899: 3f db 0e call $0edb +089c: f8 0f mov x,$0f +089e: 75 7f 02 cmp a,$027f+x +08a1: d0 10 bne $08b3 +08a3: 3f 75 10 call $1075 +08a6: 3f 23 0b call $0b23 +08a9: e4 48 mov a,$48 +08ab: 24 45 and a,$45 +08ad: 24 31 and a,$31 +08af: d0 43 bne $08f4 +08b1: f0 44 beq $08f7 +08b3: d5 7f 02 mov $027f+x,a +08b6: 09 31 2f or ($2f),($31) +08b9: 3f 75 10 call $1075 +08bc: 7d mov a,x +08bd: 1c asl a +08be: 5d mov x,a +08bf: e4 49 mov a,$49 +08c1: d5 87 02 mov $0287+x,a +08c4: e4 4a mov a,$4a +08c6: d5 88 02 mov $0288+x,a +08c9: f8 0f mov x,$0f +08cb: e4 4b mov a,$4b +08cd: 28 20 and a,#$20 +08cf: f0 05 beq $08d6 +08d1: 29 32 42 and ($42),($32) +08d4: 2f 03 bra $08d9 +08d6: 09 31 42 or ($42),($31) +08d9: e4 4b mov a,$4b +08db: 28 40 and a,#$40 +08dd: f0 05 beq $08e4 +08df: 09 31 48 or ($48),($31) +08e2: 2f 03 bra $08e7 +08e4: 29 32 48 and ($48),($32) +08e7: 3f 23 0b call $0b23 +08ea: e4 48 mov a,$48 +08ec: 04 45 or a,$45 +08ee: 24 31 and a,$31 +08f0: d0 02 bne $08f4 +08f2: f0 03 beq $08f7 +08f4: 09 31 44 or ($44),($31) +08f7: 1d dec x +08f8: 30 0a bmi $0904 +08fa: 80 setc +08fb: b8 15 0d sbc $0d,#$15 +08fe: b8 00 0e sbc $0e,#$00 +0901: 5f 80 08 jmp $0880 + +0904: e4 45 mov a,$45 +0906: 24 43 and a,$43 +0908: 04 44 or a,$44 +090a: c4 46 mov $46,a +090c: 8f 5c f2 mov $f2,#$5c +090f: c4 f3 mov $f3,a +0911: cd 07 mov x,#$07 +0913: 8f d2 0d mov $0d,#$d2 +0916: 8f 03 0e mov $0e,#$03 +0919: d8 0f mov $0f,x +091b: f4 53 mov a,$53+x +091d: fd mov y,a +091e: 28 40 and a,#$40 +0920: 0d push psw +0921: dd mov a,y +0922: 28 04 and a,#$04 +0924: 0d push psw +0925: 7d mov a,x +0926: fd mov y,a +0927: 1c asl a +0928: 5d mov x,a +0929: f5 48 02 mov a,$0248+x ; get base note +092c: c4 2e mov $2e,a +092e: f5 47 02 mov a,$0247+x +0931: c4 2d mov $2d,a +0933: 8e pop psw +0934: f0 11 beq $0947 +0936: 4d push x ; save word addressing +0937: 3f db 0e call $0edb ; advance pitch envelope +093a: ce pop x ; restore pitch flag +093b: 7a 2d addw ya,$2d +093d: 80 setc +093e: a8 b0 sbc a,#$b0 +0940: c4 2d mov $2d,a +0942: dd mov a,y +0943: a8 04 sbc a,#$04 +0945: c4 2e mov $2e,a +0947: f5 88 02 mov a,$0288+x +094a: fd mov y,a +094b: f5 87 02 mov a,$0287+x +094e: 7a 2d addw ya,$2d +0950: 8e pop psw +0951: d0 03 bne $0956 +0953: 3f 9f 10 call $109f ; translate note to frequency +0956: f8 0f mov x,$0f +0958: d5 57 02 mov $0257+x,a +095b: dd mov a,y +095c: d5 5f 02 mov $025f+x,a +095f: 80 setc +0960: b8 15 0d sbc $0d,#$15 +0963: b8 00 0e sbc $0e,#$00 +0966: 1d dec x +0967: 10 b0 bpl $0919 +0969: 8f 5c f2 mov $f2,#$5c +096c: 8f 00 f3 mov $f3,#$00 +096f: cd 07 mov x,#$07 +0971: 8f 2a 0d mov $0d,#$2a +0974: 8f 03 0e mov $0e,#$03 +0977: d8 0f mov $0f,x +0979: f5 fc 07 mov a,$07fc+x +097c: c4 31 mov $31,a +097e: 48 ff eor a,#$ff +0980: c4 32 mov $32,a +0982: f4 53 mov a,$53+x +0984: 28 01 and a,#$01 +0986: d0 06 bne $098e +0988: f5 2f 02 mov a,$022f+x +098b: 5f 93 09 jmp $0993 + +098e: 3f db 0e call $0edb +0991: f8 0f mov x,$0f +0993: d5 37 02 mov $0237+x,a +0996: fd mov y,a +0997: e4 2f mov a,$2f +0999: 24 31 and a,$31 +099b: f0 0a beq $09a7 +099d: f5 e4 07 mov a,$07e4+x +09a0: c4 f2 mov $f2,a +09a2: f5 7f 02 mov a,$027f+x +09a5: c4 f3 mov $f3,a +09a7: e4 40 mov a,$40 +09a9: 24 31 and a,$31 +09ab: f0 05 beq $09b2 +09ad: 29 32 40 and ($40),($32) +09b0: 2f 37 bra $09e9 +09b2: f5 d4 07 mov a,$07d4+x +09b5: c4 f2 mov $f2,a +09b7: dd mov a,y +09b8: 80 setc +09b9: a4 f3 sbc a,$f3 +09bb: b0 09 bcs $09c6 +09bd: 8f 80 22 mov $22,#$80 +09c0: 48 ff eor a,#$ff +09c2: bc inc a +09c3: 5f c9 09 jmp $09c9 + +09c6: 8f c0 22 mov $22,#$c0 +09c9: 5c lsr a +09ca: d0 09 bne $09d5 +09cc: ad 00 cmp y,#$00 +09ce: d0 05 bne $09d5 +09d0: e8 82 mov a,#$82 +09d2: 5f e3 09 jmp $09e3 + +09d5: 8d 15 mov y,#$15 +09d7: 76 a8 07 cmp a,$07a8+y +09da: 90 02 bcc $09de +09dc: fe f9 dbnz y,$09d7 +09de: f6 be 07 mov a,$07be+y +09e1: 04 22 or a,$22 +09e3: 75 3f 02 cmp a,$023f+x +09e6: f0 0c beq $09f4 +09e8: fd mov y,a +09e9: f5 dc 07 mov a,$07dc+x +09ec: c4 f2 mov $f2,a +09ee: cb f3 mov $f3,y +09f0: dd mov a,y +09f1: d5 3f 02 mov $023f+x,a +09f4: f5 ec 07 mov a,$07ec+x +09f7: c4 f2 mov $f2,a +09f9: fd mov y,a +09fa: f5 57 02 mov a,$0257+x +09fd: c4 f3 mov $f3,a +09ff: fc inc y +0a00: cb f2 mov $f2,y +0a02: f5 5f 02 mov a,$025f+x +0a05: c4 f3 mov $f3,a +0a07: 80 setc +0a08: b8 15 0d sbc $0d,#$15 +0a0b: b8 00 0e sbc $0e,#$00 +0a0e: 1d dec x +0a0f: 30 03 bmi $0a14 +0a11: 5f 77 09 jmp $0977 + +0a14: 8f 4c f2 mov $f2,#$4c +0a17: fa 46 f3 mov ($f3),($46) +0a1a: e4 46 mov a,$46 +0a1c: 48 ff eor a,#$ff +0a1e: c4 47 mov $47,a +0a20: 29 47 41 and ($41),($47) +0a23: 29 47 43 and ($43),($47) +0a26: 8f 00 45 mov $45,#$00 +0a29: cd 07 mov x,#$07 +0a2b: 8f 29 0d mov $0d,#$29 +0a2e: 8f 05 0e mov $0e,#$05 +0a31: 8f 00 34 mov $34,#$00 +0a34: d8 0f mov $0f,x +0a36: e4 52 mov a,$52 +0a38: d0 13 bne $0a4d +0a3a: f4 53 mov a,$53+x +0a3c: 28 08 and a,#$08 +0a3e: c4 34 mov $34,a +0a40: d0 06 bne $0a48 +0a42: f5 6f 02 mov a,$026f+x +0a45: 5f 4d 0a jmp $0a4d + +0a48: 3f db 0e call $0edb +0a4b: f8 0f mov x,$0f +0a4d: fd mov y,a +0a4e: f5 67 02 mov a,$0267+x +0a51: c4 29 mov $29,a +0a53: cf mul ya +0a54: cd 64 mov x,#$64 +0a56: 9e div ya,x +0a57: f8 0f mov x,$0f +0a59: eb 34 mov y,$34 +0a5b: f0 11 beq $0a6e +0a5d: c4 27 mov $27,a +0a5f: 8d 15 mov y,#$15 +0a61: f7 0d mov a,($0d)+y +0a63: d0 04 bne $0a69 +0a65: e4 27 mov a,$27 +0a67: 2f 05 bra $0a6e +0a69: e4 29 mov a,$29 +0a6b: 80 setc +0a6c: a4 27 sbc a,$27 +0a6e: c4 27 mov $27,a +0a70: f5 f4 07 mov a,$07f4+x +0a73: fd mov y,a +0a74: cb f2 mov $f2,y +0a76: fa 27 f3 mov ($f3),($27) +0a79: e4 29 mov a,$29 +0a7b: 80 setc +0a7c: a4 27 sbc a,$27 +0a7e: fc inc y +0a7f: cb f2 mov $f2,y +0a81: c4 f3 mov $f3,a +0a83: 80 setc +0a84: b8 16 0d sbc $0d,#$16 +0a87: b8 00 0e sbc $0e,#$00 +0a8a: 1d dec x +0a8b: 30 03 bmi $0a90 +0a8d: 5f 34 0a jmp $0a34 + +0a90: cd 07 mov x,#$07 +0a92: 8d 0e mov y,#$0e +0a94: f5 06 02 mov a,$0206+x +0a97: f0 2b beq $0ac4 +0a99: f4 53 mov a,$53+x +0a9b: 28 80 and a,#$80 +0a9d: f0 09 beq $0aa8 +0a9f: f5 fc 07 mov a,$07fc+x +0aa2: 24 41 and a,$41 +0aa4: d0 19 bne $0abf +0aa6: 2f 1c bra $0ac4 +0aa8: f6 17 02 mov a,$0217+y +0aab: 80 setc +0aac: a8 01 sbc a,#$01 +0aae: d6 17 02 mov $0217+y,a +0ab1: c4 27 mov $27,a +0ab3: f6 18 02 mov a,$0218+y +0ab6: a8 00 sbc a,#$00 +0ab8: d6 18 02 mov $0218+y,a +0abb: 04 27 or a,$27 +0abd: d0 05 bne $0ac4 +0abf: e8 00 mov a,#$00 +0ac1: d5 06 02 mov $0206+x,a +0ac4: dc dec y +0ac5: dc dec y +0ac6: 1d dec x +0ac7: 10 cb bpl $0a94 +0ac9: ec 00 02 mov y,$0200 +0acc: f0 54 beq $0b22 +0ace: 8c 01 02 dec $0201 +0ad1: d0 4f bne $0b22 +0ad3: cc 01 02 mov $0201,y +0ad6: e4 16 mov a,$16 +0ad8: e9 02 02 mov x,$0202 +0adb: 30 0e bmi $0aeb +0add: 60 clrc +0ade: 85 03 02 adc a,$0203 +0ae1: b0 04 bcs $0ae7 +0ae3: 68 7f cmp a,#$7f +0ae5: 90 13 bcc $0afa +0ae7: e8 7f mov a,#$7f +0ae9: 2f 0a bra $0af5 +0aeb: 80 setc +0aec: a5 03 02 sbc a,$0203 +0aef: f0 04 beq $0af5 +0af1: b0 07 bcs $0afa +0af3: e8 00 mov a,#$00 +0af5: 8d 00 mov y,#$00 +0af7: cc 00 02 mov $0200,y +0afa: c4 16 mov $16,a +0afc: 5d mov x,a +0afd: 8f 2c f2 mov $f2,#$2c +0b00: 65 04 02 cmp a,$0204 +0b03: 90 03 bcc $0b08 +0b05: e5 04 02 mov a,$0204 +0b08: c4 f3 mov $f3,a +0b0a: 8f 3c f2 mov $f2,#$3c +0b0d: 7d mov a,x +0b0e: 65 05 02 cmp a,$0205 +0b11: 90 03 bcc $0b16 +0b13: e5 04 02 mov a,$0204 +0b16: c4 f3 mov $f3,a +0b18: 8f 0c f2 mov $f2,#$0c +0b1b: d8 f3 mov $f3,x +0b1d: 8f 1c f2 mov $f2,#$1c +0b20: d8 f3 mov $f3,x +0b22: 6f ret + +0b23: e4 4b mov a,$4b +0b25: 10 0c bpl $0b33 +0b27: 28 1f and a,#$1f +0b29: 8f 6c f2 mov $f2,#$6c +0b2c: c4 f3 mov $f3,a +0b2e: 09 31 4d or ($4d),($31) +0b31: 2f 03 bra $0b36 +0b33: 29 32 4d and ($4d),($32) +0b36: 8f 3d f2 mov $f2,#$3d +0b39: fa 4d f3 mov ($f3),($4d) +0b3c: 6f ret + +0b3d: c4 17 mov $17,a +0b3f: fa f4 19 mov ($19),($f4) +0b42: fa f5 1a mov ($1a),($f5) +0b45: e4 f7 mov a,$f7 +0b47: 8f b1 f1 mov $f1,#$b1 +0b4a: 28 fe and a,#$fe +0b4c: c4 18 mov $18,a +0b4e: fa 17 f6 mov ($f6),($17) +0b51: 5d mov x,a +0b52: c8 1d cmp x,#$1d +0b54: b0 13 bcs $0b69 +0b56: e4 19 mov a,$19 +0b58: eb 1a mov y,$1a +0b5a: 1f a4 17 jmp ($17a4+x) + +0b5d: 8f ff 1b mov $1b,#$ff +0b60: 3f 41 0e call $0e41 +0b63: 8f 6c f2 mov $f2,#$6c +0b66: 8f 00 f3 mov $f3,#$00 +0b69: 6f ret + +0b6a: da 3a movw $3a,ya +0b6c: 8f ff 39 mov $39,#$ff +0b6f: 6f ret + +0b70: c4 52 mov $52,a +0b72: 6f ret + +0b73: e8 00 mov a,#$00 +0b75: c5 00 02 mov $0200,a +0b78: 6f ret + +0b79: cd 01 mov x,#$01 +0b7b: 2f 02 bra $0b7f +0b7d: cd ff mov x,#$ff +0b7f: c5 00 02 mov $0200,a +0b82: c5 01 02 mov $0201,a +0b85: cc 03 02 mov $0203,y +0b88: c9 02 02 mov $0202,x +0b8b: 6f ret + +0b8c: 8f 00 5c mov $5c,#$00 +0b8f: 68 00 cmp a,#$00 +0b91: d0 03 bne $0b96 +0b93: c5 4f 05 mov $054f,a +0b96: 6f ret + +0b97: c5 16 02 mov $0216,a +0b9a: cd 07 mov x,#$07 +0b9c: ad 80 cmp y,#$80 +0b9e: f0 17 beq $0bb7 +0ba0: e8 01 mov a,#$01 +0ba2: b0 0e bcs $0bb2 +0ba4: ad 00 cmp y,#$00 +0ba6: d0 08 bne $0bb0 +0ba8: e5 16 02 mov a,$0216 +0bab: 75 0e 02 cmp a,$020e+x +0bae: d0 22 bne $0bd2 +0bb0: e8 80 mov a,#$80 +0bb2: 75 06 02 cmp a,$0206+x +0bb5: d0 1b bne $0bd2 +0bb7: f5 dc 07 mov a,$07dc+x +0bba: c4 f2 mov $f2,a +0bbc: e8 00 mov a,#$00 +0bbe: c4 f3 mov $f3,a +0bc0: d5 2f 02 mov $022f+x,a +0bc3: d5 06 02 mov $0206+x,a +0bc6: d5 77 02 mov $0277+x,a +0bc9: d4 53 mov $53+x,a +0bcb: f5 fc 07 mov a,$07fc+x +0bce: 04 45 or a,$45 +0bd0: c4 45 mov $45,a +0bd2: 1d dec x +0bd3: 10 c7 bpl $0b9c +0bd5: 6f ret + +0bd6: 8d 0e mov y,#$0e +0bd8: c5 16 02 mov $0216,a +0bdb: 3f bb 0d call $0dbb +0bde: da 09 movw $09,ya +0be0: 8d 00 mov y,#$00 +0be2: f7 09 mov a,($09)+y +0be4: c4 3c mov $3c,a +0be6: 3a 09 incw $09 +0be8: 8d 07 mov y,#$07 +0bea: f7 09 mov a,($09)+y +0bec: c4 3d mov $3d,a +0bee: 8d 06 mov y,#$06 +0bf0: f7 09 mov a,($09)+y +0bf2: c4 3e mov $3e,a +0bf4: 8f 80 3f mov $3f,#$80 +0bf7: cd 07 mov x,#$07 +0bf9: 3f 44 0c call $0c44 +0bfc: 30 36 bmi $0c34 +0bfe: e8 80 mov a,#$80 +0c00: d5 06 02 mov $0206+x,a +0c03: e5 16 02 mov a,$0216 +0c06: d5 0e 02 mov $020e+x,a +0c09: 8d 02 mov y,#$02 +0c0b: f7 09 mov a,($09)+y +0c0d: c4 35 mov $35,a +0c0f: fc inc y +0c10: f7 09 mov a,($09)+y +0c12: c4 36 mov $36,a +0c14: 8d 04 mov y,#$04 +0c16: f7 09 mov a,($09)+y +0c18: c4 37 mov $37,a +0c1a: fc inc y +0c1b: f7 09 mov a,($09)+y +0c1d: c4 38 mov $38,a +0c1f: e4 39 mov a,$39 +0c21: f0 04 beq $0c27 +0c23: ba 3a movw ya,$3a +0c25: da 37 movw $37,ya +0c27: 8d 01 mov y,#$01 +0c29: f7 09 mov a,($09)+y +0c2b: 2d push a +0c2c: 8d 00 mov y,#$00 +0c2e: f7 09 mov a,($09)+y +0c30: ee pop y +0c31: 3f 6e 0c call $0c6e +0c34: 60 clrc +0c35: 98 08 09 adc $09,#$08 +0c38: 90 02 bcc $0c3c +0c3a: ab 0a inc $0a +0c3c: 8b 3c dec $3c +0c3e: d0 a8 bne $0be8 +0c40: 8f 00 39 mov $39,#$00 +0c43: 6f ret + +0c44: 8d 07 mov y,#$07 +0c46: e4 3f mov a,$3f +0c48: 24 3d and a,$3d +0c4a: f0 0c beq $0c58 +0c4c: f5 06 02 mov a,$0206+x +0c4f: f0 15 beq $0c66 +0c51: e4 3e mov a,$3e +0c53: 75 27 02 cmp a,$0227+x +0c56: b0 10 bcs $0c68 +0c58: 4b 3f lsr $3f +0c5a: d0 05 bne $0c61 +0c5c: 8f 80 3f mov $3f,#$80 +0c5f: cd 08 mov x,#$08 +0c61: 1d dec x +0c62: dc dec y +0c63: 10 e1 bpl $0c46 +0c65: 6f ret + +0c66: e4 3e mov a,$3e +0c68: d5 27 02 mov $0227+x,a +0c6b: e8 00 mov a,#$00 +0c6d: 6f ret + +0c6e: d8 33 mov $33,x ; play sound (instrument) +0c70: 2d push a +0c71: f5 dc 07 mov a,$07dc+x +0c74: c4 f2 mov $f2,a +0c76: 8f 9f f3 mov $f3,#$9f +0c79: dd mov a,y +0c7a: d5 67 02 mov $0267+x,a +0c7d: 7d mov a,x +0c7e: 1c asl a +0c7f: 5d mov x,a +0c80: e4 37 mov a,$37 +0c82: d5 47 02 mov $0247+x,a +0c85: e4 38 mov a,$38 +0c87: d5 48 02 mov $0248+x,a +0c8a: e4 35 mov a,$35 +0c8c: d5 17 02 mov $0217+x,a +0c8f: e4 36 mov a,$36 +0c91: d5 18 02 mov $0218+x,a +0c94: ae pop a +0c95: 8d 02 mov y,#$02 +0c97: 3f bb 0d call $0dbb +0c9a: da 07 movw $07,ya ; get current voice and instrument +0c9c: f8 33 mov x,$33 +0c9e: f5 fc 07 mov a,$07fc+x ; get channel bit mask ID +0ca1: c4 4e mov $4e,a +0ca3: 48 ff eor a,#$ff ; and store inversion +0ca5: c4 4f mov $4f,a +0ca7: 8d 00 mov y,#$00 ; get mode flags +0ca9: f7 07 mov a,($07)+y +0cab: d4 53 mov $53+x,a ; save permanently and in local temp RAM +0cad: c4 34 mov $34,a +0caf: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) +0cb1: f0 05 beq $0cb8 ; if not... +0cb3: 09 4e 50 or ($50),($4e) ; turn pitch mod on +0cb6: 2f 03 bra $0cbb +0cb8: 29 4f 50 and ($50),($4f) ; turn pitch mod off + +0cbb: 8f 2d f2 mov $f2,#$2d +0cbe: fa 50 f3 mov ($f3),($50) +0cc1: e4 34 mov a,$34 ; retrieve the saved flag +0cc3: 28 10 and a,#$10 ; is echo enabled? ($10 = echo) +0cc5: f0 2f beq $0cf6 ; if not... +0cc7: 8d 05 mov y,#$05 ; get echo byte from sound +0cc9: f7 07 mov a,($07)+y +0ccb: 8d 0c mov y,#$0c +0ccd: 3f bb 0d call $0dbb +0cd0: 8d 00 mov y,#$00 +0cd2: f6 0c 08 mov a,$080c+y ; get the echo register values to "poke" +0cd5: c4 f2 mov $f2,a ; (from the table) +0cd7: f7 10 mov a,($10)+y ; now get info to feed to the registers +0cd9: ad 01 cmp y,#$01 ; (from the echo environment) +0cdb: f0 04 beq $0ce1 +0cdd: ad 02 cmp y,#$02 +0cdf: d0 09 bne $0cea +0ce1: d6 03 02 mov $0203+y,a +0ce4: 64 16 cmp a,$16 +0ce6: 90 02 bcc $0cea +0ce8: e4 16 mov a,$16 +0cea: c4 f3 mov $f3,a +0cec: fc inc y +0ced: ad 0c cmp y,#$0c ; repeat for every byte of the array +0cef: 90 e1 bcc $0cd2 +0cf1: 09 4e 51 or ($51),($4e) +0cf4: 2f 03 bra $0cf9 + +0cf6: 29 4f 51 and ($51),($4f) +0cf9: 8f 4d f2 mov $f2,#$4d +0cfc: fa 51 f3 mov ($f3),($51) ; send the echo unit +0cff: e4 34 mov a,$34 +0d01: 28 01 and a,#$01 +0d03: 0d push psw +0d04: 8d 01 mov y,#$01 +0d06: f7 07 mov a,($07)+y ; now get the amplitude +0d08: 8e pop psw +0d09: d0 08 bne $0d13 +0d0b: f8 33 mov x,$33 +0d0d: d5 2f 02 mov $022f+x,a +0d10: 5f 29 0d jmp $0d29 + +0d13: 8d 04 mov y,#$04 +0d15: 3f bb 0d call $0dbb +0d18: f8 33 mov x,$33 +0d1a: f5 20 08 mov a,$0820+x +0d1d: c4 0d mov $0d,a +0d1f: f5 18 08 mov a,$0818+x +0d22: c4 0e mov $0e,a +0d24: ba 35 movw ya,$35 +0d26: 3f 64 0e call $0e64 +0d29: e4 34 mov a,$34 +0d2b: 28 04 and a,#$04 +0d2d: f0 1a beq $0d49 +0d2f: 8d 03 mov y,#$03 +0d31: f7 07 mov a,($07)+y +0d33: 8d 06 mov y,#$06 +0d35: 3f bb 0d call $0dbb +0d38: f8 33 mov x,$33 +0d3a: f5 30 08 mov a,$0830+x +0d3d: c4 0d mov $0d,a +0d3f: f5 28 08 mov a,$0828+x +0d42: c4 0e mov $0e,a +0d44: ba 35 movw ya,$35 +0d46: 3f 64 0e call $0e64 +0d49: e4 34 mov a,$34 +0d4b: 28 08 and a,#$08 +0d4d: 0d push psw +0d4e: 8d 04 mov y,#$04 +0d50: f7 07 mov a,($07)+y +0d52: 8e pop psw +0d53: d0 08 bne $0d5d +0d55: f8 33 mov x,$33 +0d57: d5 6f 02 mov $026f+x,a +0d5a: 5f 8a 0d jmp $0d8a + +0d5d: 8d 08 mov y,#$08 +0d5f: 3f bb 0d call $0dbb +0d62: f8 33 mov x,$33 +0d64: f5 50 08 mov a,$0850+x +0d67: c4 0d mov $0d,a +0d69: f5 48 08 mov a,$0848+x +0d6c: c4 0e mov $0e,a +0d6e: ba 35 movw ya,$35 +0d70: 3f 64 0e call $0e64 +0d73: 8d 07 mov y,#$07 +0d75: f7 0d mov a,($0d)+y +0d77: f0 0b beq $0d84 +0d79: 8d 15 mov y,#$15 +0d7b: f7 0d mov a,($0d)+y +0d7d: d0 05 bne $0d84 +0d7f: e8 ff mov a,#$ff +0d81: 5f 86 0d jmp $0d86 + +0d84: e8 00 mov a,#$00 +0d86: 8d 15 mov y,#$15 +0d88: d7 0d mov ($0d)+y,a +0d8a: e4 34 mov a,$34 +0d8c: 28 02 and a,#$02 +0d8e: 0d push psw +0d8f: 8d 02 mov y,#$02 +0d91: f7 07 mov a,($07)+y +0d93: 8e pop psw +0d94: d0 08 bne $0d9e +0d96: f8 33 mov x,$33 +0d98: d5 77 02 mov $0277+x,a +0d9b: 5f b4 0d jmp $0db4 + +0d9e: 8d 0a mov y,#$0a +0da0: 3f bb 0d call $0dbb +0da3: f8 33 mov x,$33 +0da5: f5 40 08 mov a,$0840+x +0da8: c4 0d mov $0d,a +0daa: f5 38 08 mov a,$0838+x +0dad: c4 0e mov $0e,a +0daf: ba 35 movw ya,$35 +0db1: 3f 64 0e call $0e64 +0db4: 09 4e 45 or ($45),($4e) +0db7: 09 4e 40 or ($40),($4e) +0dba: 6f ret + +0dbb: 8f 00 06 mov $06,#$00 ; load current song/sfx/etc. address into stack +0dbe: 1c asl a +0dbf: 2b 06 rol $06 +0dc1: 60 clrc +0dc2: 96 e0 17 adc a,$17e0+y +0dc5: c4 05 mov $05,a +0dc7: e4 06 mov a,$06 +0dc9: 96 e1 17 adc a,$17e1+y +0dcc: c4 06 mov $06,a +0dce: 8d 01 mov y,#$01 +0dd0: f7 05 mov a,($05)+y +0dd2: c4 11 mov $11,a +0dd4: dc dec y +0dd5: f7 05 mov a,($05)+y +0dd7: c4 10 mov $10,a +0dd9: eb 11 mov y,$11 +0ddb: 6f ret + +; pre-defined DSP flags +0ddc: db $6c,$ff ; clear flags +0dde: db $3d,$00 ; turn off noise generator (NON) +0de0: db $4d,$00 ; turn off echo (EON) +0de2: db $7d,$00 ; turn off echo delay time (EDL) +0de4: db $6d,$ff ; pointer to echo memory (ESA) +0de6: db $5d,$18 ; set sample directory ($1800) +0de8: db $5c,$00 ; set key off (KOFF) +0dea: db $2d,$00 ; disable pitch modulation (PMON) +0dec: db $7c,$00 ; end of sample flag +0dee: db $2c,$00 ; turn off EVOLL +0df0: db $3c,$00 ; turn off EVOLR +0df2: db $0c,$7f ; turn on MVOLL +0df4: db $1c,$7f ; turn on MVOLR +0df6: db $ff + +0df7: 8d 00 mov y,#$00 +0df9: f6 dc 0d mov a,$0ddc+y ; set DSP flags from table +0dfc: 68 ff cmp a,#$ff +0dfe: f0 0b beq $0e0b +0e00: c4 f2 mov $f2,a +0e02: fc inc y +0e03: f6 dc 0d mov a,$0ddc+y +0e06: c4 f3 mov $f3,a +0e08: fc inc y +0e09: d0 ee bne $0df9 +0e0b: cd 70 mov x,#$70 +0e0d: e8 00 mov a,#$00 +0e0f: d4 04 mov $04+x,a +0e11: d4 07 mov $07+x,a +0e13: d4 03 mov $03+x,a +0e15: d4 02 mov $02+x,a +0e17: e8 00 mov a,#$00 +0e19: d4 05 mov $05+x,a +0e1b: 7d mov a,x +0e1c: 80 setc +0e1d: a8 10 sbc a,#$10 +0e1f: 5d mov x,a +0e20: 10 eb bpl $0e0d +0e22: e8 02 mov a,#$02 +0e24: cd 07 mov x,#$07 +0e26: 3f 4b 0e call $0e4b +0e29: fd mov y,a +0e2a: d6 00 00 mov $0000+y,a +0e2d: fc inc y +0e2e: ad f0 cmp y,#$f0 +0e30: 90 f8 bcc $0e2a +0e32: 9c dec a +0e33: c4 41 mov $41,a +0e35: c4 43 mov $43,a +0e37: c4 48 mov $48,a +0e39: c4 42 mov $42,a +0e3b: c4 47 mov $47,a +0e3d: 8f 7f 16 mov $16,#$7f +0e40: 6f ret + +0e41: e5 e1 17 mov a,$17e1 +0e44: 8f 6d f2 mov $f2,#$6d +0e47: c4 f3 mov $f3,a +0e49: cd 00 mov x,#$00 +0e4b: c5 55 0e mov $0e55,a +0e4e: e8 00 mov a,#$00 +0e50: c5 54 0e mov $0e54,a +0e53: c5 00 00 mov $0000,a +0e56: ac 54 0e inc $0e54 +0e59: d0 f8 bne $0e53 +0e5b: ac 55 0e inc $0e55 +0e5e: 1e 55 0e cmp x,$0e55 +0e61: d0 f0 bne $0e53 +0e63: 6f ret + +0e64: da 27 movw $27,ya +0e66: 8d 07 mov y,#$07 +0e68: f7 10 mov a,($10)+y ; get amplitude table +0e6a: d7 0d mov ($0d)+y,a +0e6c: dc dec y +0e6d: 10 f9 bpl $0e68 +0e6f: e4 10 mov a,$10 +0e71: 60 clrc +0e72: 88 08 adc a,#$08 +0e74: 8d 08 mov y,#$08 +0e76: d7 0d mov ($0d)+y,a +0e78: e4 11 mov a,$11 +0e7a: 88 00 adc a,#$00 +0e7c: fc inc y +0e7d: d7 0d mov ($0d)+y,a +0e7f: 8d 03 mov y,#$03 +0e81: f7 0d mov a,($0d)+y +0e83: 5d mov x,a +0e84: 8d 02 mov y,#$02 +0e86: f7 0d mov a,($0d)+y +0e88: fd mov y,a +0e89: 7d mov a,x +0e8a: cf mul ya +0e8b: da 2b movw $2b,ya +0e8d: ba 27 movw ya,$27 +0e8f: 9a 2b subw ya,$2b +0e91: b0 03 bcs $0e96 +0e93: e8 00 mov a,#$00 +0e95: fd mov y,a +0e96: cb 2c mov $2c,y +0e98: 8d 0d mov y,#$0d +0e9a: d7 0d mov ($0d)+y,a +0e9c: fc inc y +0e9d: e4 2c mov a,$2c +0e9f: d7 0d mov ($0d)+y,a +0ea1: 8d 03 mov y,#$03 +0ea3: f7 0d mov a,($0d)+y +0ea5: bc inc a +0ea6: 8d 0f mov y,#$0f +0ea8: d7 0d mov ($0d)+y,a +0eaa: 68 03 cmp a,#$03 +0eac: b0 06 bcs $0eb4 +0eae: 8d 04 mov y,#$04 +0eb0: e8 00 mov a,#$00 +0eb2: d7 0d mov ($0d)+y,a +0eb4: 8d 08 mov y,#$08 +0eb6: f7 0d mov a,($0d)+y +0eb8: 8d 0a mov y,#$0a +0eba: d7 0d mov ($0d)+y,a +0ebc: 8d 09 mov y,#$09 +0ebe: f7 0d mov a,($0d)+y +0ec0: 8d 0b mov y,#$0b +0ec2: d7 0d mov ($0d)+y,a +0ec4: e8 01 mov a,#$01 +0ec6: 8d 14 mov y,#$14 +0ec8: d7 0d mov ($0d)+y,a +0eca: 9c dec a +0ecb: 8d 0c mov y,#$0c +0ecd: d7 0d mov ($0d)+y,a +0ecf: 8d 12 mov y,#$12 +0ed1: d7 0d mov ($0d)+y,a +0ed3: fc inc y +0ed4: d7 0d mov ($0d)+y,a +0ed6: c4 20 mov $20,a +0ed8: 5f 89 0f jmp $0f89 + +0edb: 8d 14 mov y,#$14 +0edd: f7 0d mov a,($0d)+y +0edf: f0 39 beq $0f1a +0ee1: 8d 04 mov y,#$04 +0ee3: f7 0d mov a,($0d)+y +0ee5: c4 20 mov $20,a +0ee7: 8d 0f mov y,#$0f +0ee9: f7 0d mov a,($0d)+y +0eeb: c4 21 mov $21,a +0eed: f0 03 beq $0ef2 +0eef: 9c dec a +0ef0: d0 06 bne $0ef8 +0ef2: 8d 03 mov y,#$03 +0ef4: f7 0d mov a,($0d)+y +0ef6: 8d 0f mov y,#$0f +0ef8: d7 0d mov ($0d)+y,a +0efa: 78 02 21 cmp $21,#$02 +0efd: 90 03 bcc $0f02 +0eff: 5f 89 0f jmp $0f89 + +0f02: 8d 0c mov y,#$0c +0f04: f7 0d mov a,($0d)+y +0f06: bc inc a +0f07: 8d 05 mov y,#$05 +0f09: 77 0d cmp a,($0d)+y +0f0b: 90 17 bcc $0f24 +0f0d: 9c dec a +0f0e: 8d 01 mov y,#$01 +0f10: 77 0d cmp a,($0d)+y +0f12: f0 6a beq $0f7e +0f14: e8 00 mov a,#$00 +0f16: 8d 14 mov y,#$14 +0f18: d7 0d mov ($0d)+y,a +0f1a: 8d 11 mov y,#$11 +0f1c: f7 0d mov a,($0d)+y +0f1e: 2d push a +0f1f: dc dec y +0f20: f7 0d mov a,($0d)+y +0f22: ee pop y +0f23: 6f ret + +0f24: 8d 0c mov y,#$0c +0f26: d7 0d mov ($0d)+y,a +0f28: 8d 06 mov y,#$06 +0f2a: f7 0d mov a,($0d)+y +0f2c: 8d 0a mov y,#$0a +0f2e: 60 clrc +0f2f: 97 0d adc a,($0d)+y +0f31: d7 0d mov ($0d)+y,a +0f33: 90 07 bcc $0f3c +0f35: fc inc y +0f36: f7 0d mov a,($0d)+y +0f38: 88 00 adc a,#$00 +0f3a: d7 0d mov ($0d)+y,a +0f3c: 8d 0e mov y,#$0e +0f3e: f7 0d mov a,($0d)+y +0f40: 5d mov x,a +0f41: dc dec y +0f42: f7 0d mov a,($0d)+y +0f44: d0 04 bne $0f4a +0f46: c8 00 cmp x,#$00 +0f48: f0 3f beq $0f89 +0f4a: 8d 03 mov y,#$03 +0f4c: 80 setc +0f4d: b7 0d sbc a,($0d)+y +0f4f: 8d 0d mov y,#$0d +0f51: d7 0d mov ($0d)+y,a +0f53: c4 2b mov $2b,a +0f55: 7d mov a,x +0f56: a8 00 sbc a,#$00 +0f58: b0 06 bcs $0f60 +0f5a: e8 00 mov a,#$00 +0f5c: d7 0d mov ($0d)+y,a +0f5e: c4 2b mov $2b,a +0f60: fc inc y +0f61: d7 0d mov ($0d)+y,a +0f63: 04 2b or a,$2b +0f65: d0 0b bne $0f72 +0f67: 8d 01 mov y,#$01 +0f69: f7 0d mov a,($0d)+y +0f6b: 68 ff cmp a,#$ff +0f6d: f0 03 beq $0f72 +0f6f: 5f 82 0f jmp $0f82 + +0f72: 8d 0c mov y,#$0c +0f74: f7 0d mov a,($0d)+y +0f76: 8d 01 mov y,#$01 +0f78: 77 0d cmp a,($0d)+y +0f7a: 90 0d bcc $0f89 +0f7c: f0 0b beq $0f89 +0f7e: 8d 00 mov y,#$00 +0f80: f7 0d mov a,($0d)+y +0f82: 8d 0c mov y,#$0c +0f84: d7 0d mov ($0d)+y,a +0f86: 3f 2c 10 call $102c +0f89: f8 20 mov x,$20 +0f8b: f0 14 beq $0fa1 +0f8d: 78 03 21 cmp $21,#$03 +0f90: 90 0f bcc $0fa1 +0f92: 8d 13 mov y,#$13 +0f94: cd 03 mov x,#$03 +0f96: f7 0d mov a,($0d)+y +0f98: d4 1c mov $1c+x,a +0f9a: dc dec y +0f9b: 1d dec x +0f9c: 10 f8 bpl $0f96 +0f9e: 5f 09 10 jmp $1009 + +0fa1: 3f 1b 10 call $101b +0fa4: 8d 06 mov y,#$06 +0fa6: f7 0d mov a,($0d)+y +0fa8: 5d mov x,a +0fa9: 8d 00 mov y,#$00 +0fab: f7 12 mov a,($12)+y +0fad: c8 01 cmp x,#$01 +0faf: f0 06 beq $0fb7 +0fb1: 5d mov x,a +0fb2: fc inc y +0fb3: f7 12 mov a,($12)+y +0fb5: fd mov y,a +0fb6: 7d mov a,x +0fb7: f8 20 mov x,$20 +0fb9: f0 52 beq $100d +0fbb: 78 02 21 cmp $21,#$02 +0fbe: f0 4d beq $100d +0fc0: da 27 movw $27,ya +0fc2: 8d 11 mov y,#$11 +0fc4: f7 0d mov a,($0d)+y +0fc6: c4 1d mov $1d,a +0fc8: dc dec y +0fc9: f7 0d mov a,($0d)+y +0fcb: c4 1c mov $1c,a +0fcd: eb 1d mov y,$1d +0fcf: 80 setc +0fd0: 9a 27 subw ya,$27 +0fd2: da 1e movw $1e,ya +0fd4: e8 00 mov a,#$00 +0fd6: 3c rol a +0fd7: c4 27 mov $27,a +0fd9: d0 08 bne $0fe3 +0fdb: 58 ff 1e eor $1e,#$ff +0fde: 58 ff 1f eor $1f,#$ff +0fe1: 3a 1e incw $1e +0fe3: 8d 03 mov y,#$03 +0fe5: f7 0d mov a,($0d)+y +0fe7: 5d mov x,a +0fe8: ba 1e movw ya,$1e +0fea: 3f 47 10 call $1047 +0fed: c4 1e mov $1e,a +0fef: d8 1f mov $1f,x +0ff1: 78 01 27 cmp $27,#$01 +0ff4: d0 08 bne $0ffe +0ff6: 58 ff 1e eor $1e,#$ff +0ff9: 58 ff 1f eor $1f,#$ff +0ffc: 3a 1e incw $1e +0ffe: 8d 12 mov y,#$12 +1000: e4 1e mov a,$1e +1002: d7 0d mov ($0d)+y,a +1004: fc inc y +1005: e4 1f mov a,$1f +1007: d7 0d mov ($0d)+y,a +1009: ba 1c movw ya,$1c +100b: 7a 1e addw ya,$1e +100d: da 1c movw $1c,ya +100f: 8d 10 mov y,#$10 +1011: d7 0d mov ($0d)+y,a +1013: e4 1d mov a,$1d +1015: fc inc y +1016: d7 0d mov ($0d)+y,a +1018: ba 1c movw ya,$1c +101a: 6f ret + +101b: 8d 0a mov y,#$0a +101d: 5f 22 10 jmp $1022 + +1020: 8d 08 mov y,#$08 +1022: f7 0d mov a,($0d)+y +1024: c4 12 mov $12,a +1026: fc inc y +1027: f7 0d mov a,($0d)+y +1029: c4 13 mov $13,a +102b: 6f ret + +102c: 2d push a +102d: 3f 20 10 call $1020 +1030: 8d 06 mov y,#$06 +1032: f7 0d mov a,($0d)+y +1034: fd mov y,a +1035: ae pop a +1036: cf mul ya +1037: 7a 12 addw ya,$12 +1039: da 12 movw $12,ya +103b: 8d 0a mov y,#$0a +103d: e4 12 mov a,$12 +103f: d7 0d mov ($0d)+y,a +1041: fc inc y +1042: e4 13 mov a,$13 +1044: d7 0d mov ($0d)+y,a +1046: 6f ret + +1047: c8 00 cmp x,#$00 +1049: d0 05 bne $1050 +104b: e8 ff mov a,#$ff +104d: fd mov y,a +104e: 5d mov x,a +104f: 6f ret + +1050: cb 24 mov $24,y +1052: 3e 24 cmp x,$24 +1054: f0 02 beq $1058 +1056: b0 19 bcs $1071 +1058: c4 23 mov $23,a +105a: dd mov a,y +105b: 8d 00 mov y,#$00 +105d: 9e div ya,x +105e: c4 25 mov $25,a +1060: fd mov y,a +1061: 7d mov a,x +1062: cf mul ya +1063: c4 26 mov $26,a +1065: e4 24 mov a,$24 +1067: 80 setc +1068: a4 26 sbc a,$26 +106a: fd mov y,a +106b: e4 23 mov a,$23 +106d: 9e div ya,x +106e: f8 25 mov x,$25 +1070: 6f ret + +1071: 9e div ya,x +1072: cd 00 mov x,#$00 +1074: 6f ret + +1075: f5 7f 02 mov a,$027f+x +1078: 8d 04 mov y,#$04 +107a: cf mul ya +107b: 7a 0b addw ya,$0b +107d: da 03 movw $03,ya +107f: 8d 01 mov y,#$01 +1081: f7 03 mov a,($03)+y +1083: c4 2a mov $2a,a +1085: dc dec y +1086: f7 03 mov a,($03)+y +1088: 80 setc +1089: a8 03 sbc a,#$03 +108b: c4 29 mov $29,a +108d: b8 00 2a sbc $2a,#$00 +1090: f7 29 mov a,($29)+y +1092: c4 49 mov $49,a +1094: fc inc y +1095: f7 29 mov a,($29)+y +1097: c4 4a mov $4a,a +1099: fc inc y +109a: f7 29 mov a,($29)+y +109c: c4 4b mov $4b,a +109e: 6f ret + +109f: ad 04 cmp y,#$04 +10a1: 90 06 bcc $10a9 +10a3: d0 0a bne $10af +10a5: 68 b0 cmp a,#$b0 +10a7: b0 06 bcs $10af +10a9: 8f ff 4c mov $4c,#$ff +10ac: 5f c5 10 jmp $10c5 + +10af: ad 80 cmp y,#$80 +10b1: 90 0f bcc $10c2 +10b3: 8f 00 4c mov $4c,#$00 +10b6: 60 clrc ; convert note to pitch from table +10b7: 88 20 adc a,#$20 +10b9: 5d mov x,a +10ba: dd mov a,y +10bb: 88 df adc a,#$df +10bd: fd mov y,a +10be: 7d mov a,x +10bf: 5f c5 10 jmp $10c5 + +10c2: 8f 04 4c mov $4c,#$04 +10c5: cd f0 mov x,#$f0 +10c7: 9e div ya,x +10c8: 78 ff 4c cmp $4c,#$ff +10cb: d0 02 bne $10cf +10cd: c4 4c mov $4c,a +10cf: f6 ea 10 mov a,$10ea+y +10d2: c4 27 mov $27,a +10d4: f6 da 11 mov a,$11da+y +10d7: c4 28 mov $28,a +10d9: e8 04 mov a,#$04 +10db: 80 setc +10dc: a4 4c sbc a,$4c +10de: f0 07 beq $10e7 +10e0: fd mov y,a +10e1: 4b 28 lsr $28 +10e3: 6b 27 ror $27 +10e5: fe fa dbnz y,$10e1 +10e7: ba 27 movw ya,$27 +10e9: 6f ret + +; pitch table (low byte) +10ea: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 + +; pitch table (high byte) +11d9: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f + +; note interval frequencies (low byte) +12ca: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 + +; note interval frequencies (high byte) +12ea: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 + +130a: e4 5c mov a,$5c +130c: d0 0f bne $131d +130e: e5 4f 05 mov a,$054f +1311: f0 22 beq $1335 +1313: e8 00 mov a,#$00 +1315: c5 4f 05 mov $054f,a +1318: 3f 0a 17 call $170a +131b: 2f ed bra $130a +131d: e4 5b mov a,$5b +131f: 9c dec a +1320: c4 5d mov $5d,a +1322: 1c asl a +1323: c4 5e mov $5e,a +1325: f8 5d mov x,$5d +1327: f4 61 mov a,$61+x +1329: 5d mov x,a +132a: 1f 98 17 jmp ($1798+x) + +132d: 8b 5e dec $5e +132f: 8b 5e dec $5e +1331: 8b 5d dec $5d +1333: 10 f0 bpl $1325 +1335: 6f ret + +1336: f8 5d mov x,$5d +1338: 9b 9b dec $9b+x +133a: d0 f1 bne $132d +133c: f5 60 05 mov a,$0560+x +133f: d4 9b mov $9b+x,a +1341: 9b a3 dec $a3+x +1343: d0 e8 bne $132d +1345: f4 61 mov a,$61+x +1347: 68 02 cmp a,#$02 +1349: d0 07 bne $1352 +134b: e8 06 mov a,#$06 +134d: d4 61 mov $61+x,a +134f: 5f 63 13 jmp $1363 + +1352: e8 08 mov a,#$08 +1354: d4 61 mov $61+x,a +1356: 5f 59 15 jmp $1559 + +1359: 3f b8 14 call $14b8 +135c: d4 ce mov $ce+x,a +135e: 3f b8 14 call $14b8 +1361: d4 cf mov $cf+x,a +1363: 3f b8 14 call $14b8 +1366: fd mov y,a ; get the current note/command +1367: 28 20 and a,#$20 +1369: c4 5f mov $5f,a +136b: dd mov a,y +136c: 28 40 and a,#$40 +136e: c4 60 mov $60,a +1370: f8 5d mov x,$5d +1372: d5 88 05 mov $0588+x,a +1375: ad 80 cmp y,#$80 ; is it a note? +1377: 90 3d bcc $13b6 +1379: ad f0 cmp y,#$f0 ; is it a special meaning flag? +137b: 90 08 bcc $1385 +137d: dd mov a,y ; then it must be a command... +137e: 28 0f and a,#$0f ; get command number +1380: 1c asl a +1381: 5d mov x,a +1382: 1f 3c 15 jmp ($153c+x) ; jump to command number position + +1385: f5 90 05 mov a,$0590+x ; pitch bend +1388: f0 4c beq $13d6 +138a: dd mov a,y +138b: 28 08 and a,#$08 +138d: 0d push psw +138e: dd mov a,y +138f: 28 07 and a,#$07 +1391: bc inc a +1392: 1c asl a +1393: f8 5e mov x,$5e +1395: 8e pop psw +1396: f0 0d beq $13a5 +1398: 60 clrc +1399: 94 de adc a,$de+x +139b: d4 de mov $de+x,a +139d: f4 df mov a,$df+x +139f: 88 00 adc a,#$00 +13a1: d4 df mov $df+x,a +13a3: 2f 31 bra $13d6 +13a5: c4 27 mov $27,a +13a7: f4 de mov a,$de+x +13a9: 80 setc +13aa: a4 27 sbc a,$27 +13ac: d4 de mov $de+x,a +13ae: f4 df mov a,$df+x +13b0: a8 00 sbc a,#$00 +13b2: d4 df mov $df+x,a +13b4: 2f 20 bra $13d6 +13b6: f5 90 05 mov a,$0590+x ; play the note (check first) +13b9: f0 1b beq $13d6 +13bb: dd mov a,y +13bc: 28 1f and a,#$1f +13be: fd mov y,a +13bf: f8 5e mov x,$5e +13c1: f4 ce mov a,$ce+x +13c3: 60 clrc +13c4: 96 ca 12 adc a,$12ca+y ; get the relative frequency +13c7: d4 ce mov $ce+x,a +13c9: f4 cf mov a,$cf+x +13cb: 96 ea 12 adc a,$12ea+y +13ce: d4 cf mov $cf+x,a +13d0: e8 00 mov a,#$00 +13d2: d4 de mov $de+x,a +13d4: d4 df mov $df+x,a +13d6: 3f b8 14 call $14b8 +13d9: 68 00 cmp a,#$00 +13db: d0 12 bne $13ef +13dd: f8 5d mov x,$5d +13df: f4 61 mov a,$61+x +13e1: 68 08 cmp a,#$08 +13e3: d0 07 bne $13ec +13e5: e8 0a mov a,#$0a +13e7: d4 61 mov $61+x,a +13e9: 5f 97 15 jmp $1597 + +13ec: 5f 25 13 jmp $1325 + +13ef: f8 5d mov x,$5d +13f1: d4 a3 mov $a3+x,a +13f3: fd mov y,a +13f4: f5 60 05 mov a,$0560+x +13f7: d4 9b mov $9b+x,a +13f9: cf mul ya +13fa: da 35 movw $35,ya +13fc: 3f 18 15 call $1518 +13ff: f5 98 05 mov a,$0598+x +1402: 30 18 bmi $141c +1404: 5d mov x,a +1405: f5 06 02 mov a,$0206+x +1408: f0 0a beq $1414 +140a: e8 40 mov a,#$40 +140c: 75 27 02 cmp a,$0227+x +140f: b0 05 bcs $1416 +1411: 5f 2d 13 jmp $132d + +1414: e8 40 mov a,#$40 +1416: d5 27 02 mov $0227+x,a +1419: 5f 3d 14 jmp $143d + +141c: f5 a0 05 mov a,$05a0+x +141f: c4 3d mov $3d,a +1421: f5 a8 05 mov a,$05a8+x +1424: 30 04 bmi $142a +1426: eb 5f mov y,$5f +1428: f0 05 beq $142f +142a: 9c dec a +142b: 10 02 bpl $142f +142d: e8 07 mov a,#$07 +142f: 5d mov x,a +1430: f5 fc 07 mov a,$07fc+x +1433: c4 3f mov $3f,a +1435: 8f 40 3e mov $3e,#$40 +1438: 3f 44 0c call $0c44 +143b: 30 78 bmi $14b5 +143d: e8 01 mov a,#$01 +143f: d5 06 02 mov $0206+x,a +1442: d8 ab mov $ab,x +1444: 7d mov a,x +1445: f8 5d mov x,$5d +1447: d5 a8 05 mov $05a8+x,a +144a: f5 90 05 mov a,$0590+x +144d: d0 0c bne $145b +144f: f8 5e mov x,$5e +1451: f4 ce mov a,$ce+x +1453: c4 37 mov $37,a +1455: f4 cf mov a,$cf+x +1457: c4 38 mov $38,a +1459: 2f 25 bra $1480 +145b: f8 5e mov x,$5e +145d: f4 ce mov a,$ce+x +145f: 60 clrc +1460: 94 be adc a,$be+x +1462: fd mov y,a +1463: f4 cf mov a,$cf+x +1465: 94 bf adc a,$bf+x +1467: c4 38 mov $38,a +1469: dd mov a,y +146a: 60 clrc +146b: 94 ae adc a,$ae+x +146d: fd mov y,a +146e: e4 38 mov a,$38 +1470: 94 af adc a,$af+x +1472: c4 38 mov $38,a +1474: dd mov a,y +1475: 60 clrc +1476: 94 de adc a,$de+x +1478: c4 37 mov $37,a +147a: e4 38 mov a,$38 +147c: 94 df adc a,$df+x +147e: c4 38 mov $38,a +1480: eb 5f mov y,$5f +1482: d0 0f bne $1493 +1484: 0b ab asl $ab +1486: f8 ab mov x,$ab +1488: d5 48 02 mov $0248+x,a +148b: e4 37 mov a,$37 +148d: d5 47 02 mov $0247+x,a +1490: 5f 2d 13 jmp $132d + +1493: f8 5d mov x,$5d +1495: f5 68 05 mov a,$0568+x +1498: 60 clrc +1499: 95 70 05 adc a,$0570+x +149c: 10 02 bpl $14a0 +149e: e8 7f mov a,#$7f +14a0: c4 ac mov $ac,a +14a2: e4 60 mov a,$60 +14a4: f0 02 beq $14a8 +14a6: e8 08 mov a,#$08 +14a8: 04 5d or a,$5d +14aa: 5d mov x,a +14ab: f5 78 05 mov a,$0578+x +14ae: f8 ab mov x,$ab +14b0: eb ac mov y,$ac +14b2: 3f 6e 0c call $0c6e +14b5: 5f 2d 13 jmp $132d + +; calculate delta expression +14b8: f8 5e mov x,$5e +14ba: e7 8b mov a,($8b+x) +14bc: bb 8b inc $8b+x +14be: d0 02 bne $14c2 +14c0: bb 8c inc $8c+x +14c2: 6f ret + +; vcmd f0 - end of sequence +14c3: f8 5d mov x,$5d +14c5: e8 0a mov a,#$0a +14c7: d4 61 mov $61+x,a +14c9: 5f 97 15 jmp $1597 + +; vcmd f1 - melody delta expression +14cc: 3f b8 14 call $14b8 +14cf: c4 ad mov $ad,a +14d1: f8 5d mov x,$5d +14d3: f5 70 05 mov a,$0570+x +14d6: 3f 28 15 call $1528 +14d9: d5 70 05 mov $0570+x,a +14dc: 5f 63 13 jmp $1363 + +; vcmd f2 - melody absolute expression +14df: 3f b8 14 call $14b8 +14e2: f8 5d mov x,$5d +14e4: d5 70 05 mov $0570+x,a +14e7: 5f 63 13 jmp $1363 + +; vcmd f3 - mute +14ea: f8 5d mov x,$5d +14ec: f5 a8 05 mov a,$05a8+x +14ef: 30 15 bmi $1506 +14f1: fd mov y,a +14f2: f6 06 02 mov a,$0206+y +14f5: 68 80 cmp a,#$80 +14f7: f0 0d beq $1506 +14f9: e8 00 mov a,#$00 +14fb: d6 67 02 mov $0267+y,a +14fe: f6 dc 07 mov a,$07dc+y +1501: c4 f2 mov $f2,a +1503: 8f 9f f3 mov $f3,#$9f + +; vcmd f4 - rest +1506: 3f b8 14 call $14b8 +1509: f8 5d mov x,$5d +150b: d4 a3 mov $a3+x,a +150d: f5 60 05 mov a,$0560+x +1510: d4 9b mov $9b+x,a +1512: 3f 18 15 call $1518 +1515: 5f 2d 13 jmp $132d + +1518: f4 61 mov a,$61+x +151a: 68 06 cmp a,#$06 +151c: d0 05 bne $1523 +151e: e8 02 mov a,#$02 +1520: 5f 25 15 jmp $1525 + +1523: e8 04 mov a,#$04 +1525: d4 61 mov $61+x,a +1527: 6f ret + +; add the delta to the total +1528: 78 80 ad cmp $ad,#$80 +152b: 90 08 bcc $1535 +152d: 60 clrc +152e: 84 ad adc a,$ad +1530: 10 09 bpl $153b +1532: e8 00 mov a,#$00 +1534: 6f ret + +1535: 84 ad adc a,$ad +1537: 10 02 bpl $153b +1539: e8 7f mov a,#$7f +153b: 6f ret + +; vcmd table (f0-f4) +153c: dw $14c3 ; f0 - end of sequence +153e: dw $14cc ; f1 - melody delta expression +1540: dw $14df ; f2 - melody absolute expression +1542: dw $14ea ; f3 - mute +1544: dw $1506 ; f4 - rest + +1546: 3f b8 14 call $14b8 +1549: f8 5d mov x,$5d +154b: d5 b0 05 mov $05b0+x,a +154e: e8 00 mov a,#$00 +1550: d4 de mov $de+x,a +1552: d4 df mov $df+x,a +1554: f8 5d mov x,$5d +1556: d5 88 05 mov $0588+x,a +1559: f8 5d mov x,$5d +155b: f5 90 05 mov a,$0590+x +155e: f0 19 beq $1579 +1560: f5 b0 05 mov a,$05b0+x +1563: 8d 12 mov y,#$12 +1565: 3f bb 0d call $0dbb +1568: 3f 86 15 call $1586 +156b: 28 0e and a,#$0e +156d: fd mov y,a +156e: f8 5e mov x,$5e +1570: f7 10 mov a,($10)+y +1572: d4 ce mov $ce+x,a +1574: fc inc y +1575: f7 10 mov a,($10)+y +1577: d4 cf mov $cf+x,a +1579: 8f 20 5f mov $5f,#$20 +157c: f8 5d mov x,$5d +157e: f5 88 05 mov a,$0588+x +1581: c4 60 mov $60,a +1583: 5f d6 13 jmp $13d6 + +1586: e4 00 mov a,$00 ; fetch a random number (RNG) +1588: 1c asl a +1589: 44 00 eor a,$00 +158b: 1c asl a +158c: 1c asl a +158d: 1c asl a +158e: 2b 02 rol $02 +1590: 2b 01 rol $01 +1592: 2b 00 rol $00 +1594: e4 02 mov a,$02 +1596: 6f ret + +1597: 3f 9e 15 call $159e ; get current pattern command +159a: 5d mov x,a +159b: 1f 6f 16 jmp ($166f+x) + +159e: f8 5e mov x,$5e ; get 1 byte +15a0: e7 7b mov a,($7b+x) +15a2: bb 7b inc $7b+x +15a4: d0 02 bne $15a8 +15a6: bb 7c inc $7c+x +15a8: 6f ret + +; pattern command 00/16 - end of pattern +15a9: f8 5d mov x,$5d +15ab: e8 0c mov a,#$0c +15ad: d4 61 mov $61+x,a +15af: 5f 87 16 jmp $1687 + +; pattern command 14 +15b2: 8d 00 mov y,#$00 +15b4: f8 5e mov x,$5e +15b6: 3f a0 15 call $15a0 +15b9: ad 10 cmp y,#$10 +15bb: b0 04 bcs $15c1 +15bd: d6 3f 05 mov $053f+y,a +15c0: fc inc y +15c1: 3f a0 15 call $15a0 +15c4: 68 14 cmp a,#$14 +15c6: f0 ee beq $15b6 +15c8: 68 16 cmp a,#$16 +15ca: d0 dd bne $15a9 +15cc: dd mov a,y +15cd: 5d mov x,a +15ce: 3f 86 15 call $1586 +15d1: 8d 00 mov y,#$00 +15d3: 9e div ya,x +15d4: f6 3f 05 mov a,$053f+y +15d7: 8d 10 mov y,#$10 +15d9: 3f 62 16 call $1662 +15dc: 2f 05 bra $15e3 + +; pattern command 02 - play melody +15de: 8d 10 mov y,#$10 +15e0: 3f 5d 16 call $165d +15e3: e8 06 mov a,#$06 +15e5: d4 61 mov $61+x,a +15e7: 5f 59 13 jmp $1359 + +; pattern command 04 +15ea: 8d 14 mov y,#$14 +15ec: 3f 5d 16 call $165d +15ef: e8 08 mov a,#$08 +15f1: d4 61 mov $61+x,a +15f3: 5f 46 15 jmp $1546 + +; pattern command 06 - set channel tuning +15f6: 3f 9e 15 call $159e ; get 1 byte +15f9: eb 5e mov y,$5e +15fb: d6 be 00 mov $00be+y,a +15fe: 3f a0 15 call $15a0 +1601: d6 bf 00 mov $00bf+y,a +1604: 5f 97 15 jmp $1597 + +; pattern command 08 - set instrument +1607: 3f 9e 15 call $159e ; get 1 byte +160a: f8 5d mov x,$5d +160c: d5 78 05 mov $0578+x,a +160f: 5f 97 15 jmp $1597 + +; pattern command 0a - set pitch envelope +1612: 3f 9e 15 call $159e ; get 1 byte +1615: f8 5d mov x,$5d +1617: d5 80 05 mov $0580+x,a +161a: 5f 97 15 jmp $1597 + +; pattern command 10 - set channel gain (relative?) +161d: 3f 9e 15 call $159e ; get 1 byte +1620: c4 ad mov $ad,a +1622: f8 5d mov x,$5d +1624: f5 68 05 mov a,$0568+x +1627: 3f 28 15 call $1528 +162a: d5 68 05 mov $0568+x,a +162d: 5f 97 15 jmp $1597 + +; pattern command 12 - set channel gain (absolute) +1630: 3f 9e 15 call $159e ; get 1 byte +1633: f8 5d mov x,$5d +1635: d5 68 05 mov $0568+x,a +1638: 5f 97 15 jmp $1597 + +; pattern command 0c +163b: e8 ff mov a,#$ff +163d: f8 5d mov x,$5d +163f: d5 90 05 mov $0590+x,a +1642: 5f 97 15 jmp $1597 + +; pattern command 0e - (2 bytes) +1645: 3f 9e 15 call $159e ; get 1 byte +1648: eb 5e mov y,$5e +164a: d6 ce 00 mov $00ce+y,a +164d: 3f a0 15 call $15a0 ; get another byte +1650: d6 cf 00 mov $00cf+y,a +1653: e8 00 mov a,#$00 +1655: f8 5d mov x,$5d +1657: d5 90 05 mov $0590+x,a +165a: 5f 97 15 jmp $1597 + +; get the next byte and its corresponding phrase pointer +165d: 6d push y +165e: 3f 9e 15 call $159e +1661: ee pop y +1662: 3f bb 0d call $0dbb +1665: f8 5e mov x,$5e +1667: d4 8b mov $8b+x,a +1669: dd mov a,y +166a: d4 8c mov $8c+x,a +166c: f8 5d mov x,$5d +166e: 6f ret + +; pattern command table (00-17) +166f: dw $15a9 ; 00 - end of pattern +1671: dw $15de ; 02 - play melody +1673: dw $15ea ; 04 +1675: dw $15f6 ; 06 - set channel tuning +1677: dw $1607 ; 08 - set instrument +1679: dw $1612 ; 0a - set pitch envelope +167b: dw $163b ; 0c +167d: dw $1645 ; 0e - (2 bytes) +167f: dw $161d ; 10 - set channel gain (relative)? +1681: dw $1630 ; 12 - set channel gain (absolute) +1683: dw $15b2 ; 14 +1685: dw $15a9 ; 16 - end of pattern (same as 00) + +; melody command 00 - end of melody +1687: 3f 8e 16 call $168e +168a: 5d mov x,a +168b: 1f fe 16 jmp ($16fe+x) + +168e: f8 5e mov x,$5e +1690: e7 6b mov a,($6b+x) +1692: bb 6b inc $6b+x +1694: d0 02 bne $1698 +1696: bb 6c inc $6c+x +1698: 6f ret + +; melody command 02 - go to loop +1699: f8 5d mov x,$5d +169b: e8 00 mov a,#$00 +169d: d4 61 mov $61+x,a +169f: 8b 5c dec $5c +16a1: 5f 2d 13 jmp $132d + +; melody command 04 +16a4: f8 5e mov x,$5e +16a6: f5 50 05 mov a,$0550+x +16a9: d4 6b mov $6b+x,a +16ab: f5 51 05 mov a,$0551+x +16ae: d4 6c mov $6c+x,a +16b0: 5f 87 16 jmp $1687 + +; melody command 06 - toggle channel mute +16b3: 3f 8e 16 call $168e +16b6: f8 5d mov x,$5d +16b8: d5 60 05 mov $0560+x,a +16bb: 5f 87 16 jmp $1687 + +; melody command 08 - play phrase +16be: 3f 8e 16 call $168e +16c1: eb 5e mov y,$5e +16c3: d6 ae 00 mov $00ae+y,a +16c6: 3f 90 16 call $1690 +16c9: d6 af 00 mov $00af+y,a +16cc: 5f 87 16 jmp $1687 + +; melody command 0a - set channel number +16cf: 3f 8e 16 call $168e +16d2: 8d 16 mov y,#$16 +16d4: 3f bb 0d call $0dbb +16d7: f8 5e mov x,$5e +16d9: d4 7b mov $7b+x,a +16db: dd mov a,y +16dc: d4 7c mov $7c+x,a +16de: f8 5d mov x,$5d +16e0: e8 0a mov a,#$0a +16e2: d4 61 mov $61+x,a +16e4: 5f 97 15 jmp $1597 + +; melody command 0c +16e7: 3f 8e 16 call $168e +16ea: f8 5d mov x,$5d +16ec: d5 98 05 mov $0598+x,a +16ef: 68 ff cmp a,#$ff +16f1: d0 08 bne $16fb +16f3: 3f 8e 16 call $168e +16f6: f8 5d mov x,$5d +16f8: d5 a0 05 mov $05a0+x,a +16fb: 5f 87 16 jmp $1687 + +; melody command table (00-0c) +16fc: dw $1687 ; 00 - end of melody +16fe: dw $1699 ; 02 - go to loop +1700: dw $16a4 ; 04 +1702: dw $16b3 ; 06 - toggle channel mute +1704: dw $16be ; 08 - play phrase +1706: dw $16cf ; 0a - set channel number +1708: dw $16e7 ; 0c + +170a: 8d 93 mov y,#$93 +170c: f9 5a mov x,$5a+y +170e: f6 b7 05 mov a,$05b7+y +1711: d6 5a 00 mov $005a+y,a +1714: 7d mov a,x +1715: d6 b7 05 mov $05b7+y,a +1718: fe f2 dbnz y,$170c +171a: 8d 69 mov y,#$69 +171c: f6 4e 05 mov a,$054e+y +171f: 5d mov x,a +1720: f6 4a 06 mov a,$064a+y +1723: d6 4e 05 mov $054e+y,a +1726: 7d mov a,x +1727: d6 4a 06 mov $064a+y,a +172a: fe f0 dbnz y,$171c +172c: 6f ret + +172d: 3f 36 17 call $1736 +1730: e8 01 mov a,#$01 +1732: c5 4f 05 mov $054f,a +1735: 6f ret + +1736: 2d push a ; start song +1737: 3f 0a 17 call $170a ; stop the current song +173a: ae pop a +173b: 8d 1a mov y,#$1a ; find the start of the song struct +173d: 3f bb 0d call $0dbb +1740: da 69 movw $69,ya +1742: 8d 00 mov y,#$00 ; get number of channels +1744: f7 69 mov a,($69)+y +1746: c4 5b mov $5b,a ; save number of channels in total and current +1748: c4 5c mov $5c,a +174a: f0 4b beq $1797 ; if 0, then return +174c: 8f 00 5d mov $5d,#$00 +174f: 8f 00 5e mov $5e,#$00 +1752: fc inc y +1753: f7 69 mov a,($69)+y +1755: 6d push y +1756: 8d 18 mov y,#$18 +1758: 3f bb 0d call $0dbb +175b: f8 5e mov x,$5e +175d: d5 50 05 mov $0550+x,a +1760: d4 6b mov $6b+x,a +1762: dd mov a,y +1763: ee pop y +1764: d5 51 05 mov $0551+x,a +1767: d4 6c mov $6c+x,a +1769: e8 00 mov a,#$00 +176b: d4 ae mov $ae+x,a +176d: d4 af mov $af+x,a +176f: d4 be mov $be+x,a +1771: d4 bf mov $bf+x,a +1773: f8 5d mov x,$5d +1775: e8 0c mov a,#$0c +1777: d4 61 mov $61+x,a +1779: e8 ff mov a,#$ff +177b: d5 90 05 mov $0590+x,a +177e: d5 a8 05 mov $05a8+x,a +1781: e8 00 mov a,#$00 +1783: d5 68 05 mov $0568+x,a +1786: d5 70 05 mov $0570+x,a +1789: d5 88 05 mov $0588+x,a +178c: ab 5e inc $5e +178e: ab 5e inc $5e +1790: 3d inc x +1791: d8 5d mov $5d,x +1793: 3e 5b cmp x,$5b +1795: 90 bb bcc $1752 +1797: 6f ret + +1798: dw $132d +179a: dw $1336 +179c: dw $1336 +179e: dw $1363 +17a0: dw $1559 +17a2: dw $1597 +17a4: dw $1687 +17a6: dw $0b5d +17a8: dw $0bd6 +17aa: dw $173b +17ac: dw $1736 +17ae: dw $172d +17b0: dw $170a +17b2: dw $0792 +17b4: dw $0b7d +17b6: dw $0b79 +17b8: dw $0b73 +17ba: dw $0b70 +17bc: dw $0b6a +17be: dw $0b8c +17c0: dw $0b97 \ No newline at end of file diff --git a/Rocko's Modern Life - Spunky's Dangerous Day.s b/Rocko's Modern Life - Spunky's Dangerous Day.s new file mode 100644 index 00000000..d5096c9f --- /dev/null +++ b/Rocko's Modern Life - Spunky's Dangerous Day.s @@ -0,0 +1,2094 @@ +0700: 20 clrp +0701: cd ff mov x,#$ff ; set stack pointer +0703: bd mov sp,x +0704: 8f b0 f1 mov $f1,#$b0 ; clear input ports APUI00-APUI04 +0707: 8f 20 fa mov $fa,#$20 +070a: 8f 81 f1 mov $f1,#$81 ; toggle timer 2 +070d: 3f d3 0e call $0ed3 ; clear/reset routine +0710: 8f 00 13 mov $13,#$00 +0713: 8f 1a 14 mov $14,#$1a +0716: 8d 03 mov y,#$03 ; set temporary storage +0718: f6 02 00 mov a,$0002+y +071b: 16 22 07 or a,$0722+y +071e: d6 02 00 mov $0002+y,a +0721: fe f5 dbnz y,$0718 +0723: ab 1d inc $1d +0725: e4 23 mov a,$23 +0727: d0 05 bne $072e +0729: 3f 49 18 call $1849 ; do a random number generator (RNG) +072c: 2f 03 bra $0731 +072e: 3f 51 08 call $0851 +0731: e4 f6 mov a,$f6 +0733: f0 03 beq $0738 +0735: 3f 7d 0b call $0b7d +0738: e4 fd mov a,$fd +073a: 60 clrc +073b: 84 1c adc a,$1c +073d: c4 1c mov $1c,a +073f: 68 05 cmp a,#$05 +0741: 90 ee bcc $0731 +0743: a8 05 sbc a,#$05 +0745: c4 1c mov $1c,a +0747: 68 14 cmp a,#$14 +0749: 90 d8 bcc $0723 +074b: 8f 00 1c mov $1c,#$00 +074e: 2f d3 bra $0723 +0750: 8d 00 mov y,#$00 +0752: 8f aa f4 mov $f4,#$aa +0755: 8f bb f5 mov $f5,#$bb +0758: f8 f4 mov x,$f4 +075a: c8 cc cmp x,#$cc +075c: d0 fa bne $0758 +075e: fa f6 00 mov ($00),($f6) +0761: fa f7 01 mov ($01),($f7) +0764: 7d mov a,x +0765: f8 f5 mov x,$f5 +0767: c4 f4 mov $f4,a +0769: d0 05 bne $0770 +076b: d8 f5 mov $f5,x +076d: 1f 00 00 jmp ($0000+x) + +0770: cd 00 mov x,#$00 +0772: 3e f4 cmp x,$f4 +0774: d0 fc bne $0772 +0776: e4 f5 mov a,$f5 +0778: d8 f4 mov $f4,x +077a: d7 00 mov ($00)+y,a +077c: 3a 00 incw $00 +077e: 3e f4 cmp x,$f4 +0780: f0 fc beq $077e +0782: 3d inc x +0783: 3e f4 cmp x,$f4 +0785: f0 ef beq $0776 +0787: f8 f4 mov x,$f4 +0789: 2f d3 bra $075e +078b: 3f d3 0e call $0ed3 +078e: 8f b0 f1 mov $f1,#$b0 +0791: cd 00 mov x,#$00 +0793: f5 50 07 mov a,$0750+x +0796: d5 00 01 mov $0100+x,a +0799: 3d inc x +079a: c8 3b cmp x,#$3b +079c: 90 f5 bcc $0793 +079e: 5f 00 01 jmp $0100 + +; gain tables +07a1: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 +07b7: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 + +; DSP registers: VxENVX +07cd: db $08,$18,$28,$38,$48,$58,$68,$78 +; DSP registers: VxGAIN +07d5: db $07,$17,$27,$37,$47,$57,$67,$77 +; DSP registers: VxSCRN (select sample) +07dd: db $04,$14,$24,$34,$44,$54,$64,$74 +; DSP registers: VxPITCHL +07e5: db $02,$12,$22,$32,$42,$52,$62,$72 +; DSP registers: VxVOLL +07ed: db $00,$10,$20,$30,$40,$50,$60,$70 + +; voice numbers and bits for clearing those void bits +07f5: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f + +; echo poke registers +0805: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f + +0811: db $02,$02,$02,$02,$02,$03,$03,$03 +0819: db $9e,$b3,$c8,$dd,$f2,$07,$1c,$31 + +0821: db $03,$03,$03,$03,$03,$03,$03,$03 +0829: db $46,$5b,$70,$85,$9a,$af,$c4,$d9 + +0831: db $03,$04,$04,$04,$04,$04,$04,$04 +0839: db $ee,$03,$18,$2d,$42,$57,$6c,$81 + +0841: db $04,$04,$04,$04,$04,$05,$05,$05 +0849: db $96,$ac,$c2,$d8,$ee,$04,$1a,$30 + +0851: 3f 49 18 call $1849 ; use RNG +0854: 3f 7d 0b call $0b7d +0857: e5 00 02 mov a,$0200 +085a: f0 09 beq $0865 +085c: 60 clrc +085d: 85 01 02 adc a,$0201 +0860: c5 01 02 mov $0201,a +0863: 90 06 bcc $086b +0865: 3f 5c 14 call $145c +0868: 3f 7d 0b call $0b7d +086b: 8f 00 37 mov $37,#$00 +086e: 8f 00 4c mov $4c,#$00 +0871: 8f 7c f2 mov $f2,#$7c ; clear end of sample flags? +0874: e4 f3 mov a,$f3 +0876: 04 49 or a,$49 +0878: 24 4f and a,$4f +087a: c4 49 mov $49,a +087c: 8f 00 f3 mov $f3,#$00 +087f: 24 4a and a,$4a +0881: 04 4b or a,$4b +0883: c4 4b mov $4b,a +0885: cd 07 mov x,#$07 +0887: 8f 81 15 mov $15,#$81 +088a: 8f 04 16 mov $16,#$04 +088d: 3f 6c 0b call $0b6c +0890: d8 17 mov $17,x +0892: f5 f5 07 mov a,$07f5+x ; clear voice number bits +0895: c4 39 mov $39,a +0897: 48 ff eor a,#$ff +0899: c4 3a mov $3a,a +089b: f4 5b mov a,$5b+x +089d: 28 02 and a,#$02 +089f: c4 38 mov $38,a +08a1: d0 06 bne $08a9 +08a3: f5 7e 02 mov a,$027e+x +08a6: 5f ae 08 jmp $08ae + +08a9: 3f 24 10 call $1024 +08ac: f8 17 mov x,$17 +08ae: 75 86 02 cmp a,$0286+x +08b1: d0 10 bne $08c3 +08b3: 3f be 11 call $11be +08b6: 3f 52 0b call $0b52 +08b9: e4 50 mov a,$50 +08bb: 24 4d and a,$4d +08bd: 24 39 and a,$39 +08bf: d0 43 bne $0904 +08c1: f0 44 beq $0907 +08c3: d5 86 02 mov $0286+x,a +08c6: 09 39 37 or ($37),($39) +08c9: 3f be 11 call $11be +08cc: 7d mov a,x +08cd: 1c asl a +08ce: 5d mov x,a +08cf: e4 51 mov a,$51 +08d1: d5 8e 02 mov $028e+x,a +08d4: e4 52 mov a,$52 +08d6: d5 8f 02 mov $028f+x,a +08d9: f8 17 mov x,$17 +08db: e4 53 mov a,$53 +08dd: 28 20 and a,#$20 +08df: f0 05 beq $08e6 +08e1: 29 3a 4a and ($4a),($3a) +08e4: 2f 03 bra $08e9 +08e6: 09 39 4a or ($4a),($39) +08e9: e4 53 mov a,$53 +08eb: 28 40 and a,#$40 +08ed: f0 05 beq $08f4 +08ef: 09 39 50 or ($50),($39) +08f2: 2f 03 bra $08f7 +08f4: 29 3a 50 and ($50),($3a) +08f7: 3f 52 0b call $0b52 +08fa: e4 50 mov a,$50 +08fc: 04 4d or a,$4d +08fe: 24 39 and a,$39 +0900: d0 02 bne $0904 +0902: f0 03 beq $0907 +0904: 09 39 4c or ($4c),($39) +0907: 1d dec x +0908: 30 0a bmi $0914 +090a: 80 setc +090b: b8 15 15 sbc $15,#$15 +090e: b8 00 16 sbc $16,#$00 +0911: 5f 8d 08 jmp $088d + +0914: e4 4d mov a,$4d +0916: 24 4b and a,$4b +0918: 04 4c or a,$4c +091a: c4 4e mov $4e,a +091c: 8f 5c f2 mov $f2,#$5c +091f: c4 f3 mov $f3,a +0921: cd 07 mov x,#$07 +0923: 8f 30 15 mov $15,#$30 +0926: 8f 05 16 mov $16,#$05 +0929: 8f 00 3c mov $3c,#$00 +092c: 3f 6c 0b call $0b6c +092f: d8 17 mov $17,x +0931: e4 5a mov a,$5a +0933: d0 13 bne $0948 +0935: f4 5b mov a,$5b+x +0937: 28 08 and a,#$08 +0939: c4 3c mov $3c,a +093b: d0 06 bne $0943 +093d: f5 76 02 mov a,$0276+x +0940: 5f 48 09 jmp $0948 + +0943: 3f 24 10 call $1024 +0946: f8 17 mov x,$17 +0948: fd mov y,a +0949: f5 6e 02 mov a,$026e+x +094c: c4 31 mov $31,a +094e: cf mul ya +094f: cd 64 mov x,#$64 +0951: 9e div ya,x +0952: f8 17 mov x,$17 +0954: eb 3c mov y,$3c +0956: f0 11 beq $0969 +0958: c4 2f mov $2f,a +095a: 8d 15 mov y,#$15 +095c: f7 15 mov a,($15)+y +095e: d0 04 bne $0964 +0960: e4 2f mov a,$2f +0962: 2f 05 bra $0969 +0964: e4 31 mov a,$31 +0966: 80 setc +0967: a4 2f sbc a,$2f +0969: c4 2f mov $2f,a +096b: f5 ed 07 mov a,$07ed+x +096e: fd mov y,a +096f: cb f2 mov $f2,y +0971: fa 2f f3 mov ($f3),($2f) +0974: e4 31 mov a,$31 +0976: 80 setc +0977: a4 2f sbc a,$2f +0979: fc inc y +097a: cb f2 mov $f2,y +097c: c4 f3 mov $f3,a +097e: 80 setc +097f: b8 16 15 sbc $15,#$16 +0982: b8 00 16 sbc $16,#$00 +0985: 1d dec x +0986: 30 03 bmi $098b +0988: 5f 2c 09 jmp $092c + +098b: cd 07 mov x,#$07 +098d: 8f d9 15 mov $15,#$d9 +0990: 8f 03 16 mov $16,#$03 +0993: 3f 6c 0b call $0b6c +0996: d8 17 mov $17,x +0998: f4 5b mov a,$5b+x +099a: fd mov y,a +099b: 28 40 and a,#$40 +099d: 0d push psw +099e: dd mov a,y +099f: 28 04 and a,#$04 +09a1: 0d push psw +09a2: 7d mov a,x +09a3: fd mov y,a +09a4: 1c asl a +09a5: 5d mov x,a +09a6: f5 4f 02 mov a,$024f+x ; get base note +09a9: c4 36 mov $36,a +09ab: f5 4e 02 mov a,$024e+x +09ae: c4 35 mov $35,a +09b0: 8e pop psw +09b1: f0 11 beq $09c4 +09b3: 4d push x ; save word addressing +09b4: 3f 24 10 call $1024 ; advance pitch envelope +09b7: ce pop x ; restore pitch flag +09b8: 7a 35 addw ya,$35 +09ba: 80 setc +09bb: a8 b0 sbc a,#$b0 +09bd: c4 35 mov $35,a +09bf: dd mov a,y +09c0: a8 04 sbc a,#$04 +09c2: c4 36 mov $36,a +09c4: f5 8f 02 mov a,$028f+x +09c7: fd mov y,a +09c8: f5 8e 02 mov a,$028e+x +09cb: 7a 35 addw ya,$35 +09cd: 8e pop psw +09ce: d0 03 bne $09d3 +09d0: 3f e8 11 call $11e8 ; translate note to frequency +09d3: f8 17 mov x,$17 +09d5: d5 5e 02 mov $025e+x,a +09d8: dd mov a,y +09d9: d5 66 02 mov $0266+x,a +09dc: 80 setc +09dd: b8 15 15 sbc $15,#$15 +09e0: b8 00 16 sbc $16,#$00 +09e3: 1d dec x +09e4: 10 ad bpl $0993 +09e6: 8f 5c f2 mov $f2,#$5c +09e9: 8f 00 f3 mov $f3,#$00 +09ec: cd 07 mov x,#$07 +09ee: 8f 31 15 mov $15,#$31 +09f1: 8f 03 16 mov $16,#$03 +09f4: 3f 6c 0b call $0b6c +09f7: d8 17 mov $17,x +09f9: f5 f5 07 mov a,$07f5+x +09fc: c4 39 mov $39,a +09fe: 48 ff eor a,#$ff +0a00: c4 3a mov $3a,a +0a02: f4 5b mov a,$5b+x +0a04: 28 01 and a,#$01 +0a06: d0 06 bne $0a0e +0a08: f5 36 02 mov a,$0236+x +0a0b: 5f 13 0a jmp $0a13 + +0a0e: 3f 24 10 call $1024 +0a11: f8 17 mov x,$17 +0a13: d5 3e 02 mov $023e+x,a +0a16: fd mov y,a +0a17: e4 37 mov a,$37 +0a19: 24 39 and a,$39 +0a1b: f0 0a beq $0a27 +0a1d: f5 dd 07 mov a,$07dd+x +0a20: c4 f2 mov $f2,a +0a22: f5 86 02 mov a,$0286+x +0a25: c4 f3 mov $f3,a +0a27: e4 48 mov a,$48 +0a29: 24 39 and a,$39 +0a2b: f0 05 beq $0a32 +0a2d: 29 3a 48 and ($48),($3a) +0a30: 2f 35 bra $0a67 +0a32: f5 cd 07 mov a,$07cd+x +0a35: c4 f2 mov $f2,a +0a37: dd mov a,y +0a38: 80 setc +0a39: a4 f3 sbc a,$f3 +0a3b: b0 08 bcs $0a45 +0a3d: 8f 80 2a mov $2a,#$80 +0a40: 48 ff eor a,#$ff +0a42: bc inc a +0a43: 2f 03 bra $0a48 +0a45: 8f c0 2a mov $2a,#$c0 +0a48: 5c lsr a +0a49: d0 08 bne $0a53 +0a4b: ad 00 cmp y,#$00 +0a4d: d0 04 bne $0a53 +0a4f: e8 82 mov a,#$82 +0a51: 2f 0e bra $0a61 +0a53: 8d 15 mov y,#$15 +0a55: 76 a1 07 cmp a,$07a1+y +0a58: 90 02 bcc $0a5c +0a5a: fe f9 dbnz y,$0a55 +0a5c: f6 b7 07 mov a,$07b7+y +0a5f: 04 2a or a,$2a +0a61: 75 46 02 cmp a,$0246+x +0a64: f0 0c beq $0a72 +0a66: fd mov y,a +0a67: f5 d5 07 mov a,$07d5+x +0a6a: c4 f2 mov $f2,a +0a6c: cb f3 mov $f3,y +0a6e: dd mov a,y +0a6f: d5 46 02 mov $0246+x,a +0a72: f5 e5 07 mov a,$07e5+x +0a75: c4 f2 mov $f2,a +0a77: fd mov y,a +0a78: f5 5e 02 mov a,$025e+x +0a7b: c4 f3 mov $f3,a +0a7d: fc inc y +0a7e: cb f2 mov $f2,y +0a80: f5 66 02 mov a,$0266+x +0a83: c4 f3 mov $f3,a +0a85: 80 setc +0a86: b8 15 15 sbc $15,#$15 +0a89: b8 00 16 sbc $16,#$00 +0a8c: 1d dec x +0a8d: 30 03 bmi $0a92 +0a8f: 5f f4 09 jmp $09f4 + +0a92: 8f 4c f2 mov $f2,#$4c +0a95: fa 4e f3 mov ($f3),($4e) +0a98: e4 4e mov a,$4e +0a9a: 48 ff eor a,#$ff +0a9c: c4 4f mov $4f,a +0a9e: 29 4f 49 and ($49),($4f) +0aa1: 29 4f 4b and ($4b),($4f) +0aa4: 8f 00 4d mov $4d,#$00 +0aa7: 3f 7d 0b call $0b7d +0aaa: cd 07 mov x,#$07 +0aac: 8d 0e mov y,#$0e +0aae: f5 0d 02 mov a,$020d+x +0ab1: f0 2b beq $0ade +0ab3: f4 5b mov a,$5b+x +0ab5: 28 80 and a,#$80 +0ab7: f0 09 beq $0ac2 +0ab9: f5 f5 07 mov a,$07f5+x +0abc: 24 49 and a,$49 +0abe: d0 19 bne $0ad9 +0ac0: 2f 1c bra $0ade +0ac2: f6 1e 02 mov a,$021e+y +0ac5: 80 setc +0ac6: a8 01 sbc a,#$01 +0ac8: d6 1e 02 mov $021e+y,a +0acb: c4 2f mov $2f,a +0acd: f6 1f 02 mov a,$021f+y +0ad0: a8 00 sbc a,#$00 +0ad2: d6 1f 02 mov $021f+y,a +0ad5: 04 2f or a,$2f +0ad7: d0 05 bne $0ade +0ad9: e8 00 mov a,#$00 +0adb: d5 0d 02 mov $020d+x,a +0ade: dc dec y +0adf: dc dec y +0ae0: 1d dec x +0ae1: 10 cb bpl $0aae +0ae3: 3f 6c 0b call $0b6c +0ae6: ec 07 02 mov y,$0207 +0ae9: f0 66 beq $0b51 +0aeb: 8c 08 02 dec $0208 +0aee: d0 61 bne $0b51 +0af0: cc 08 02 mov $0208,y +0af3: e4 1e mov a,$1e +0af5: e9 09 02 mov x,$0209 +0af8: 30 0e bmi $0b08 +0afa: 60 clrc +0afb: 85 0a 02 adc a,$020a +0afe: b0 04 bcs $0b04 +0b00: 68 7f cmp a,#$7f +0b02: 90 13 bcc $0b17 +0b04: e8 7f mov a,#$7f +0b06: 2f 0a bra $0b12 +0b08: 80 setc +0b09: a5 0a 02 sbc a,$020a +0b0c: f0 04 beq $0b12 +0b0e: b0 07 bcs $0b17 +0b10: e8 00 mov a,#$00 +0b12: 8d 00 mov y,#$00 +0b14: cc 07 02 mov $0207,y +0b17: c4 1e mov $1e,a +0b19: 5d mov x,a +0b1a: 8f 2c f2 mov $f2,#$2c +0b1d: 65 0b 02 cmp a,$020b +0b20: 90 03 bcc $0b25 +0b22: e5 0b 02 mov a,$020b +0b25: c4 f3 mov $f3,a +0b27: 8f 3c f2 mov $f2,#$3c +0b2a: 7d mov a,x +0b2b: 65 0c 02 cmp a,$020c +0b2e: 90 03 bcc $0b33 +0b30: e5 0b 02 mov a,$020b +0b33: c4 f3 mov $f3,a +0b35: 8f 0c f2 mov $f2,#$0c +0b38: d8 f3 mov $f3,x +0b3a: 8f 1c f2 mov $f2,#$1c +0b3d: d8 f3 mov $f3,x +0b3f: e5 07 02 mov a,$0207 +0b42: d0 0d bne $0b51 +0b44: e5 06 02 mov a,$0206 +0b47: f0 08 beq $0b51 +0b49: 8f 00 64 mov $64,#$00 +0b4c: 8d 80 mov y,#$80 +0b4e: 5f 49 0c jmp $0c49 + +0b51: 6f ret + +0b52: e4 53 mov a,$53 +0b54: 10 0c bpl $0b62 +0b56: 28 1f and a,#$1f +0b58: 8f 6c f2 mov $f2,#$6c +0b5b: c4 f3 mov $f3,a +0b5d: 09 39 55 or ($55),($39) +0b60: 2f 03 bra $0b65 +0b62: 29 3a 55 and ($55),($3a) +0b65: 8f 3d f2 mov $f2,#$3d +0b68: fa 55 f3 mov ($f3),($55) +0b6b: 6f ret + +0b6c: 4d push x +0b6d: e4 f6 mov a,$f6 +0b6f: f0 4c beq $0bbd +0b71: f8 f7 mov x,$f7 +0b73: c8 1e cmp x,#$1e +0b75: 90 46 bcc $0bbd +0b77: c8 23 cmp x,#$23 +0b79: b0 42 bcs $0bbd +0b7b: 2f 05 bra $0b82 +0b7d: 4d push x +0b7e: e4 f6 mov a,$f6 +0b80: f0 3b beq $0bbd +0b82: e4 f6 mov a,$f6 +0b84: 64 f6 cmp a,$f6 +0b86: d0 fa bne $0b82 +0b88: c4 1f mov $1f,a +0b8a: fa f4 21 mov ($21),($f4) +0b8d: fa f5 22 mov ($22),($f5) +0b90: e4 f7 mov a,$f7 +0b92: 28 fe and a,#$fe +0b94: c4 20 mov $20,a +0b96: 8f b1 f1 mov $f1,#$b1 +0b99: 28 fe and a,#$fe +0b9b: c4 20 mov $20,a +0b9d: 68 20 cmp a,#$20 +0b9f: f0 07 beq $0ba8 +0ba1: 68 22 cmp a,#$22 +0ba3: f0 03 beq $0ba8 +0ba5: fa 1f f6 mov ($f6),($1f) +0ba8: 5d mov x,a +0ba9: c8 29 cmp x,#$29 +0bab: b0 10 bcs $0bbd +0bad: e4 21 mov a,$21 +0baf: eb 22 mov y,$22 +0bb1: 3f bf 0b call $0bbf +0bb4: fa 21 f4 mov ($f4),($21) +0bb7: fa 22 f5 mov ($f5),($22) +0bba: fa 20 f7 mov ($f7),($20) +0bbd: ce pop x +0bbe: 6f ret + +0bbf: 1f 54 19 jmp ($1954+x) + +0bc2: 3f 0f 0f call $0f0f +0bc5: e8 01 mov a,#$01 +0bc7: 8d 08 mov y,#$08 +0bc9: cd 01 mov x,#$01 +0bcb: 3f e7 0b call $0be7 +0bce: 8f 6c f2 mov $f2,#$6c +0bd1: 8f 00 f3 mov $f3,#$00 +0bd4: 8f ff 23 mov $23,#$ff +0bd7: 6f ret + +0bd8: da 42 movw $42,ya +0bda: 8f ff 41 mov $41,#$ff +0bdd: 6f ret + +0bde: c4 5a mov $5a,a +0be0: 6f ret + +0be1: e8 00 mov a,#$00 +0be3: c5 07 02 mov $0207,a +0be6: 6f ret + +0be7: cd 01 mov x,#$01 +0be9: 2d push a +0bea: e8 00 mov a,#$00 +0bec: c5 06 02 mov $0206,a +0bef: ae pop a +0bf0: 2f 02 bra $0bf4 +0bf2: cd ff mov x,#$ff +0bf4: c5 07 02 mov $0207,a +0bf7: c5 08 02 mov $0208,a +0bfa: cc 0a 02 mov $020a,y +0bfd: c9 09 02 mov $0209,x +0c00: 6f ret + +0c01: 8d ff mov y,#$ff +0c03: cc 05 02 mov $0205,y +0c06: 5f a0 0c jmp $0ca0 + +0c09: 3f 5a 18 call $185a +0c0c: e5 fc 19 mov a,$19fc +0c0f: c5 35 06 mov $0635,a +0c12: e5 fd 19 mov a,$19fd +0c15: c5 36 06 mov $0636,a +0c18: 05 35 06 or a,$0635 +0c1b: f0 20 beq $0c3d +0c1d: 3f 5c 14 call $145c +0c20: e5 35 06 mov a,$0635 +0c23: 80 setc +0c24: a8 01 sbc a,#$01 +0c26: c5 35 06 mov $0635,a +0c29: e5 36 06 mov a,$0636 +0c2c: a8 00 sbc a,#$00 +0c2e: c5 36 06 mov $0636,a +0c31: b0 ea bcs $0c1d +0c33: cd 07 mov x,#$07 +0c35: e8 00 mov a,#$00 +0c37: d5 6e 02 mov $026e+x,a +0c3a: 1d dec x +0c3b: 10 fa bpl $0c37 +0c3d: 6f ret + +0c3e: 8f 00 64 mov $64,#$00 +0c41: 68 00 cmp a,#$00 +0c43: d0 03 bne $0c48 +0c45: c5 46 05 mov $0546,a +0c48: 6f ret + +0c49: c5 1d 02 mov $021d,a +0c4c: cd 07 mov x,#$07 +0c4e: ad 80 cmp y,#$80 +0c50: f0 17 beq $0c69 +0c52: e8 01 mov a,#$01 +0c54: b0 0e bcs $0c64 +0c56: ad 00 cmp y,#$00 +0c58: d0 08 bne $0c62 +0c5a: e5 1d 02 mov a,$021d +0c5d: 75 15 02 cmp a,$0215+x +0c60: d0 23 bne $0c85 +0c62: e8 80 mov a,#$80 +0c64: 75 0d 02 cmp a,$020d+x +0c67: d0 1c bne $0c85 +0c69: f5 d5 07 mov a,$07d5+x +0c6c: c4 f2 mov $f2,a +0c6e: e8 00 mov a,#$00 +0c70: 8f 9f f3 mov $f3,#$9f +0c73: d5 36 02 mov $0236+x,a +0c76: d5 0d 02 mov $020d+x,a +0c79: d5 7e 02 mov $027e+x,a +0c7c: d4 5b mov $5b+x,a +0c7e: f5 f5 07 mov a,$07f5+x +0c81: 04 4d or a,$4d +0c83: c4 4d mov $4d,a +0c85: 1d dec x +0c86: 10 c6 bpl $0c4e +0c88: 6f ret + +0c89: 2d push a +0c8a: e8 00 mov a,#$00 +0c8c: c5 06 02 mov $0206,a +0c8f: ae pop a +0c90: 5f f2 0b jmp $0bf2 + +0c93: 2d push a +0c94: e8 01 mov a,#$01 +0c96: c5 06 02 mov $0206,a +0c99: ae pop a +0c9a: 5f f2 0b jmp $0bf2 + +0c9d: cc 05 02 mov $0205,y +0ca0: 8d 0e mov y,#$0e +0ca2: c5 1d 02 mov $021d,a +0ca5: 3f b2 0e call $0eb2 +0ca8: da 11 movw $11,ya +0caa: 8d 00 mov y,#$00 +0cac: f7 11 mov a,($11)+y +0cae: c4 44 mov $44,a +0cb0: 3a 11 incw $11 +0cb2: 8d 07 mov y,#$07 +0cb4: f7 11 mov a,($11)+y +0cb6: c4 45 mov $45,a +0cb8: 8d 06 mov y,#$06 +0cba: f7 11 mov a,($11)+y +0cbc: c4 46 mov $46,a +0cbe: 8f 80 47 mov $47,#$80 +0cc1: cd 07 mov x,#$07 +0cc3: 3f 16 0d call $0d16 +0cc6: 30 3e bmi $0d06 +0cc8: e8 80 mov a,#$80 +0cca: d5 0d 02 mov $020d+x,a +0ccd: e5 1d 02 mov a,$021d +0cd0: d5 15 02 mov $0215+x,a +0cd3: 8d 02 mov y,#$02 +0cd5: f7 11 mov a,($11)+y +0cd7: c4 3d mov $3d,a +0cd9: fc inc y +0cda: f7 11 mov a,($11)+y +0cdc: c4 3e mov $3e,a +0cde: 8d 04 mov y,#$04 +0ce0: f7 11 mov a,($11)+y +0ce2: c4 3f mov $3f,a +0ce4: fc inc y +0ce5: f7 11 mov a,($11)+y +0ce7: c4 40 mov $40,a +0ce9: e4 41 mov a,$41 +0ceb: f0 04 beq $0cf1 +0ced: ba 42 movw ya,$42 +0cef: da 3f movw $3f,ya +0cf1: 8d 01 mov y,#$01 +0cf3: f7 11 mov a,($11)+y +0cf5: 2d push a +0cf6: 8d 00 mov y,#$00 +0cf8: f7 11 mov a,($11)+y +0cfa: 8d 01 mov y,#$01 +0cfc: cc 04 02 mov $0204,y +0cff: ee pop y +0d00: 8f 00 cf mov $cf,#$00 +0d03: 3f 40 0d call $0d40 +0d06: 60 clrc +0d07: 98 08 11 adc $11,#$08 +0d0a: 90 02 bcc $0d0e +0d0c: ab 12 inc $12 +0d0e: 8b 44 dec $44 +0d10: d0 a0 bne $0cb2 +0d12: 8f 00 41 mov $41,#$00 +0d15: 6f ret + +0d16: 8d 07 mov y,#$07 +0d18: e4 47 mov a,$47 +0d1a: 24 45 and a,$45 +0d1c: f0 0c beq $0d2a +0d1e: f5 0d 02 mov a,$020d+x +0d21: f0 15 beq $0d38 +0d23: e4 46 mov a,$46 +0d25: 75 2e 02 cmp a,$022e+x +0d28: b0 10 bcs $0d3a +0d2a: 4b 47 lsr $47 +0d2c: d0 05 bne $0d33 +0d2e: 8f 80 47 mov $47,#$80 +0d31: cd 08 mov x,#$08 +0d33: 1d dec x +0d34: dc dec y +0d35: 10 e1 bpl $0d18 +0d37: 6f ret + +0d38: e4 46 mov a,$46 +0d3a: d5 2e 02 mov $022e+x,a +0d3d: e8 00 mov a,#$00 +0d3f: 6f ret + +0d40: d8 3b mov $3b,x ; play sound (instrument) +0d42: 2d push a +0d43: e4 cf mov a,$cf +0d45: d0 08 bne $0d4f +0d47: f5 d5 07 mov a,$07d5+x +0d4a: c4 f2 mov $f2,a +0d4c: 8f 9f f3 mov $f3,#$9f +0d4f: dd mov a,y +0d50: d5 6e 02 mov $026e+x,a +0d53: 7d mov a,x +0d54: 1c asl a +0d55: 5d mov x,a +0d56: e4 3f mov a,$3f +0d58: d5 4e 02 mov $024e+x,a +0d5b: e4 40 mov a,$40 +0d5d: d5 4f 02 mov $024f+x,a +0d60: e4 3d mov a,$3d +0d62: d5 1e 02 mov $021e+x,a +0d65: e4 3e mov a,$3e +0d67: d5 1f 02 mov $021f+x,a +0d6a: ae pop a +0d6b: 8d 02 mov y,#$02 +0d6d: 3f b2 0e call $0eb2 +0d70: da 0f movw $0f,ya ;get current voice and instrument +0d72: f8 3b mov x,$3b +0d74: f5 f5 07 mov a,$07f5+x ;get channel bit mask ID +0d77: c4 56 mov $56,a +0d79: 48 ff eor a,#$ff ;and store inversion +0d7b: c4 57 mov $57,a +0d7d: 8d 00 mov y,#$00 ;get mode flags +0d7f: f7 0f mov a,($0f)+y +0d81: 2d push a +0d82: e5 05 02 mov a,$0205 +0d85: 30 0a bmi $0d91 +0d87: ae pop a +0d88: 2d push a +0d89: 28 08 and a,#$08 +0d8b: f0 04 beq $0d91 +0d8d: ae pop a +0d8e: 48 08 eor a,#$08 +0d90: 2d push a +0d91: ae pop a +0d92: d4 5b mov $5b+x,a +0d94: c4 3c mov $3c,a +0d96: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) +0d98: f0 05 beq $0d9f ; if not... +0d9a: 09 56 58 or ($58),($56) ; turn pitch mod on +0d9d: 2f 03 bra $0da2 +0d9f: 29 57 58 and ($58),($57) ; turn pitch mod off + +0da2: 8f 2d f2 mov $f2,#$2d +0da5: fa 58 f3 mov ($f3),($58) +0da8: e4 cf mov a,$cf +0daa: d0 3e bne $0dea +0dac: e4 3c mov a,$3c ; retrieve the saved flag +0dae: 28 10 and a,#$10 ; is echo enabled? ($10 = echo) +0db0: f0 2f beq $0de1 ; if not... +0db2: 8d 05 mov y,#$05 ; get echo byte from sound +0db4: f7 0f mov a,($0f)+y +0db6: 8d 0c mov y,#$0c +0db8: 3f b2 0e call $0eb2 +0dbb: 8d 00 mov y,#$00 +0dbd: f6 05 08 mov a,$0805+y ; get the echo register values to "poke" +0dc0: c4 f2 mov $f2,a ; (from the table) +0dc2: f7 18 mov a,($18)+y ; now get info to feed to the registers +0dc4: ad 01 cmp y,#$01 ; (from the echo environment) +0dc6: f0 04 beq $0dcc +0dc8: ad 02 cmp y,#$02 +0dca: d0 09 bne $0dd5 +0dcc: d6 0a 02 mov $020a+y,a +0dcf: 64 1e cmp a,$1e +0dd1: 90 02 bcc $0dd5 +0dd3: e4 1e mov a,$1e +0dd5: c4 f3 mov $f3,a +0dd7: fc inc y +0dd8: ad 0c cmp y,#$0c ; repeat for every byte of the array +0dda: 90 e1 bcc $0dbd +0ddc: 09 56 59 or ($59),($56) +0ddf: 2f 03 bra $0de4 +0de1: 29 57 59 and ($59),($57) ; send the echo unit +0de4: 8f 4d f2 mov $f2,#$4d +0de7: fa 59 f3 mov ($f3),($59) +0dea: e4 3c mov a,$3c +0dec: 28 01 and a,#$01 +0dee: 0d push psw +0def: 8d 01 mov y,#$01 +0df1: f7 0f mov a,($0f)+y ; now get the amplitude +0df3: 8e pop psw +0df4: d0 08 bne $0dfe +0df6: f8 3b mov x,$3b +0df8: d5 36 02 mov $0236+x,a +0dfb: 5f 14 0e jmp $0e14 + +0dfe: 8d 04 mov y,#$04 +0e00: 3f b2 0e call $0eb2 +0e03: f8 3b mov x,$3b +0e05: f5 19 08 mov a,$0819+x +0e08: c4 15 mov $15,a +0e0a: f5 11 08 mov a,$0811+x +0e0d: c4 16 mov $16,a +0e0f: ba 3d movw ya,$3d +0e11: 3f 89 0f call $0f89 +0e14: e4 3c mov a,$3c +0e16: 28 04 and a,#$04 +0e18: f0 1a beq $0e34 +0e1a: 8d 03 mov y,#$03 +0e1c: f7 0f mov a,($0f)+y +0e1e: 8d 06 mov y,#$06 +0e20: 3f b2 0e call $0eb2 +0e23: f8 3b mov x,$3b +0e25: f5 29 08 mov a,$0829+x +0e28: c4 15 mov $15,a +0e2a: f5 21 08 mov a,$0821+x +0e2d: c4 16 mov $16,a +0e2f: ba 3d movw ya,$3d +0e31: 3f 89 0f call $0f89 +0e34: e4 cf mov a,$cf +0e36: d0 76 bne $0eae +0e38: e5 05 02 mov a,$0205 +0e3b: 10 0c bpl $0e49 +0e3d: e4 3c mov a,$3c +0e3f: 28 08 and a,#$08 +0e41: 0d push psw +0e42: 8d 04 mov y,#$04 +0e44: f7 0f mov a,($0f)+y +0e46: 8e pop psw +0e47: d0 08 bne $0e51 +0e49: f8 3b mov x,$3b +0e4b: d5 76 02 mov $0276+x,a +0e4e: 5f 7e 0e jmp $0e7e + +0e51: 8d 08 mov y,#$08 +0e53: 3f b2 0e call $0eb2 +0e56: f8 3b mov x,$3b +0e58: f5 49 08 mov a,$0849+x +0e5b: c4 15 mov $15,a +0e5d: f5 41 08 mov a,$0841+x +0e60: c4 16 mov $16,a +0e62: ba 3d movw ya,$3d +0e64: 3f 89 0f call $0f89 +0e67: 8d 07 mov y,#$07 +0e69: f7 15 mov a,($15)+y +0e6b: f0 0b beq $0e78 +0e6d: 8d 15 mov y,#$15 +0e6f: f7 15 mov a,($15)+y +0e71: d0 05 bne $0e78 +0e73: e8 ff mov a,#$ff +0e75: 5f 7a 0e jmp $0e7a + +0e78: e8 00 mov a,#$00 +0e7a: 8d 15 mov y,#$15 +0e7c: d7 15 mov ($15)+y,a +0e7e: e4 3c mov a,$3c +0e80: 28 02 and a,#$02 +0e82: 0d push psw +0e83: 8d 02 mov y,#$02 +0e85: f7 0f mov a,($0f)+y +0e87: 8e pop psw +0e88: d0 08 bne $0e92 +0e8a: f8 3b mov x,$3b +0e8c: d5 7e 02 mov $027e+x,a +0e8f: 5f a8 0e jmp $0ea8 + +0e92: 8d 0a mov y,#$0a +0e94: 3f b2 0e call $0eb2 +0e97: f8 3b mov x,$3b +0e99: f5 39 08 mov a,$0839+x +0e9c: c4 15 mov $15,a +0e9e: f5 31 08 mov a,$0831+x +0ea1: c4 16 mov $16,a +0ea3: ba 3d movw ya,$3d +0ea5: 3f 89 0f call $0f89 +0ea8: 09 56 4d or ($4d),($56) +0eab: 09 56 48 or ($48),($56) +0eae: 8f 00 cf mov $cf,#$00 +0eb1: 6f ret + +0eb2: 8f 00 0e mov $0e,#$00 ; load current song/sfx/etc. address into stack +0eb5: 1c asl a +0eb6: 2b 0e rol $0e +0eb8: 60 clrc +0eb9: 96 e0 19 adc a,$19e0+y +0ebc: c4 0d mov $0d,a +0ebe: e4 0e mov a,$0e +0ec0: 96 e1 19 adc a,$19e1+y +0ec3: c4 0e mov $0e,a +0ec5: 8d 01 mov y,#$01 +0ec7: f7 0d mov a,($0d)+y +0ec9: c4 19 mov $19,a +0ecb: dc dec y +0ecc: f7 0d mov a,($0d)+y +0ece: c4 18 mov $18,a +0ed0: eb 19 mov y,$19 +0ed2: 6f ret + +0ed3: cd 3e mov x,#$3e +0ed5: 8d 0f mov y,#$0f +0ed7: 3f 27 0f call $0f27 +0eda: e8 00 mov a,#$00 +0edc: fd mov y,a +0edd: c4 00 mov $00,a +0edf: 8f 02 01 mov $01,#$02 +0ee2: d7 00 mov ($00)+y,a +0ee4: 3a 00 incw $00 +0ee6: 78 07 01 cmp $01,#$07 +0ee9: 90 f7 bcc $0ee2 +0eeb: d6 00 00 mov $0000+y,a +0eee: fc inc y +0eef: ad f0 cmp y,#$f0 +0ef1: 90 f8 bcc $0eeb +0ef3: 8d 00 mov y,#$00 +0ef5: 60 clrc +0ef6: d6 8a 00 mov $008a+y,a +0ef9: 88 19 adc a,#$19 +0efb: fc inc y +0efc: ad 08 cmp y,#$08 +0efe: d0 f6 bne $0ef6 +0f00: 9c dec a +0f01: c4 49 mov $49,a +0f03: c4 4b mov $4b,a +0f05: c4 50 mov $50,a +0f07: c4 4a mov $4a,a +0f09: c4 4f mov $4f,a +0f0b: 8f 00 1e mov $1e,#$00 +0f0e: 6f ret + +0f0f: e5 e1 19 mov a,$19e1 +0f12: 8f 6d f2 mov $f2,#$6d +0f15: c4 f3 mov $f3,a +0f17: c4 01 mov $01,a +0f19: e8 00 mov a,#$00 +0f1b: fd mov y,a +0f1c: c4 00 mov $00,a +0f1e: d7 00 mov ($00)+y,a +0f20: fe fc dbnz y,$0f1e +0f22: ab 01 inc $01 +0f24: d0 f8 bne $0f1e +0f26: 6f ret + +0f27: d8 00 mov $00,x +0f29: cb 01 mov $01,y +0f2b: 8d 00 mov y,#$00 +0f2d: f7 00 mov a,($00)+y +0f2f: 68 ff cmp a,#$ff +0f31: f0 0a beq $0f3d +0f33: c4 f2 mov $f2,a +0f35: fc inc y +0f36: f7 00 mov a,($00)+y +0f38: c4 f3 mov $f3,a +0f3a: fc inc y +0f3b: d0 f0 bne $0f2d +0f3d: 6f ret + +; pre-defined DSP flags +0f3e: db $6c,$3f ; clear flags +0f40: db $3d,$00 ; turn off noise generator (NON) +0f42: db $4d,$00 ; turn off echo (EON) +0f44: db $7d,$00 ; turn off echo delay time (EDL) +0f46: db $6d,$ff ; pointer to echo memory (ESA) +0f48: db $5d,$1a ; set source directory offset +0f4a: db $5c,$00 ; set key off (KOFF) +0f4c: db $2d,$00 ; disable pitch modulation (PMON) +0f4e: db $05,$00 ; set ASDR (1) (channel 1) +0f50: db $15,$00 ; set ASDR (1) (channel 2) +0f52: db $25,$00 ; set ASDR (1) (channel 3) +0f54: db $35,$00 ; set ASDR (1) (channel 4) +0f56: db $45,$00 ; set ASDR (1) (channel 5) +0f58: db $55,$00 ; set ASDR (1) (channel 6) +0f5a: db $65,$00 ; set ASDR (1) (channel 7) +0f5c: db $75,$00 ; set ASDR (1) (channel 8) +0f5e: db $07,$00 ; set GAIN (channel 1) +0f60: db $17,$00 ; set GAIN (channel 2) +0f62: db $27,$00 ; set GAIN (channel 3) +0f64: db $37,$00 ; set GAIN (channel 4) +0f66: db $47,$00 ; set GAIN (channel 5) +0f68: db $57,$00 ; set GAIN (channel 6) +0f6a: db $67,$00 ; set GAIN (channel 7) +0f6c: db $77,$00 ; set GAIN (channel 8) +0f6e: db $7c,$00 ; end of sample flag +0f70: db $2c,$00 ; turn off EVOLL +0f72: db $3c,$00 ; turn off EVOLR +0f74: db $0c,$00 ; turn off MVOLL +0f76: db $1c,$00 ; turn off MVOLR +0f78: db $04,$00 ; set source number (channel 1) +0f7a: db $14,$00 ; set source number (channel 2) +0f7c: db $24,$00 ; set source number (channel 3) +0f7e: db $34,$00 ; set source number (channel 4) +0f80: db $44,$00 ; set source number (channel 5) +0f82: db $54,$00 ; set source number (channel 6) +0f84: db $64,$00 ; set source number (channel 7) +0f86: db $74,$00 ; set source number (channel 8) +0f88: db $ff + +0f89: da 2f movw $2f,ya +0f8b: 8d 07 mov y,#$07 +0f8d: f7 18 mov a,($18)+y +0f8f: d7 15 mov ($15)+y,a +0f91: dc dec y +0f92: 10 f9 bpl $0f8d +0f94: e4 18 mov a,$18 +0f96: 60 clrc +0f97: 88 08 adc a,#$08 +0f99: 8d 08 mov y,#$08 +0f9b: d7 15 mov ($15)+y,a +0f9d: e4 19 mov a,$19 +0f9f: 88 00 adc a,#$00 +0fa1: fc inc y +0fa2: d7 15 mov ($15)+y,a +0fa4: 8d 03 mov y,#$03 +0fa6: f7 15 mov a,($15)+y +0fa8: 5d mov x,a +0fa9: 8d 02 mov y,#$02 +0fab: f7 15 mov a,($15)+y +0fad: fd mov y,a +0fae: 7d mov a,x +0faf: cf mul ya +0fb0: da 33 movw $33,ya +0fb2: 4d push x +0fb3: ba 2f movw ya,$2f +0fb5: e9 04 02 mov x,$0204 +0fb8: d0 1d bne $0fd7 +0fba: 6d push y +0fbb: 5d mov x,a +0fbc: e5 02 02 mov a,$0202 +0fbf: ec 03 02 mov y,$0203 +0fc2: 3f 16 16 call $1616 +0fc5: da 31 movw $31,ya +0fc7: ce pop x +0fc8: e5 02 02 mov a,$0202 +0fcb: ec 03 02 mov y,$0203 +0fce: 3f 16 16 call $1616 +0fd1: 60 clrc +0fd2: 84 32 adc a,$32 +0fd4: fd mov y,a +0fd5: e4 31 mov a,$31 +0fd7: ce pop x +0fd8: 9a 33 subw ya,$33 +0fda: b0 03 bcs $0fdf +0fdc: e8 00 mov a,#$00 +0fde: fd mov y,a +0fdf: cb 34 mov $34,y +0fe1: 8d 0d mov y,#$0d +0fe3: d7 15 mov ($15)+y,a +0fe5: fc inc y +0fe6: e4 34 mov a,$34 +0fe8: d7 15 mov ($15)+y,a +0fea: 8d 03 mov y,#$03 +0fec: f7 15 mov a,($15)+y +0fee: bc inc a +0fef: 8d 0f mov y,#$0f +0ff1: d7 15 mov ($15)+y,a +0ff3: 68 03 cmp a,#$03 +0ff5: b0 06 bcs $0ffd +0ff7: 8d 04 mov y,#$04 +0ff9: e8 00 mov a,#$00 +0ffb: d7 15 mov ($15)+y,a +0ffd: 8d 08 mov y,#$08 +0fff: f7 15 mov a,($15)+y +1001: 8d 0a mov y,#$0a +1003: d7 15 mov ($15)+y,a +1005: 8d 09 mov y,#$09 +1007: f7 15 mov a,($15)+y +1009: 8d 0b mov y,#$0b +100b: d7 15 mov ($15)+y,a +100d: e8 01 mov a,#$01 +100f: 8d 14 mov y,#$14 +1011: d7 15 mov ($15)+y,a +1013: 9c dec a +1014: 8d 0c mov y,#$0c +1016: d7 15 mov ($15)+y,a +1018: 8d 12 mov y,#$12 +101a: d7 15 mov ($15)+y,a +101c: fc inc y +101d: d7 15 mov ($15)+y,a +101f: c4 28 mov $28,a +1021: 5f d2 10 jmp $10d2 + +1024: 8d 14 mov y,#$14 +1026: f7 15 mov a,($15)+y +1028: f0 39 beq $1063 +102a: 8d 04 mov y,#$04 +102c: f7 15 mov a,($15)+y +102e: c4 28 mov $28,a +1030: 8d 0f mov y,#$0f +1032: f7 15 mov a,($15)+y +1034: c4 29 mov $29,a +1036: f0 03 beq $103b +1038: 9c dec a +1039: d0 06 bne $1041 +103b: 8d 03 mov y,#$03 +103d: f7 15 mov a,($15)+y +103f: 8d 0f mov y,#$0f +1041: d7 15 mov ($15)+y,a +1043: 78 02 29 cmp $29,#$02 +1046: 90 03 bcc $104b +1048: 5f d2 10 jmp $10d2 + +104b: 8d 0c mov y,#$0c +104d: f7 15 mov a,($15)+y +104f: bc inc a +1050: 8d 05 mov y,#$05 +1052: 77 15 cmp a,($15)+y +1054: 90 17 bcc $106d +1056: 9c dec a +1057: 8d 01 mov y,#$01 +1059: 77 15 cmp a,($15)+y +105b: f0 6a beq $10c7 +105d: e8 00 mov a,#$00 +105f: 8d 14 mov y,#$14 +1061: d7 15 mov ($15)+y,a +1063: 8d 11 mov y,#$11 +1065: f7 15 mov a,($15)+y +1067: 2d push a +1068: dc dec y +1069: f7 15 mov a,($15)+y +106b: ee pop y +106c: 6f ret + +106d: 8d 0c mov y,#$0c +106f: d7 15 mov ($15)+y,a +1071: 8d 06 mov y,#$06 +1073: f7 15 mov a,($15)+y +1075: 8d 0a mov y,#$0a +1077: 60 clrc +1078: 97 15 adc a,($15)+y +107a: d7 15 mov ($15)+y,a +107c: 90 07 bcc $1085 +107e: fc inc y +107f: f7 15 mov a,($15)+y +1081: 88 00 adc a,#$00 +1083: d7 15 mov ($15)+y,a +1085: 8d 0e mov y,#$0e +1087: f7 15 mov a,($15)+y +1089: 5d mov x,a +108a: dc dec y +108b: f7 15 mov a,($15)+y +108d: d0 04 bne $1093 +108f: c8 00 cmp x,#$00 +1091: f0 3f beq $10d2 +1093: 8d 03 mov y,#$03 +1095: 80 setc +1096: b7 15 sbc a,($15)+y +1098: 8d 0d mov y,#$0d +109a: d7 15 mov ($15)+y,a +109c: c4 33 mov $33,a +109e: 7d mov a,x +109f: a8 00 sbc a,#$00 +10a1: b0 06 bcs $10a9 +10a3: e8 00 mov a,#$00 +10a5: d7 15 mov ($15)+y,a +10a7: c4 33 mov $33,a +10a9: fc inc y +10aa: d7 15 mov ($15)+y,a +10ac: 04 33 or a,$33 +10ae: d0 0b bne $10bb +10b0: 8d 01 mov y,#$01 +10b2: f7 15 mov a,($15)+y +10b4: 68 ff cmp a,#$ff +10b6: f0 03 beq $10bb +10b8: 5f cb 10 jmp $10cb + +10bb: 8d 0c mov y,#$0c +10bd: f7 15 mov a,($15)+y +10bf: 8d 01 mov y,#$01 +10c1: 77 15 cmp a,($15)+y +10c3: 90 0d bcc $10d2 +10c5: f0 0b beq $10d2 +10c7: 8d 00 mov y,#$00 +10c9: f7 15 mov a,($15)+y +10cb: 8d 0c mov y,#$0c +10cd: d7 15 mov ($15)+y,a +10cf: 3f 75 11 call $1175 +10d2: f8 28 mov x,$28 +10d4: f0 14 beq $10ea +10d6: 78 03 29 cmp $29,#$03 +10d9: 90 0f bcc $10ea +10db: 8d 13 mov y,#$13 +10dd: cd 03 mov x,#$03 +10df: f7 15 mov a,($15)+y +10e1: d4 24 mov $24+x,a +10e3: dc dec y +10e4: 1d dec x +10e5: 10 f8 bpl $10df +10e7: 5f 52 11 jmp $1152 + +10ea: 3f 64 11 call $1164 +10ed: 8d 06 mov y,#$06 +10ef: f7 15 mov a,($15)+y +10f1: 5d mov x,a +10f2: 8d 00 mov y,#$00 +10f4: f7 1a mov a,($1a)+y +10f6: c8 01 cmp x,#$01 +10f8: f0 06 beq $1100 +10fa: 5d mov x,a +10fb: fc inc y +10fc: f7 1a mov a,($1a)+y +10fe: fd mov y,a +10ff: 7d mov a,x +1100: f8 28 mov x,$28 +1102: f0 52 beq $1156 +1104: 78 02 29 cmp $29,#$02 +1107: f0 4d beq $1156 +1109: da 2f movw $2f,ya +110b: 8d 11 mov y,#$11 +110d: f7 15 mov a,($15)+y +110f: c4 25 mov $25,a +1111: dc dec y +1112: f7 15 mov a,($15)+y +1114: c4 24 mov $24,a +1116: eb 25 mov y,$25 +1118: 80 setc +1119: 9a 2f subw ya,$2f +111b: da 26 movw $26,ya +111d: e8 00 mov a,#$00 +111f: 3c rol a +1120: c4 2f mov $2f,a +1122: d0 08 bne $112c +1124: 58 ff 26 eor $26,#$ff +1127: 58 ff 27 eor $27,#$ff +112a: 3a 26 incw $26 +112c: 8d 03 mov y,#$03 +112e: f7 15 mov a,($15)+y +1130: 5d mov x,a +1131: ba 26 movw ya,$26 +1133: 3f 90 11 call $1190 +1136: c4 26 mov $26,a +1138: d8 27 mov $27,x +113a: 78 01 2f cmp $2f,#$01 +113d: d0 08 bne $1147 +113f: 58 ff 26 eor $26,#$ff +1142: 58 ff 27 eor $27,#$ff +1145: 3a 26 incw $26 +1147: 8d 12 mov y,#$12 +1149: e4 26 mov a,$26 +114b: d7 15 mov ($15)+y,a +114d: fc inc y +114e: e4 27 mov a,$27 +1150: d7 15 mov ($15)+y,a +1152: ba 24 movw ya,$24 +1154: 7a 26 addw ya,$26 +1156: da 24 movw $24,ya +1158: 8d 10 mov y,#$10 +115a: d7 15 mov ($15)+y,a +115c: e4 25 mov a,$25 +115e: fc inc y +115f: d7 15 mov ($15)+y,a +1161: ba 24 movw ya,$24 +1163: 6f ret + +1164: 8d 0a mov y,#$0a +1166: 5f 6b 11 jmp $116b + +1169: 8d 08 mov y,#$08 +116b: f7 15 mov a,($15)+y +116d: c4 1a mov $1a,a +116f: fc inc y +1170: f7 15 mov a,($15)+y +1172: c4 1b mov $1b,a +1174: 6f ret + +1175: 2d push a +1176: 3f 69 11 call $1169 +1179: 8d 06 mov y,#$06 +117b: f7 15 mov a,($15)+y +117d: fd mov y,a +117e: ae pop a +117f: cf mul ya +1180: 7a 1a addw ya,$1a +1182: da 1a movw $1a,ya +1184: 8d 0a mov y,#$0a +1186: e4 1a mov a,$1a +1188: d7 15 mov ($15)+y,a +118a: fc inc y +118b: e4 1b mov a,$1b +118d: d7 15 mov ($15)+y,a +118f: 6f ret + +1190: c8 00 cmp x,#$00 +1192: d0 05 bne $1199 +1194: e8 ff mov a,#$ff +1196: fd mov y,a +1197: 5d mov x,a +1198: 6f ret + +1199: cb 2c mov $2c,y +119b: 3e 2c cmp x,$2c +119d: f0 02 beq $11a1 +119f: b0 19 bcs $11ba +11a1: c4 2b mov $2b,a +11a3: dd mov a,y +11a4: 8d 00 mov y,#$00 +11a6: 9e div ya,x +11a7: c4 2d mov $2d,a +11a9: fd mov y,a +11aa: 7d mov a,x +11ab: cf mul ya +11ac: c4 2e mov $2e,a +11ae: e4 2c mov a,$2c +11b0: 80 setc +11b1: a4 2e sbc a,$2e +11b3: fd mov y,a +11b4: e4 2b mov a,$2b +11b6: 9e div ya,x +11b7: f8 2d mov x,$2d +11b9: 6f ret + +11ba: 9e div ya,x +11bb: cd 00 mov x,#$00 +11bd: 6f ret + +11be: f5 86 02 mov a,$0286+x +11c1: 8d 04 mov y,#$04 +11c3: cf mul ya +11c4: 7a 13 addw ya,$13 +11c6: da 00 movw $00,ya +11c8: 8d 01 mov y,#$01 +11ca: f7 00 mov a,($00)+y +11cc: c4 32 mov $32,a +11ce: dc dec y +11cf: f7 00 mov a,($00)+y +11d1: 80 setc +11d2: a8 03 sbc a,#$03 +11d4: c4 31 mov $31,a +11d6: b8 00 32 sbc $32,#$00 +11d9: f7 31 mov a,($31)+y +11db: c4 51 mov $51,a +11dd: fc inc y +11de: f7 31 mov a,($31)+y +11e0: c4 52 mov $52,a +11e2: fc inc y +11e3: f7 31 mov a,($31)+y +11e5: c4 53 mov $53,a +11e7: 6f ret + +11e8: 60 clrc +11e9: 88 a0 adc a,#$a0 ; add offset to input frequency (1440) +11eb: 5d mov x,a +11ec: dd mov a,y +11ed: 88 05 adc a,#$05 +11ef: fd mov y,a +11f0: 7d mov a,x +11f1: ad 0a cmp y,#$0a ; check if it is in within positive range +11f3: 90 06 bcc $11fb ; in range +11f5: d0 0a bne $1201 ; out of range +11f7: 68 50 cmp a,#$50 +11f9: b0 06 bcs $1201 ; out of range +11fb: 8f ff 54 mov $54,#$ff +11fe: 5f 17 12 jmp $1217 + +1201: ad 80 cmp y,#$80 +1203: 90 0f bcc $1214 +1205: 8f 00 54 mov $54,#$00 +1208: 60 clrc +1209: 88 20 adc a,#$20 +120b: 5d mov x,a +120c: dd mov a,y +120d: 88 df adc a,#$df +120f: fd mov y,a +1210: 7d mov a,x +1211: 5f 17 12 jmp $1217 + +1214: 8f 0a 54 mov $54,#$0a +1217: cd f0 mov x,#$f0 +1219: 9e div ya,x +121a: 78 ff 54 cmp $54,#$ff +121d: d0 02 bne $1221 +121f: c4 54 mov $54,a +1221: f6 3c 12 mov a,$123c+y ;get pitch value (from table) +1224: c4 2f mov $2f,a +1226: f6 2c 13 mov a,$132c+y +1229: c4 30 mov $30,a +122b: e8 0a mov a,#$0a +122d: 80 setc +122e: a4 54 sbc a,$54 +1230: f0 07 beq $1239 +1232: fd mov y,a +1233: 4b 30 lsr $30 +1235: 6b 2f ror $2f +1237: fe fa dbnz y,$1233 +1239: ba 2f movw ya,$2f +123b: 6f ret + +; pitch table (low byte) +123c: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 + +; pitch table (high byte) +132c: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f + +; note interval frequencies (low byte) +141c: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 + +; note interval frequencies (high byte) +143c: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 + +145c: e4 64 mov a,$64 +145e: d0 0c bne $146c +1460: e5 46 05 mov a,$0546 +1463: f0 22 beq $1487 +1465: e8 00 mov a,#$00 +1467: c5 46 05 mov $0546,a +146a: 2f f0 bra $145c +146c: e4 63 mov a,$63 +146e: 9c dec a +146f: c4 65 mov $65,a +1471: 1c asl a +1472: c4 66 mov $66,a +1474: 3f 6c 0b call $0b6c +1477: f8 65 mov x,$65 +1479: f4 68 mov a,$68+x +147b: 5d mov x,a +147c: 1f d8 18 jmp ($18d8+x) + +147f: 8b 66 dec $66 +1481: 8b 66 dec $66 +1483: 8b 65 dec $65 +1485: 10 ed bpl $1474 +1487: 6f ret + +1488: f8 65 mov x,$65 +148a: 9b 9b dec $9b+x +148c: d0 f1 bne $147f +148e: f5 47 05 mov a,$0547+x +1491: d4 9b mov $9b+x,a +1493: 9b a3 dec $a3+x +1495: d0 e8 bne $147f +1497: f4 68 mov a,$68+x +1499: e8 04 mov a,#$04 +149b: d4 68 mov $68+x,a +149d: 5f a0 14 jmp $14a0 + +14a0: f8 65 mov x,$65 +14a2: f4 82 mov a,$82+x +14a4: 68 19 cmp a,#$19 +14a6: f0 25 beq $14cd +14a8: 60 clrc +14a9: 94 8a adc a,$8a+x +14ab: f8 66 mov x,$66 +14ad: c4 02 mov $02,a +14af: fd mov y,a +14b0: f6 3b 06 mov a,$063b+y +14b3: c4 00 mov $00,a +14b5: f6 3c 06 mov a,$063c+y +14b8: c4 01 mov $01,a +14ba: 8d 02 mov y,#$02 +14bc: f7 00 mov a,($00)+y +14be: 74 72 cmp a,$72+x +14c0: d0 0b bne $14cd +14c2: 8d 03 mov y,#$03 +14c4: f7 00 mov a,($00)+y +14c6: 74 73 cmp a,$73+x +14c8: d0 03 bne $14cd +14ca: 5f 32 17 jmp $1732 + +14cd: 3f f2 15 call $15f2 +14d0: fd mov y,a ; get the current note/command +14d1: 28 20 and a,#$20 +14d3: c4 67 mov $67,a +14d5: f8 65 mov x,$65 +14d7: ad 80 cmp y,#$80 ; is it a note? +14d9: 90 3d bcc $1518 +14db: ad f0 cmp y,#$f0 ; is it a special meaning flag? +14dd: 90 08 bcc $14e7 +14df: dd mov a,y ; then it must be a command... +14e0: 28 0f and a,#$0f +14e2: 1c asl a +14e3: 5d mov x,a +14e4: 1f 2f 18 jmp ($182f+x) ; jump to command number position + +14e7: f5 67 05 mov a,$0567+x ; pitch bend +14ea: f0 4c beq $1538 +14ec: dd mov a,y +14ed: 28 08 and a,#$08 +14ef: 0d push psw +14f0: dd mov a,y +14f1: 28 07 and a,#$07 +14f3: bc inc a +14f4: 1c asl a +14f5: f8 66 mov x,$66 +14f7: 8e pop psw +14f8: f0 0d beq $1507 +14fa: 60 clrc +14fb: 94 be adc a,$be+x +14fd: d4 be mov $be+x,a +14ff: f4 bf mov a,$bf+x +1501: 88 00 adc a,#$00 +1503: d4 bf mov $bf+x,a +1505: 2f 31 bra $1538 +1507: c4 2f mov $2f,a +1509: f4 be mov a,$be+x +150b: 80 setc +150c: a4 2f sbc a,$2f +150e: d4 be mov $be+x,a +1510: f4 bf mov a,$bf+x +1512: a8 00 sbc a,#$00 +1514: d4 bf mov $bf+x,a +1516: 2f 20 bra $1538 +1518: f5 67 05 mov a,$0567+x ; play the note (check first) +151b: f0 1b beq $1538 +151d: dd mov a,y +151e: 28 1f and a,#$1f ; get the actual note value +1520: fd mov y,a +1521: f8 66 mov x,$66 +1523: f4 ae mov a,$ae+x +1525: 60 clrc +1526: 96 1c 14 adc a,$141c+y +1529: d4 ae mov $ae+x,a +152b: f4 af mov a,$af+x +152d: 96 3c 14 adc a,$143c+y +1530: d4 af mov $af+x,a +1532: e8 00 mov a,#$00 +1534: d4 be mov $be+x,a +1536: d4 bf mov $bf+x,a +1538: 3f f2 15 call $15f2 +153b: 68 00 cmp a,#$00 +153d: d0 07 bne $1546 +153f: f8 65 mov x,$65 +1541: f4 68 mov a,$68+x +1543: 5f 74 14 jmp $1474 + +1546: f8 65 mov x,$65 +1548: d4 a3 mov $a3+x,a +154a: fd mov y,a +154b: e4 ce mov a,$ce +154d: d0 0a bne $1559 +154f: f5 47 05 mov a,$0547+x +1552: d4 9b mov $9b+x,a +1554: cf mul ya +1555: da 3d movw $3d,ya +1557: 2f 08 bra $1561 +1559: f5 47 05 mov a,$0547+x +155c: d4 9b mov $9b+x,a +155e: 8f 00 ce mov $ce,#$00 +1561: 3f 16 18 call $1816 +1564: f5 6f 05 mov a,$056f+x +1567: 5d mov x,a +1568: f5 0d 02 mov a,$020d+x +156b: f0 0a beq $1577 +156d: e8 40 mov a,#$40 +156f: 75 2e 02 cmp a,$022e+x +1572: b0 05 bcs $1579 +1574: 5f ec 15 jmp $15ec + +1577: e8 40 mov a,#$40 +1579: d5 2e 02 mov $022e+x,a +157c: e8 01 mov a,#$01 +157e: d5 0d 02 mov $020d+x,a +1581: d8 ab mov $ab,x +1583: 7d mov a,x +1584: f8 65 mov x,$65 +1586: f5 67 05 mov a,$0567+x +1589: d0 0c bne $1597 +158b: f8 66 mov x,$66 +158d: f4 ae mov a,$ae+x +158f: c4 3f mov $3f,a +1591: f4 af mov a,$af+x +1593: c4 40 mov $40,a +1595: 2f 1e bra $15b5 +1597: f8 66 mov x,$66 +1599: f4 ae mov a,$ae+x +159b: 60 clrc +159c: 94 be adc a,$be+x +159e: c4 3f mov $3f,a +15a0: f4 af mov a,$af+x +15a2: 94 bf adc a,$bf+x +15a4: c4 40 mov $40,a +15a6: f5 77 05 mov a,$0577+x +15a9: 60 clrc +15aa: 84 3f adc a,$3f +15ac: c4 3f mov $3f,a +15ae: f5 78 05 mov a,$0578+x +15b1: 84 40 adc a,$40 +15b3: c4 40 mov $40,a +15b5: eb 67 mov y,$67 +15b7: d0 0e bne $15c7 +15b9: 0b ab asl $ab +15bb: f8 ab mov x,$ab +15bd: d5 4f 02 mov $024f+x,a +15c0: e4 3f mov a,$3f +15c2: d5 4e 02 mov $024e+x,a +15c5: 2f 25 bra $15ec +15c7: f8 65 mov x,$65 +15c9: f5 4f 05 mov a,$054f+x +15cc: 60 clrc +15cd: 95 57 05 adc a,$0557+x +15d0: 10 02 bpl $15d4 +15d2: e8 7f mov a,#$7f +15d4: c4 ac mov $ac,a +15d6: f8 65 mov x,$65 +15d8: f5 5f 05 mov a,$055f+x +15db: f8 ab mov x,$ab +15dd: 8d 00 mov y,#$00 +15df: cc 04 02 mov $0204,y +15e2: 8d ff mov y,#$ff +15e4: cc 05 02 mov $0205,y +15e7: eb ac mov y,$ac +15e9: 3f 40 0d call $0d40 +15ec: 8f 00 cf mov $cf,#$00 +15ef: 5f 7f 14 jmp $147f + +15f2: f8 66 mov x,$66 +15f4: e7 72 mov a,($72+x) +15f6: bb 72 inc $72+x ; update melody (sequence) position pointer +15f8: d0 02 bne $15fc +15fa: bb 73 inc $73+x +15fc: 6f ret + +; vcmd f0 - end of sequence +15fd: f8 65 mov x,$65 +15ff: e8 00 mov a,#$00 +1601: d4 68 mov $68+x,a +1603: 8b 64 dec $64 +1605: 5f 7f 14 jmp $147f + +; vcmd f1 - delta expression +1608: f8 65 mov x,$65 +160a: f5 57 05 mov a,$0557+x +160d: 3f 2b 16 call $162b +1610: d5 57 05 mov $0557+x,a +1613: 5f a0 14 jmp $14a0 + +1616: 6d push y +1617: 4d push x +1618: ee pop y +1619: cf mul ya +161a: da 2f movw $2f,ya +161c: 7d mov a,x +161d: ee pop y +161e: cf mul ya +161f: 6d push y +1620: 0b 2f asl $2f +1622: 84 30 adc a,$30 +1624: 5d mov x,a +1625: ae pop a +1626: 88 00 adc a,#$00 +1628: fd mov y,a +1629: 7d mov a,x +162a: 6f ret + +162b: 4d push x ; scale volume - get 2 bytes +162c: fd mov y,a +162d: 6d push y +162e: 3f f2 15 call $15f2 +1631: cf mul ya +1632: da 2f movw $2f,ya +1634: ee pop y +1635: 3f f2 15 call $15f2 +1638: cf mul ya +1639: 6d push y +163a: 0b 2f asl $2f +163c: 84 30 adc a,$30 +163e: 5d mov x,a +163f: ae pop a +1640: 88 00 adc a,#$00 +1642: fd mov y,a +1643: d0 03 bne $1648 +1645: 7d mov a,x +1646: 10 02 bpl $164a +1648: e8 7f mov a,#$7f +164a: ce pop x +164b: 6f ret + +; vcmd f2 - absolute expression +164c: 3f f2 15 call $15f2 +164f: f8 65 mov x,$65 +1651: d5 57 05 mov $0557+x,a +1654: 5f a0 14 jmp $14a0 + +; vcmd f3 - mute +1657: f8 65 mov x,$65 +1659: f5 6f 05 mov a,$056f+x +165c: 30 15 bmi $1673 +165e: fd mov y,a +165f: f6 0d 02 mov a,$020d+y +1662: 68 80 cmp a,#$80 +1664: f0 0d beq $1673 +1666: e8 00 mov a,#$00 +1668: d6 6e 02 mov $026e+y,a +166b: f6 d5 07 mov a,$07d5+y +166e: c4 f2 mov $f2,a +1670: 8f 9f f3 mov $f3,#$9f + +; vcmd f4 - rest +1673: 3f f2 15 call $15f2 +1676: f8 65 mov x,$65 +1678: d4 a3 mov $a3+x,a +167a: f5 47 05 mov a,$0547+x +167d: d4 9b mov $9b+x,a +167f: 3f 16 18 call $1816 +1682: 5f 7f 14 jmp $147f + +; vcmd f5 - set sound/instrument +1685: 3f f2 15 call $15f2 ; get 1 more byte = read sound number +1688: f8 65 mov x,$65 +168a: d5 5f 05 mov $055f+x,a ; move it onto the stack +168d: f4 82 mov a,$82+x +168f: 68 19 cmp a,#$19 ; $19 = phrase stack max value? +1691: f0 32 beq $16c5 +1693: 60 clrc +1694: 94 8a adc a,$8a+x +1696: f8 66 mov x,$66 +1698: c4 02 mov $02,a +169a: fd mov y,a +169b: f6 3b 06 mov a,$063b+y +169e: c4 00 mov $00,a +16a0: f6 3c 06 mov a,$063c+y +16a3: c4 01 mov $01,a +16a5: f6 39 06 mov a,$0639+y +16a8: 8d 09 mov y,#$09 +16aa: 77 00 cmp a,($00)+y +16ac: 90 02 bcc $16b0 +16ae: e8 00 mov a,#$00 +16b0: bc inc a +16b1: eb 02 mov y,$02 +16b3: d6 39 06 mov $0639+y,a +16b6: 60 clrc +16b7: 88 09 adc a,#$09 +16b9: fd mov y,a +16ba: f7 00 mov a,($00)+y +16bc: 68 ff cmp a,#$ff +16be: f0 05 beq $16c5 +16c0: f8 65 mov x,$65 +16c2: d5 5f 05 mov $055f+x,a +16c5: 5f a0 14 jmp $14a0 + +; vcmd f6 - play phrase +16c8: f8 65 mov x,$65 +16ca: f4 82 mov a,$82+x ; push entry onto stack +16cc: 80 setc +16cd: a8 05 sbc a,#$05 +16cf: d4 82 mov $82+x,a +16d1: 60 clrc ; set to current player +16d2: 94 8a adc a,$8a+x +16d4: fd mov y,a +16d5: cb 02 mov $02,y +16d7: f8 66 mov x,$66 +16d9: f4 72 mov a,$72+x +16db: d6 3b 06 mov $063b+y,a ; LSB of pointer +16de: f4 73 mov a,$73+x +16e0: d6 3c 06 mov $063c+y,a ; MSB of pointer +16e3: e8 00 mov a,#$00 +16e5: d6 38 06 mov $0638+y,a ; number of loops +16e8: 3f f2 15 call $15f2 ; start point low byte +16eb: 2d push a +16ec: 3f f4 15 call $15f4 ; start point high byte +16ef: 2d push a +16f0: 3f f4 15 call $15f4 ; end point low byte +16f3: 3f f4 15 call $15f4 ; end point high byte +16f6: 3f f4 15 call $15f4 ; number of loops +16f9: 3f f4 15 call $15f4 ; frequency offset LSB low byte +16fc: fd mov y,a +16fd: 3f f4 15 call $15f4 ; frequency offset LSB high byte +1700: 2d push a +1701: dd mov a,y +1702: 60 clrc +1703: 95 77 05 adc a,$0577+x ; adjust frequency +1706: d5 77 05 mov $0577+x,a +1709: ae pop a +170a: 95 78 05 adc a,$0578+x +170d: d5 78 05 mov $0578+x,a +1710: f8 65 mov x,$65 +1712: f5 57 05 mov a,$0557+x +1715: eb 02 mov y,$02 +1717: d6 3a 06 mov $063a+y,a +171a: 3f 2b 16 call $162b ; scale the volume (read next 2 bytes) +171d: d5 57 05 mov $0557+x,a +1720: eb 02 mov y,$02 ; initialize instrument pointer +1722: e8 00 mov a,#$00 +1724: d6 39 06 mov $0639+y,a +1727: f8 66 mov x,$66 +1729: ae pop a +172a: d4 73 mov $73+x,a +172c: ae pop a +172d: d4 72 mov $72+x,a +172f: 5f a0 14 jmp $14a0 + +1732: eb 02 mov y,$02 +1734: f6 38 06 mov a,$0638+y +1737: bc inc a +1738: d6 38 06 mov $0638+y,a +173b: 8d 04 mov y,#$04 +173d: f7 00 mov a,($00)+y +173f: f0 07 beq $1748 +1741: eb 02 mov y,$02 +1743: 76 38 06 cmp a,$0638+y +1746: f0 0f beq $1757 +1748: 8d 00 mov y,#$00 +174a: f7 00 mov a,($00)+y +174c: d4 72 mov $72+x,a +174e: 8d 01 mov y,#$01 +1750: f7 00 mov a,($00)+y +1752: d4 73 mov $73+x,a +1754: 5f cd 14 jmp $14cd + +1757: f5 77 05 mov a,$0577+x +175a: 80 setc +175b: 8d 05 mov y,#$05 +175d: b7 00 sbc a,($00)+y +175f: d5 77 05 mov $0577+x,a +1762: f5 78 05 mov a,$0578+x +1765: 8d 06 mov y,#$06 +1767: b7 00 sbc a,($00)+y +1769: d5 78 05 mov $0578+x,a +176c: eb 02 mov y,$02 +176e: f6 3a 06 mov a,$063a+y +1771: f8 65 mov x,$65 +1773: d5 57 05 mov $0557+x,a +1776: f8 66 mov x,$66 +1778: e4 00 mov a,$00 +177a: 60 clrc +177b: 88 0a adc a,#$0a +177d: d4 72 mov $72+x,a +177f: e4 01 mov a,$01 +1781: 88 00 adc a,#$00 +1783: d4 73 mov $73+x,a +1785: 8d 09 mov y,#$09 +1787: f7 00 mov a,($00)+y +1789: 60 clrc +178a: 94 72 adc a,$72+x +178c: d4 72 mov $72+x,a +178e: f4 73 mov a,$73+x +1790: 88 00 adc a,#$00 +1792: d4 73 mov $73+x,a +1794: f8 65 mov x,$65 +1796: f4 82 mov a,$82+x +1798: 60 clrc +1799: 88 05 adc a,#$05 +179b: d4 82 mov $82+x,a +179d: 5f a0 14 jmp $14a0 + +; vcmd f7-f8 - set detune +17a0: 28 02 and a,#$02 +17a2: c4 67 mov $67,a +17a4: 3f f2 15 call $15f2 +17a7: d4 ae mov $ae+x,a +17a9: 3f f2 15 call $15f2 +17ac: d4 af mov $af+x,a +17ae: e8 00 mov a,#$00 +17b0: d4 be mov $be+x,a +17b2: d4 bf mov $bf+x,a +17b4: 5f 38 15 jmp $1538 + +; vcmd f9 - go to loop +17b7: eb 65 mov y,$65 +17b9: fc inc y +17ba: f7 70 mov a,($70)+y +17bc: 8d 10 mov y,#$10 +17be: 3f b2 0e call $0eb2 +17c1: f8 66 mov x,$66 +17c3: d4 72 mov $72+x,a +17c5: db 73 mov $73+x,y +17c7: e8 1c mov a,#$1c +17c9: d4 ae mov $ae+x,a +17cb: e8 02 mov a,#$02 +17cd: d4 af mov $af+x,a +17cf: f8 65 mov x,$65 +17d1: e8 00 mov a,#$00 +17d3: d5 4f 05 mov $054f+x,a +17d6: d5 57 05 mov $0557+x,a +17d9: 5f a0 14 jmp $14a0 + +; vcmd fa - set tempo +17dc: 3f f2 15 call $15f2 +17df: c5 00 02 mov $0200,a +17e2: 3f f2 15 call $15f2 +17e5: c5 02 02 mov $0202,a +17e8: 3f f2 15 call $15f2 +17eb: c5 03 02 mov $0203,a +17ee: 5f a0 14 jmp $14a0 + +; vcmd fb - panning +17f1: e8 00 mov a,#$00 +17f3: fd mov y,a +17f4: da 3d movw $3d,ya +17f6: 8f 01 ce mov $ce,#$01 +17f9: 3f f2 15 call $15f2 +17fc: 2d push a +17fd: fd mov y,a +17fe: f8 65 mov x,$65 +1800: f5 47 05 mov a,$0547+x +1803: cf mul ya +1804: 7a 3d addw ya,$3d +1806: da 3d movw $3d,ya +1808: ae pop a +1809: 68 ff cmp a,#$ff +180b: f0 ec beq $17f9 +180d: 5f a0 14 jmp $14a0 + +; vcmd fc - set no note retrigger? +1810: 8f 01 cf mov $cf,#$01 +1813: 5f a0 14 jmp $14a0 + +1816: e8 02 mov a,#$02 +1818: d4 68 mov $68+x,a +181a: 6f ret + +181b: 78 80 ad cmp $ad,#$80 +181e: 90 08 bcc $1828 +1820: 60 clrc +1821: 84 ad adc a,$ad +1823: 10 09 bpl $182e +1825: e8 00 mov a,#$00 +1827: 6f ret + +1828: 84 ad adc a,$ad +182a: 10 02 bpl $182e +182c: e8 7f mov a,#$7f +182e: 6f ret + +; vcmd table (f0-fc) +182f: dw $15fd ; f0 - end of melody +1831: dw $1608 ; f1 - delta expression +1833: dw $164c ; f2 - absolute expression +1835: dw $1657 ; f3 - mute +1837: dw $1673 ; f4 - rest +1839: dw $1685 ; f5 - set sound/instrument +183b: dw $16c8 ; f6 - play phrase +183d: dw $17a0 ; f7 - set detune +183f: dw $17a0 ; f8 - set detune +1841: dw $17b7 ; f9 - go to loop +1843: dw $17dc ; fa - set tempo +1845: dw $17f1 ; fb - panning +1847: dw $1810 ; fc - set no note retrigger? + +1849: e4 03 mov a,$03 +184b: 1c asl a +184c: 44 03 eor a,$03 +184e: 1c asl a +184f: 1c asl a +1850: 1c asl a +1851: 2b 05 rol $05 +1853: 2b 04 rol $04 +1855: 2b 03 rol $03 +1857: e4 05 mov a,$05 +1859: 6f ret + +185a: 8f 00 ce mov $ce,#$00 +185d: 8f 00 cf mov $cf,#$00 +1860: 8d 1a mov y,#$1a +1862: 3f b2 0e call $0eb2 +1865: da 70 movw $70,ya +1867: 8d 00 mov y,#$00 +1869: f7 70 mov a,($70)+y +186b: c4 63 mov $63,a +186d: c4 64 mov $64,a +186f: f0 66 beq $18d7 +1871: 8f 00 65 mov $65,#$00 +1874: 8f 00 66 mov $66,#$00 +1877: fc inc y +1878: f7 70 mov a,($70)+y +187a: 6d push y +187b: 8d 10 mov y,#$10 +187d: 3f b2 0e call $0eb2 +1880: f8 66 mov x,$66 +1882: d4 72 mov $72+x,a +1884: dd mov a,y +1885: ee pop y +1886: d4 73 mov $73+x,a +1888: f8 65 mov x,$65 +188a: e8 19 mov a,#$19 +188c: d4 82 mov $82+x,a +188e: e8 04 mov a,#$04 +1890: d4 68 mov $68+x,a +1892: e8 ff mov a,#$ff +1894: d5 67 05 mov $0567+x,a +1897: e8 01 mov a,#$01 +1899: d5 47 05 mov $0547+x,a +189c: 7d mov a,x +189d: d5 6f 05 mov $056f+x,a +18a0: f8 66 mov x,$66 +18a2: e8 1c mov a,#$1c +18a4: d4 ae mov $ae+x,a +18a6: e8 02 mov a,#$02 +18a8: d4 af mov $af+x,a +18aa: e8 00 mov a,#$00 +18ac: d5 77 05 mov $0577+x,a +18af: d5 78 05 mov $0578+x,a +18b2: f8 65 mov x,$65 +18b4: d5 4f 05 mov $054f+x,a +18b7: d5 57 05 mov $0557+x,a +18ba: e8 00 mov a,#$00 +18bc: c5 00 02 mov $0200,a +18bf: c5 02 02 mov $0202,a +18c2: e8 01 mov a,#$01 +18c4: c5 03 02 mov $0203,a +18c7: e8 ff mov a,#$ff +18c9: c5 01 02 mov $0201,a +18cc: ab 66 inc $66 +18ce: ab 66 inc $66 +18d0: 3d inc x +18d1: d8 65 mov $65,x +18d3: 3e 63 cmp x,$63 +18d5: 90 a0 bcc $1877 +18d7: 6f ret + +18d8: dw $147f +18da: dw $1488 +18dc: dw $14a0 + +18de: ba 21 movw ya,$21 +18e0: da 0a movw $0a,ya +18e2: 6f ret + +18e3: eb 21 mov y,$21 +18e5: fa 1f f6 mov ($f6),($1f) +18e8: 00 nop +18e9: 00 nop +18ea: 00 nop +18eb: 00 nop +18ec: e4 f4 mov a,$f4 +18ee: d7 0a mov ($0a)+y,a +18f0: dc dec y +18f1: e4 f5 mov a,$f5 +18f3: d7 0a mov ($0a)+y,a +18f5: dc dec y +18f6: e4 f6 mov a,$f6 +18f8: d7 0a mov ($0a)+y,a +18fa: dc dec y +18fb: e4 f7 mov a,$f7 +18fd: d7 0a mov ($0a)+y,a +18ff: dc dec y +1900: 10 ea bpl $18ec +1902: ba 0a movw ya,$0a +1904: 7a 21 addw ya,$21 +1906: da 0a movw $0a,ya +1908: 3a 0a incw $0a +190a: 8f b1 f1 mov $f1,#$b1 +190d: fa 1f f6 mov ($f6),($1f) +1910: 6f ret + +1911: eb 21 mov y,$21 +1913: fa 1f f6 mov ($f6),($1f) +1916: e4 f6 mov a,$f6 +1918: 64 f6 cmp a,$f6 +191a: d0 fa bne $1916 +191c: 68 00 cmp a,#$00 +191e: f0 f6 beq $1916 +1920: 64 1f cmp a,$1f +1922: f0 f2 beq $1916 +1924: c4 1f mov $1f,a +1926: e4 f4 mov a,$f4 +1928: d7 0a mov ($0a)+y,a +192a: dc dec y +192b: 30 19 bmi $1946 +192d: e4 f5 mov a,$f5 +192f: d7 0a mov ($0a)+y,a +1931: dc dec y +1932: 30 12 bmi $1946 +1934: e4 f7 mov a,$f7 +1936: d7 0a mov ($0a)+y,a +1938: cb f7 mov $f7,y +193a: fa 0a f4 mov ($f4),($0a) +193d: fa 0b f5 mov ($f5),($0b) +1940: fa 1f f6 mov ($f6),($1f) +1943: dc dec y +1944: 10 d0 bpl $1916 +1946: 8f b1 f1 mov $f1,#$b1 +1949: fa 1f f6 mov ($f6),($1f) +194c: ba 0a movw ya,$0a +194e: 7a 21 addw ya,$21 +1950: da 0a movw $0a,ya +1952: 3a 0a incw $0a +1954: 6f ret + +1955: 6f ret + +1956: dw $0bc2 +1958: dw $0c01 +195a: dw $0c09 +195c: dw $0000 +195e: dw $0000 +1960: dw $0000 +1962: dw $078b +1964: dw $0c89 +1966: dw $0be7 +1968: dw $0be1 +196a: dw $0bde +196c: dw $0bd8 +196e: dw $0c3e +1970: dw $0c49 +1972: dw $18de +1974: dw $18e3 +1976: dw $1911 +1978: dw $0c93 +197a: dw $0c9d +197c: dw $1955 \ No newline at end of file diff --git a/Super Star Wars - Return of the Jedi ($0700).bin b/Super Star Wars - Return of the Jedi ($0700).bin new file mode 100644 index 0000000000000000000000000000000000000000..59b0b0dac8ecc3325ef0ea82fe69dc580ba6c7e2 GIT binary patch literal 6100 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 Date: Sat, 4 Oct 2025 20:44:37 -0700 Subject: [PATCH 007/116] Update and rename Mortal Kombat 3.s to Sculptured Software/Mortal Kombat 3.s --- Mortal Kombat 3.s => Sculptured Software/Mortal Kombat 3.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename Mortal Kombat 3.s => Sculptured Software/Mortal Kombat 3.s (96%) diff --git a/Mortal Kombat 3.s b/Sculptured Software/Mortal Kombat 3.s similarity index 96% rename from Mortal Kombat 3.s rename to Sculptured Software/Mortal Kombat 3.s index dfb35fc3..94255cbf 100644 --- a/Mortal Kombat 3.s +++ b/Sculptured Software/Mortal Kombat 3.s @@ -2643,4 +2643,4 @@ 1df8: dw $1713,$1746,$1856,$17e8,$173b,$0ce2,$0d16,$0d1b,$0d07,$1d95,$0000,$078c,$0da4,$0cf5,$0cef,$0ceb,$0000,$0d50,$0d52,$1e55,$0000,$0000,$0da9,$0d13,$1d43,$1d4f,$1d49,$1d46,$1d6c,$1d52,$1d64,$1d7b,$1d4c,$1dac,$1d68,$1d73,$1d58,$1dd5,$1ddf,$1de7,$0788,$1df0,$1e5f ; uncompiled source code -1e95: db $20,$20,$20,$20,$20,$20,$20,$20,$72,$65,$74,$0d,$0a,$53,$65,$74,$4e,$65,$78,$74,$45,$66,$66,$65,$63,$74,$50,$61,$6e,$0d,$0a,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$6d,$6f,$76,$20,$4e,$65,$78,$74,$45,$78,$53,$74,$65,$72,$65,$6f,$4d,$6f,$64,$2c,$00,$ \ No newline at end of file +1e95: db $20,$20,$20,$20,$20,$20,$20,$20,$72,$65,$74,$0d,$0a,$53,$65,$74,$4e,$65,$78,$74,$45,$66,$66,$65,$63,$74,$50,$61,$6e,$0d,$0a,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$6d,$6f,$76,$20,$4e,$65,$78,$74,$45,$78,$53,$74,$65,$72,$65,$6f,$4d,$6f,$64,$2c,$00,$ From adc8287d037b16d069a8c6cbd037c7145728df23 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:45:04 -0700 Subject: [PATCH 008/116] Update and rename Pink Panther in Pink Goes to Hollywood.s to Sculptured Software/Pink Panther in Pink Goes to Hollywood.s --- .../Pink Panther in Pink Goes to Hollywood.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename Pink Panther in Pink Goes to Hollywood.s => Sculptured Software/Pink Panther in Pink Goes to Hollywood.s (96%) diff --git a/Pink Panther in Pink Goes to Hollywood.s b/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s similarity index 96% rename from Pink Panther in Pink Goes to Hollywood.s rename to Sculptured Software/Pink Panther in Pink Goes to Hollywood.s index a0efa0fe..1d7496da 100644 --- a/Pink Panther in Pink Goes to Hollywood.s +++ b/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s @@ -1876,4 +1876,4 @@ 17ba: dw $0b70 17bc: dw $0b6a 17be: dw $0b8c -17c0: dw $0b97 \ No newline at end of file +17c0: dw $0b97 From 9205954faf681822743108cc2f1fdf9ba6d4fcd3 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:45:26 -0700 Subject: [PATCH 009/116] Update and rename Rocko's Modern Life - Spunky's Dangerous Day.s to Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s --- .../Rocko's Modern Life - Spunky's Dangerous Day.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename Rocko's Modern Life - Spunky's Dangerous Day.s => Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s (96%) diff --git a/Rocko's Modern Life - Spunky's Dangerous Day.s b/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s similarity index 96% rename from Rocko's Modern Life - Spunky's Dangerous Day.s rename to Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s index d5096c9f..f2bbc2f9 100644 --- a/Rocko's Modern Life - Spunky's Dangerous Day.s +++ b/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s @@ -2091,4 +2091,4 @@ 1976: dw $1911 1978: dw $0c93 197a: dw $0c9d -197c: dw $1955 \ No newline at end of file +197c: dw $1955 From a5e6ff5262d753c55d8fc54104b9a5aa820e4b41 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:46:00 -0700 Subject: [PATCH 010/116] Rename Super Star Wars - Return of the Jedi ($0700).bin to Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin --- ...Super Star Wars - Return of the Jedi ($0700).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename Super Star Wars - Return of the Jedi ($0700).bin => Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin (100%) diff --git a/Super Star Wars - Return of the Jedi ($0700).bin b/Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin similarity index 100% rename from Super Star Wars - Return of the Jedi ($0700).bin rename to Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin From ef47f9b283894ebd2fbbdae44ae6a96a71ae75bb Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:46:37 -0700 Subject: [PATCH 011/116] Update and rename Super Star Wars.s to Sculptured Software/Super Star Wars.s --- Super Star Wars.s => Sculptured Software/Super Star Wars.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename Super Star Wars.s => Sculptured Software/Super Star Wars.s (96%) diff --git a/Super Star Wars.s b/Sculptured Software/Super Star Wars.s similarity index 96% rename from Super Star Wars.s rename to Sculptured Software/Super Star Wars.s index 54f5efd8..3a9304c6 100644 --- a/Super Star Wars.s +++ b/Sculptured Software/Super Star Wars.s @@ -1873,4 +1873,4 @@ 17ba: dw $0b70 17bc: dw $0b6a 17be: dw $0b8c -17c0: dw $0b97 \ No newline at end of file +17c0: dw $0b97 From 0d2277c59cc9cff880fc611585a82e6476f19be1 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:48:54 -0700 Subject: [PATCH 012/116] Delete Sculptured Software/Pink Panther in Pink Goes to Hollywood.s --- .../Pink Panther in Pink Goes to Hollywood.s | 1879 ----------------- 1 file changed, 1879 deletions(-) delete mode 100644 Sculptured Software/Pink Panther in Pink Goes to Hollywood.s diff --git a/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s b/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s deleted file mode 100644 index 1d7496da..00000000 --- a/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s +++ /dev/null @@ -1,1879 +0,0 @@ -0700: 20 clrp -0701: cd ff mov x,#$ff ; set stack pointer -0703: bd mov sp,x -0704: 8f 6c f2 mov $f2,#$6c ; reset DSP flags -0707: d8 f3 mov $f3,x -0709: 8f b0 f1 mov $f1,#$b0 ; clear input ports APUI00-APUI04 -070c: 8f 20 fa mov $fa,#$20 -070f: 8f 81 f1 mov $f1,#$81 ; toggle timer 2 -0712: 3f f7 0d call $0df7 ; clear/reset routine -0715: 8f 00 0b mov $0b,#$00 ; variables = sample directory start -0718: 8f 18 0c mov $0c,#$18 -071b: 8d 03 mov y,#$03 ; set temporary storage -071d: f6 ff ff mov a,$ffff+y -0720: 16 27 07 or a,$0727+y -0723: d6 ff ff mov $ffff+y,a -0726: fe f5 dbnz y,$071d -0728: ab 15 inc $15 -072a: e4 1b mov a,$1b -072c: d0 05 bne $0733 -072e: 3f 86 15 call $1586 ; do a random number generator (RNG) -0731: 2f 03 bra $0736 -0733: 3f 58 08 call $0858 -0736: e4 f6 mov a,$f6 -0738: f0 03 beq $073d -073a: 3f 3d 0b call $0b3d -073d: e4 fd mov a,$fd -073f: 60 clrc -0740: 84 14 adc a,$14 -0742: c4 14 mov $14,a -0744: 68 05 cmp a,#$05 -0746: 90 ee bcc $0736 -0748: a8 05 sbc a,#$05 -074a: c4 14 mov $14,a -074c: 68 14 cmp a,#$14 -074e: 90 d8 bcc $0728 -0750: 8f 00 14 mov $14,#$00 -0753: 2f d3 bra $0728 -0755: 8d 00 mov y,#$00 -0757: 8f aa f4 mov $f4,#$aa -075a: 8f bb f5 mov $f5,#$bb -075d: f8 f4 mov x,$f4 -075f: c8 cc cmp x,#$cc -0761: d0 fa bne $075d -0763: fa f6 03 mov ($03),($f6) -0766: fa f7 04 mov ($04),($f7) -0769: 7d mov a,x -076a: f8 f5 mov x,$f5 -076c: c4 f4 mov $f4,a -076e: d0 05 bne $0775 -0770: d8 f6 mov $f6,x -0772: 1f 03 00 jmp ($0003+x) - -0775: cd 00 mov x,#$00 -0777: 3e f4 cmp x,$f4 -0779: d0 fc bne $0777 -077b: e4 f5 mov a,$f5 -077d: d7 03 mov ($03)+y,a -077f: f8 f4 mov x,$f4 -0781: d8 f4 mov $f4,x -0783: 3a 03 incw $03 -0785: 3e f4 cmp x,$f4 -0787: f0 fc beq $0785 -0789: 3d inc x -078a: 3e f4 cmp x,$f4 -078c: f0 ed beq $077b -078e: f8 f4 mov x,$f4 -0790: 2f d1 bra $0763 -0792: 3f f7 0d call $0df7 -0795: 8f b0 f1 mov $f1,#$b0 -0798: cd 00 mov x,#$00 -079a: f5 55 07 mov a,$0755+x -079d: d5 00 01 mov $0100+x,a -07a0: 3d inc x -07a1: c8 3d cmp x,#$3d -07a3: 90 f5 bcc $079a -07a5: 5f 00 01 jmp $0100 - -; gain tables -07a8: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 -07be: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 - -; DSP registers: VxENVX -07d4: db $08,$18,$28,$38,$48,$58,$68,$78 -; DSP registers: VxGAIN -07dd: db $07,$17,$27,$37,$47,$57,$67,$77 -; DSP registers: VxSCRN (select sample) -07e4: db $04,$14,$24,$34,$44,$54,$64,$74 -; DSP registers: VxPITCHL -07ec: db $02,$12,$22,$32,$42,$52,$62,$72 -; DSP registers: VxVOLL -07f4: db $00,$10,$20,$30,$40,$50,$60,$70 - -; voice numbers and bits for clearing those void bits -07fc: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f - -; echo poke registers -080c: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f - -0818: db $02,$02,$02,$02,$02,$03,$03,$03 -0820: db $97,$ac,$c1,$d6,$eb,$00,$15,$2a - -0828: db $03,$03,$03,$03,$03,$03,$03,$03 -0830: db $3f,$54,$69,$7e,$93,$a8,$bd,$d2 - -0838: db $03,$03,$04,$04,$04,$04,$04,$04 -0840: db $e7,$fc,$11,$26,$3b,$50,$65,$7a - -0848: db $04,$04,$04,$04,$04,$04,$05,$05 -0850: db $8f,$a5,$bb,$d1,$e7,$fd,$13,$29 - -0858: 3f 86 15 call $1586 ; use RNG -085b: 3f 0a 13 call $130a -085e: 8f 00 2f mov $2f,#$00 -0861: 8f 00 44 mov $44,#$00 -0864: 8f 7c f2 mov $f2,#$7c ; clear end of sample flags? -0867: e4 f3 mov a,$f3 -0869: 04 41 or a,$41 -086b: 24 47 and a,$47 -086d: c4 41 mov $41,a -086f: 8f 00 f3 mov $f3,#$00 -0872: 24 42 and a,$42 -0874: 04 43 or a,$43 -0876: c4 43 mov $43,a -0878: cd 07 mov x,#$07 -087a: 8f 7a 0d mov $0d,#$7a -087d: 8f 04 0e mov $0e,#$04 -0880: d8 0f mov $0f,x -0882: f5 fc 07 mov a,$07fc+x ; clear voice number bits -0885: c4 31 mov $31,a -0887: 48 ff eor a,#$ff -0889: c4 32 mov $32,a -088b: f4 53 mov a,$53+x -088d: 28 02 and a,#$02 -088f: c4 30 mov $30,a -0891: d0 06 bne $0899 -0893: f5 77 02 mov a,$0277+x -0896: 5f 9e 08 jmp $089e - -0899: 3f db 0e call $0edb -089c: f8 0f mov x,$0f -089e: 75 7f 02 cmp a,$027f+x -08a1: d0 10 bne $08b3 -08a3: 3f 75 10 call $1075 -08a6: 3f 23 0b call $0b23 -08a9: e4 48 mov a,$48 -08ab: 24 45 and a,$45 -08ad: 24 31 and a,$31 -08af: d0 43 bne $08f4 -08b1: f0 44 beq $08f7 -08b3: d5 7f 02 mov $027f+x,a -08b6: 09 31 2f or ($2f),($31) -08b9: 3f 75 10 call $1075 -08bc: 7d mov a,x -08bd: 1c asl a -08be: 5d mov x,a -08bf: e4 49 mov a,$49 -08c1: d5 87 02 mov $0287+x,a -08c4: e4 4a mov a,$4a -08c6: d5 88 02 mov $0288+x,a -08c9: f8 0f mov x,$0f -08cb: e4 4b mov a,$4b -08cd: 28 20 and a,#$20 -08cf: f0 05 beq $08d6 -08d1: 29 32 42 and ($42),($32) -08d4: 2f 03 bra $08d9 -08d6: 09 31 42 or ($42),($31) -08d9: e4 4b mov a,$4b -08db: 28 40 and a,#$40 -08dd: f0 05 beq $08e4 -08df: 09 31 48 or ($48),($31) -08e2: 2f 03 bra $08e7 -08e4: 29 32 48 and ($48),($32) -08e7: 3f 23 0b call $0b23 -08ea: e4 48 mov a,$48 -08ec: 04 45 or a,$45 -08ee: 24 31 and a,$31 -08f0: d0 02 bne $08f4 -08f2: f0 03 beq $08f7 -08f4: 09 31 44 or ($44),($31) -08f7: 1d dec x -08f8: 30 0a bmi $0904 -08fa: 80 setc -08fb: b8 15 0d sbc $0d,#$15 -08fe: b8 00 0e sbc $0e,#$00 -0901: 5f 80 08 jmp $0880 - -0904: e4 45 mov a,$45 -0906: 24 43 and a,$43 -0908: 04 44 or a,$44 -090a: c4 46 mov $46,a -090c: 8f 5c f2 mov $f2,#$5c -090f: c4 f3 mov $f3,a -0911: cd 07 mov x,#$07 -0913: 8f d2 0d mov $0d,#$d2 -0916: 8f 03 0e mov $0e,#$03 -0919: d8 0f mov $0f,x -091b: f4 53 mov a,$53+x -091d: fd mov y,a -091e: 28 40 and a,#$40 -0920: 0d push psw -0921: dd mov a,y -0922: 28 04 and a,#$04 -0924: 0d push psw -0925: 7d mov a,x -0926: fd mov y,a -0927: 1c asl a -0928: 5d mov x,a -0929: f5 48 02 mov a,$0248+x ; get base note -092c: c4 2e mov $2e,a -092e: f5 47 02 mov a,$0247+x -0931: c4 2d mov $2d,a -0933: 8e pop psw -0934: f0 11 beq $0947 -0936: 4d push x ; save word addressing -0937: 3f db 0e call $0edb ; advance pitch envelope -093a: ce pop x ; restore pitch flag -093b: 7a 2d addw ya,$2d -093d: 80 setc -093e: a8 b0 sbc a,#$b0 -0940: c4 2d mov $2d,a -0942: dd mov a,y -0943: a8 04 sbc a,#$04 -0945: c4 2e mov $2e,a -0947: f5 88 02 mov a,$0288+x -094a: fd mov y,a -094b: f5 87 02 mov a,$0287+x -094e: 7a 2d addw ya,$2d -0950: 8e pop psw -0951: d0 03 bne $0956 -0953: 3f 9f 10 call $109f ; translate note to frequency -0956: f8 0f mov x,$0f -0958: d5 57 02 mov $0257+x,a -095b: dd mov a,y -095c: d5 5f 02 mov $025f+x,a -095f: 80 setc -0960: b8 15 0d sbc $0d,#$15 -0963: b8 00 0e sbc $0e,#$00 -0966: 1d dec x -0967: 10 b0 bpl $0919 -0969: 8f 5c f2 mov $f2,#$5c -096c: 8f 00 f3 mov $f3,#$00 -096f: cd 07 mov x,#$07 -0971: 8f 2a 0d mov $0d,#$2a -0974: 8f 03 0e mov $0e,#$03 -0977: d8 0f mov $0f,x -0979: f5 fc 07 mov a,$07fc+x -097c: c4 31 mov $31,a -097e: 48 ff eor a,#$ff -0980: c4 32 mov $32,a -0982: f4 53 mov a,$53+x -0984: 28 01 and a,#$01 -0986: d0 06 bne $098e -0988: f5 2f 02 mov a,$022f+x -098b: 5f 93 09 jmp $0993 - -098e: 3f db 0e call $0edb -0991: f8 0f mov x,$0f -0993: d5 37 02 mov $0237+x,a -0996: fd mov y,a -0997: e4 2f mov a,$2f -0999: 24 31 and a,$31 -099b: f0 0a beq $09a7 -099d: f5 e4 07 mov a,$07e4+x -09a0: c4 f2 mov $f2,a -09a2: f5 7f 02 mov a,$027f+x -09a5: c4 f3 mov $f3,a -09a7: e4 40 mov a,$40 -09a9: 24 31 and a,$31 -09ab: f0 05 beq $09b2 -09ad: 29 32 40 and ($40),($32) -09b0: 2f 37 bra $09e9 -09b2: f5 d4 07 mov a,$07d4+x -09b5: c4 f2 mov $f2,a -09b7: dd mov a,y -09b8: 80 setc -09b9: a4 f3 sbc a,$f3 -09bb: b0 09 bcs $09c6 -09bd: 8f 80 22 mov $22,#$80 -09c0: 48 ff eor a,#$ff -09c2: bc inc a -09c3: 5f c9 09 jmp $09c9 - -09c6: 8f c0 22 mov $22,#$c0 -09c9: 5c lsr a -09ca: d0 09 bne $09d5 -09cc: ad 00 cmp y,#$00 -09ce: d0 05 bne $09d5 -09d0: e8 82 mov a,#$82 -09d2: 5f e3 09 jmp $09e3 - -09d5: 8d 15 mov y,#$15 -09d7: 76 a8 07 cmp a,$07a8+y -09da: 90 02 bcc $09de -09dc: fe f9 dbnz y,$09d7 -09de: f6 be 07 mov a,$07be+y -09e1: 04 22 or a,$22 -09e3: 75 3f 02 cmp a,$023f+x -09e6: f0 0c beq $09f4 -09e8: fd mov y,a -09e9: f5 dc 07 mov a,$07dc+x -09ec: c4 f2 mov $f2,a -09ee: cb f3 mov $f3,y -09f0: dd mov a,y -09f1: d5 3f 02 mov $023f+x,a -09f4: f5 ec 07 mov a,$07ec+x -09f7: c4 f2 mov $f2,a -09f9: fd mov y,a -09fa: f5 57 02 mov a,$0257+x -09fd: c4 f3 mov $f3,a -09ff: fc inc y -0a00: cb f2 mov $f2,y -0a02: f5 5f 02 mov a,$025f+x -0a05: c4 f3 mov $f3,a -0a07: 80 setc -0a08: b8 15 0d sbc $0d,#$15 -0a0b: b8 00 0e sbc $0e,#$00 -0a0e: 1d dec x -0a0f: 30 03 bmi $0a14 -0a11: 5f 77 09 jmp $0977 - -0a14: 8f 4c f2 mov $f2,#$4c -0a17: fa 46 f3 mov ($f3),($46) -0a1a: e4 46 mov a,$46 -0a1c: 48 ff eor a,#$ff -0a1e: c4 47 mov $47,a -0a20: 29 47 41 and ($41),($47) -0a23: 29 47 43 and ($43),($47) -0a26: 8f 00 45 mov $45,#$00 -0a29: cd 07 mov x,#$07 -0a2b: 8f 29 0d mov $0d,#$29 -0a2e: 8f 05 0e mov $0e,#$05 -0a31: 8f 00 34 mov $34,#$00 -0a34: d8 0f mov $0f,x -0a36: e4 52 mov a,$52 -0a38: d0 13 bne $0a4d -0a3a: f4 53 mov a,$53+x -0a3c: 28 08 and a,#$08 -0a3e: c4 34 mov $34,a -0a40: d0 06 bne $0a48 -0a42: f5 6f 02 mov a,$026f+x -0a45: 5f 4d 0a jmp $0a4d - -0a48: 3f db 0e call $0edb -0a4b: f8 0f mov x,$0f -0a4d: fd mov y,a -0a4e: f5 67 02 mov a,$0267+x -0a51: c4 29 mov $29,a -0a53: cf mul ya -0a54: cd 64 mov x,#$64 -0a56: 9e div ya,x -0a57: f8 0f mov x,$0f -0a59: eb 34 mov y,$34 -0a5b: f0 11 beq $0a6e -0a5d: c4 27 mov $27,a -0a5f: 8d 15 mov y,#$15 -0a61: f7 0d mov a,($0d)+y -0a63: d0 04 bne $0a69 -0a65: e4 27 mov a,$27 -0a67: 2f 05 bra $0a6e -0a69: e4 29 mov a,$29 -0a6b: 80 setc -0a6c: a4 27 sbc a,$27 -0a6e: c4 27 mov $27,a -0a70: f5 f4 07 mov a,$07f4+x -0a73: fd mov y,a -0a74: cb f2 mov $f2,y -0a76: fa 27 f3 mov ($f3),($27) -0a79: e4 29 mov a,$29 -0a7b: 80 setc -0a7c: a4 27 sbc a,$27 -0a7e: fc inc y -0a7f: cb f2 mov $f2,y -0a81: c4 f3 mov $f3,a -0a83: 80 setc -0a84: b8 16 0d sbc $0d,#$16 -0a87: b8 00 0e sbc $0e,#$00 -0a8a: 1d dec x -0a8b: 30 03 bmi $0a90 -0a8d: 5f 34 0a jmp $0a34 - -0a90: cd 07 mov x,#$07 -0a92: 8d 0e mov y,#$0e -0a94: f5 06 02 mov a,$0206+x -0a97: f0 2b beq $0ac4 -0a99: f4 53 mov a,$53+x -0a9b: 28 80 and a,#$80 -0a9d: f0 09 beq $0aa8 -0a9f: f5 fc 07 mov a,$07fc+x -0aa2: 24 41 and a,$41 -0aa4: d0 19 bne $0abf -0aa6: 2f 1c bra $0ac4 -0aa8: f6 17 02 mov a,$0217+y -0aab: 80 setc -0aac: a8 01 sbc a,#$01 -0aae: d6 17 02 mov $0217+y,a -0ab1: c4 27 mov $27,a -0ab3: f6 18 02 mov a,$0218+y -0ab6: a8 00 sbc a,#$00 -0ab8: d6 18 02 mov $0218+y,a -0abb: 04 27 or a,$27 -0abd: d0 05 bne $0ac4 -0abf: e8 00 mov a,#$00 -0ac1: d5 06 02 mov $0206+x,a -0ac4: dc dec y -0ac5: dc dec y -0ac6: 1d dec x -0ac7: 10 cb bpl $0a94 -0ac9: ec 00 02 mov y,$0200 -0acc: f0 54 beq $0b22 -0ace: 8c 01 02 dec $0201 -0ad1: d0 4f bne $0b22 -0ad3: cc 01 02 mov $0201,y -0ad6: e4 16 mov a,$16 -0ad8: e9 02 02 mov x,$0202 -0adb: 30 0e bmi $0aeb -0add: 60 clrc -0ade: 85 03 02 adc a,$0203 -0ae1: b0 04 bcs $0ae7 -0ae3: 68 7f cmp a,#$7f -0ae5: 90 13 bcc $0afa -0ae7: e8 7f mov a,#$7f -0ae9: 2f 0a bra $0af5 -0aeb: 80 setc -0aec: a5 03 02 sbc a,$0203 -0aef: f0 04 beq $0af5 -0af1: b0 07 bcs $0afa -0af3: e8 00 mov a,#$00 -0af5: 8d 00 mov y,#$00 -0af7: cc 00 02 mov $0200,y -0afa: c4 16 mov $16,a -0afc: 5d mov x,a -0afd: 8f 2c f2 mov $f2,#$2c -0b00: 65 04 02 cmp a,$0204 -0b03: 90 03 bcc $0b08 -0b05: e5 04 02 mov a,$0204 -0b08: c4 f3 mov $f3,a -0b0a: 8f 3c f2 mov $f2,#$3c -0b0d: 7d mov a,x -0b0e: 65 05 02 cmp a,$0205 -0b11: 90 03 bcc $0b16 -0b13: e5 04 02 mov a,$0204 -0b16: c4 f3 mov $f3,a -0b18: 8f 0c f2 mov $f2,#$0c -0b1b: d8 f3 mov $f3,x -0b1d: 8f 1c f2 mov $f2,#$1c -0b20: d8 f3 mov $f3,x -0b22: 6f ret - -0b23: e4 4b mov a,$4b -0b25: 10 0c bpl $0b33 -0b27: 28 1f and a,#$1f -0b29: 8f 6c f2 mov $f2,#$6c -0b2c: c4 f3 mov $f3,a -0b2e: 09 31 4d or ($4d),($31) -0b31: 2f 03 bra $0b36 -0b33: 29 32 4d and ($4d),($32) -0b36: 8f 3d f2 mov $f2,#$3d -0b39: fa 4d f3 mov ($f3),($4d) -0b3c: 6f ret - -0b3d: c4 17 mov $17,a -0b3f: fa f4 19 mov ($19),($f4) -0b42: fa f5 1a mov ($1a),($f5) -0b45: e4 f7 mov a,$f7 -0b47: 8f b1 f1 mov $f1,#$b1 -0b4a: 28 fe and a,#$fe -0b4c: c4 18 mov $18,a -0b4e: fa 17 f6 mov ($f6),($17) -0b51: 5d mov x,a -0b52: c8 1d cmp x,#$1d -0b54: b0 13 bcs $0b69 -0b56: e4 19 mov a,$19 -0b58: eb 1a mov y,$1a -0b5a: 1f a4 17 jmp ($17a4+x) - -0b5d: 8f ff 1b mov $1b,#$ff -0b60: 3f 41 0e call $0e41 -0b63: 8f 6c f2 mov $f2,#$6c -0b66: 8f 00 f3 mov $f3,#$00 -0b69: 6f ret - -0b6a: da 3a movw $3a,ya -0b6c: 8f ff 39 mov $39,#$ff -0b6f: 6f ret - -0b70: c4 52 mov $52,a -0b72: 6f ret - -0b73: e8 00 mov a,#$00 -0b75: c5 00 02 mov $0200,a -0b78: 6f ret - -0b79: cd 01 mov x,#$01 -0b7b: 2f 02 bra $0b7f -0b7d: cd ff mov x,#$ff -0b7f: c5 00 02 mov $0200,a -0b82: c5 01 02 mov $0201,a -0b85: cc 03 02 mov $0203,y -0b88: c9 02 02 mov $0202,x -0b8b: 6f ret - -0b8c: 8f 00 5c mov $5c,#$00 -0b8f: 68 00 cmp a,#$00 -0b91: d0 03 bne $0b96 -0b93: c5 4f 05 mov $054f,a -0b96: 6f ret - -0b97: c5 16 02 mov $0216,a -0b9a: cd 07 mov x,#$07 -0b9c: ad 80 cmp y,#$80 -0b9e: f0 17 beq $0bb7 -0ba0: e8 01 mov a,#$01 -0ba2: b0 0e bcs $0bb2 -0ba4: ad 00 cmp y,#$00 -0ba6: d0 08 bne $0bb0 -0ba8: e5 16 02 mov a,$0216 -0bab: 75 0e 02 cmp a,$020e+x -0bae: d0 22 bne $0bd2 -0bb0: e8 80 mov a,#$80 -0bb2: 75 06 02 cmp a,$0206+x -0bb5: d0 1b bne $0bd2 -0bb7: f5 dc 07 mov a,$07dc+x -0bba: c4 f2 mov $f2,a -0bbc: e8 00 mov a,#$00 -0bbe: c4 f3 mov $f3,a -0bc0: d5 2f 02 mov $022f+x,a -0bc3: d5 06 02 mov $0206+x,a -0bc6: d5 77 02 mov $0277+x,a -0bc9: d4 53 mov $53+x,a -0bcb: f5 fc 07 mov a,$07fc+x -0bce: 04 45 or a,$45 -0bd0: c4 45 mov $45,a -0bd2: 1d dec x -0bd3: 10 c7 bpl $0b9c -0bd5: 6f ret - -0bd6: 8d 0e mov y,#$0e -0bd8: c5 16 02 mov $0216,a -0bdb: 3f bb 0d call $0dbb -0bde: da 09 movw $09,ya -0be0: 8d 00 mov y,#$00 -0be2: f7 09 mov a,($09)+y -0be4: c4 3c mov $3c,a -0be6: 3a 09 incw $09 -0be8: 8d 07 mov y,#$07 -0bea: f7 09 mov a,($09)+y -0bec: c4 3d mov $3d,a -0bee: 8d 06 mov y,#$06 -0bf0: f7 09 mov a,($09)+y -0bf2: c4 3e mov $3e,a -0bf4: 8f 80 3f mov $3f,#$80 -0bf7: cd 07 mov x,#$07 -0bf9: 3f 44 0c call $0c44 -0bfc: 30 36 bmi $0c34 -0bfe: e8 80 mov a,#$80 -0c00: d5 06 02 mov $0206+x,a -0c03: e5 16 02 mov a,$0216 -0c06: d5 0e 02 mov $020e+x,a -0c09: 8d 02 mov y,#$02 -0c0b: f7 09 mov a,($09)+y -0c0d: c4 35 mov $35,a -0c0f: fc inc y -0c10: f7 09 mov a,($09)+y -0c12: c4 36 mov $36,a -0c14: 8d 04 mov y,#$04 -0c16: f7 09 mov a,($09)+y -0c18: c4 37 mov $37,a -0c1a: fc inc y -0c1b: f7 09 mov a,($09)+y -0c1d: c4 38 mov $38,a -0c1f: e4 39 mov a,$39 -0c21: f0 04 beq $0c27 -0c23: ba 3a movw ya,$3a -0c25: da 37 movw $37,ya -0c27: 8d 01 mov y,#$01 -0c29: f7 09 mov a,($09)+y -0c2b: 2d push a -0c2c: 8d 00 mov y,#$00 -0c2e: f7 09 mov a,($09)+y -0c30: ee pop y -0c31: 3f 6e 0c call $0c6e -0c34: 60 clrc -0c35: 98 08 09 adc $09,#$08 -0c38: 90 02 bcc $0c3c -0c3a: ab 0a inc $0a -0c3c: 8b 3c dec $3c -0c3e: d0 a8 bne $0be8 -0c40: 8f 00 39 mov $39,#$00 -0c43: 6f ret - -0c44: 8d 07 mov y,#$07 -0c46: e4 3f mov a,$3f -0c48: 24 3d and a,$3d -0c4a: f0 0c beq $0c58 -0c4c: f5 06 02 mov a,$0206+x -0c4f: f0 15 beq $0c66 -0c51: e4 3e mov a,$3e -0c53: 75 27 02 cmp a,$0227+x -0c56: b0 10 bcs $0c68 -0c58: 4b 3f lsr $3f -0c5a: d0 05 bne $0c61 -0c5c: 8f 80 3f mov $3f,#$80 -0c5f: cd 08 mov x,#$08 -0c61: 1d dec x -0c62: dc dec y -0c63: 10 e1 bpl $0c46 -0c65: 6f ret - -0c66: e4 3e mov a,$3e -0c68: d5 27 02 mov $0227+x,a -0c6b: e8 00 mov a,#$00 -0c6d: 6f ret - -0c6e: d8 33 mov $33,x ; play sound (instrument) -0c70: 2d push a -0c71: f5 dc 07 mov a,$07dc+x -0c74: c4 f2 mov $f2,a -0c76: 8f 9f f3 mov $f3,#$9f -0c79: dd mov a,y -0c7a: d5 67 02 mov $0267+x,a -0c7d: 7d mov a,x -0c7e: 1c asl a -0c7f: 5d mov x,a -0c80: e4 37 mov a,$37 -0c82: d5 47 02 mov $0247+x,a -0c85: e4 38 mov a,$38 -0c87: d5 48 02 mov $0248+x,a -0c8a: e4 35 mov a,$35 -0c8c: d5 17 02 mov $0217+x,a -0c8f: e4 36 mov a,$36 -0c91: d5 18 02 mov $0218+x,a -0c94: ae pop a -0c95: 8d 02 mov y,#$02 -0c97: 3f bb 0d call $0dbb -0c9a: da 07 movw $07,ya ; get current voice and instrument -0c9c: f8 33 mov x,$33 -0c9e: f5 fc 07 mov a,$07fc+x ; get channel bit mask ID -0ca1: c4 4e mov $4e,a -0ca3: 48 ff eor a,#$ff ; and store inversion -0ca5: c4 4f mov $4f,a -0ca7: 8d 00 mov y,#$00 ; get mode flags -0ca9: f7 07 mov a,($07)+y -0cab: d4 53 mov $53+x,a ; save permanently and in local temp RAM -0cad: c4 34 mov $34,a -0caf: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) -0cb1: f0 05 beq $0cb8 ; if not... -0cb3: 09 4e 50 or ($50),($4e) ; turn pitch mod on -0cb6: 2f 03 bra $0cbb -0cb8: 29 4f 50 and ($50),($4f) ; turn pitch mod off - -0cbb: 8f 2d f2 mov $f2,#$2d -0cbe: fa 50 f3 mov ($f3),($50) -0cc1: e4 34 mov a,$34 ; retrieve the saved flag -0cc3: 28 10 and a,#$10 ; is echo enabled? ($10 = echo) -0cc5: f0 2f beq $0cf6 ; if not... -0cc7: 8d 05 mov y,#$05 ; get echo byte from sound -0cc9: f7 07 mov a,($07)+y -0ccb: 8d 0c mov y,#$0c -0ccd: 3f bb 0d call $0dbb -0cd0: 8d 00 mov y,#$00 -0cd2: f6 0c 08 mov a,$080c+y ; get the echo register values to "poke" -0cd5: c4 f2 mov $f2,a ; (from the table) -0cd7: f7 10 mov a,($10)+y ; now get info to feed to the registers -0cd9: ad 01 cmp y,#$01 ; (from the echo environment) -0cdb: f0 04 beq $0ce1 -0cdd: ad 02 cmp y,#$02 -0cdf: d0 09 bne $0cea -0ce1: d6 03 02 mov $0203+y,a -0ce4: 64 16 cmp a,$16 -0ce6: 90 02 bcc $0cea -0ce8: e4 16 mov a,$16 -0cea: c4 f3 mov $f3,a -0cec: fc inc y -0ced: ad 0c cmp y,#$0c ; repeat for every byte of the array -0cef: 90 e1 bcc $0cd2 -0cf1: 09 4e 51 or ($51),($4e) -0cf4: 2f 03 bra $0cf9 - -0cf6: 29 4f 51 and ($51),($4f) -0cf9: 8f 4d f2 mov $f2,#$4d -0cfc: fa 51 f3 mov ($f3),($51) ; send the echo unit -0cff: e4 34 mov a,$34 -0d01: 28 01 and a,#$01 -0d03: 0d push psw -0d04: 8d 01 mov y,#$01 -0d06: f7 07 mov a,($07)+y ; now get the amplitude -0d08: 8e pop psw -0d09: d0 08 bne $0d13 -0d0b: f8 33 mov x,$33 -0d0d: d5 2f 02 mov $022f+x,a -0d10: 5f 29 0d jmp $0d29 - -0d13: 8d 04 mov y,#$04 -0d15: 3f bb 0d call $0dbb -0d18: f8 33 mov x,$33 -0d1a: f5 20 08 mov a,$0820+x -0d1d: c4 0d mov $0d,a -0d1f: f5 18 08 mov a,$0818+x -0d22: c4 0e mov $0e,a -0d24: ba 35 movw ya,$35 -0d26: 3f 64 0e call $0e64 -0d29: e4 34 mov a,$34 -0d2b: 28 04 and a,#$04 -0d2d: f0 1a beq $0d49 -0d2f: 8d 03 mov y,#$03 -0d31: f7 07 mov a,($07)+y -0d33: 8d 06 mov y,#$06 -0d35: 3f bb 0d call $0dbb -0d38: f8 33 mov x,$33 -0d3a: f5 30 08 mov a,$0830+x -0d3d: c4 0d mov $0d,a -0d3f: f5 28 08 mov a,$0828+x -0d42: c4 0e mov $0e,a -0d44: ba 35 movw ya,$35 -0d46: 3f 64 0e call $0e64 -0d49: e4 34 mov a,$34 -0d4b: 28 08 and a,#$08 -0d4d: 0d push psw -0d4e: 8d 04 mov y,#$04 -0d50: f7 07 mov a,($07)+y -0d52: 8e pop psw -0d53: d0 08 bne $0d5d -0d55: f8 33 mov x,$33 -0d57: d5 6f 02 mov $026f+x,a -0d5a: 5f 8a 0d jmp $0d8a - -0d5d: 8d 08 mov y,#$08 -0d5f: 3f bb 0d call $0dbb -0d62: f8 33 mov x,$33 -0d64: f5 50 08 mov a,$0850+x -0d67: c4 0d mov $0d,a -0d69: f5 48 08 mov a,$0848+x -0d6c: c4 0e mov $0e,a -0d6e: ba 35 movw ya,$35 -0d70: 3f 64 0e call $0e64 -0d73: 8d 07 mov y,#$07 -0d75: f7 0d mov a,($0d)+y -0d77: f0 0b beq $0d84 -0d79: 8d 15 mov y,#$15 -0d7b: f7 0d mov a,($0d)+y -0d7d: d0 05 bne $0d84 -0d7f: e8 ff mov a,#$ff -0d81: 5f 86 0d jmp $0d86 - -0d84: e8 00 mov a,#$00 -0d86: 8d 15 mov y,#$15 -0d88: d7 0d mov ($0d)+y,a -0d8a: e4 34 mov a,$34 -0d8c: 28 02 and a,#$02 -0d8e: 0d push psw -0d8f: 8d 02 mov y,#$02 -0d91: f7 07 mov a,($07)+y -0d93: 8e pop psw -0d94: d0 08 bne $0d9e -0d96: f8 33 mov x,$33 -0d98: d5 77 02 mov $0277+x,a -0d9b: 5f b4 0d jmp $0db4 - -0d9e: 8d 0a mov y,#$0a -0da0: 3f bb 0d call $0dbb -0da3: f8 33 mov x,$33 -0da5: f5 40 08 mov a,$0840+x -0da8: c4 0d mov $0d,a -0daa: f5 38 08 mov a,$0838+x -0dad: c4 0e mov $0e,a -0daf: ba 35 movw ya,$35 -0db1: 3f 64 0e call $0e64 -0db4: 09 4e 45 or ($45),($4e) -0db7: 09 4e 40 or ($40),($4e) -0dba: 6f ret - -0dbb: 8f 00 06 mov $06,#$00 ; load current song/sfx/etc. address into stack -0dbe: 1c asl a -0dbf: 2b 06 rol $06 -0dc1: 60 clrc -0dc2: 96 e0 17 adc a,$17e0+y -0dc5: c4 05 mov $05,a -0dc7: e4 06 mov a,$06 -0dc9: 96 e1 17 adc a,$17e1+y -0dcc: c4 06 mov $06,a -0dce: 8d 01 mov y,#$01 -0dd0: f7 05 mov a,($05)+y -0dd2: c4 11 mov $11,a -0dd4: dc dec y -0dd5: f7 05 mov a,($05)+y -0dd7: c4 10 mov $10,a -0dd9: eb 11 mov y,$11 -0ddb: 6f ret - -; pre-defined DSP flags -0ddc: db $6c,$ff ; clear flags -0dde: db $3d,$00 ; turn off noise generator (NON) -0de0: db $4d,$00 ; turn off echo (EON) -0de2: db $7d,$00 ; turn off echo delay time (EDL) -0de4: db $6d,$ff ; pointer to echo memory (ESA) -0de6: db $5d,$18 ; set sample directory ($1800) -0de8: db $5c,$00 ; set key off (KOFF) -0dea: db $2d,$00 ; disable pitch modulation (PMON) -0dec: db $7c,$00 ; end of sample flag -0dee: db $2c,$00 ; turn off EVOLL -0df0: db $3c,$00 ; turn off EVOLR -0df2: db $0c,$7f ; turn on MVOLL -0df4: db $1c,$7f ; turn on MVOLR -0df6: db $ff - -0df7: 8d 00 mov y,#$00 -0df9: f6 dc 0d mov a,$0ddc+y ; set DSP flags from table -0dfc: 68 ff cmp a,#$ff -0dfe: f0 0b beq $0e0b -0e00: c4 f2 mov $f2,a -0e02: fc inc y -0e03: f6 dc 0d mov a,$0ddc+y -0e06: c4 f3 mov $f3,a -0e08: fc inc y -0e09: d0 ee bne $0df9 -0e0b: cd 70 mov x,#$70 -0e0d: e8 00 mov a,#$00 -0e0f: d4 04 mov $04+x,a -0e11: d4 07 mov $07+x,a -0e13: d4 03 mov $03+x,a -0e15: d4 02 mov $02+x,a -0e17: e8 00 mov a,#$00 -0e19: d4 05 mov $05+x,a -0e1b: 7d mov a,x -0e1c: 80 setc -0e1d: a8 10 sbc a,#$10 -0e1f: 5d mov x,a -0e20: 10 eb bpl $0e0d -0e22: e8 02 mov a,#$02 -0e24: cd 07 mov x,#$07 -0e26: 3f 4b 0e call $0e4b -0e29: fd mov y,a -0e2a: d6 00 00 mov $0000+y,a -0e2d: fc inc y -0e2e: ad f0 cmp y,#$f0 -0e30: 90 f8 bcc $0e2a -0e32: 9c dec a -0e33: c4 41 mov $41,a -0e35: c4 43 mov $43,a -0e37: c4 48 mov $48,a -0e39: c4 42 mov $42,a -0e3b: c4 47 mov $47,a -0e3d: 8f 7f 16 mov $16,#$7f -0e40: 6f ret - -0e41: e5 e1 17 mov a,$17e1 -0e44: 8f 6d f2 mov $f2,#$6d -0e47: c4 f3 mov $f3,a -0e49: cd 00 mov x,#$00 -0e4b: c5 55 0e mov $0e55,a -0e4e: e8 00 mov a,#$00 -0e50: c5 54 0e mov $0e54,a -0e53: c5 00 00 mov $0000,a -0e56: ac 54 0e inc $0e54 -0e59: d0 f8 bne $0e53 -0e5b: ac 55 0e inc $0e55 -0e5e: 1e 55 0e cmp x,$0e55 -0e61: d0 f0 bne $0e53 -0e63: 6f ret - -0e64: da 27 movw $27,ya -0e66: 8d 07 mov y,#$07 -0e68: f7 10 mov a,($10)+y ; get amplitude table -0e6a: d7 0d mov ($0d)+y,a -0e6c: dc dec y -0e6d: 10 f9 bpl $0e68 -0e6f: e4 10 mov a,$10 -0e71: 60 clrc -0e72: 88 08 adc a,#$08 -0e74: 8d 08 mov y,#$08 -0e76: d7 0d mov ($0d)+y,a -0e78: e4 11 mov a,$11 -0e7a: 88 00 adc a,#$00 -0e7c: fc inc y -0e7d: d7 0d mov ($0d)+y,a -0e7f: 8d 03 mov y,#$03 -0e81: f7 0d mov a,($0d)+y -0e83: 5d mov x,a -0e84: 8d 02 mov y,#$02 -0e86: f7 0d mov a,($0d)+y -0e88: fd mov y,a -0e89: 7d mov a,x -0e8a: cf mul ya -0e8b: da 2b movw $2b,ya -0e8d: ba 27 movw ya,$27 -0e8f: 9a 2b subw ya,$2b -0e91: b0 03 bcs $0e96 -0e93: e8 00 mov a,#$00 -0e95: fd mov y,a -0e96: cb 2c mov $2c,y -0e98: 8d 0d mov y,#$0d -0e9a: d7 0d mov ($0d)+y,a -0e9c: fc inc y -0e9d: e4 2c mov a,$2c -0e9f: d7 0d mov ($0d)+y,a -0ea1: 8d 03 mov y,#$03 -0ea3: f7 0d mov a,($0d)+y -0ea5: bc inc a -0ea6: 8d 0f mov y,#$0f -0ea8: d7 0d mov ($0d)+y,a -0eaa: 68 03 cmp a,#$03 -0eac: b0 06 bcs $0eb4 -0eae: 8d 04 mov y,#$04 -0eb0: e8 00 mov a,#$00 -0eb2: d7 0d mov ($0d)+y,a -0eb4: 8d 08 mov y,#$08 -0eb6: f7 0d mov a,($0d)+y -0eb8: 8d 0a mov y,#$0a -0eba: d7 0d mov ($0d)+y,a -0ebc: 8d 09 mov y,#$09 -0ebe: f7 0d mov a,($0d)+y -0ec0: 8d 0b mov y,#$0b -0ec2: d7 0d mov ($0d)+y,a -0ec4: e8 01 mov a,#$01 -0ec6: 8d 14 mov y,#$14 -0ec8: d7 0d mov ($0d)+y,a -0eca: 9c dec a -0ecb: 8d 0c mov y,#$0c -0ecd: d7 0d mov ($0d)+y,a -0ecf: 8d 12 mov y,#$12 -0ed1: d7 0d mov ($0d)+y,a -0ed3: fc inc y -0ed4: d7 0d mov ($0d)+y,a -0ed6: c4 20 mov $20,a -0ed8: 5f 89 0f jmp $0f89 - -0edb: 8d 14 mov y,#$14 -0edd: f7 0d mov a,($0d)+y -0edf: f0 39 beq $0f1a -0ee1: 8d 04 mov y,#$04 -0ee3: f7 0d mov a,($0d)+y -0ee5: c4 20 mov $20,a -0ee7: 8d 0f mov y,#$0f -0ee9: f7 0d mov a,($0d)+y -0eeb: c4 21 mov $21,a -0eed: f0 03 beq $0ef2 -0eef: 9c dec a -0ef0: d0 06 bne $0ef8 -0ef2: 8d 03 mov y,#$03 -0ef4: f7 0d mov a,($0d)+y -0ef6: 8d 0f mov y,#$0f -0ef8: d7 0d mov ($0d)+y,a -0efa: 78 02 21 cmp $21,#$02 -0efd: 90 03 bcc $0f02 -0eff: 5f 89 0f jmp $0f89 - -0f02: 8d 0c mov y,#$0c -0f04: f7 0d mov a,($0d)+y -0f06: bc inc a -0f07: 8d 05 mov y,#$05 -0f09: 77 0d cmp a,($0d)+y -0f0b: 90 17 bcc $0f24 -0f0d: 9c dec a -0f0e: 8d 01 mov y,#$01 -0f10: 77 0d cmp a,($0d)+y -0f12: f0 6a beq $0f7e -0f14: e8 00 mov a,#$00 -0f16: 8d 14 mov y,#$14 -0f18: d7 0d mov ($0d)+y,a -0f1a: 8d 11 mov y,#$11 -0f1c: f7 0d mov a,($0d)+y -0f1e: 2d push a -0f1f: dc dec y -0f20: f7 0d mov a,($0d)+y -0f22: ee pop y -0f23: 6f ret - -0f24: 8d 0c mov y,#$0c -0f26: d7 0d mov ($0d)+y,a -0f28: 8d 06 mov y,#$06 -0f2a: f7 0d mov a,($0d)+y -0f2c: 8d 0a mov y,#$0a -0f2e: 60 clrc -0f2f: 97 0d adc a,($0d)+y -0f31: d7 0d mov ($0d)+y,a -0f33: 90 07 bcc $0f3c -0f35: fc inc y -0f36: f7 0d mov a,($0d)+y -0f38: 88 00 adc a,#$00 -0f3a: d7 0d mov ($0d)+y,a -0f3c: 8d 0e mov y,#$0e -0f3e: f7 0d mov a,($0d)+y -0f40: 5d mov x,a -0f41: dc dec y -0f42: f7 0d mov a,($0d)+y -0f44: d0 04 bne $0f4a -0f46: c8 00 cmp x,#$00 -0f48: f0 3f beq $0f89 -0f4a: 8d 03 mov y,#$03 -0f4c: 80 setc -0f4d: b7 0d sbc a,($0d)+y -0f4f: 8d 0d mov y,#$0d -0f51: d7 0d mov ($0d)+y,a -0f53: c4 2b mov $2b,a -0f55: 7d mov a,x -0f56: a8 00 sbc a,#$00 -0f58: b0 06 bcs $0f60 -0f5a: e8 00 mov a,#$00 -0f5c: d7 0d mov ($0d)+y,a -0f5e: c4 2b mov $2b,a -0f60: fc inc y -0f61: d7 0d mov ($0d)+y,a -0f63: 04 2b or a,$2b -0f65: d0 0b bne $0f72 -0f67: 8d 01 mov y,#$01 -0f69: f7 0d mov a,($0d)+y -0f6b: 68 ff cmp a,#$ff -0f6d: f0 03 beq $0f72 -0f6f: 5f 82 0f jmp $0f82 - -0f72: 8d 0c mov y,#$0c -0f74: f7 0d mov a,($0d)+y -0f76: 8d 01 mov y,#$01 -0f78: 77 0d cmp a,($0d)+y -0f7a: 90 0d bcc $0f89 -0f7c: f0 0b beq $0f89 -0f7e: 8d 00 mov y,#$00 -0f80: f7 0d mov a,($0d)+y -0f82: 8d 0c mov y,#$0c -0f84: d7 0d mov ($0d)+y,a -0f86: 3f 2c 10 call $102c -0f89: f8 20 mov x,$20 -0f8b: f0 14 beq $0fa1 -0f8d: 78 03 21 cmp $21,#$03 -0f90: 90 0f bcc $0fa1 -0f92: 8d 13 mov y,#$13 -0f94: cd 03 mov x,#$03 -0f96: f7 0d mov a,($0d)+y -0f98: d4 1c mov $1c+x,a -0f9a: dc dec y -0f9b: 1d dec x -0f9c: 10 f8 bpl $0f96 -0f9e: 5f 09 10 jmp $1009 - -0fa1: 3f 1b 10 call $101b -0fa4: 8d 06 mov y,#$06 -0fa6: f7 0d mov a,($0d)+y -0fa8: 5d mov x,a -0fa9: 8d 00 mov y,#$00 -0fab: f7 12 mov a,($12)+y -0fad: c8 01 cmp x,#$01 -0faf: f0 06 beq $0fb7 -0fb1: 5d mov x,a -0fb2: fc inc y -0fb3: f7 12 mov a,($12)+y -0fb5: fd mov y,a -0fb6: 7d mov a,x -0fb7: f8 20 mov x,$20 -0fb9: f0 52 beq $100d -0fbb: 78 02 21 cmp $21,#$02 -0fbe: f0 4d beq $100d -0fc0: da 27 movw $27,ya -0fc2: 8d 11 mov y,#$11 -0fc4: f7 0d mov a,($0d)+y -0fc6: c4 1d mov $1d,a -0fc8: dc dec y -0fc9: f7 0d mov a,($0d)+y -0fcb: c4 1c mov $1c,a -0fcd: eb 1d mov y,$1d -0fcf: 80 setc -0fd0: 9a 27 subw ya,$27 -0fd2: da 1e movw $1e,ya -0fd4: e8 00 mov a,#$00 -0fd6: 3c rol a -0fd7: c4 27 mov $27,a -0fd9: d0 08 bne $0fe3 -0fdb: 58 ff 1e eor $1e,#$ff -0fde: 58 ff 1f eor $1f,#$ff -0fe1: 3a 1e incw $1e -0fe3: 8d 03 mov y,#$03 -0fe5: f7 0d mov a,($0d)+y -0fe7: 5d mov x,a -0fe8: ba 1e movw ya,$1e -0fea: 3f 47 10 call $1047 -0fed: c4 1e mov $1e,a -0fef: d8 1f mov $1f,x -0ff1: 78 01 27 cmp $27,#$01 -0ff4: d0 08 bne $0ffe -0ff6: 58 ff 1e eor $1e,#$ff -0ff9: 58 ff 1f eor $1f,#$ff -0ffc: 3a 1e incw $1e -0ffe: 8d 12 mov y,#$12 -1000: e4 1e mov a,$1e -1002: d7 0d mov ($0d)+y,a -1004: fc inc y -1005: e4 1f mov a,$1f -1007: d7 0d mov ($0d)+y,a -1009: ba 1c movw ya,$1c -100b: 7a 1e addw ya,$1e -100d: da 1c movw $1c,ya -100f: 8d 10 mov y,#$10 -1011: d7 0d mov ($0d)+y,a -1013: e4 1d mov a,$1d -1015: fc inc y -1016: d7 0d mov ($0d)+y,a -1018: ba 1c movw ya,$1c -101a: 6f ret - -101b: 8d 0a mov y,#$0a -101d: 5f 22 10 jmp $1022 - -1020: 8d 08 mov y,#$08 -1022: f7 0d mov a,($0d)+y -1024: c4 12 mov $12,a -1026: fc inc y -1027: f7 0d mov a,($0d)+y -1029: c4 13 mov $13,a -102b: 6f ret - -102c: 2d push a -102d: 3f 20 10 call $1020 -1030: 8d 06 mov y,#$06 -1032: f7 0d mov a,($0d)+y -1034: fd mov y,a -1035: ae pop a -1036: cf mul ya -1037: 7a 12 addw ya,$12 -1039: da 12 movw $12,ya -103b: 8d 0a mov y,#$0a -103d: e4 12 mov a,$12 -103f: d7 0d mov ($0d)+y,a -1041: fc inc y -1042: e4 13 mov a,$13 -1044: d7 0d mov ($0d)+y,a -1046: 6f ret - -1047: c8 00 cmp x,#$00 -1049: d0 05 bne $1050 -104b: e8 ff mov a,#$ff -104d: fd mov y,a -104e: 5d mov x,a -104f: 6f ret - -1050: cb 24 mov $24,y -1052: 3e 24 cmp x,$24 -1054: f0 02 beq $1058 -1056: b0 19 bcs $1071 -1058: c4 23 mov $23,a -105a: dd mov a,y -105b: 8d 00 mov y,#$00 -105d: 9e div ya,x -105e: c4 25 mov $25,a -1060: fd mov y,a -1061: 7d mov a,x -1062: cf mul ya -1063: c4 26 mov $26,a -1065: e4 24 mov a,$24 -1067: 80 setc -1068: a4 26 sbc a,$26 -106a: fd mov y,a -106b: e4 23 mov a,$23 -106d: 9e div ya,x -106e: f8 25 mov x,$25 -1070: 6f ret - -1071: 9e div ya,x -1072: cd 00 mov x,#$00 -1074: 6f ret - -1075: f5 7f 02 mov a,$027f+x -1078: 8d 04 mov y,#$04 -107a: cf mul ya -107b: 7a 0b addw ya,$0b -107d: da 03 movw $03,ya -107f: 8d 01 mov y,#$01 -1081: f7 03 mov a,($03)+y -1083: c4 2a mov $2a,a -1085: dc dec y -1086: f7 03 mov a,($03)+y -1088: 80 setc -1089: a8 03 sbc a,#$03 -108b: c4 29 mov $29,a -108d: b8 00 2a sbc $2a,#$00 -1090: f7 29 mov a,($29)+y -1092: c4 49 mov $49,a -1094: fc inc y -1095: f7 29 mov a,($29)+y -1097: c4 4a mov $4a,a -1099: fc inc y -109a: f7 29 mov a,($29)+y -109c: c4 4b mov $4b,a -109e: 6f ret - -109f: ad 04 cmp y,#$04 -10a1: 90 06 bcc $10a9 -10a3: d0 0a bne $10af -10a5: 68 b0 cmp a,#$b0 -10a7: b0 06 bcs $10af -10a9: 8f ff 4c mov $4c,#$ff -10ac: 5f c5 10 jmp $10c5 - -10af: ad 80 cmp y,#$80 -10b1: 90 0f bcc $10c2 -10b3: 8f 00 4c mov $4c,#$00 -10b6: 60 clrc ; convert note to pitch from table -10b7: 88 20 adc a,#$20 -10b9: 5d mov x,a -10ba: dd mov a,y -10bb: 88 df adc a,#$df -10bd: fd mov y,a -10be: 7d mov a,x -10bf: 5f c5 10 jmp $10c5 - -10c2: 8f 04 4c mov $4c,#$04 -10c5: cd f0 mov x,#$f0 -10c7: 9e div ya,x -10c8: 78 ff 4c cmp $4c,#$ff -10cb: d0 02 bne $10cf -10cd: c4 4c mov $4c,a -10cf: f6 ea 10 mov a,$10ea+y -10d2: c4 27 mov $27,a -10d4: f6 da 11 mov a,$11da+y -10d7: c4 28 mov $28,a -10d9: e8 04 mov a,#$04 -10db: 80 setc -10dc: a4 4c sbc a,$4c -10de: f0 07 beq $10e7 -10e0: fd mov y,a -10e1: 4b 28 lsr $28 -10e3: 6b 27 ror $27 -10e5: fe fa dbnz y,$10e1 -10e7: ba 27 movw ya,$27 -10e9: 6f ret - -; pitch table (low byte) -10ea: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 - -; pitch table (high byte) -11d9: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f - -; note interval frequencies (low byte) -12ca: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 - -; note interval frequencies (high byte) -12ea: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 - -130a: e4 5c mov a,$5c -130c: d0 0f bne $131d -130e: e5 4f 05 mov a,$054f -1311: f0 22 beq $1335 -1313: e8 00 mov a,#$00 -1315: c5 4f 05 mov $054f,a -1318: 3f 0a 17 call $170a -131b: 2f ed bra $130a -131d: e4 5b mov a,$5b -131f: 9c dec a -1320: c4 5d mov $5d,a -1322: 1c asl a -1323: c4 5e mov $5e,a -1325: f8 5d mov x,$5d -1327: f4 61 mov a,$61+x -1329: 5d mov x,a -132a: 1f 98 17 jmp ($1798+x) - -132d: 8b 5e dec $5e -132f: 8b 5e dec $5e -1331: 8b 5d dec $5d -1333: 10 f0 bpl $1325 -1335: 6f ret - -1336: f8 5d mov x,$5d -1338: 9b 9b dec $9b+x -133a: d0 f1 bne $132d -133c: f5 60 05 mov a,$0560+x -133f: d4 9b mov $9b+x,a -1341: 9b a3 dec $a3+x -1343: d0 e8 bne $132d -1345: f4 61 mov a,$61+x -1347: 68 02 cmp a,#$02 -1349: d0 07 bne $1352 -134b: e8 06 mov a,#$06 -134d: d4 61 mov $61+x,a -134f: 5f 63 13 jmp $1363 - -1352: e8 08 mov a,#$08 -1354: d4 61 mov $61+x,a -1356: 5f 59 15 jmp $1559 - -1359: 3f b8 14 call $14b8 -135c: d4 ce mov $ce+x,a -135e: 3f b8 14 call $14b8 -1361: d4 cf mov $cf+x,a -1363: 3f b8 14 call $14b8 -1366: fd mov y,a ; get the current note/command -1367: 28 20 and a,#$20 -1369: c4 5f mov $5f,a -136b: dd mov a,y -136c: 28 40 and a,#$40 -136e: c4 60 mov $60,a -1370: f8 5d mov x,$5d -1372: d5 88 05 mov $0588+x,a -1375: ad 80 cmp y,#$80 ; is it a note? -1377: 90 3d bcc $13b6 -1379: ad f0 cmp y,#$f0 ; is it a special meaning flag? -137b: 90 08 bcc $1385 -137d: dd mov a,y ; then it must be a command... -137e: 28 0f and a,#$0f ; get command number -1380: 1c asl a -1381: 5d mov x,a -1382: 1f 3c 15 jmp ($153c+x) ; jump to command number position - -1385: f5 90 05 mov a,$0590+x ; pitch bend -1388: f0 4c beq $13d6 -138a: dd mov a,y -138b: 28 08 and a,#$08 -138d: 0d push psw -138e: dd mov a,y -138f: 28 07 and a,#$07 -1391: bc inc a -1392: 1c asl a -1393: f8 5e mov x,$5e -1395: 8e pop psw -1396: f0 0d beq $13a5 -1398: 60 clrc -1399: 94 de adc a,$de+x -139b: d4 de mov $de+x,a -139d: f4 df mov a,$df+x -139f: 88 00 adc a,#$00 -13a1: d4 df mov $df+x,a -13a3: 2f 31 bra $13d6 -13a5: c4 27 mov $27,a -13a7: f4 de mov a,$de+x -13a9: 80 setc -13aa: a4 27 sbc a,$27 -13ac: d4 de mov $de+x,a -13ae: f4 df mov a,$df+x -13b0: a8 00 sbc a,#$00 -13b2: d4 df mov $df+x,a -13b4: 2f 20 bra $13d6 -13b6: f5 90 05 mov a,$0590+x ; play the note (check first) -13b9: f0 1b beq $13d6 -13bb: dd mov a,y -13bc: 28 1f and a,#$1f -13be: fd mov y,a -13bf: f8 5e mov x,$5e -13c1: f4 ce mov a,$ce+x -13c3: 60 clrc -13c4: 96 ca 12 adc a,$12ca+y ; get the relative frequency -13c7: d4 ce mov $ce+x,a -13c9: f4 cf mov a,$cf+x -13cb: 96 ea 12 adc a,$12ea+y -13ce: d4 cf mov $cf+x,a -13d0: e8 00 mov a,#$00 -13d2: d4 de mov $de+x,a -13d4: d4 df mov $df+x,a -13d6: 3f b8 14 call $14b8 -13d9: 68 00 cmp a,#$00 -13db: d0 12 bne $13ef -13dd: f8 5d mov x,$5d -13df: f4 61 mov a,$61+x -13e1: 68 08 cmp a,#$08 -13e3: d0 07 bne $13ec -13e5: e8 0a mov a,#$0a -13e7: d4 61 mov $61+x,a -13e9: 5f 97 15 jmp $1597 - -13ec: 5f 25 13 jmp $1325 - -13ef: f8 5d mov x,$5d -13f1: d4 a3 mov $a3+x,a -13f3: fd mov y,a -13f4: f5 60 05 mov a,$0560+x -13f7: d4 9b mov $9b+x,a -13f9: cf mul ya -13fa: da 35 movw $35,ya -13fc: 3f 18 15 call $1518 -13ff: f5 98 05 mov a,$0598+x -1402: 30 18 bmi $141c -1404: 5d mov x,a -1405: f5 06 02 mov a,$0206+x -1408: f0 0a beq $1414 -140a: e8 40 mov a,#$40 -140c: 75 27 02 cmp a,$0227+x -140f: b0 05 bcs $1416 -1411: 5f 2d 13 jmp $132d - -1414: e8 40 mov a,#$40 -1416: d5 27 02 mov $0227+x,a -1419: 5f 3d 14 jmp $143d - -141c: f5 a0 05 mov a,$05a0+x -141f: c4 3d mov $3d,a -1421: f5 a8 05 mov a,$05a8+x -1424: 30 04 bmi $142a -1426: eb 5f mov y,$5f -1428: f0 05 beq $142f -142a: 9c dec a -142b: 10 02 bpl $142f -142d: e8 07 mov a,#$07 -142f: 5d mov x,a -1430: f5 fc 07 mov a,$07fc+x -1433: c4 3f mov $3f,a -1435: 8f 40 3e mov $3e,#$40 -1438: 3f 44 0c call $0c44 -143b: 30 78 bmi $14b5 -143d: e8 01 mov a,#$01 -143f: d5 06 02 mov $0206+x,a -1442: d8 ab mov $ab,x -1444: 7d mov a,x -1445: f8 5d mov x,$5d -1447: d5 a8 05 mov $05a8+x,a -144a: f5 90 05 mov a,$0590+x -144d: d0 0c bne $145b -144f: f8 5e mov x,$5e -1451: f4 ce mov a,$ce+x -1453: c4 37 mov $37,a -1455: f4 cf mov a,$cf+x -1457: c4 38 mov $38,a -1459: 2f 25 bra $1480 -145b: f8 5e mov x,$5e -145d: f4 ce mov a,$ce+x -145f: 60 clrc -1460: 94 be adc a,$be+x -1462: fd mov y,a -1463: f4 cf mov a,$cf+x -1465: 94 bf adc a,$bf+x -1467: c4 38 mov $38,a -1469: dd mov a,y -146a: 60 clrc -146b: 94 ae adc a,$ae+x -146d: fd mov y,a -146e: e4 38 mov a,$38 -1470: 94 af adc a,$af+x -1472: c4 38 mov $38,a -1474: dd mov a,y -1475: 60 clrc -1476: 94 de adc a,$de+x -1478: c4 37 mov $37,a -147a: e4 38 mov a,$38 -147c: 94 df adc a,$df+x -147e: c4 38 mov $38,a -1480: eb 5f mov y,$5f -1482: d0 0f bne $1493 -1484: 0b ab asl $ab -1486: f8 ab mov x,$ab -1488: d5 48 02 mov $0248+x,a -148b: e4 37 mov a,$37 -148d: d5 47 02 mov $0247+x,a -1490: 5f 2d 13 jmp $132d - -1493: f8 5d mov x,$5d -1495: f5 68 05 mov a,$0568+x -1498: 60 clrc -1499: 95 70 05 adc a,$0570+x -149c: 10 02 bpl $14a0 -149e: e8 7f mov a,#$7f -14a0: c4 ac mov $ac,a -14a2: e4 60 mov a,$60 -14a4: f0 02 beq $14a8 -14a6: e8 08 mov a,#$08 -14a8: 04 5d or a,$5d -14aa: 5d mov x,a -14ab: f5 78 05 mov a,$0578+x -14ae: f8 ab mov x,$ab -14b0: eb ac mov y,$ac -14b2: 3f 6e 0c call $0c6e -14b5: 5f 2d 13 jmp $132d - -; calculate delta expression -14b8: f8 5e mov x,$5e -14ba: e7 8b mov a,($8b+x) -14bc: bb 8b inc $8b+x -14be: d0 02 bne $14c2 -14c0: bb 8c inc $8c+x -14c2: 6f ret - -; vcmd f0 - end of sequence -14c3: f8 5d mov x,$5d -14c5: e8 0a mov a,#$0a -14c7: d4 61 mov $61+x,a -14c9: 5f 97 15 jmp $1597 - -; vcmd f1 - melody delta expression -14cc: 3f b8 14 call $14b8 -14cf: c4 ad mov $ad,a -14d1: f8 5d mov x,$5d -14d3: f5 70 05 mov a,$0570+x -14d6: 3f 28 15 call $1528 -14d9: d5 70 05 mov $0570+x,a -14dc: 5f 63 13 jmp $1363 - -; vcmd f2 - melody absolute expression -14df: 3f b8 14 call $14b8 -14e2: f8 5d mov x,$5d -14e4: d5 70 05 mov $0570+x,a -14e7: 5f 63 13 jmp $1363 - -; vcmd f3 - mute -14ea: f8 5d mov x,$5d -14ec: f5 a8 05 mov a,$05a8+x -14ef: 30 15 bmi $1506 -14f1: fd mov y,a -14f2: f6 06 02 mov a,$0206+y -14f5: 68 80 cmp a,#$80 -14f7: f0 0d beq $1506 -14f9: e8 00 mov a,#$00 -14fb: d6 67 02 mov $0267+y,a -14fe: f6 dc 07 mov a,$07dc+y -1501: c4 f2 mov $f2,a -1503: 8f 9f f3 mov $f3,#$9f - -; vcmd f4 - rest -1506: 3f b8 14 call $14b8 -1509: f8 5d mov x,$5d -150b: d4 a3 mov $a3+x,a -150d: f5 60 05 mov a,$0560+x -1510: d4 9b mov $9b+x,a -1512: 3f 18 15 call $1518 -1515: 5f 2d 13 jmp $132d - -1518: f4 61 mov a,$61+x -151a: 68 06 cmp a,#$06 -151c: d0 05 bne $1523 -151e: e8 02 mov a,#$02 -1520: 5f 25 15 jmp $1525 - -1523: e8 04 mov a,#$04 -1525: d4 61 mov $61+x,a -1527: 6f ret - -; add the delta to the total -1528: 78 80 ad cmp $ad,#$80 -152b: 90 08 bcc $1535 -152d: 60 clrc -152e: 84 ad adc a,$ad -1530: 10 09 bpl $153b -1532: e8 00 mov a,#$00 -1534: 6f ret - -1535: 84 ad adc a,$ad -1537: 10 02 bpl $153b -1539: e8 7f mov a,#$7f -153b: 6f ret - -; vcmd table (f0-f4) -153c: dw $14c3 ; f0 - end of sequence -153e: dw $14cc ; f1 - melody delta expression -1540: dw $14df ; f2 - melody absolute expression -1542: dw $14ea ; f3 - mute -1544: dw $1506 ; f4 - rest - -1546: 3f b8 14 call $14b8 -1549: f8 5d mov x,$5d -154b: d5 b0 05 mov $05b0+x,a -154e: e8 00 mov a,#$00 -1550: d4 de mov $de+x,a -1552: d4 df mov $df+x,a -1554: f8 5d mov x,$5d -1556: d5 88 05 mov $0588+x,a -1559: f8 5d mov x,$5d -155b: f5 90 05 mov a,$0590+x -155e: f0 19 beq $1579 -1560: f5 b0 05 mov a,$05b0+x -1563: 8d 12 mov y,#$12 -1565: 3f bb 0d call $0dbb -1568: 3f 86 15 call $1586 -156b: 28 0e and a,#$0e -156d: fd mov y,a -156e: f8 5e mov x,$5e -1570: f7 10 mov a,($10)+y -1572: d4 ce mov $ce+x,a -1574: fc inc y -1575: f7 10 mov a,($10)+y -1577: d4 cf mov $cf+x,a -1579: 8f 20 5f mov $5f,#$20 -157c: f8 5d mov x,$5d -157e: f5 88 05 mov a,$0588+x -1581: c4 60 mov $60,a -1583: 5f d6 13 jmp $13d6 - -1586: e4 00 mov a,$00 ; fetch a random number (RNG) -1588: 1c asl a -1589: 44 00 eor a,$00 -158b: 1c asl a -158c: 1c asl a -158d: 1c asl a -158e: 2b 02 rol $02 -1590: 2b 01 rol $01 -1592: 2b 00 rol $00 -1594: e4 02 mov a,$02 -1596: 6f ret - -1597: 3f 9e 15 call $159e ; get current pattern command -159a: 5d mov x,a -159b: 1f 6f 16 jmp ($166f+x) - -159e: f8 5e mov x,$5e ; get 1 byte -15a0: e7 7b mov a,($7b+x) -15a2: bb 7b inc $7b+x -15a4: d0 02 bne $15a8 -15a6: bb 7c inc $7c+x -15a8: 6f ret - -; pattern command 00/16 - end of pattern -15a9: f8 5d mov x,$5d -15ab: e8 0c mov a,#$0c -15ad: d4 61 mov $61+x,a -15af: 5f 87 16 jmp $1687 - -; pattern command 14 -15b2: 8d 00 mov y,#$00 -15b4: f8 5e mov x,$5e -15b6: 3f a0 15 call $15a0 -15b9: ad 10 cmp y,#$10 -15bb: b0 04 bcs $15c1 -15bd: d6 3f 05 mov $053f+y,a -15c0: fc inc y -15c1: 3f a0 15 call $15a0 -15c4: 68 14 cmp a,#$14 -15c6: f0 ee beq $15b6 -15c8: 68 16 cmp a,#$16 -15ca: d0 dd bne $15a9 -15cc: dd mov a,y -15cd: 5d mov x,a -15ce: 3f 86 15 call $1586 -15d1: 8d 00 mov y,#$00 -15d3: 9e div ya,x -15d4: f6 3f 05 mov a,$053f+y -15d7: 8d 10 mov y,#$10 -15d9: 3f 62 16 call $1662 -15dc: 2f 05 bra $15e3 - -; pattern command 02 - play melody -15de: 8d 10 mov y,#$10 -15e0: 3f 5d 16 call $165d -15e3: e8 06 mov a,#$06 -15e5: d4 61 mov $61+x,a -15e7: 5f 59 13 jmp $1359 - -; pattern command 04 -15ea: 8d 14 mov y,#$14 -15ec: 3f 5d 16 call $165d -15ef: e8 08 mov a,#$08 -15f1: d4 61 mov $61+x,a -15f3: 5f 46 15 jmp $1546 - -; pattern command 06 - set channel tuning -15f6: 3f 9e 15 call $159e ; get 1 byte -15f9: eb 5e mov y,$5e -15fb: d6 be 00 mov $00be+y,a -15fe: 3f a0 15 call $15a0 -1601: d6 bf 00 mov $00bf+y,a -1604: 5f 97 15 jmp $1597 - -; pattern command 08 - set instrument -1607: 3f 9e 15 call $159e ; get 1 byte -160a: f8 5d mov x,$5d -160c: d5 78 05 mov $0578+x,a -160f: 5f 97 15 jmp $1597 - -; pattern command 0a - set pitch envelope -1612: 3f 9e 15 call $159e ; get 1 byte -1615: f8 5d mov x,$5d -1617: d5 80 05 mov $0580+x,a -161a: 5f 97 15 jmp $1597 - -; pattern command 10 - set channel gain (relative?) -161d: 3f 9e 15 call $159e ; get 1 byte -1620: c4 ad mov $ad,a -1622: f8 5d mov x,$5d -1624: f5 68 05 mov a,$0568+x -1627: 3f 28 15 call $1528 -162a: d5 68 05 mov $0568+x,a -162d: 5f 97 15 jmp $1597 - -; pattern command 12 - set channel gain (absolute) -1630: 3f 9e 15 call $159e ; get 1 byte -1633: f8 5d mov x,$5d -1635: d5 68 05 mov $0568+x,a -1638: 5f 97 15 jmp $1597 - -; pattern command 0c -163b: e8 ff mov a,#$ff -163d: f8 5d mov x,$5d -163f: d5 90 05 mov $0590+x,a -1642: 5f 97 15 jmp $1597 - -; pattern command 0e - (2 bytes) -1645: 3f 9e 15 call $159e ; get 1 byte -1648: eb 5e mov y,$5e -164a: d6 ce 00 mov $00ce+y,a -164d: 3f a0 15 call $15a0 ; get another byte -1650: d6 cf 00 mov $00cf+y,a -1653: e8 00 mov a,#$00 -1655: f8 5d mov x,$5d -1657: d5 90 05 mov $0590+x,a -165a: 5f 97 15 jmp $1597 - -; get the next byte and its corresponding phrase pointer -165d: 6d push y -165e: 3f 9e 15 call $159e -1661: ee pop y -1662: 3f bb 0d call $0dbb -1665: f8 5e mov x,$5e -1667: d4 8b mov $8b+x,a -1669: dd mov a,y -166a: d4 8c mov $8c+x,a -166c: f8 5d mov x,$5d -166e: 6f ret - -; pattern command table (00-17) -166f: dw $15a9 ; 00 - end of pattern -1671: dw $15de ; 02 - play melody -1673: dw $15ea ; 04 -1675: dw $15f6 ; 06 - set channel tuning -1677: dw $1607 ; 08 - set instrument -1679: dw $1612 ; 0a - set pitch envelope -167b: dw $163b ; 0c -167d: dw $1645 ; 0e - (2 bytes) -167f: dw $161d ; 10 - set channel gain (relative)? -1681: dw $1630 ; 12 - set channel gain (absolute) -1683: dw $15b2 ; 14 -1685: dw $15a9 ; 16 - end of pattern (same as 00) - -; melody command 00 - end of melody -1687: 3f 8e 16 call $168e -168a: 5d mov x,a -168b: 1f fe 16 jmp ($16fe+x) - -168e: f8 5e mov x,$5e -1690: e7 6b mov a,($6b+x) -1692: bb 6b inc $6b+x -1694: d0 02 bne $1698 -1696: bb 6c inc $6c+x -1698: 6f ret - -; melody command 02 - go to loop -1699: f8 5d mov x,$5d -169b: e8 00 mov a,#$00 -169d: d4 61 mov $61+x,a -169f: 8b 5c dec $5c -16a1: 5f 2d 13 jmp $132d - -; melody command 04 -16a4: f8 5e mov x,$5e -16a6: f5 50 05 mov a,$0550+x -16a9: d4 6b mov $6b+x,a -16ab: f5 51 05 mov a,$0551+x -16ae: d4 6c mov $6c+x,a -16b0: 5f 87 16 jmp $1687 - -; melody command 06 - toggle channel mute -16b3: 3f 8e 16 call $168e -16b6: f8 5d mov x,$5d -16b8: d5 60 05 mov $0560+x,a -16bb: 5f 87 16 jmp $1687 - -; melody command 08 - play phrase -16be: 3f 8e 16 call $168e -16c1: eb 5e mov y,$5e -16c3: d6 ae 00 mov $00ae+y,a -16c6: 3f 90 16 call $1690 -16c9: d6 af 00 mov $00af+y,a -16cc: 5f 87 16 jmp $1687 - -; melody command 0a - set channel number -16cf: 3f 8e 16 call $168e -16d2: 8d 16 mov y,#$16 -16d4: 3f bb 0d call $0dbb -16d7: f8 5e mov x,$5e -16d9: d4 7b mov $7b+x,a -16db: dd mov a,y -16dc: d4 7c mov $7c+x,a -16de: f8 5d mov x,$5d -16e0: e8 0a mov a,#$0a -16e2: d4 61 mov $61+x,a -16e4: 5f 97 15 jmp $1597 - -; melody command 0c -16e7: 3f 8e 16 call $168e -16ea: f8 5d mov x,$5d -16ec: d5 98 05 mov $0598+x,a -16ef: 68 ff cmp a,#$ff -16f1: d0 08 bne $16fb -16f3: 3f 8e 16 call $168e -16f6: f8 5d mov x,$5d -16f8: d5 a0 05 mov $05a0+x,a -16fb: 5f 87 16 jmp $1687 - -; melody command table (00-0c) -16fc: dw $1687 ; 00 - end of melody -16fe: dw $1699 ; 02 - go to loop -1700: dw $16a4 ; 04 -1702: dw $16b3 ; 06 - toggle channel mute -1704: dw $16be ; 08 - play phrase -1706: dw $16cf ; 0a - set channel number -1708: dw $16e7 ; 0c - -170a: 8d 93 mov y,#$93 -170c: f9 5a mov x,$5a+y -170e: f6 b7 05 mov a,$05b7+y -1711: d6 5a 00 mov $005a+y,a -1714: 7d mov a,x -1715: d6 b7 05 mov $05b7+y,a -1718: fe f2 dbnz y,$170c -171a: 8d 69 mov y,#$69 -171c: f6 4e 05 mov a,$054e+y -171f: 5d mov x,a -1720: f6 4a 06 mov a,$064a+y -1723: d6 4e 05 mov $054e+y,a -1726: 7d mov a,x -1727: d6 4a 06 mov $064a+y,a -172a: fe f0 dbnz y,$171c -172c: 6f ret - -172d: 3f 36 17 call $1736 -1730: e8 01 mov a,#$01 -1732: c5 4f 05 mov $054f,a -1735: 6f ret - -1736: 2d push a ; start song -1737: 3f 0a 17 call $170a ; stop the current song -173a: ae pop a -173b: 8d 1a mov y,#$1a ; find the start of the song struct -173d: 3f bb 0d call $0dbb -1740: da 69 movw $69,ya -1742: 8d 00 mov y,#$00 ; get number of channels -1744: f7 69 mov a,($69)+y -1746: c4 5b mov $5b,a ; save number of channels in total and current -1748: c4 5c mov $5c,a -174a: f0 4b beq $1797 ; if 0, then return -174c: 8f 00 5d mov $5d,#$00 -174f: 8f 00 5e mov $5e,#$00 -1752: fc inc y -1753: f7 69 mov a,($69)+y -1755: 6d push y -1756: 8d 18 mov y,#$18 -1758: 3f bb 0d call $0dbb -175b: f8 5e mov x,$5e -175d: d5 50 05 mov $0550+x,a -1760: d4 6b mov $6b+x,a -1762: dd mov a,y -1763: ee pop y -1764: d5 51 05 mov $0551+x,a -1767: d4 6c mov $6c+x,a -1769: e8 00 mov a,#$00 -176b: d4 ae mov $ae+x,a -176d: d4 af mov $af+x,a -176f: d4 be mov $be+x,a -1771: d4 bf mov $bf+x,a -1773: f8 5d mov x,$5d -1775: e8 0c mov a,#$0c -1777: d4 61 mov $61+x,a -1779: e8 ff mov a,#$ff -177b: d5 90 05 mov $0590+x,a -177e: d5 a8 05 mov $05a8+x,a -1781: e8 00 mov a,#$00 -1783: d5 68 05 mov $0568+x,a -1786: d5 70 05 mov $0570+x,a -1789: d5 88 05 mov $0588+x,a -178c: ab 5e inc $5e -178e: ab 5e inc $5e -1790: 3d inc x -1791: d8 5d mov $5d,x -1793: 3e 5b cmp x,$5b -1795: 90 bb bcc $1752 -1797: 6f ret - -1798: dw $132d -179a: dw $1336 -179c: dw $1336 -179e: dw $1363 -17a0: dw $1559 -17a2: dw $1597 -17a4: dw $1687 -17a6: dw $0b5d -17a8: dw $0bd6 -17aa: dw $173b -17ac: dw $1736 -17ae: dw $172d -17b0: dw $170a -17b2: dw $0792 -17b4: dw $0b7d -17b6: dw $0b79 -17b8: dw $0b73 -17ba: dw $0b70 -17bc: dw $0b6a -17be: dw $0b8c -17c0: dw $0b97 From 870dba5ba75bd4d538423a6803d9ab321068cd04 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:49:14 -0700 Subject: [PATCH 013/116] Delete Sculptured Software/Mortal Kombat 3.s --- Sculptured Software/Mortal Kombat 3.s | 2646 ------------------------- 1 file changed, 2646 deletions(-) delete mode 100644 Sculptured Software/Mortal Kombat 3.s diff --git a/Sculptured Software/Mortal Kombat 3.s b/Sculptured Software/Mortal Kombat 3.s deleted file mode 100644 index 94255cbf..00000000 --- a/Sculptured Software/Mortal Kombat 3.s +++ /dev/null @@ -1,2646 +0,0 @@ -0700: 20 clrp -0701: cd ff mov x,#$ff ; set stack pointer -0703: bd mov sp,x -0704: 8f a0 fa mov $fa,#$a0 ; stop all timers -0707: 8f a0 fb mov $fb,#$a0 -070a: 8f 20 fc mov $fc,#$20 -070d: 8f 87 f1 mov $f1,#$87 ; clear COM ports -0710: 3f 9f 10 call $109f ; initialize all sound -0713: 8f 00 24 mov $24,#$00 -0716: 8f 1f 25 mov $25,#$1f ; install permanent pointer to the wave source dir -0719: 8f 01 f6 mov $f6,#$01 -071c: 62 08 set3 $08 -071e: 3f f3 0b call $0bf3 -0721: 3f 63 0b call $0b63 -0724: 33 07 f7 bbc1 $07,$071e -0727: 8d 10 mov y,#$10 -0729: 3f 4a 07 call $074a -072c: 83 07 12 bbs4 $07,$0741 -072f: e4 fe mov a,$fe -0731: f0 0e beq $0741 -0733: e4 cd mov a,$cd -0735: f0 07 beq $073e -0737: 60 clrc -0738: 84 ce adc a,$ce -073a: c4 ce mov $ce,a -073c: 90 03 bcc $0741 -073e: 3f f0 16 call $16f0 -0741: e4 fd mov a,$fd -0743: f0 d9 beq $071e -0745: 3f 30 08 call $0830 -0748: 2f d4 bra $071e -074a: e4 ff mov a,$ff -074c: d0 03 bne $0751 -074e: e8 01 mov a,#$01 -0750: 6f ret - -0751: cb 3b mov $3b,y -0753: 8f 00 3a mov $3a,#$00 -0756: cd 14 mov x,#$14 -0758: e4 f6 mov a,$f6 -075a: f0 03 beq $075f -075c: 3f f3 0b call $0bf3 -075f: eb 3b mov y,$3b -0761: f5 ff 07 mov a,$07ff+x -0764: c4 f2 mov $f2,a -0766: f5 28 02 mov a,$0228+x -0769: fa f3 3c mov ($3c),($f3) -076c: 64 3c cmp a,$3c -076e: f0 0f beq $077f -0770: b0 09 bcs $077b -0772: 8b 3c dec $3c -0774: dc dec y -0775: d0 f5 bne $076c -0777: ab 3a inc $3a -0779: 2f 04 bra $077f -077b: ab 3c inc $3c -077d: 2f f5 bra $0774 -077f: fa 3c f3 mov ($f3),($3c) -0782: 1d dec x -0783: 10 d3 bpl $0758 -0785: e4 3a mov a,$3a -0787: 6f ret - -0788: e2 08 set7 $08 -078a: 2f 02 bra $078e -078c: f2 08 clr7 $08 -078e: 72 08 clr3 $08 -0790: 8d 80 mov y,#$80 -0792: 3f 52 0d call $0d52 -0795: 3f ed 10 call $10ed -0798: 8f 6c f2 mov $f2,#$6c -079b: 8f 3f f3 mov $f3,#$3f -079e: e3 08 0f bbs7 $08,$07b0 -07a1: cd 00 mov x,#$00 -07a3: f5 80 fe mov a,$fe80+x -07a6: af mov (x)+,a -07a7: c8 61 cmp x,#$61 -07a9: 90 f8 bcc $07a3 -07ab: 5f 00 00 jmp $0000 - -07ae: 4f c0 pcall $c0 -07b0: 5f 00 07 jmp $0700 - -; gain tables -07b3: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 -07c9: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 - -; DSP registers: VxENVX -07df: db $08,$18,$28,$38,$48,$58,$68,$78 -; DSP registers: VxGAIN -07e7: db $07,$17,$27,$37,$47,$57,$67,$77 -; DSP registers: VxSCRN (select sample) -07ef: db $04,$14,$24,$34,$44,$54,$64,$74 -; DSP registers: VxPITCHL -07f7: db $02,$12,$22,$32,$42,$52,$62,$72 -; DSP registers: VxVOLL -07ff: db $00,$10,$20,$30,$40,$50,$60,$70,$01,$11,$21,$31,$41,$51,$61,$71,$2c,$3c,$0d,$0c,$1c - -; voice numbers and bits for clearing those void bits -0814: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f - -; echo poke registers -0824: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f - -0830: 3f f3 0b call $0bf3 ; que command -0833: 8f 00 49 mov $49,#$00 ; reset sample flags -0836: 8f 00 5b mov $5b,#$00 -0839: 8f 7c f2 mov $f2,#$7c -083c: e4 f3 mov a,$f3 -083e: 24 5e and a,$5e -0840: c4 58 mov $58,a -0842: 8f 00 f3 mov $f3,#$00 -0845: cd 07 mov x,#$07 ; find out all channels changing waves -0847: 3f f3 0b call $0bf3 ; (to restart them, starting with 7) -084a: d8 28 mov $28,x -084c: 7d mov a,x -084d: 60 clrc -084e: 88 10 adc a,#$10 -0850: c4 2d mov $2d,a -0852: f5 14 08 mov a,$0814+x -0855: c4 4a mov $4a,a -0857: 48 ff eor a,#$ff -0859: c4 4b mov $4b,a -085b: f4 67 mov a,$67+x -085d: c4 4d mov $4d,a -085f: a2 08 set5 $08 -0861: 23 4d 06 bbs1 $4d,$086a -0864: f5 ec fc mov a,$fcec+x -0867: 5f 78 08 jmp $0878 - -086a: eb 2d mov y,$2d -086c: f6 e3 04 mov a,$04e3+y -086f: d0 02 bne $0873 -0871: b2 08 clr5 $08 -0873: 3f 7c 12 call $127c -0876: f8 28 mov x,$28 -0878: 75 f4 fc cmp a,$fcf4+x -087b: d0 0d bne $088a -087d: 3f 3a 14 call $143a -0880: e4 63 mov a,$63 -0882: 24 5c and a,$5c -0884: 24 4a and a,$4a -0886: d0 43 bne $08cb -0888: 2f 44 bra $08ce -088a: d5 f4 fc mov $fcf4+x,a -088d: 09 4a 49 or ($49),($4a) -0890: 3f 3a 14 call $143a -0893: 7d mov a,x -0894: 1c asl a -0895: 5d mov x,a -0896: e5 04 01 mov a,$0104 -0899: d5 4b 01 mov $014b+x,a -089c: e5 05 01 mov a,$0105 -089f: d5 4c 01 mov $014c+x,a -08a2: f8 28 mov x,$28 -08a4: e4 64 mov a,$64 -08a6: 28 20 and a,#$20 -08a8: f0 05 beq $08af -08aa: 29 4b 59 and ($59),($4b) -08ad: 2f 03 bra $08b2 -08af: 09 4a 59 or ($59),($4a) -08b2: b3 08 0b bbc5 $08,$08c0 -08b5: e4 64 mov a,$64 -08b7: 28 40 and a,#$40 -08b9: f0 05 beq $08c0 -08bb: 09 4a 63 or ($63),($4a) -08be: 2f 03 bra $08c3 -08c0: 29 4b 63 and ($63),($4b) -08c3: e4 63 mov a,$63 -08c5: 04 5c or a,$5c -08c7: 24 4a and a,$4a -08c9: f0 03 beq $08ce -08cb: 09 4a 5b or ($5b),($4a) -08ce: 1d dec x -08cf: 30 03 bmi $08d4 -08d1: 5f 47 08 jmp $0847 - -08d4: e4 5c mov a,$5c -08d6: 24 59 and a,$59 -08d8: 04 5a or a,$5a -08da: c4 5a mov $5a,a -08dc: 24 5a and a,$5a -08de: 04 5b or a,$5b -08e0: c4 5d mov $5d,a -08e2: 8f 5c f2 mov $f2,#$5c -08e5: c4 f3 mov $f3,a -08e7: cd 07 mov x,#$07 -08e9: 3f f3 0b call $0bf3 -08ec: d8 28 mov $28,x -08ee: f5 14 08 mov a,$0814+x -08f1: c4 4a mov $4a,a -08f3: 7d mov a,x -08f4: 60 clrc -08f5: 88 18 adc a,#$18 -08f7: c4 2d mov $2d,a -08f9: e5 a2 03 mov a,$03a2 -08fc: d0 12 bne $0910 -08fe: f4 67 mov a,$67+x -0900: c4 4d mov $4d,a -0902: 63 4d 06 bbs3 $4d,$090b -0905: f5 e4 fc mov a,$fce4+x -0908: 5f 10 09 jmp $0910 - -090b: 3f 7c 12 call $127c -090e: f8 28 mov x,$28 -0910: 60 clrc -0911: 95 9a 03 adc a,$039a+x -0914: 30 06 bmi $091c -0916: 70 04 bvs $091c -0918: 68 65 cmp a,#$65 -091a: 30 0b bmi $0927 -091c: f5 9a 03 mov a,$039a+x -091f: 30 04 bmi $0925 -0921: e8 64 mov a,#$64 -0923: 2f 02 bra $0927 -0925: e8 00 mov a,#$00 -0927: fd mov y,a -0928: f5 43 01 mov a,$0143+x -092b: c4 3c mov $3c,a -092d: cf mul ya -092e: cd 64 mov x,#$64 -0930: 9e div ya,x -0931: f8 28 mov x,$28 -0933: 73 4d 14 bbc3 $4d,$094a -0936: c4 3a mov $3a,a -0938: 6d push y -0939: eb 2d mov y,$2d -093b: f6 c3 03 mov a,$03c3+y -093e: ee pop y -093f: d0 04 bne $0945 -0941: e4 3a mov a,$3a -0943: 2f 05 bra $094a -0945: e4 3c mov a,$3c -0947: 80 setc -0948: a4 3a sbc a,$3a -094a: c4 3a mov $3a,a -094c: d5 28 02 mov $0228+x,a -094f: e4 3c mov a,$3c -0951: 80 setc -0952: a4 3a sbc a,$3a -0954: d5 30 02 mov $0230+x,a -0957: 1d dec x -0958: 30 03 bmi $095d -095a: 5f e9 08 jmp $08e9 - -095d: cd 07 mov x,#$07 ; process pitch envelopes (start with ch 7) -095f: 3f f3 0b call $0bf3 -0962: d8 28 mov $28,x -0964: 7d mov a,x -0965: 60 clrc -0966: 88 08 adc a,#$08 -0968: c4 2d mov $2d,a -096a: f4 67 mov a,$67+x -096c: c4 4d mov $4d,a -096e: 7d mov a,x -096f: 1c asl a -0970: 5d mov x,a -0971: f5 d5 fc mov a,$fcd5+x -0974: c4 48 mov $48,a -0976: f5 d4 fc mov a,$fcd4+x -0979: c4 47 mov $47,a -097b: 53 4d 15 bbc2 $4d,$0993 -097e: 4d push x -097f: 42 08 set2 $08 -0981: 3f 7c 12 call $127c -0984: 52 08 clr2 $08 -0986: ce pop x -0987: 7a 47 addw ya,$47 -0989: 80 setc -098a: a8 b0 sbc a,#$b0 -098c: c4 47 mov $47,a -098e: dd mov a,y -098f: a8 04 sbc a,#$04 -0991: c4 48 mov $48,a -0993: f5 4c 01 mov a,$014c+x -0996: fd mov y,a -0997: f5 4b 01 mov a,$014b+x -099a: 7a 47 addw ya,$47 -099c: da 3a movw $3a,ya -099e: fb db mov y,$db+x -09a0: f4 da mov a,$da+x -09a2: 7a 3a addw ya,$3a -09a4: c3 4d 03 bbs6 $4d,$09aa -09a7: 3f bc 14 call $14bc ; translate note to frequency -09aa: da 3a movw $3a,ya ; add in hardware tuning -09ac: e4 28 mov a,$28 ; word addressing -09ae: 1c asl a -09af: 5d mov x,a -09b0: f5 5c 01 mov a,$015c+x -09b3: fd mov y,a -09b4: f5 5b 01 mov a,$015b+x -09b7: 7a 3a addw ya,$3a -09b9: f8 28 mov x,$28 -09bb: d5 33 01 mov $0133+x,a -09be: dd mov a,y -09bf: d5 3b 01 mov $013b+x,a -09c2: 1d dec x -09c3: 10 9a bpl $095f -09c5: 8f 5c f2 mov $f2,#$5c -09c8: 8f 00 f3 mov $f3,#$00 -09cb: cd 07 mov x,#$07 -09cd: 3f f3 0b call $0bf3 -09d0: d8 28 mov $28,x -09d2: 7d mov a,x -09d3: 60 clrc -09d4: 88 00 adc a,#$00 -09d6: c4 2d mov $2d,a -09d8: f5 14 08 mov a,$0814+x -09db: c4 4a mov $4a,a -09dd: 48 ff eor a,#$ff -09df: c4 4b mov $4b,a -09e1: f4 67 mov a,$67+x -09e3: c4 4d mov $4d,a -09e5: 03 4d 07 bbs0 $4d,$09ef -09e8: f5 23 01 mov a,$0123+x -09eb: fd mov y,a -09ec: 5f fc 09 jmp $09fc - -09ef: 3f 7c 12 call $127c -09f2: fd mov y,a -09f3: f8 28 mov x,$28 -09f5: b3 07 04 bbc5 $07,$09fc -09f8: e8 00 mov a,#$00 -09fa: d4 6f mov $6f+x,a -09fc: e8 80 mov a,#$80 -09fe: de 6f 04 cbne $6f+x,$0a05 -0a01: e4 60 mov a,$60 -0a03: 2f 02 bra $0a07 -0a05: e4 5f mov a,$5f -0a07: cf mul ya -0a08: f5 92 03 mov a,$0392+x -0a0b: cf mul ya -0a0c: dd mov a,y -0a0d: d5 2b 01 mov $012b+x,a -0a10: 8f c0 39 mov $39,#$c0 -0a13: f5 df 07 mov a,$07df+x -0a16: c4 f2 mov $f2,a -0a18: dd mov a,y -0a19: 80 setc -0a1a: a4 f3 sbc a,$f3 -0a1c: b0 06 bcs $0a24 -0a1e: 8f 80 39 mov $39,#$80 -0a21: 48 ff eor a,#$ff -0a23: bc inc a -0a24: c4 3e mov $3e,a -0a26: e4 4a mov a,$4a -0a28: 24 57 and a,$57 -0a2a: d0 06 bne $0a32 -0a2c: e4 56 mov a,$56 -0a2e: 24 4a and a,$4a -0a30: d0 23 bne $0a55 -0a32: e4 3e mov a,$3e -0a34: 5c lsr a -0a35: d0 08 bne $0a3f -0a37: ad 00 cmp y,#$00 -0a39: d0 04 bne $0a3f -0a3b: e8 82 mov a,#$82 -0a3d: 2f 0e bra $0a4d -0a3f: 8d 15 mov y,#$15 -0a41: 76 b3 07 cmp a,$07b3+y -0a44: 90 02 bcc $0a48 -0a46: fe f9 dbnz y,$0a41 -0a48: f6 c9 07 mov a,$07c9+y -0a4b: 04 39 or a,$39 -0a4d: 75 cc fc cmp a,$fccc+x -0a50: f0 41 beq $0a93 -0a52: fd mov y,a -0a53: 2f 17 bra $0a6c -0a55: 8f 00 39 mov $39,#$00 -0a58: e4 3e mov a,$3e -0a5a: 68 60 cmp a,#$60 -0a5c: 90 0e bcc $0a6c -0a5e: ad 60 cmp y,#$60 -0a60: 90 04 bcc $0a66 -0a62: 8d df mov y,#$df -0a64: 2f 06 bra $0a6c -0a66: ad 20 cmp y,#$20 -0a68: b0 02 bcs $0a6c -0a6a: 8d 9e mov y,#$9e -0a6c: 29 4b 56 and ($56),($4b) -0a6f: f5 ff 07 mov a,$07ff+x -0a72: c4 f2 mov $f2,a -0a74: f5 28 02 mov a,$0228+x -0a77: 2d push a -0a78: e4 4a mov a,$4a -0a7a: 24 57 and a,$57 -0a7c: ae pop a -0a7d: d0 09 bne $0a88 -0a7f: c4 f3 mov $f3,a -0a81: ab f2 inc $f2 -0a83: f5 30 02 mov a,$0230+x -0a86: c4 f3 mov $f3,a -0a88: f5 e7 07 mov a,$07e7+x -0a8b: c4 f2 mov $f2,a -0a8d: cb f3 mov $f3,y -0a8f: dd mov a,y -0a90: d5 cc fc mov $fccc+x,a -0a93: f5 f7 07 mov a,$07f7+x -0a96: c4 f2 mov $f2,a -0a98: fd mov y,a -0a99: f5 33 01 mov a,$0133+x -0a9c: c4 f3 mov $f3,a -0a9e: fc inc y -0a9f: cb f2 mov $f2,y -0aa1: f5 3b 01 mov a,$013b+x -0aa4: c4 f3 mov $f3,a -0aa6: 1d dec x -0aa7: 30 03 bmi $0aac -0aa9: 5f cd 09 jmp $09cd - -0aac: 8f 4c f2 mov $f2,#$4c -0aaf: fa 5d f3 mov ($f3),($5d) -0ab2: e4 5d mov a,$5d -0ab4: 48 ff eor a,#$ff -0ab6: c4 5e mov $5e,a -0ab8: 29 5e 58 and ($58),($5e) -0abb: 29 5e 5a and ($5a),($5e) -0abe: 8f 00 5c mov $5c,#$00 -0ac1: 3f f3 0b call $0bf3 -0ac4: 8d 07 mov y,#$07 -0ac6: cd 0e mov x,#$0e -0ac8: 3f f3 0b call $0bf3 -0acb: f6 6f 00 mov a,$006f+y -0ace: f0 31 beq $0b01 -0ad0: f6 67 00 mov a,$0067+y -0ad3: c4 4d mov $4d,a -0ad5: f3 4d 07 bbc7 $4d,$0adf -0ad8: f6 14 08 mov a,$0814+y -0adb: 24 58 and a,$58 -0add: d0 1d bne $0afc -0adf: f6 6f 00 mov a,$006f+y -0ae2: 68 80 cmp a,#$80 -0ae4: d0 1b bne $0b01 -0ae6: f6 46 02 mov a,$0246+y -0ae9: 28 02 and a,#$02 -0aeb: d0 14 bne $0b01 -0aed: 9b 78 dec $78+x -0aef: f4 78 mov a,$78+x -0af1: 2e 05 02 cbne $05,$0af6 -0af4: 9b 79 dec $79+x -0af6: f4 78 mov a,$78+x -0af8: 14 79 or a,$79+x -0afa: d0 05 bne $0b01 -0afc: e8 00 mov a,#$00 -0afe: d6 6f 00 mov $006f+y,a -0b01: 1d dec x -0b02: 1d dec x -0b03: dc dec y -0b04: 10 c2 bpl $0ac8 -0b06: 3f f3 0b call $0bf3 -0b09: ec 43 02 mov y,$0243 -0b0c: f0 54 beq $0b62 -0b0e: 6e cf 51 dbnz $cf,$0b62 -0b11: cb cf mov $cf,y -0b13: e5 3b 02 mov a,$023b -0b16: f8 d0 mov x,$d0 -0b18: 30 0d bmi $0b27 -0b1a: 60 clrc -0b1b: 84 d1 adc a,$d1 -0b1d: b0 04 bcs $0b23 -0b1f: 68 7f cmp a,#$7f -0b21: 90 12 bcc $0b35 -0b23: e8 7f mov a,#$7f -0b25: 2f 09 bra $0b30 -0b27: 80 setc -0b28: a4 d1 sbc a,$d1 -0b2a: f0 04 beq $0b30 -0b2c: b0 07 bcs $0b35 -0b2e: e8 00 mov a,#$00 -0b30: 8d 00 mov y,#$00 -0b32: cc 43 02 mov $0243,y -0b35: 5d mov x,a -0b36: 65 44 02 cmp a,$0244 -0b39: 90 03 bcc $0b3e -0b3b: e5 44 02 mov a,$0244 -0b3e: c5 38 02 mov $0238,a -0b41: 7d mov a,x -0b42: c5 3b 02 mov $023b,a -0b45: c5 3c 02 mov $023c,a -0b48: 65 45 02 cmp a,$0245 -0b4b: 90 03 bcc $0b50 -0b4d: e5 45 02 mov a,$0245 -0b50: c5 39 02 mov $0239,a -0b53: e5 43 02 mov a,$0243 -0b56: d0 0a bne $0b62 -0b58: aa 07 40 mov1 c,$0007,2 -0b5b: 90 05 bcc $0b62 -0b5d: 8d 80 mov y,#$80 -0b5f: 5f 52 0d jmp $0d52 - -0b62: 6f ret - -0b63: 32 08 clr1 $08 -0b65: e4 ea mov a,$ea -0b67: f0 3a beq $0ba3 -0b69: 9c dec a -0b6a: c4 ea mov $ea,a -0b6c: f8 ec mov x,$ec -0b6e: f5 87 10 mov a,$1087+x -0b71: 28 fe and a,#$fe -0b73: c4 30 mov $30,a -0b75: c4 f7 mov $f7,a -0b77: f5 04 fd mov a,$fd04+x -0b7a: c4 31 mov $31,a -0b7c: c4 f4 mov $f4,a -0b7e: f5 1c fd mov a,$fd1c+x -0b81: c4 f5 mov $f5,a -0b83: c4 32 mov $32,a -0b85: 3d inc x -0b86: c8 18 cmp x,#$18 -0b88: d0 02 bne $0b8c -0b8a: cd 00 mov x,#$00 -0b8c: d8 ec mov $ec,x -0b8e: e4 30 mov a,$30 -0b90: 5d mov x,a -0b91: 28 fe and a,#$fe -0b93: c8 4d cmp x,#$4d -0b95: b0 0c bcs $0ba3 -0b97: e4 31 mov a,$31 -0b99: eb 32 mov y,$32 -0b9b: 3f a4 0b call $0ba4 -0b9e: 3f f3 0b call $0bf3 -0ba1: 2f c0 bra $0b63 -0ba3: 6f ret - -0ba4: 1f 00 1e jmp ($1e00+x) - -0ba7: 79 cmp (x),(y) -0ba8: 0c 40 0c asl $0c40 -0bab: 40 setp -0bac: 0c 40 0c asl $0c40 -0baf: 40 setp -0bb0: 0c 3b 0c asl $0c3b -0bb3: 8c 07 40 dec $4007 -0bb6: 0c 40 0c asl $0c40 -0bb9: 40 setp -0bba: 0c 40 0c asl $0c40 -0bbd: 40 setp -0bbe: 0c 40 0c asl $0c40 -0bc1: 40 setp -0bc2: 0c 4e 1e asl $1e4e -0bc5: 40 setp -0bc6: 0c 8a 0c asl $0c8a -0bc9: 40 setp -0bca: 0c 40 0c asl $0c40 -0bcd: 40 setp -0bce: 0c 40 0c asl $0c40 -0bd1: 40 setp -0bd2: 0c 40 0c asl $0c40 -0bd5: 40 setp -0bd6: 0c 40 0c asl $0c40 -0bd9: 40 setp -0bda: 0c 40 0c asl $0c40 -0bdd: 40 setp -0bde: 0c 40 0c asl $0c40 -0be1: 40 setp -0be2: 0c 40 0c asl $0c40 -0be5: 40 setp -0be6: 0c 40 0c asl $0c40 -0be9: 40 setp -0bea: 0c 40 0c asl $0c40 -0bed: 88 07 adc a,#$07 -0bef: 40 setp -0bf0: 0c 58 1e asl $1e58 -0bf3: 73 08 0c bbc3 $08,$0c02 -0bf6: 2d push a -0bf7: 32 09 clr1 $09 -0bf9: e4 f6 mov a,$f6 -0bfb: 2e f6 fb cbne $f6,$0bf9 -0bfe: 2e 03 02 cbne $03,$0c03 -0c01: ae pop a -0c02: 6f ret - -0c03: 2e ed 02 cbne $ed,$0c08 -0c06: ae pop a -0c07: 6f ret - -0c08: 22 09 set1 $09 -0c0a: fa ed ee mov ($ee),($ed) -0c0d: c4 ed mov $ed,a -0c0f: fa f4 f4 mov ($f4),($f4) -0c12: fa f5 f5 mov ($f5),($f5) -0c15: fa f7 f7 mov ($f7),($f7) -0c18: e4 f7 mov a,$f7 -0c1a: f0 e5 beq $0c01 -0c1c: 6d push y -0c1d: 4d push x -0c1e: 5d mov x,a -0c1f: c4 30 mov $30,a -0c21: 68 4d cmp a,#$4d -0c23: b0 0c bcs $0c31 -0c25: ba f4 movw ya,$f4 -0c27: da 31 movw $31,ya -0c29: 69 f6 ed cmp ($ed),($f6) -0c2c: d0 03 bne $0c31 -0c2e: 3f 38 0c call $0c38 -0c31: ce pop x -0c32: ee pop y -0c33: ae pop a -0c34: 23 09 bc bbs1 $09,$0bf3 -0c37: 6f ret - -0c38: 1f a5 0b jmp ($0ba5+x) - -0c3b: 6f ret - -0c3c: d8 31 mov $31,x -0c3e: 2f 0b bra $0c4b -0c40: 23 08 08 bbs1 $08,$0c4b -0c43: e4 f6 mov a,$f6 -0c45: 8f b7 f1 mov $f1,#$b7 -0c48: c4 f6 mov $f6,a -0c4a: 7d mov a,x -0c4b: 23 08 25 bbs1 $08,$0c73 -0c4e: f8 eb mov x,$eb -0c50: d5 87 10 mov $1087+x,a -0c53: e4 31 mov a,$31 -0c55: d5 04 fd mov $fd04+x,a -0c58: dd mov a,y -0c59: d5 1c fd mov $fd1c+x,a -0c5c: 3d inc x -0c5d: c8 18 cmp x,#$18 -0c5f: d0 02 bne $0c63 -0c61: cd 00 mov x,#$00 -0c63: d8 eb mov $eb,x -0c65: e4 ea mov a,$ea -0c67: bc inc a -0c68: c4 ea mov $ea,a -0c6a: 68 18 cmp a,#$18 -0c6c: d0 0a bne $0c78 -0c6e: 22 08 set1 $08 -0c70: 32 09 clr1 $09 -0c72: 6f ret - -0c73: fa ee ed mov ($ed),($ee) -0c76: 32 09 clr1 $09 -0c78: 6f ret - -0c79: e4 f6 mov a,$f6 -0c7b: 8f b7 f1 mov $f1,#$b7 -0c7e: 2d push a -0c7f: 72 08 clr3 $08 -0c81: 3f e2 0c call $0ce2 -0c84: 62 08 set3 $08 -0c86: ae pop a -0c87: c4 f6 mov $f6,a -0c89: 6f ret - -0c8a: 8d 00 mov y,#$00 -0c8c: e8 01 mov a,#$01 -0c8e: da 1a movw $1a,ya -0c90: e4 f6 mov a,$f6 -0c92: 2e f6 fb cbne $f6,$0c90 -0c95: 5d mov x,a -0c96: ba f4 movw ya,$f4 -0c98: ad 00 cmp y,#$00 -0c9a: f0 3e beq $0cda -0c9c: 8f b7 f1 mov $f1,#$b7 -0c9f: d8 f6 mov $f6,x -0ca1: c5 c5 0c mov $0cc5,a -0ca4: cc c6 0c mov $0cc6,y -0ca7: 7a 1a addw ya,$1a -0ca9: c5 cc 0c mov $0ccc,a -0cac: cc cd 0c mov $0ccd,y -0caf: 7a 1a addw ya,$1a -0cb1: c5 d3 0c mov $0cd3,a -0cb4: cc d4 0c mov $0cd4,y -0cb7: cd 00 mov x,#$00 -0cb9: e4 f6 mov a,$f6 -0cbb: 2e f6 fb cbne $f6,$0cb9 -0cbe: d0 02 bne $0cc2 -0cc0: 2f f7 bra $0cb9 -0cc2: e4 f4 mov a,$f4 -0cc4: d5 36 ba mov $ba36+x,a -0cc7: ba f5 movw ya,$f5 -0cc9: 30 c5 bmi $0c90 -0ccb: d5 37 ba mov $ba37+x,a -0cce: e4 f7 mov a,$f7 -0cd0: cb f6 mov $f6,y -0cd2: d5 38 ba mov $ba38+x,a -0cd5: 3d inc x -0cd6: 3d inc x -0cd7: 3d inc x -0cd8: 2f e8 bra $0cc2 -0cda: 8f b7 f1 mov $f1,#$b7 -0cdd: d8 ed mov $ed,x -0cdf: d8 f6 mov $f6,x -0ce1: 6f ret - -0ce2: 3f 12 11 call $1112 -0ce5: 3f 08 11 call $1108 -0ce8: 22 07 set1 $07 -0cea: 6f ret - -0ceb: c5 a2 03 mov $03a2,a -0cee: 6f ret - -0cef: e8 00 mov a,#$00 -0cf1: c5 43 02 mov $0243,a -0cf4: 6f ret - -0cf5: cd 01 mov x,#$01 -0cf7: 52 07 clr2 $07 -0cf9: 2f 02 bra $0cfd -0cfb: cd ff mov x,#$ff -0cfd: c5 43 02 mov $0243,a -0d00: c4 cf mov $cf,a -0d02: cb d1 mov $d1,y -0d04: d8 d0 mov $d0,x -0d06: 6f ret - -0d07: 2d push a -0d08: dd mov a,y -0d09: 28 7f and a,#$7f -0d0b: c5 3e 02 mov $023e,a -0d0e: ae pop a -0d0f: 92 08 clr4 $08 -0d11: 2f 05 bra $0d18 -0d13: cc 40 02 mov $0240,y -0d16: 82 08 set4 $08 -0d18: 5f ae 0d jmp $0dae - -0d1b: 3f 93 1c call $1c93 -0d1e: e5 fc 1e mov a,$1efc -0d21: c5 8b 06 mov $068b,a -0d24: e5 fd 1e mov a,$1efd -0d27: c5 8c 06 mov $068c,a -0d2a: 05 8b 06 or a,$068b -0d2d: f0 20 beq $0d4f -0d2f: 3f f0 16 call $16f0 -0d32: e5 8b 06 mov a,$068b -0d35: 80 setc -0d36: a8 01 sbc a,#$01 -0d38: c5 8b 06 mov $068b,a -0d3b: e5 8c 06 mov a,$068c -0d3e: a8 00 sbc a,#$00 -0d40: c5 8c 06 mov $068c,a -0d43: b0 ea bcs $0d2f -0d45: cd 07 mov x,#$07 -0d47: e8 00 mov a,#$00 -0d49: d5 43 01 mov $0143+x,a -0d4c: 1d dec x -0d4d: 10 fa bpl $0d49 -0d4f: 6f ret - -0d50: 8d ff mov y,#$ff -0d52: cd 07 mov x,#$07 -0d54: ad 80 cmp y,#$80 -0d56: f0 04 beq $0d5c -0d58: ad ff cmp y,#$ff -0d5a: d0 08 bne $0d64 -0d5c: 82 07 set4 $07 -0d5e: 8f 00 89 mov $89,#$00 -0d61: 8f ff 0c mov $0c,#$ff -0d64: c4 77 mov $77,a -0d66: ad 80 cmp y,#$80 -0d68: f0 1b beq $0d85 -0d6a: f4 d2 mov a,$d2+x -0d6c: 68 ff cmp a,#$ff -0d6e: f0 30 beq $0da0 -0d70: 68 00 cmp a,#$00 -0d72: 10 06 bpl $0d7a -0d74: ad ff cmp y,#$ff -0d76: f0 0d beq $0d85 -0d78: 2f 26 bra $0da0 -0d7a: ad 00 cmp y,#$00 -0d7c: d0 07 bne $0d85 -0d7e: f5 1b 01 mov a,$011b+x -0d81: 64 77 cmp a,$77 -0d83: d0 1b bne $0da0 -0d85: f5 e7 07 mov a,$07e7+x -0d88: c4 f2 mov $f2,a -0d8a: 8f 9f f3 mov $f3,#$9f -0d8d: f5 ef 07 mov a,$07ef+x -0d90: e8 00 mov a,#$00 -0d92: d5 23 01 mov $0123+x,a -0d95: d4 6f mov $6f+x,a -0d97: d4 67 mov $67+x,a -0d99: f5 14 08 mov a,$0814+x -0d9c: 04 5c or a,$5c -0d9e: c4 5c mov $5c,a -0da0: 1d dec x -0da1: 10 c3 bpl $0d66 -0da3: 6f ret - -0da4: 52 07 clr2 $07 -0da6: 5f fb 0c jmp $0cfb - -0da9: 42 07 set2 $07 -0dab: 5f fb 0c jmp $0cfb - -0dae: 8d 0e mov y,#$0e -0db0: c4 77 mov $77,a -0db2: 3f 63 10 call $1063 -0db5: da 22 movw $22,ya -0db7: 8d 00 mov y,#$00 -0db9: f7 22 mov a,($22)+y -0dbb: c4 52 mov $52,a -0dbd: 3a 22 incw $22 -0dbf: 8d 07 mov y,#$07 -0dc1: f7 22 mov a,($22)+y -0dc3: 24 0c and a,$0c -0dc5: c4 53 mov $53,a -0dc7: 8d 06 mov y,#$06 -0dc9: f7 22 mov a,($22)+y -0dcb: c4 54 mov $54,a -0dcd: 8f 80 55 mov $55,#$80 -0dd0: cd 07 mov x,#$07 -0dd2: 3f 89 0e call $0e89 -0dd5: 10 03 bpl $0dda -0dd7: 5f 5b 0e jmp $0e5b - -0dda: 83 08 07 bbs4 $08,$0de4 -0ddd: e8 02 mov a,#$02 -0ddf: 15 46 02 or a,$0246+x -0de2: 2f 05 bra $0de9 -0de4: e8 fd mov a,#$fd -0de6: 35 46 02 and a,$0246+x -0de9: d5 46 02 mov $0246+x,a -0dec: e8 80 mov a,#$80 -0dee: d4 6f mov $6f+x,a -0df0: e5 3e 02 mov a,$023e -0df3: d4 d2 mov $d2+x,a -0df5: e5 3f 02 mov a,$023f -0df8: d5 92 03 mov $0392+x,a -0dfb: e5 40 02 mov a,$0240 -0dfe: d5 9a 03 mov $039a+x,a -0e01: e5 8e 03 mov a,$038e -0e04: c4 0f mov $0f,a -0e06: e5 90 03 mov a,$0390 -0e09: c4 0e mov $0e,a -0e0b: e5 8f 03 mov a,$038f -0e0e: c4 10 mov $10,a -0e10: e5 91 03 mov a,$0391 -0e13: c4 11 mov $11,a -0e15: 7d mov a,x -0e16: 1c asl a -0e17: fd mov y,a -0e18: e8 00 mov a,#$00 -0e1a: d6 5b 01 mov $015b+y,a -0e1d: d6 5c 01 mov $015c+y,a -0e20: c5 3d 02 mov $023d,a -0e23: e5 41 02 mov a,$0241 -0e26: d6 da 00 mov $00da+y,a -0e29: e5 42 02 mov a,$0242 -0e2c: d6 db 00 mov $00db+y,a -0e2f: e4 77 mov a,$77 -0e31: d5 1b 01 mov $011b+x,a -0e34: 8d 02 mov y,#$02 -0e36: f7 22 mov a,($22)+y -0e38: c4 4e mov $4e,a -0e3a: fc inc y -0e3b: f7 22 mov a,($22)+y -0e3d: c4 4f mov $4f,a -0e3f: 8d 04 mov y,#$04 -0e41: f7 22 mov a,($22)+y -0e43: c4 50 mov $50,a -0e45: fc inc y -0e46: f7 22 mov a,($22)+y -0e48: c4 51 mov $51,a -0e4a: 8d 01 mov y,#$01 -0e4c: f7 22 mov a,($22)+y -0e4e: 2d push a -0e4f: 8d 00 mov y,#$00 -0e51: f7 22 mov a,($22)+y -0e53: 02 07 set0 $07 -0e55: ee pop y -0e56: 72 07 clr3 $07 -0e58: 3f 04 0f call $0f04 -0e5b: 60 clrc -0e5c: 98 08 22 adc $22,#$08 -0e5f: 90 02 bcc $0e63 -0e61: ab 23 inc $23 -0e63: 8b 52 dec $52 -0e65: f0 03 beq $0e6a -0e67: 5f bf 0d jmp $0dbf - -0e6a: e8 00 mov a,#$00 -0e6c: c5 3e 02 mov $023e,a -0e6f: c5 41 02 mov $0241,a -0e72: c5 42 02 mov $0242,a -0e75: c5 40 02 mov $0240,a -0e78: c5 8e 03 mov $038e,a -0e7b: c5 90 03 mov $0390,a -0e7e: c5 8f 03 mov $038f,a -0e81: c5 91 03 mov $0391,a -0e84: 9c dec a -0e85: c5 3f 02 mov $023f,a -0e88: 6f ret - -0e89: 8f 01 0b mov $0b,#$01 -0e8c: 03 09 03 bbs0 $09,$0e92 -0e8f: 8f 00 0b mov $0b,#$00 -0e92: 83 0b 5a bbs4 $0b,$0eef -0e95: 8d 07 mov y,#$07 -0e97: 8f ff 3a mov $3a,#$ff -0e9a: 8f ff 3b mov $3b,#$ff -0e9d: 73 0b 08 bbc3 $0b,$0ea8 -0ea0: c8 08 cmp x,#$08 -0ea2: b0 4b bcs $0eef -0ea4: 8d 00 mov y,#$00 -0ea6: 2f 09 bra $0eb1 -0ea8: 3f f3 0b call $0bf3 -0eab: e4 55 mov a,$55 -0ead: 24 53 and a,$53 -0eaf: f0 1f beq $0ed0 -0eb1: f4 6f mov a,$6f+x -0eb3: f0 41 beq $0ef6 -0eb5: e4 54 mov a,$54 -0eb7: 03 0b 06 bbs0 $0b,$0ec0 -0eba: 74 12 cmp a,$12+x -0ebc: b0 38 bcs $0ef6 -0ebe: 2f 10 bra $0ed0 -0ec0: 74 12 cmp a,$12+x -0ec2: f0 0c beq $0ed0 -0ec4: 90 0a bcc $0ed0 -0ec6: f4 12 mov a,$12+x -0ec8: 64 3b cmp a,$3b -0eca: b0 04 bcs $0ed0 -0ecc: c4 3b mov $3b,a -0ece: d8 3a mov $3a,x -0ed0: 53 0b 0c bbc2 $0b,$0edf -0ed3: 0b 55 asl $55 -0ed5: d0 05 bne $0edc -0ed7: 8f 01 55 mov $55,#$01 -0eda: cd ff mov x,#$ff -0edc: 3d inc x -0edd: 2f 0a bra $0ee9 -0edf: 4b 55 lsr $55 -0ee1: d0 05 bne $0ee8 -0ee3: 8f 80 55 mov $55,#$80 -0ee6: cd 08 mov x,#$08 -0ee8: 1d dec x -0ee9: dc dec y -0eea: 10 bc bpl $0ea8 -0eec: 03 0b 03 bbs0 $0b,$0ef2 -0eef: e8 ff mov a,#$ff -0ef1: 6f ret - -0ef2: f8 3a mov x,$3a -0ef4: 30 f9 bmi $0eef -0ef6: 33 0b 04 bbc1 $0b,$0efd -0ef9: f4 6f mov a,$6f+x -0efb: d0 f2 bne $0eef -0efd: e4 54 mov a,$54 -0eff: d4 12 mov $12+x,a -0f01: e8 00 mov a,#$00 -0f03: 6f ret - -0f04: d8 28 mov $28,x ; play sound (instrument) -0f06: d8 4c mov $4c,x -0f08: 2d push a -0f09: f5 46 02 mov a,$0246+x -0f0c: 28 fe and a,#$fe -0f0e: d5 46 02 mov $0246+x,a -0f11: 63 07 08 bbs3 $07,$0f1c -0f14: f5 e7 07 mov a,$07e7+x -0f17: c4 f2 mov $f2,a -0f19: 8f 9f f3 mov $f3,#$9f -0f1c: dd mov a,y -0f1d: d5 43 01 mov $0143+x,a -0f20: 7d mov a,x -0f21: 1c asl a -0f22: 5d mov x,a -0f23: e4 50 mov a,$50 -0f25: d5 d4 fc mov $fcd4+x,a -0f28: e4 51 mov a,$51 -0f2a: d5 d5 fc mov $fcd5+x,a -0f2d: e4 4e mov a,$4e -0f2f: d4 78 mov $78+x,a -0f31: e4 4f mov a,$4f -0f33: d4 79 mov $79+x,a -0f35: ae pop a -0f36: 8d 02 mov y,#$02 -0f38: 3f 63 10 call $1063 -0f3b: da 20 movw $20,ya ;get current voice and instrument -0f3d: f8 4c mov x,$4c -0f3f: f5 14 08 mov a,$0814+x ;get channel bit mask ID -0f42: c4 65 mov $65,a -0f44: 48 ff eor a,#$ff ;and store inversion -0f46: c4 66 mov $66,a -0f48: e4 57 mov a,$57 ;get mode flags -0f4a: 63 07 05 bbs3 $07,$0f52 -0f4d: 35 1c 08 and a,$081c+x -0f50: 2f 03 bra $0f55 -0f52: 15 14 08 or a,$0814+x -0f55: c4 57 mov $57,a -0f57: 8d 00 mov y,#$00 -0f59: f7 20 mov a,($20)+y -0f5b: d4 67 mov $67+x,a -0f5d: c4 4d mov $4d,a -0f5f: 8f 2d f2 mov $f2,#$2d -0f62: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) -0f64: f0 05 beq $0f6b ; if not... -0f66: 09 65 f3 or ($f3),($65) ; turn pitch mod on -0f69: 2f 03 bra $0f6e -0f6b: 29 66 f3 and ($f3),($66) ; turn pitch mod off -0f6e: 63 07 50 bbs3 $07,$0fc1 ; slur handler -0f71: b0 4e bcs $0fc1 -0f73: 93 4d 45 bbc4 $4d,$0fbb -0f76: 13 08 05 bbc0 $08,$0f7e -0f79: e5 06 01 mov a,$0106 -0f7c: 2f 04 bra $0f82 -0f7e: 8d 05 mov y,#$05 ; default echo -0f80: f7 20 mov a,($20)+y -0f82: 8d 0c mov y,#$0c ; look for echo -0f84: 3f 63 10 call $1063 -0f87: 8d 00 mov y,#$00 -0f89: f6 24 08 mov a,$0824+y ; get the echo register values to "poke" -0f8c: c4 f2 mov $f2,a ; (from the table) -0f8e: f7 29 mov a,($29)+y ; now get info to feed to the registers -0f90: ad 01 cmp y,#$01 ; (from the echo environment) -0f92: f0 08 beq $0f9c -0f94: ad 03 cmp y,#$03 -0f96: f0 0f beq $0fa7 -0f98: ad 02 cmp y,#$02 -0f9a: d0 10 bne $0fac -0f9c: d6 43 02 mov $0243+y,a -0f9f: 65 3b 02 cmp a,$023b -0fa2: 90 03 bcc $0fa7 -0fa4: e5 3b 02 mov a,$023b -0fa7: d6 37 02 mov $0237+y,a -0faa: 2f 02 bra $0fae -0fac: c4 f3 mov $f3,a -0fae: fc inc y -0faf: ad 0c cmp y,#$0c ; repeat for every byte of the array -0fb1: 90 d6 bcc $0f89 -0fb3: 8f 4d f2 mov $f2,#$4d -0fb6: 09 65 f3 or ($f3),($65) -0fb9: 2f 06 bra $0fc1 -0fbb: 8f 4d f2 mov $f2,#$4d -0fbe: 29 66 f3 and ($f3),($66) -0fc1: e4 4c mov a,$4c -0fc3: 60 clrc -0fc4: 88 00 adc a,#$00 -0fc6: c4 2d mov $2d,a -0fc8: 8d 01 mov y,#$01 -0fca: f7 20 mov a,($20)+y -0fcc: 03 4d 08 bbs0 $4d,$0fd7 -0fcf: f8 4c mov x,$4c -0fd1: d5 23 01 mov $0123+x,a -0fd4: 5f e2 0f jmp $0fe2 - -0fd7: 8d 04 mov y,#$04 -0fd9: 3f 63 10 call $1063 -0fdc: fa 0f 0d mov ($0d),($0f) -0fdf: 3f ac 11 call $11ac -0fe2: e4 4c mov a,$4c -0fe4: 60 clrc -0fe5: 88 08 adc a,#$08 -0fe7: c4 2d mov $2d,a -0fe9: 53 4d 13 bbc2 $4d,$0fff -0fec: 8d 03 mov y,#$03 -0fee: f7 20 mov a,($20)+y -0ff0: 8d 06 mov y,#$06 -0ff2: 3f 63 10 call $1063 -0ff5: fa 10 0d mov ($0d),($10) -0ff8: 42 08 set2 $08 -0ffa: 3f ac 11 call $11ac -0ffd: 52 08 clr2 $08 -0fff: e4 4c mov a,$4c -1001: 60 clrc -1002: 88 18 adc a,#$18 -1004: c4 2d mov $2d,a -1006: 63 07 57 bbs3 $07,$1060 -1009: 8d 04 mov y,#$04 -100b: f7 20 mov a,($20)+y ; now get the amplitude -100d: 63 4d 08 bbs3 $4d,$1018 -1010: f8 4c mov x,$4c -1012: d5 e4 fc mov $fce4+x,a -1015: 5f 39 10 jmp $1039 - -1018: 8d 08 mov y,#$08 -101a: 3f 63 10 call $1063 -101d: fa 11 0d mov ($0d),($11) -1020: 3f ac 11 call $11ac -1023: eb 2d mov y,$2d -1025: f6 e3 04 mov a,$04e3+y -1028: f0 0a beq $1034 -102a: f6 c3 03 mov a,$03c3+y -102d: d0 05 bne $1034 -102f: e8 ff mov a,#$ff -1031: 5f 36 10 jmp $1036 - -1034: e8 00 mov a,#$00 -1036: d6 c3 03 mov $03c3+y,a -1039: e4 4c mov a,$4c -103b: 60 clrc -103c: 88 10 adc a,#$10 -103e: c4 2d mov $2d,a -1040: 8d 02 mov y,#$02 -1042: f7 20 mov a,($20)+y -1044: 23 4d 08 bbs1 $4d,$104f -1047: f8 4c mov x,$4c -1049: d5 ec fc mov $fcec+x,a -104c: 5f 5a 10 jmp $105a - -104f: 8d 0a mov y,#$0a -1051: 3f 63 10 call $1063 -1054: fa 0e 0d mov ($0d),($0e) -1057: 3f ac 11 call $11ac -105a: 09 65 5c or ($5c),($65) -105d: 09 65 56 or ($56),($65) -1060: 72 07 clr3 $07 -1062: 6f ret - -1063: 3f f3 0b call $0bf3 ; load current song/sfx/etc. address into stack -1066: 8f 00 1f mov $1f,#$00 -1069: 1c asl a -106a: 2b 1f rol $1f -106c: 60 clrc -106d: 96 e0 1e adc a,$1ee0+y -1070: c4 1e mov $1e,a -1072: e4 1f mov a,$1f -1074: 96 e1 1e adc a,$1ee1+y -1077: c4 1f mov $1f,a -1079: 8d 01 mov y,#$01 -107b: f7 1e mov a,($1e)+y -107d: c4 2a mov $2a,a -107f: dc dec y -1080: f7 1e mov a,($1e)+y -1082: c4 29 mov $29,a -1084: eb 2a mov y,$2a -1086: 6f ret - -1087: db $4a,$06,$1c,$1a,$4a,$06,$1c,$1a,$06,$1c,$1a,$4a,$06,$1c,$1a,$4a,$06,$1c,$1a,$4a,$06,$1c - -; initalize sound registers -109f: 3f ed 10 call $10ed -10a2: cd 51 mov x,#$51 -10a4: 8d 11 mov y,#$11 -10a6: 3f 3a 11 call $113a -10a9: e8 00 mov a,#$00 -10ab: 5d mov x,a -10ac: fd mov y,a -10ad: d5 00 01 mov $0100+x,a -10b0: af mov (x)+,a -10b1: c8 f0 cmp x,#$f0 -10b3: 90 f8 bcc $10ad -10b5: 5d mov x,a -10b6: d5 00 02 mov $0200+x,a -10b9: d5 00 03 mov $0300+x,a -10bc: d5 00 04 mov $0400+x,a -10bf: d5 00 05 mov $0500+x,a -10c2: d5 00 06 mov $0600+x,a -10c5: d5 00 fc mov $fc00+x,a -10c8: d5 00 fd mov $fd00+x,a -10cb: d5 00 ff mov $ff00+x,a -10ce: 3d inc x -10cf: d0 e5 bne $10b6 -10d1: e8 ff mov a,#$ff -10d3: c4 58 mov $58,a -10d5: c4 5a mov $5a,a -10d7: c4 63 mov $63,a -10d9: c4 59 mov $59,a -10db: c4 5e mov $5e,a -10dd: c4 5f mov $5f,a -10df: c4 60 mov $60,a -10e1: c5 3f 02 mov $023f,a -10e4: c4 05 mov $05,a -10e6: c4 06 mov $06,a -10e8: c4 0c mov $0c,a -10ea: 82 07 set4 $07 -10ec: 6f ret - -10ed: cd 14 mov x,#$14 -10ef: e8 00 mov a,#$00 -10f1: d5 28 02 mov $0228+x,a -10f4: 1d dec x -10f5: 10 fa bpl $10f1 -10f7: 8f 10 3a mov $3a,#$10 -10fa: 8d 10 mov y,#$10 -10fc: 3f 4a 07 call $074a -10ff: 68 00 cmp a,#$00 -1101: f0 04 beq $1107 -1103: 8b 3a dec $3a -1105: d0 f0 bne $10f7 -1107: 6f ret - -1108: e8 7f mov a,#$7f -110a: c5 3b 02 mov $023b,a -110d: c5 3c 02 mov $023c,a -1110: 2f e5 bra $10f7 -1112: e5 e1 1e mov a,$1ee1 -1115: 8f 6d f2 mov $f2,#$6d -1118: c4 f3 mov $f3,a -111a: 68 ff cmp a,#$ff -111c: f0 1b beq $1139 -111e: c4 01 mov $01,a -1120: e8 00 mov a,#$00 -1122: fd mov y,a -1123: c4 00 mov $00,a -1125: d7 00 mov ($00)+y,a -1127: fe fc dbnz y,$1125 -1129: ab 01 inc $01 -112b: 78 fc 01 cmp $01,#$fc -112e: d0 f5 bne $1125 -1130: 8f 6c f2 mov $f2,#$6c -1133: e8 df mov a,#$df -1135: 24 f3 and a,$f3 -1137: c4 f3 mov $f3,a -1139: 6f ret - -113a: d8 00 mov $00,x -113c: cb 01 mov $01,y -113e: 8d 00 mov y,#$00 -1140: f7 00 mov a,($00)+y -1142: 68 ff cmp a,#$ff -1144: f0 0a beq $1150 -1146: c4 f2 mov $f2,a -1148: fc inc y -1149: f7 00 mov a,($00)+y -114b: c4 f3 mov $f3,a -114d: fc inc y -114e: d0 f0 bne $1140 -1150: 6f ret - -; pre-defined DSP flags -1151: db $3d,$00 ; NON (noise enable) -1153: db $4d,$00 ; EON (echo enable) -1155: db $0d,$00 ; EFB (echo feedback) -1157: db $7d,$00 ; EDL (echo delay) -1159: db $0f,$00 ; COEF (channel 1) -115b: db $1f,$00 ; COEF (channel 2) -115d: db $2f,$00 ; COEF (channel 3) -115f: db $3f,$00 ; COEF (channel 4) -1161: db $4f,$00 ; COEF (channel 5) -1163: db $5f,$00 ; COEF (channel 6) -1165: db $6f,$00 ; COEF (channel 7) -1167: db $7f,$00 ; COEF (channel 8) -1169: db $6d,$ff ; ESA (echo buffer start offset) -116b: db $2c,$00 ; EVOL (L) (echo volume - left) -116d: db $3c,$00 ; EVOL (R) (echo volume - right) -116f: db $0c,$00 ; MVOL (L) (main volume - left) -1171: db $1c,$00 ; MVOL (R) (main volume - right) -1173: db $5d,$02 ; DIR (offset of source directory) -1175: db $5c,$00 ; KOF (key off) -1177: db $2d,$00 ; PMON (pitch modulation) -1179: db $04,$08 ; SRCN (source number - channel 1) -117b: db $14,$08 ; SRCN (source number - channel 2) -117d: db $24,$08 ; SRCN (source number - channel 3) -117f: db $34,$08 ; SRCN (source number - channel 4) -1181: db $44,$08 ; SRCN (source number - channel 5) -1183: db $54,$08 ; SRCN (source number - channel 6) -1185: db $64,$08 ; SRCN (source number - channel 7) -1187: db $74,$08 ; SRCN (source number - channel 8) -1189: db $07,$00 ; GAIN (channel 1) -118b: db $17,$00 ; GAIN (channel 2) -118d: db $27,$00 ; GAIN (channel 3) -118f: db $37,$00 ; GAIN (channel 4) -1191: db $47,$00 ; GAIN (channel 5) -1193: db $57,$00 ; GAIN (channel 6) -1195: db $67,$00 ; GAIN (channel 7) -1197: db $77,$00 ; GAIN (channel 8) -1199: db $05,$00 ; ASDR (1 - channel 1) -119b: db $15,$00 ; ASDR (1 - channel 2) -119d: db $25,$00 ; ASDR (1 - channel 3) -119f: db $35,$00 ; ASDR (1 - channel 4) -11a1: db $45,$00 ; ASDR (1 - channel 5) -11a3: db $55,$00 ; ASDR (1 - channel 6) -11a5: db $65,$00 ; ASDR (1 - channel 7) -11a7: db $75,$00 ; ASDR (1 - channel 8) -11a9: db $7c,$00 ; ENDX -11ab: db $ff - -11ac: 3f f3 0b call $0bf3 -11af: f8 2d mov x,$2d -11b1: 8d 07 mov y,#$07 -11b3: f7 29 mov a,($29)+y -11b5: d5 e3 04 mov $04e3+x,a -11b8: dc dec y -11b9: dc dec y -11ba: f7 29 mov a,($29)+y -11bc: d5 03 04 mov $0403+x,a -11bf: dc dec y -11c0: f7 29 mov a,($29)+y -11c2: d5 c3 04 mov $04c3+x,a -11c5: dc dec y -11c6: f7 29 mov a,($29)+y -11c8: d5 23 04 mov $0423+x,a -11cb: dc dec y -11cc: f7 29 mov a,($29)+y -11ce: d5 43 04 mov $0443+x,a -11d1: dc dec y -11d2: f7 29 mov a,($29)+y -11d4: d5 83 04 mov $0483+x,a -11d7: dc dec y -11d8: f7 29 mov a,($29)+y -11da: d5 63 04 mov $0463+x,a -11dd: eb 2d mov y,$2d -11df: e4 29 mov a,$29 -11e1: 60 clrc -11e2: 88 08 adc a,#$08 -11e4: d6 43 05 mov $0543+y,a -11e7: e4 2a mov a,$2a -11e9: 88 00 adc a,#$00 -11eb: d6 63 05 mov $0563+y,a -11ee: f6 23 04 mov a,$0423+y -11f1: cd 00 mov x,#$00 -11f3: eb 0d mov y,$0d -11f5: f0 23 beq $121a -11f7: cf mul ya -11f8: cb 3a mov $3a,y -11fa: c4 3b mov $3b,a -11fc: cd 05 mov x,#$05 -11fe: 4b 3a lsr $3a -1200: 7c ror a -1201: 1d dec x -1202: d0 fa bne $11fe -1204: eb 3a mov y,$3a -1206: ad 00 cmp y,#$00 -1208: d0 08 bne $1212 -120a: 68 00 cmp a,#$00 -120c: f0 0a beq $1218 -120e: f8 3b mov x,$3b -1210: 2f 08 bra $121a -1212: cd 01 mov x,#$01 -1214: e8 ff mov a,#$ff -1216: 2f 02 bra $121a -1218: 5d mov x,a -1219: bc inc a -121a: eb 2d mov y,$2d -121c: d6 23 04 mov $0423+y,a -121f: 7d mov a,x -1220: 48 ff eor a,#$ff -1222: 08 e0 or a,#$e0 -1224: d6 a3 03 mov $03a3+y,a -1227: e8 ff mov a,#$ff -1229: d6 e3 03 mov $03e3+y,a -122c: 3f f3 0b call $0bf3 -122f: 5d mov x,a -1230: f6 43 04 mov a,$0443+y -1233: fd mov y,a -1234: 7d mov a,x -1235: cf mul ya -1236: da 45 movw $45,ya -1238: 03 07 06 bbs0 $07,$1241 -123b: ba 05 movw ya,$05 -123d: da 45 movw $45,ya -123f: 2f 0a bra $124b -1241: ba 4e movw ya,$4e -1243: 9a 45 subw ya,$45 -1245: b0 02 bcs $1249 -1247: ba 4e movw ya,$4e -1249: cb 46 mov $46,y -124b: eb 2d mov y,$2d -124d: d6 83 05 mov $0583+y,a -1250: e4 46 mov a,$46 -1252: d6 a3 05 mov $05a3+y,a -1255: f6 23 04 mov a,$0423+y -1258: bc inc a -1259: d0 01 bne $125c -125b: 9c dec a -125c: d6 03 05 mov $0503+y,a -125f: 68 03 cmp a,#$03 -1261: b0 05 bcs $1268 -1263: e8 00 mov a,#$00 -1265: d6 c3 04 mov $04c3+y,a -1268: e8 01 mov a,#$01 -126a: d6 a3 04 mov $04a3+y,a -126d: 9c dec a -126e: d6 23 05 mov $0523+y,a -1271: d6 44 ff mov $ff44+y,a -1274: d6 64 ff mov $ff64+y,a -1277: c4 37 mov $37,a -1279: 5f 4e 13 jmp $134e - -127c: eb 2d mov y,$2d -127e: b2 07 clr5 $07 -1280: f6 c3 04 mov a,$04c3+y -1283: c4 37 mov $37,a -1285: f6 a3 04 mov a,$04a3+y -1288: f0 42 beq $12cc -128a: f6 a3 03 mov a,$03a3+y -128d: 60 clrc -128e: 96 e3 03 adc a,$03e3+y -1291: d6 e3 03 mov $03e3+y,a -1294: 90 18 bcc $12ae -1296: f6 03 05 mov a,$0503+y -1299: c4 38 mov $38,a -129b: f0 03 beq $12a0 -129d: 9c dec a -129e: d0 03 bne $12a3 -12a0: f6 23 04 mov a,$0423+y -12a3: d6 03 05 mov $0503+y,a -12a6: 78 02 38 cmp $38,#$02 -12a9: 90 08 bcc $12b3 -12ab: 5f 4e 13 jmp $134e - -12ae: 8f 00 37 mov $37,#$00 -12b1: 2f f8 bra $12ab -12b3: eb 2d mov y,$2d -12b5: f6 23 05 mov a,$0523+y -12b8: bc inc a -12b9: 76 03 04 cmp a,$0403+y -12bc: 90 1b bcc $12d9 -12be: 9c dec a -12bf: 76 83 04 cmp a,$0483+y -12c2: d0 03 bne $12c7 -12c4: 5f 48 13 jmp $1348 - -12c7: e8 00 mov a,#$00 -12c9: d6 a3 04 mov $04a3+y,a -12cc: a2 07 set5 $07 -12ce: f6 24 ff mov a,$ff24+y -12d1: 2d push a -12d2: f6 04 ff mov a,$ff04+y -12d5: ee pop y -12d6: 5f ff 13 jmp $13ff - -12d9: d6 23 05 mov $0523+y,a -12dc: f6 a3 05 mov a,$05a3+y -12df: 16 83 05 or a,$0583+y -12e2: f0 6a beq $134e -12e4: f8 28 mov x,$28 -12e6: f5 46 02 mov a,$0246+x -12e9: 28 02 and a,#$02 -12eb: f0 24 beq $1311 -12ed: e8 01 mov a,#$01 -12ef: 74 6f cmp a,$6f+x -12f1: d0 03 bne $12f6 -12f3: 83 07 09 bbs4 $07,$12ff -12f6: eb 28 mov y,$28 -12f8: f6 46 02 mov a,$0246+y -12fb: 28 01 and a,#$01 -12fd: f0 3d beq $133c -12ff: e8 00 mov a,#$00 -1301: d6 78 00 mov $0078+y,a -1304: d6 79 00 mov $0079+y,a -1307: eb 2d mov y,$2d -1309: d6 83 05 mov $0583+y,a -130c: d6 a3 05 mov $05a3+y,a -130f: 2f 21 bra $1332 -1311: f6 83 05 mov a,$0583+y -1314: 80 setc -1315: b6 23 04 sbc a,$0423+y -1318: d6 83 05 mov $0583+y,a -131b: c4 45 mov $45,a -131d: f6 a3 05 mov a,$05a3+y -1320: a8 00 sbc a,#$00 -1322: b0 07 bcs $132b -1324: e8 00 mov a,#$00 -1326: d6 83 05 mov $0583+y,a -1329: c4 45 mov $45,a -132b: d6 a3 05 mov $05a3+y,a -132e: 04 45 or a,$45 -1330: d0 0a bne $133c -1332: f6 83 04 mov a,$0483+y -1335: 76 03 04 cmp a,$0403+y -1338: 90 11 bcc $134b -133a: a2 07 set5 $07 -133c: eb 2d mov y,$2d -133e: f6 23 05 mov a,$0523+y -1341: 76 83 04 cmp a,$0483+y -1344: 90 08 bcc $134e -1346: f0 06 beq $134e -1348: f6 63 04 mov a,$0463+y -134b: d6 23 05 mov $0523+y,a -134e: eb 2d mov y,$2d -1350: f8 37 mov x,$37 -1352: f0 1c beq $1370 -1354: 78 03 38 cmp $38,#$03 -1357: 90 17 bcc $1370 -1359: f6 04 ff mov a,$ff04+y -135c: c4 33 mov $33,a -135e: f6 24 ff mov a,$ff24+y -1361: c4 34 mov $34,a -1363: f6 44 ff mov a,$ff44+y -1366: c4 35 mov $35,a -1368: f6 64 ff mov a,$ff64+y -136b: c4 36 mov $36,a -136d: 5f ed 13 jmp $13ed - -1370: f6 43 05 mov a,$0543+y -1373: c4 2b mov $2b,a -1375: f6 63 05 mov a,$0563+y -1378: c4 2c mov $2c,a -137a: f6 23 05 mov a,$0523+y -137d: fd mov y,a -137e: 43 08 07 bbs2 $08,$1388 -1381: f7 2b mov a,($2b)+y -1383: 8d 40 mov y,#$40 -1385: cf mul ya -1386: 2f 10 bra $1398 -1388: 8d 02 mov y,#$02 -138a: cf mul ya -138b: 7a 2b addw ya,$2b -138d: da 2b movw $2b,ya -138f: 8d 01 mov y,#$01 -1391: f7 2b mov a,($2b)+y -1393: dc dec y -1394: 2d push a -1395: f7 2b mov a,($2b)+y -1397: ee pop y -1398: f8 37 mov x,$37 -139a: f0 55 beq $13f1 -139c: 78 02 38 cmp $38,#$02 -139f: f0 50 beq $13f1 -13a1: da 3a movw $3a,ya -13a3: eb 2d mov y,$2d -13a5: f6 24 ff mov a,$ff24+y -13a8: c4 34 mov $34,a -13aa: f6 04 ff mov a,$ff04+y -13ad: c4 33 mov $33,a -13af: eb 34 mov y,$34 -13b1: 80 setc -13b2: 9a 3a subw ya,$3a -13b4: da 35 movw $35,ya -13b6: e8 00 mov a,#$00 -13b8: 3c rol a -13b9: c4 3a mov $3a,a -13bb: d0 08 bne $13c5 -13bd: 58 ff 35 eor $35,#$ff -13c0: 58 ff 36 eor $36,#$ff -13c3: 3a 35 incw $35 -13c5: eb 2d mov y,$2d -13c7: f6 23 04 mov a,$0423+y -13ca: 5d mov x,a -13cb: ba 35 movw ya,$35 -13cd: 3f 0a 14 call $140a -13d0: c4 35 mov $35,a -13d2: d8 36 mov $36,x -13d4: 78 01 3a cmp $3a,#$01 -13d7: d0 08 bne $13e1 -13d9: 58 ff 35 eor $35,#$ff -13dc: 58 ff 36 eor $36,#$ff -13df: 3a 35 incw $35 -13e1: eb 2d mov y,$2d -13e3: e4 35 mov a,$35 -13e5: d6 44 ff mov $ff44+y,a -13e8: e4 36 mov a,$36 -13ea: d6 64 ff mov $ff64+y,a -13ed: ba 33 movw ya,$33 -13ef: 7a 35 addw ya,$35 -13f1: da 33 movw $33,ya -13f3: eb 2d mov y,$2d -13f5: d6 04 ff mov $ff04+y,a -13f8: e4 34 mov a,$34 -13fa: d6 24 ff mov $ff24+y,a -13fd: ba 33 movw ya,$33 -13ff: 43 08 07 bbs2 $08,$1409 -1402: cd 40 mov x,#$40 -1404: 9e div ya,x -1405: 8d 00 mov y,#$00 -1407: da 33 movw $33,ya -1409: 6f ret - -140a: c8 00 cmp x,#$00 -140c: d0 04 bne $1412 -140e: 1d dec x -140f: 7d mov a,x -1410: fd mov y,a -1411: 6f ret - -1412: 40 setp -1413: cb 01 mov $01,y -1415: 3e 01 cmp x,$01 -1417: f0 02 beq $141b -1419: b0 1a bcs $1435 -141b: c4 00 mov $00,a -141d: dd mov a,y -141e: 8d 00 mov y,#$00 -1420: 9e div ya,x -1421: c4 02 mov $02,a -1423: fd mov y,a -1424: 7d mov a,x -1425: cf mul ya -1426: c4 03 mov $03,a -1428: e4 01 mov a,$01 -142a: 80 setc -142b: a4 03 sbc a,$03 -142d: fd mov y,a -142e: e4 00 mov a,$00 -1430: 9e div ya,x -1431: f8 02 mov x,$02 -1433: 20 clrp -1434: 6f ret - -1435: 9e div ya,x -1436: cd 00 mov x,#$00 -1438: 20 clrp -1439: 6f ret - -143a: 4d push x -143b: f5 f4 fc mov a,$fcf4+x -143e: 8d 04 mov y,#$04 -1440: cf mul ya -1441: 7a 24 addw ya,$24 -1443: da 00 movw $00,ya -1445: f5 ef 07 mov a,$07ef+x -1448: c4 f2 mov $f2,a -144a: 7d mov a,x -144b: 1c asl a -144c: 1c asl a -144d: 5d mov x,a -144e: f5 02 02 mov a,$0202+x -1451: c5 26 02 mov $0226,a -1454: f5 03 02 mov a,$0203+x -1457: c5 27 02 mov $0227,a -145a: 8f 09 f3 mov $f3,#$09 -145d: 8d 00 mov y,#$00 -145f: f7 00 mov a,($00)+y -1461: d5 00 02 mov $0200+x,a -1464: fc inc y -1465: f7 00 mov a,($00)+y -1467: d5 01 02 mov $0201+x,a -146a: fc inc y -146b: f7 00 mov a,($00)+y -146d: d5 02 02 mov $0202+x,a -1470: fc inc y -1471: f7 00 mov a,($00)+y -1473: d5 03 02 mov $0203+x,a -1476: 8d 01 mov y,#$01 -1478: f7 00 mov a,($00)+y -147a: c4 3d mov $3d,a -147c: dc dec y -147d: f7 00 mov a,($00)+y -147f: 80 setc -1480: a8 03 sbc a,#$03 -1482: c4 3c mov $3c,a -1484: b8 00 3d sbc $3d,#$00 -1487: f7 3c mov a,($3c)+y -1489: c5 04 01 mov $0104,a -148c: fc inc y -148d: f7 3c mov a,($3c)+y -148f: c5 05 01 mov $0105,a -1492: fc inc y -1493: f7 3c mov a,($3c)+y -1495: c4 64 mov $64,a -1497: 10 14 bpl $14ad -1499: 28 1f and a,#$1f -149b: 8f 6c f2 mov $f2,#$6c -149e: 38 e0 f3 and $f3,#$e0 -14a1: 04 f3 or a,$f3 -14a3: c4 f3 mov $f3,a -14a5: 8f 3d f2 mov $f2,#$3d -14a8: 09 4a f3 or ($f3),($4a) -14ab: 2f 06 bra $14b3 -14ad: 8f 3d f2 mov $f2,#$3d -14b0: 29 4b f3 and ($f3),($4b) -14b3: ce pop x -14b4: f5 ef 07 mov a,$07ef+x -14b7: c4 f2 mov $f2,a -14b9: d8 f3 mov $f3,x -14bb: 6f ret - -14bc: 60 clrc -14bd: 88 a0 adc a,#$a0 ; add offset to input frequency (1440) -14bf: 5d mov x,a -14c0: dd mov a,y -14c1: 88 05 adc a,#$05 -14c3: fd mov y,a -14c4: 7d mov a,x -14c5: ad 0a cmp y,#$0a ; check if it is in within positive range -14c7: 90 06 bcc $14cf ; in range -14c9: d0 0a bne $14d5 ; out of range -14cb: 68 50 cmp a,#$50 -14cd: b0 06 bcs $14d5 ; out of range -14cf: 8f ff 44 mov $44,#$ff -14d2: 5f eb 14 jmp $14eb - -14d5: ad 80 cmp y,#$80 -14d7: 90 0f bcc $14e8 -14d9: 8f 00 44 mov $44,#$00 -14dc: 60 clrc -14dd: 88 20 adc a,#$20 -14df: 5d mov x,a -14e0: dd mov a,y -14e1: 88 df adc a,#$df -14e3: fd mov y,a -14e4: 7d mov a,x -14e5: 5f eb 14 jmp $14eb - -14e8: 8f 0a 44 mov $44,#$0a -14eb: cd f0 mov x,#$f0 -14ed: 9e div ya,x -14ee: 78 ff 44 cmp $44,#$ff -14f1: d0 02 bne $14f5 -14f3: c4 44 mov $44,a -14f5: f6 10 15 mov a,$1510+y ;get pitch value (from table) -14f8: c4 3a mov $3a,a -14fa: f6 00 16 mov a,$1600+y -14fd: c4 3b mov $3b,a -14ff: e8 0a mov a,#$0a -1501: 80 setc -1502: a4 44 sbc a,$44 -1504: f0 07 beq $150d -1506: fd mov y,a -1507: 4b 3b lsr $3b -1509: 6b 3a ror $3a -150b: fe fa dbnz y,$1507 -150d: ba 3a movw ya,$3a -150f: 6f ret - -; pitch table (low byte) -1510: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 - -; pitch table (high byte) -1600: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f - -16f0: 3f 6a 17 call $176a -16f3: 8f 00 8a mov $8a,#$00 -16f6: e4 89 mov a,$89 -16f8: f0 20 beq $171a -16fa: e4 88 mov a,$88 -16fc: 9c dec a -16fd: c4 8b mov $8b,a -16ff: 3f f3 0b call $0bf3 -1702: f8 8a mov x,$8a -1704: f5 07 01 mov a,$0107+x -1707: 30 0a bmi $1713 -1709: 5d mov x,a -170a: c4 8b mov $8b,a -170c: f5 66 03 mov a,$0366+x -170f: 5d mov x,a -1710: 1f f8 1d jmp ($1df8+x) - -1713: ab 8a inc $8a -1715: 69 88 8a cmp ($8a),($88) -1718: d0 e5 bne $16ff -171a: 6f ret - -171b: c4 3a mov $3a,a -171d: f6 67 00 mov a,$0067+y -1720: 28 80 and a,#$80 -1722: f0 08 beq $172c -1724: f6 12 00 mov a,$0012+y -1727: 9c dec a -1728: d6 12 00 mov $0012+y,a -172b: 6f ret - -172c: f6 6f 00 mov a,$006f+y -172f: 64 3a cmp a,$3a -1731: d0 07 bne $173a -1733: f6 12 00 mov a,$0012+y -1736: 5c lsr a -1737: d6 12 00 mov $0012+y,a -173a: 6f ret - -173b: 3f f3 0b call $0bf3 -173e: f8 8b mov x,$8b -1740: 9b b7 dec $b7+x -1742: d0 cf bne $1713 -1744: 2f 1c bra $1762 -1746: 3f f3 0b call $0bf3 -1749: f8 8b mov x,$8b -174b: 9b b7 dec $b7+x -174d: d0 c4 bne $1713 -174f: e8 04 mov a,#$04 -1751: d5 66 03 mov $0366+x,a -1754: 5f 56 18 jmp $1856 - -; vcmd ec - set pitch bend state and release -1757: 3f b0 17 call $17b0 - -; vcmd eb - set pitch bend state -175a: e8 00 mov a,#$00 -175c: d5 c6 02 mov $02c6+x,a -175f: d5 da 02 mov $02da+x,a -1762: e8 06 mov a,#$06 -1764: d5 66 03 mov $0366+x,a -1767: 5f e8 17 jmp $17e8 - -176a: d3 07 2f bbc6 $07,$179c -176d: d2 07 clr6 $07 -176f: f8 88 mov x,$88 -1771: f0 29 beq $179c -1773: e8 ff mov a,#$ff -1775: 1d dec x -1776: d5 07 01 mov $0107+x,a -1779: 1d dec x -177a: 10 fa bpl $1776 -177c: f8 88 mov x,$88 -177e: 1d dec x -177f: 8f 00 3a mov $3a,#$00 -1782: eb 3a mov y,$3a -1784: f6 07 01 mov a,$0107+y -1787: 30 14 bmi $179d -1789: fd mov y,a -178a: f5 b2 02 mov a,$02b2+x -178d: 76 b2 02 cmp a,$02b2+y -1790: b0 0b bcs $179d -1792: ab 3a inc $3a -1794: 78 14 3a cmp $3a,#$14 -1797: d0 e9 bne $1782 -1799: 1d dec x -179a: 10 e3 bpl $177f -179c: 6f ret - -179d: eb 3a mov y,$3a -179f: 4d push x -17a0: 40 setp -17a1: f6 07 01 mov a,$0107+y -17a4: d9 07 mov $07+y,x -17a6: 5d mov x,a -17a7: fc inc y -17a8: 68 ff cmp a,#$ff -17aa: d0 f5 bne $17a1 -17ac: ce pop x -17ad: 20 clrp -17ae: 2f e9 bra $1799 -17b0: f5 27 06 mov a,$0627+x -17b3: 30 1d bmi $17d2 -17b5: fd mov y,a -17b6: 7d mov a,x -17b7: 08 80 or a,#$80 -17b9: 76 d2 00 cmp a,$00d2+y -17bc: d0 14 bne $17d2 -17be: e8 01 mov a,#$01 -17c0: 16 46 02 or a,$0246+y -17c3: d6 46 02 mov $0246+y,a -17c6: e8 01 mov a,#$01 -17c8: 3f 1b 17 call $171b -17cb: f5 7a 03 mov a,$037a+x -17ce: 28 02 and a,#$02 -17d0: d0 00 bne $17d2 -17d2: 6f ret - -17d3: c4 02 mov $02,a -17d5: 7d mov a,x -17d6: 8d 05 mov y,#$05 -17d8: cf mul ya -17d9: 60 clrc -17da: 84 02 adc a,$02 -17dc: fd mov y,a -17dd: cb 02 mov $02,y -17df: 6f ret - -; voice numbers -17e0: db $01,$02,$04,$08,$10,$20,$40,$80 - -17e8: 3f f3 0b call $0bf3 -17eb: f8 8b mov x,$8b -17ed: f5 c6 02 mov a,$02c6+x -17f0: c4 3a mov $3a,a -17f2: f5 da 02 mov a,$02da+x -17f5: c4 3b mov $3b,a -17f7: 3f 29 1a call $1a29 -17fa: fd mov y,a -17fb: 28 0f and a,#$0f -17fd: 2d push a -17fe: dd mov a,y -17ff: 5c lsr a -1800: 5c lsr a -1801: 5c lsr a -1802: 5c lsr a -1803: f0 28 beq $182d -1805: 60 clrc -1806: 88 f8 adc a,#$f8 -1808: 8d 00 mov y,#$00 -180a: 68 00 cmp a,#$00 -180c: 10 01 bpl $180f -180e: dc dec y -180f: 7a 3a addw ya,$3a -1811: d5 c6 02 mov $02c6+x,a -1814: dd mov a,y -1815: d5 da 02 mov $02da+x,a -1818: 8f 00 8c mov $8c,#$00 -181b: 3f ee 18 call $18ee -181e: f8 8b mov x,$8b -1820: ae pop a -1821: 68 00 cmp a,#$00 -1823: f0 c3 beq $17e8 -1825: d4 b7 mov $b7+x,a -1827: 3f 12 1c call $1c12 -182a: 5f 13 17 jmp $1713 - -182d: ae pop a -182e: dd mov a,y -182f: 68 00 cmp a,#$00 -1831: d0 03 bne $1836 -1833: 5f 4f 17 jmp $174f - -1836: 68 01 cmp a,#$01 -1838: d0 0b bne $1845 -183a: 3f 29 1a call $1a29 -183d: d4 b7 mov $b7+x,a -183f: 3f 12 1c call $1c12 -1842: 5f 13 17 jmp $1713 - -1845: 68 02 cmp a,#$02 -1847: d0 05 bne $184e -1849: 3f b0 17 call $17b0 -184c: 2f 9a bra $17e8 -184e: f4 b7 mov a,$b7+x -1850: 2d push a -1851: 3f 29 1a call $1a29 -1854: 2f b2 bra $1808 -1856: f8 8b mov x,$8b -1858: f5 4e 02 mov a,$024e+x -185b: 68 05 cmp a,#$05 -185d: f0 1e beq $187d -185f: 3f d3 17 call $17d3 -1862: f6 98 fd mov a,$fd98+y -1865: c4 00 mov $00,a -1867: f6 34 fd mov a,$fd34+y -186a: c4 01 mov $01,a -186c: 8d 02 mov y,#$02 -186e: f7 00 mov a,($00)+y -1870: de 8f 0a cbne $8f+x,$187d -1873: 8d 03 mov y,#$03 -1875: f7 00 mov a,($00)+y -1877: de a3 03 cbne $a3+x,$187d - -; play melody byte -187a: 5f 62 1b jmp $1b62 - -187d: 3f f3 0b call $0bf3 -1880: 3f 29 1a call $1a29 ; get 1 byte -1883: fd mov y,a ; separate the flags -1884: ad e0 cmp y,#$e0 ; check if it's a vector command -1886: 90 16 bcc $189e ; if not a vector... -1888: dd mov a,y -1889: 28 1f and a,#$1f ; mask off bits -188b: 1c asl a -188c: fd mov y,a -188d: f6 53 1c mov a,$1c53+y -1890: c5 9c 18 mov $189c,a -1893: f6 54 1c mov a,$1c54+y -1896: c5 9d 18 mov $189d,a -1899: eb 3a mov y,$3a -189b: 5f c8 1a jmp $1ac8 - -189e: ad c0 cmp y,#$c0 ; is it a rest? -18a0: 90 06 bcc $18a8 -18a2: 80 setc -18a3: a8 bf sbc a,#$bf ; get the duration -18a5: 5f ab 1a jmp $1aab ; and set rest - -18a8: ad 00 cmp y,#$00 ; is it a relative note? -18aa: 10 06 bpl $18b2 ; if so, play the note -18ac: 80 setc ; otherwise, it must be an absolute note... -18ad: a8 60 sbc a,#$60 -18af: fd mov y,a -18b0: 2f 16 bra $18c8 -18b2: 2d push a -18b3: 5c lsr a -18b4: 5c lsr a -18b5: 5c lsr a -18b6: 80 setc -18b7: a8 08 sbc a,#$08 -18b9: 60 clrc -18ba: 95 76 02 adc a,$0276+x -18bd: fd mov y,a -18be: ae pop a -18bf: 28 07 and a,#$07 -18c1: bc inc a -18c2: 2f 07 bra $18cb - -; vcmd ef - play absolute note -18c4: 3f 29 1a call $1a29 -18c7: fd mov y,a -18c8: 3f 29 1a call $1a29 -18cb: 2d push a -18cc: e8 00 mov a,#$00 -18ce: d5 c6 02 mov $02c6+x,a -18d1: d5 da 02 mov $02da+x,a -18d4: dd mov a,y -18d5: d5 76 02 mov $0276+x,a -18d8: 8f 01 8c mov $8c,#$01 -18db: f3 07 02 bbc7 $07,$18e0 -18de: 8b 8c dec $8c -18e0: f2 07 clr7 $07 -18e2: ae pop a -18e3: 3f e9 18 call $18e9 -18e6: 5f 13 17 jmp $1713 - -18e9: d4 b7 mov $b7+x,a -18eb: 3f 0c 1c call $1c0c -18ee: f5 7a 03 mov a,$037a+x -18f1: 28 01 and a,#$01 -18f3: d0 61 bne $1956 -18f5: e4 8c mov a,$8c -18f7: f0 06 beq $18ff -18f9: 3f b0 17 call $17b0 -18fc: 73 07 16 bbc3 $07,$1915 -18ff: f5 27 06 mov a,$0627+x -1902: 30 0d bmi $1911 -1904: fd mov y,a -1905: 7d mov a,x -1906: 08 80 or a,#$80 -1908: 76 d2 00 cmp a,$00d2+y -190b: d0 04 bne $1911 -190d: dd mov a,y -190e: 5d mov x,a -190f: 2f 4a bra $195b -1911: ab 8c inc $8c -1913: 72 07 clr3 $07 -1915: e8 ff mov a,#$ff -1917: d5 27 06 mov $0627+x,a -191a: f5 b2 02 mov a,$02b2+x -191d: c4 54 mov $54,a -191f: f5 eb 05 mov a,$05eb+x -1922: c4 0b mov $0b,a -1924: f5 13 06 mov a,$0613+x -1927: c4 53 mov $53,a -1929: f5 ff 05 mov a,$05ff+x -192c: 5d mov x,a -192d: f5 e0 17 mov a,$17e0+x -1930: c4 55 mov $55,a -1932: 3f 92 0e call $0e92 -1935: 30 1f bmi $1956 -1937: f5 7a 03 mov a,$037a+x -193a: 28 fd and a,#$fd -193c: b3 0b 02 bbc5 $0b,$1941 -193f: 08 02 or a,#$02 -1941: d5 7a 03 mov $037a+x,a -1944: d3 0b 12 bbc6 $0b,$1959 -1947: 7d mov a,x -1948: 53 0b 03 bbc2 $0b,$194e -194b: bc inc a -194c: 2f 01 bra $194f -194e: 9c dec a -194f: 28 07 and a,#$07 -1951: d5 ff 05 mov $05ff+x,a -1954: 2f 03 bra $1959 -1956: 5f 24 1a jmp $1a24 - -1959: 7d mov a,x -195a: fd mov y,a -195b: f8 8b mov x,$8b -195d: d5 27 06 mov $0627+x,a -1960: 7d mov a,x -1961: 08 80 or a,#$80 -1963: d6 d2 00 mov $00d2+y,a -1966: e4 8c mov a,$8c -1968: f0 00 beq $196a -196a: cb cb mov $cb,y -196c: e8 01 mov a,#$01 -196e: d6 6f 00 mov $006f+y,a -1971: f5 b2 02 mov a,$02b2+x -1974: d6 12 00 mov $0012+y,a -1977: dd mov a,y -1978: 1c asl a -1979: fd mov y,a -197a: f5 ee 02 mov a,$02ee+x -197d: d6 5b 01 mov $015b+y,a -1980: f5 02 03 mov a,$0302+x -1983: d6 5c 01 mov $015c+y,a -1986: f5 76 02 mov a,$0276+x -1989: 8d 14 mov y,#$14 -198b: cf mul ya -198c: 80 setc -198d: a8 84 sbc a,#$84 -198f: c4 50 mov $50,a -1991: dd mov a,y -1992: a8 03 sbc a,#$03 -1994: c4 51 mov $51,a -1996: f5 da 02 mov a,$02da+x -1999: fd mov y,a -199a: f5 c6 02 mov a,$02c6+x -199d: 7a 50 addw ya,$50 -199f: da 50 movw $50,ya -19a1: f5 4f 06 mov a,$064f+x -19a4: fd mov y,a -19a5: f5 3b 06 mov a,$063b+x -19a8: 7a 50 addw ya,$50 -19aa: 7a 61 addw ya,$61 -19ac: da 50 movw $50,ya -19ae: f5 77 06 mov a,$0677+x -19b1: fd mov y,a -19b2: f5 63 06 mov a,$0663+x -19b5: 7a 50 addw ya,$50 -19b7: dd mov a,y -19b8: eb 8c mov y,$8c -19ba: d0 13 bne $19cf -19bc: c4 3d mov $3d,a -19be: fa 50 3c mov ($3c),($50) -19c1: 8f d4 00 mov $00,#$d4 -19c4: 8f fc 01 mov $01,#$fc -19c7: 7d mov a,x -19c8: 08 80 or a,#$80 -19ca: 3f b8 1d call $1db8 -19cd: 2f 55 bra $1a24 -19cf: f5 c3 05 mov a,$05c3+x -19d2: 10 02 bpl $19d6 -19d4: e8 7f mov a,#$7f -19d6: c4 cc mov $cc,a -19d8: e4 cb mov a,$cb -19da: 1c asl a -19db: fd mov y,a -19dc: e8 00 mov a,#$00 -19de: 12 07 clr0 $07 -19e0: d6 da 00 mov $00da+y,a -19e3: d6 db 00 mov $00db+y,a -19e6: e4 cb mov a,$cb -19e8: fd mov y,a -19e9: f6 46 02 mov a,$0246+y -19ec: 08 02 or a,#$02 -19ee: d6 46 02 mov $0246+y,a -19f1: e8 ff mov a,#$ff -19f3: d6 92 03 mov $0392+y,a -19f6: f5 9e 02 mov a,$029e+x -19f9: d6 9a 03 mov $039a+y,a -19fc: f5 16 03 mov a,$0316+x -19ff: c4 0f mov $0f,a -1a01: f5 62 02 mov a,$0262+x -1a04: c5 3d 02 mov $023d,a -1a07: f5 3e 03 mov a,$033e+x -1a0a: c4 0e mov $0e,a -1a0c: f5 52 03 mov a,$0352+x -1a0f: c4 11 mov $11,a -1a11: f5 2a 03 mov a,$032a+x -1a14: c4 10 mov $10,a -1a16: eb cc mov y,$cc -1a18: f5 8a 02 mov a,$028a+x -1a1b: cf mul ya -1a1c: f5 d7 05 mov a,$05d7+x -1a1f: f8 cb mov x,$cb -1a21: 3f 04 0f call $0f04 -1a24: ab 8c inc $8c -1a26: 72 07 clr3 $07 -1a28: 6f ret - -1a29: 3f f3 0b call $0bf3 -1a2c: f8 8b mov x,$8b -1a2e: f4 8f mov a,$8f+x -1a30: c5 39 1a mov $1a39,a -1a33: f4 a3 mov a,$a3+x -1a35: c5 3a 1a mov $1a3a,a -1a38: e5 53 9e mov a,$9e53 -1a3b: bb 8f inc $8f+x -1a3d: d0 02 bne $1a41 -1a3f: bb a3 inc $a3+x -1a41: 6f ret - -; vcmd e9 - set effects mask -1a42: 3f 29 1a call $1a29 -1a45: c4 0c mov $0c,a -1a47: 2f 09 bra $1a52 - -; vcmd e6 - set standard allocation -1a49: e8 08 mov a,#$08 -1a4b: d5 eb 05 mov $05eb+x,a -1a4e: 7d mov a,x -1a4f: d5 ff 05 mov $05ff+x,a -1a52: 5f 56 18 jmp $1856 - -; vcmd e5 - set channel allocation -1a55: 3f 29 1a call $1a29 -1a58: d5 eb 05 mov $05eb+x,a -1a5b: 3f 29 1a call $1a29 -1a5e: d5 ff 05 mov $05ff+x,a -1a61: 3f 29 1a call $1a29 -1a64: d5 13 06 mov $0613+x,a -1a67: 2f e9 bra $1a52 - -; vcmd f0 - end of sequence -1a69: 3f b0 17 call $17b0 -1a6c: e8 00 mov a,#$00 -1a6e: d5 66 03 mov $0366+x,a -1a71: 8b 89 dec $89 -1a73: 5f 13 17 jmp $1713 - -; vcmd f1 - delta expression -1a76: f5 c3 05 mov a,$05c3+x -1a79: 3f 81 1a call $1a81 -1a7c: d5 c3 05 mov $05c3+x,a -1a7f: 2f d1 bra $1a52 -1a81: 4d push x -1a82: fd mov y,a -1a83: 6d push y -1a84: 3f 29 1a call $1a29 -1a87: cf mul ya -1a88: da 3a movw $3a,ya -1a8a: ee pop y -1a8b: 3f 29 1a call $1a29 -1a8e: cf mul ya -1a8f: 6d push y -1a90: 0b 3a asl $3a -1a92: 84 3b adc a,$3b -1a94: 5d mov x,a -1a95: ae pop a -1a96: 88 00 adc a,#$00 -1a98: fd mov y,a -1a99: d0 03 bne $1a9e -1a9b: 7d mov a,x -1a9c: 10 02 bpl $1aa0 -1a9e: e8 7f mov a,#$7f -1aa0: ce pop x -1aa1: 6f ret - -; vcmd f2 - absolute expression -1aa2: 3f 29 1a call $1a29 -1aa5: d5 c3 05 mov $05c3+x,a -1aa8: 5f 56 18 jmp $1856 - -1aab: 2d push a -1aac: 3f b0 17 call $17b0 -1aaf: ae pop a -1ab0: d4 b7 mov $b7+x,a -1ab2: 3f 0c 1c call $1c0c -1ab5: 5f 13 17 jmp $1713 - -; vcmd fd - set time (delay) - 64 -1ab8: e8 40 mov a,#$40 -1aba: 2f f4 bra $1ab0 - -; vcnd f8 - set time (delay) - 32 -1abc: e8 20 mov a,#$20 -1abe: 2f f0 bra $1ab0 - -; vcmd fe - set time (delay) - 128 -1ac0: e8 80 mov a,#$80 -1ac2: 2f ec bra $1ab0 - -; vcmd ff - set time (delay) - 256 -1ac4: e8 00 mov a,#$00 -1ac6: 2f e8 bra $1ab0 - -; vcmd f5 - set sound (instrument) -1ac8: 3f 29 1a call $1a29 -1acb: d5 d7 05 mov $05d7+x,a -1ace: f5 4e 02 mov a,$024e+x -1ad1: 68 05 cmp a,#$05 -1ad3: f0 2b beq $1b00 -1ad5: 3f d3 17 call $17d3 -1ad8: f6 98 fd mov a,$fd98+y -1adb: c4 00 mov $00,a -1add: f6 34 fd mov a,$fd34+y -1ae0: c4 01 mov $01,a -1ae2: f6 04 fc mov a,$fc04+y -1ae5: 8d 09 mov y,#$09 -1ae7: 77 00 cmp a,($00)+y -1ae9: 90 02 bcc $1aed -1aeb: e8 00 mov a,#$00 -1aed: bc inc a -1aee: eb 02 mov y,$02 -1af0: d6 04 fc mov $fc04+y,a -1af3: 60 clrc -1af4: 88 09 adc a,#$09 -1af6: fd mov y,a -1af7: f7 00 mov a,($00)+y -1af9: 68 ff cmp a,#$ff -1afb: f0 03 beq $1b00 -1afd: d5 d7 05 mov $05d7+x,a -1b00: 5f 56 18 jmp $1856 - -; vcmd f6 - play phrase -1b03: f5 4e 02 mov a,$024e+x -1b06: 9c dec a -1b07: d5 4e 02 mov $024e+x,a -1b0a: 3f d3 17 call $17d3 -1b0d: f4 8f mov a,$8f+x -1b0f: d6 98 fd mov $fd98+y,a -1b12: f4 a3 mov a,$a3+x -1b14: d6 34 fd mov $fd34+y,a -1b17: e8 00 mov a,#$00 -1b19: d6 68 fc mov $fc68+y,a -1b1c: 3f 29 1a call $1a29 -1b1f: 2d push a -1b20: 3f 2e 1a call $1a2e -1b23: 2d push a -1b24: 3f 2e 1a call $1a2e -1b27: 3f 2e 1a call $1a2e -1b2a: 3f 2e 1a call $1a2e -1b2d: 3f 2e 1a call $1a2e -1b30: fd mov y,a -1b31: 3f 2e 1a call $1a2e -1b34: 2d push a -1b35: dd mov a,y -1b36: 60 clrc -1b37: 95 3b 06 adc a,$063b+x -1b3a: d5 3b 06 mov $063b+x,a -1b3d: ae pop a -1b3e: 95 4f 06 adc a,$064f+x -1b41: d5 4f 06 mov $064f+x,a -1b44: f5 c3 05 mov a,$05c3+x -1b47: eb 02 mov y,$02 -1b49: d6 00 fe mov $fe00+y,a -1b4c: 3f 81 1a call $1a81 -1b4f: d5 c3 05 mov $05c3+x,a -1b52: eb 02 mov y,$02 -1b54: e8 00 mov a,#$00 -1b56: d6 04 fc mov $fc04+y,a -1b59: ae pop a -1b5a: d4 a3 mov $a3+x,a -1b5c: ae pop a -1b5d: d4 8f mov $8f+x,a -1b5f: 5f 56 18 jmp $1856 - -1b62: eb 02 mov y,$02 -1b64: f6 68 fc mov a,$fc68+y -1b67: bc inc a -1b68: d6 68 fc mov $fc68+y,a -1b6b: 8d 04 mov y,#$04 -1b6d: f7 00 mov a,($00)+y -1b6f: f0 07 beq $1b78 -1b71: eb 02 mov y,$02 -1b73: 76 68 fc cmp a,$fc68+y -1b76: f0 0f beq $1b87 -1b78: 8d 00 mov y,#$00 -1b7a: f7 00 mov a,($00)+y -1b7c: d4 8f mov $8f+x,a -1b7e: 8d 01 mov y,#$01 -1b80: f7 00 mov a,($00)+y -1b82: d4 a3 mov $a3+x,a -1b84: 5f 7d 18 jmp $187d - -1b87: f5 3b 06 mov a,$063b+x -1b8a: 80 setc -1b8b: 8d 05 mov y,#$05 -1b8d: b7 00 sbc a,($00)+y -1b8f: d5 3b 06 mov $063b+x,a -1b92: f5 4f 06 mov a,$064f+x -1b95: 8d 06 mov y,#$06 -1b97: b7 00 sbc a,($00)+y -1b99: d5 4f 06 mov $064f+x,a -1b9c: eb 02 mov y,$02 -1b9e: f6 00 fe mov a,$fe00+y -1ba1: d5 c3 05 mov $05c3+x,a -1ba4: e4 00 mov a,$00 -1ba6: 60 clrc -1ba7: 88 0a adc a,#$0a -1ba9: d4 8f mov $8f+x,a -1bab: e4 01 mov a,$01 -1bad: 88 00 adc a,#$00 -1baf: d4 a3 mov $a3+x,a -1bb1: 8d 09 mov y,#$09 -1bb3: f7 00 mov a,($00)+y -1bb5: 60 clrc -1bb6: 94 8f adc a,$8f+x -1bb8: d4 8f mov $8f+x,a -1bba: f4 a3 mov a,$a3+x -1bbc: 88 00 adc a,#$00 -1bbe: d4 a3 mov $a3+x,a -1bc0: f5 4e 02 mov a,$024e+x -1bc3: bc inc a -1bc4: d5 4e 02 mov $024e+x,a -1bc7: 5f 56 18 jmp $1856 - -; vcmd ea - set release -1bca: 3f b0 17 call $17b0 -1bcd: 2f 03 bra $1bd2 - -; vcmd f9 - go to loop -1bcf: 3f c7 1c call $1cc7 -1bd2: 5f 56 18 jmp $1856 - -; vcmd fa - set tempo -1bd5: 3f 29 1a call $1a29 -1bd8: c4 cd mov $cd,a -1bda: 2f f6 bra $1bd2 - -; vcmd fb - set panning -1bdc: 3f 29 1a call $1a29 -1bdf: d5 9e 02 mov $029e+x,a -1be2: 2f ee bra $1bd2 - -; vcmd e0 - set hardware detune -1be4: 3f 29 1a call $1a29 -1be7: d5 ee 02 mov $02ee+x,a -1bea: 3f 29 1a call $1a29 -1bed: d5 02 03 mov $0302+x,a -1bf0: 2f e0 bra $1bd2 - -; vcmd f3 - set priority -1bf2: 3f 29 1a call $1a29 -1bf5: d5 b2 02 mov $02b2+x,a -1bf8: c2 07 set6 $07 -1bfa: 2f d6 bra $1bd2 - -; vcmd ed - set velocity -1bfc: 3f 29 1a call $1a29 -1bff: d5 8a 02 mov $028a+x,a -1c02: 2f ce bra $1bd2 - -1c04: 62 07 set3 $07 -1c06: 2f ca bra $1bd2 - -; vcmd f4 - set tied note -1c08: e2 07 set7 $07 -1c0a: 2f c6 bra $1bd2 - -1c0c: e8 02 mov a,#$02 -1c0e: d5 66 03 mov $0366+x,a -1c11: 6f ret - -1c12: e8 08 mov a,#$08 -1c14: d5 66 03 mov $0366+x,a -1c17: 6f ret - -; vcmd e1 - set amplitude articulation -1c18: 3f 29 1a call $1a29 -1c1b: d5 16 03 mov $0316+x,a -1c1e: 2f b2 bra $1bd2 - -1c20: 3f 29 1a call $1a29 -1c23: d5 62 02 mov $0262+x,a -1c26: 2f aa bra $1bd2 - -; vcmd e2 - set stereo articulation -1c28: 3f 29 1a call $1a29 -1c2b: d5 52 03 mov $0352+x,a -1c2e: 2f a2 bra $1bd2 - -; vcmd e4 - set pitch articulation -1c30: 3f 29 1a call $1a29 -1c33: d5 2a 03 mov $032a+x,a -1c36: 2f f6 bra $1c2e - -; vcmd e3 - set tone articulation -1c38: 3f 29 1a call $1a29 -1c3b: d5 3e 03 mov $033e+x,a -1c3e: 2f ee bra $1c2e - -; vcmd e7 - reset track -1c40: 3f e4 1c call $1ce4 -1c43: 2f e9 bra $1c2e - -; vcmd f7 - set detune -1c45: 3f 29 1a call $1a29 -1c48: d5 63 06 mov $0663+x,a -1c4b: 3f 29 1a call $1a29 -1c4e: d5 77 06 mov $0677+x,a -1c51: 2f db bra $1c2e - -; vcmd table (e0-ff) -1c53: dw $1be4 ; e0 - set hardware detune -1c55: dw $1c18 ; e1 - set amplitude articulation -1c57: dw $1c28 ; e2 - set stereo articulation -1c59: dw $1c38 ; e3 - set tone articulation -1c5b: dw $1c30 ; e4 - set pitch articulation -1c5d: dw $1a55 ; e5 - set channel allocation -1c5f: dw $1a49 ; e6 - set standard allocation -1c61: dw $1c40 ; e7 - reset track -1c63: dw $0000 ; e8 - redirect track (disabled) -1c65: dw $1a42 ; e9 - set effects mask -1c67: dw $1bca ; ea - set release -1c69: dw $175a ; eb - set pitch bend state -1c6b: dw $1757 ; ec - set pitch bend state and release -1c6d: dw $1bfc ; ed - set velocity -1c6f: dw $0000 ; ee - extended command (disabled) -1c70: dw $18c4 ; ef - play absolute note -1c72: dw $1a69 ; f0 - end of sequence -1c74: dw $1a76 ; f1 - delta expression -1c76: dw $1aa2 ; f2 - absolute expression -1c78: dw $1bf2 ; f3 - set priority -1c7a: dw $1c08 ; f4 - set tied note -1c7c: dw $1ac8 ; f5 - set sound (instrument) -1c7e: dw $1b03 ; f6 - play phrase -1c80: dw $1c45 ; f7 - set detune -1c82: dw $1abc ; f8 - set time (delay) - 32 -1c84: dw $1bcf ; f9 - go to loop -1c86: dw $1bd5 ; fa - set tempo -1c88: dw $1bdc ; fb - set panning -1c8a: dw $1c04 ; fc - set no retrigger -1c8c: dw $1ab8 ; fd - set time (delay) - 64 -1c8e: dw $1ac0 ; fe - set time (delay) - 128 -1c90: dw $1ac4 ; ff - set time (delay) - 256 - -1c93: 2d push a -1c94: 3f 50 0d call $0d50 -1c97: ae pop a -1c98: 92 07 clr4 $07 -1c9a: 8d 1a mov y,#$1a -1c9c: 3f 63 10 call $1063 -1c9f: da 8d movw $8d,ya -1ca1: 8d 00 mov y,#$00 -1ca3: f7 8d mov a,($8d)+y -1ca5: c4 88 mov $88,a -1ca7: c4 89 mov $89,a -1ca9: f0 1b beq $1cc6 -1cab: cb 8b mov $8b,y -1cad: 3f c7 1c call $1cc7 -1cb0: ab 8b inc $8b -1cb2: e8 00 mov a,#$00 -1cb4: d3 08 02 bbc6 $08,$1cb9 -1cb7: e8 01 mov a,#$01 -1cb9: f8 8b mov x,$8b -1cbb: 35 7a 03 and a,$037a+x -1cbe: d5 7a 03 mov $037a+x,a -1cc1: 69 88 8b cmp ($8b),($88) -1cc4: d0 e7 bne $1cad -1cc6: 6f ret - -1cc7: e4 8b mov a,$8b -1cc9: 5d mov x,a -1cca: 1c asl a -1ccb: bc inc a -1ccc: fd mov y,a -1ccd: f7 8d mov a,($8d)+y -1ccf: d4 8f mov $8f+x,a -1cd1: fc inc y -1cd2: f7 8d mov a,($8d)+y -1cd4: d4 a3 mov $a3+x,a -1cd6: e8 ff mov a,#$ff -1cd8: c4 ce mov $ce,a -1cda: e8 05 mov a,#$05 -1cdc: d5 4e 02 mov $024e+x,a -1cdf: e8 04 mov a,#$04 -1ce1: d5 66 03 mov $0366+x,a -1ce4: 72 07 clr3 $07 -1ce6: f2 07 clr7 $07 -1ce8: f8 8b mov x,$8b -1cea: e8 08 mov a,#$08 -1cec: d5 eb 05 mov $05eb+x,a -1cef: 7d mov a,x -1cf0: d5 ff 05 mov $05ff+x,a -1cf3: e8 00 mov a,#$00 -1cf5: d5 76 02 mov $0276+x,a -1cf8: d5 c6 02 mov $02c6+x,a -1cfb: d5 da 02 mov $02da+x,a -1cfe: d5 3b 06 mov $063b+x,a -1d01: d5 4f 06 mov $064f+x,a -1d04: d5 63 06 mov $0663+x,a -1d07: d5 77 06 mov $0677+x,a -1d0a: d5 ee 02 mov $02ee+x,a -1d0d: d5 02 03 mov $0302+x,a -1d10: d5 16 03 mov $0316+x,a -1d13: d5 62 02 mov $0262+x,a -1d16: d5 52 03 mov $0352+x,a -1d19: d5 3e 03 mov $033e+x,a -1d1c: d5 2a 03 mov $032a+x,a -1d1f: d5 9e 02 mov $029e+x,a -1d22: 9c dec a -1d23: d5 27 06 mov $0627+x,a -1d26: d5 8a 02 mov $028a+x,a -1d29: e8 40 mov a,#$40 -1d2b: d5 b2 02 mov $02b2+x,a -1d2e: e8 7f mov a,#$7f -1d30: d5 c3 05 mov $05c3+x,a -1d33: c2 07 set6 $07 -1d35: 8f 6f 00 mov $00,#$6f -1d38: 8f 00 01 mov $01,#$00 -1d3b: 7d mov a,x -1d3c: 08 80 or a,#$80 -1d3e: 8d 00 mov y,#$00 -1d40: 5f 81 1d jmp $1d81 - -1d43: c4 5f mov $5f,a -1d45: 6f ret - -1d46: c4 60 mov $60,a -1d48: 6f ret - -1d49: da 61 movw $61,ya -1d4b: 6f ret - -1d4c: da 2e movw $2e,ya -1d4e: 6f ret - -1d4f: c4 fb mov $fb,a -1d51: 6f ret - -1d52: 28 7f and a,#$7f -1d54: c5 3e 02 mov $023e,a -1d57: 6f ret - -1d58: 12 08 clr0 $08 -1d5a: c5 06 01 mov $0106,a -1d5d: 68 ff cmp a,#$ff -1d5f: f0 02 beq $1d63 -1d61: 02 08 set0 $08 -1d63: 6f ret - -1d64: c5 3f 02 mov $023f,a -1d67: 6f ret - -1d68: c5 40 02 mov $0240,a -1d6b: 6f ret - -1d6c: c5 41 02 mov $0241,a -1d6f: cc 42 02 mov $0242,y -1d72: 6f ret - -1d73: 8f 9a 00 mov $00,#$9a -1d76: 8f 03 01 mov $01,#$03 -1d79: 2f 06 bra $1d81 - -1d7b: 8f 92 00 mov $00,#$92 -1d7e: 8f 03 01 mov $01,#$03 -1d81: c4 3a mov $3a,a -1d83: dd mov a,y -1d84: 5d mov x,a -1d85: e8 07 mov a,#$07 -1d87: fd mov y,a -1d88: f6 d2 00 mov a,$00d2+y -1d8b: 2e 3a 03 cbne $3a,$1d91 -1d8e: 7d mov a,x -1d8f: d7 00 mov ($00)+y,a -1d91: dc dec y -1d92: 10 f4 bpl $1d88 -1d94: 6f ret - -1d95: 28 7f and a,#$7f -1d97: c4 3a mov $3a,a -1d99: cd 07 mov x,#$07 -1d9b: f4 d2 mov a,$d2+x -1d9d: 2e 3a 08 cbne $3a,$1da8 -1da0: f5 46 02 mov a,$0246+x -1da3: 08 03 or a,#$03 -1da5: d5 46 02 mov $0246+x,a -1da8: 1d dec x -1da9: 10 f0 bpl $1d9b -1dab: 6f ret - -1dac: 8f da 00 mov $00,#$da -1daf: 8f 00 01 mov $01,#$00 -1db2: fa 2e 3c mov ($3c),($2e) -1db5: fa 2f 3d mov ($3d),($2f) -1db8: c4 3a mov $3a,a -1dba: e8 0f mov a,#$0f -1dbc: fd mov y,a -1dbd: e8 07 mov a,#$07 -1dbf: 5d mov x,a -1dc0: f4 d2 mov a,$d2+x -1dc2: 2e 3a 0a cbne $3a,$1dcf -1dc5: e4 3d mov a,$3d -1dc7: d7 00 mov ($00)+y,a -1dc9: dc dec y -1dca: e4 3c mov a,$3c -1dcc: d7 00 mov ($00)+y,a -1dce: fc inc y -1dcf: dc dec y -1dd0: dc dec y -1dd1: 1d dec x -1dd2: 10 ec bpl $1dc0 -1dd4: 6f ret - -1dd5: 5d mov x,a -1dd6: e8 01 mov a,#$01 -1dd8: 15 7a 03 or a,$037a+x -1ddb: d5 7a 03 mov $037a+x,a -1dde: 6f ret - -1ddf: 5d mov x,a -1de0: e8 fe mov a,#$fe -1de2: 35 7a 03 and a,$037a+x -1de5: 2f f4 bra $1ddb -1de7: 2e 03 03 cbne $03,$1ded -1dea: d2 08 clr6 $08 -1dec: 6f ret - -1ded: c2 08 set6 $08 -1def: 6f ret - -1df0: 02 09 set0 $09 -1df2: 2e 03 02 cbne $03,$1df7 -1df5: 12 09 clr0 $09 -1df7: 6f ret - -1df8: dw $1713,$1746,$1856,$17e8,$173b,$0ce2,$0d16,$0d1b,$0d07,$1d95,$0000,$078c,$0da4,$0cf5,$0cef,$0ceb,$0000,$0d50,$0d52,$1e55,$0000,$0000,$0da9,$0d13,$1d43,$1d4f,$1d49,$1d46,$1d6c,$1d52,$1d64,$1d7b,$1d4c,$1dac,$1d68,$1d73,$1d58,$1dd5,$1ddf,$1de7,$0788,$1df0,$1e5f - -; uncompiled source code -1e95: db $20,$20,$20,$20,$20,$20,$20,$20,$72,$65,$74,$0d,$0a,$53,$65,$74,$4e,$65,$78,$74,$45,$66,$66,$65,$63,$74,$50,$61,$6e,$0d,$0a,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$6d,$6f,$76,$20,$4e,$65,$78,$74,$45,$78,$53,$74,$65,$72,$65,$6f,$4d,$6f,$64,$2c,$00,$ From cd6369312980ff24a2dc2b40d67dd4fcc8ccf712 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:49:43 -0700 Subject: [PATCH 014/116] Delete WWF Super WrestleMania.s --- WWF Super WrestleMania.s | 1897 -------------------------------------- 1 file changed, 1897 deletions(-) delete mode 100644 WWF Super WrestleMania.s diff --git a/WWF Super WrestleMania.s b/WWF Super WrestleMania.s deleted file mode 100644 index 83f784b6..00000000 --- a/WWF Super WrestleMania.s +++ /dev/null @@ -1,1897 +0,0 @@ -0700: 20 clrp -0701: cd ff mov x,#$ff ; set stack pointer -0703: bd mov sp,x -0704: 8f 6c f2 mov $f2,#$6c ; reset DSP flags -0707: d8 f3 mov $f3,x -0709: 8f b0 f1 mov $f1,#$b0 ; clear input ports APUI00-APUI04 -070c: 8f 20 fa mov $fa,#$20 -070f: 8f 81 f1 mov $f1,#$81 ; toggle timer 2 -0712: 3f d3 0d call $0dd3 ; clear/reset routine -0715: 8f 00 0b mov $0b,#$00 ; variables = sample directory start -0718: 8f 18 0c mov $0c,#$18 -071b: 8d 03 mov y,#$03 ; set temporary storage -071d: f6 ff ff mov a,$ffff+y -0720: 16 27 07 or a,$0727+y -0723: d6 ff ff mov $ffff+y,a -0726: fe f5 dbnz y,$071d -0728: ab 15 inc $15 -072a: e4 1b mov a,$1b -072c: d0 05 bne $0733 -072e: 3f 96 15 call $1596 ; do a random number generator (RNG) -0731: 2f 03 bra $0736 -0733: 3f 56 08 call $0856 -0736: e4 f6 mov a,$f6 -0738: f0 03 beq $073d -073a: 3f 3b 0b call $0b3b -073d: e4 fd mov a,$fd -073f: 60 clrc -0740: 84 14 adc a,$14 -0742: c4 14 mov $14,a -0744: 68 05 cmp a,#$05 -0746: 90 ee bcc $0736 -0748: a8 05 sbc a,#$05 -074a: c4 14 mov $14,a -074c: 68 14 cmp a,#$14 -074e: 90 d8 bcc $0728 -0750: 8f 00 14 mov $14,#$00 -0753: 2f d3 bra $0728 -0755: 8d 00 mov y,#$00 -0757: 8f aa f4 mov $f4,#$aa -075a: 8f bb f5 mov $f5,#$bb -075d: f8 f4 mov x,$f4 -075f: c8 cc cmp x,#$cc -0761: d0 fa bne $075d -0763: fa f6 03 mov ($03),($f6) -0766: fa f7 04 mov ($04),($f7) -0769: 7d mov a,x -076a: f8 f5 mov x,$f5 -076c: c4 f4 mov $f4,a -076e: d0 03 bne $0773 -0770: 1f 03 00 jmp ($0003+x) - -0773: cd 00 mov x,#$00 -0775: 3e f4 cmp x,$f4 -0777: d0 fc bne $0775 -0779: e4 f5 mov a,$f5 -077b: d7 03 mov ($03)+y,a -077d: f8 f4 mov x,$f4 -077f: d8 f4 mov $f4,x -0781: 3a 03 incw $03 -0783: 3e f4 cmp x,$f4 -0785: f0 fc beq $0783 -0787: 3d inc x -0788: 3e f4 cmp x,$f4 -078a: f0 ed beq $0779 -078c: f8 f4 mov x,$f4 -078e: 2f d3 bra $0763 -0790: 3f d3 0d call $0dd3 -0793: 8f b0 f1 mov $f1,#$b0 -0796: cd 00 mov x,#$00 -0798: f5 55 07 mov a,$0755+x -079b: d5 00 01 mov $0100+x,a -079e: 3d inc x -079f: c8 3b cmp x,#$3b -07a1: 90 f5 bcc $0798 -07a3: 5f 00 01 jmp $0100 - -; gain tables -07a6: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 -07bc: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 - -; DSP registers: VxENVX -07d2: db $08,$18,$28,$38,$48,$58,$68,$78 -; DSP registers: VxGAIN -07da: db $07,$17,$27,$37,$47,$57,$67,$77 -; DSP registers: VxSCRN (select sample) -07e2: db $04,$14,$24,$34,$44,$54,$64,$74 -; DSP registers: VxPITCHL -07ea: db $02,$12,$22,$32,$42,$52,$62,$72 -; DSP registers: VxVOLL -07f2: db $00,$10,$20,$30,$40,$50,$60,$70 - -; voice numbers and bits for clearing those void bits -07fa: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f,$7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f - -; echo poke registers -0816: db $02,$02,$02,$02,$02,$03,$03,$03 - -081e: db $97,$ac,$c1,$d6,$eb,$00,$15,$2a - -0826: db $03,$03,$03,$03,$03,$03,$03,$03 - -082e: db $3f,$54,$69,$7e,$93,$a8,$bd,$d2 - -0836: db $03,$03,$04,$04,$04,$04,$04,$04 - -083e: db $e7,$fc,$11,$26,$3b,$50,$65,$7a - -0846: db $04,$04,$04,$04,$04,$04,$05,$05 - -084e: db $8f,$a5,$bb,$d1,$e7,$fd,$13,$29 - -084e: 8f a5 bb mov $bb,#$a5 -0851: d1 tcall 13 -0852: e7 fd mov a,($fd+x) -0854: 13 29 3f bbc0 $29,$0896 -0857: 96 15 3f adc a,$3f15+y -085a: 22 13 set1 $13 -085c: 8f 00 2f mov $2f,#$00 -085f: 8f 00 44 mov $44,#$00 -0862: 8f 7c f2 mov $f2,#$7c ; clear end of sample flags? -0865: e4 f3 mov a,$f3 -0867: 04 41 or a,$41 -0869: 24 47 and a,$47 -086b: c4 41 mov $41,a -086d: 8f 00 f3 mov $f3,#$00 -0870: 24 42 and a,$42 -0872: 04 43 or a,$43 -0874: c4 43 mov $43,a -0876: cd 07 mov x,#$07 -0878: 8f 7a 0d mov $0d,#$7a -087b: 8f 04 0e mov $0e,#$04 -087e: d8 0f mov $0f,x -0880: f5 fa 07 mov a,$07fa+x ; clear voice number bits -0883: c4 31 mov $31,a -0885: 48 ff eor a,#$ff -0887: c4 32 mov $32,a -0889: f4 53 mov a,$53+x -088b: 28 02 and a,#$02 -088d: c4 30 mov $30,a -088f: d0 06 bne $0897 -0891: f5 77 02 mov a,$0277+x -0894: 5f 9c 08 jmp $089c - -0897: 3f f3 0e call $0ef3 -089a: f8 0f mov x,$0f -089c: 75 7f 02 cmp a,$027f+x -089f: d0 10 bne $08b1 -08a1: 3f 8d 10 call $108d -08a4: 3f 21 0b call $0b21 -08a7: e4 48 mov a,$48 -08a9: 24 45 and a,$45 -08ab: 24 31 and a,$31 -08ad: d0 43 bne $08f2 -08af: f0 44 beq $08f5 -08b1: d5 7f 02 mov $027f+x,a -08b4: 09 31 2f or ($2f),($31) -08b7: 3f 8d 10 call $108d -08ba: 7d mov a,x -08bb: 1c asl a -08bc: 5d mov x,a -08bd: e4 49 mov a,$49 -08bf: d5 87 02 mov $0287+x,a -08c2: e4 4a mov a,$4a -08c4: d5 88 02 mov $0288+x,a -08c7: f8 0f mov x,$0f -08c9: e4 4b mov a,$4b -08cb: 28 20 and a,#$20 -08cd: f0 05 beq $08d4 -08cf: 29 32 42 and ($42),($32) -08d2: 2f 03 bra $08d7 -08d4: 09 31 42 or ($42),($31) -08d7: e4 4b mov a,$4b -08d9: 28 40 and a,#$40 -08db: f0 05 beq $08e2 -08dd: 09 31 48 or ($48),($31) -08e0: 2f 03 bra $08e5 -08e2: 29 32 48 and ($48),($32) -08e5: 3f 21 0b call $0b21 -08e8: e4 48 mov a,$48 -08ea: 04 45 or a,$45 -08ec: 24 31 and a,$31 -08ee: d0 02 bne $08f2 -08f0: f0 03 beq $08f5 -08f2: 09 31 44 or ($44),($31) -08f5: 1d dec x -08f6: 30 0a bmi $0902 -08f8: 80 setc -08f9: b8 15 0d sbc $0d,#$15 -08fc: b8 00 0e sbc $0e,#$00 -08ff: 5f 7e 08 jmp $087e - -0902: e4 45 mov a,$45 -0904: 24 43 and a,$43 -0906: 04 44 or a,$44 -0908: c4 46 mov $46,a -090a: 8f 5c f2 mov $f2,#$5c -090d: c4 f3 mov $f3,a -090f: cd 07 mov x,#$07 -0911: 8f 29 0d mov $0d,#$29 -0914: 8f 05 0e mov $0e,#$05 -0917: 8f 00 34 mov $34,#$00 -091a: d8 0f mov $0f,x -091c: e4 52 mov a,$52 -091e: d0 13 bne $0933 -0920: f4 53 mov a,$53+x -0922: 28 08 and a,#$08 -0924: c4 34 mov $34,a -0926: d0 06 bne $092e -0928: f5 6f 02 mov a,$026f+x -092b: 5f 33 09 jmp $0933 - -092e: 3f f3 0e call $0ef3 -0931: f8 0f mov x,$0f -0933: fd mov y,a -0934: f5 67 02 mov a,$0267+x -0937: c4 29 mov $29,a -0939: cf mul ya -093a: cd 64 mov x,#$64 -093c: 9e div ya,x -093d: f8 0f mov x,$0f -093f: eb 34 mov y,$34 -0941: f0 11 beq $0954 -0943: c4 27 mov $27,a -0945: 8d 15 mov y,#$15 -0947: f7 0d mov a,($0d)+y -0949: d0 04 bne $094f -094b: e4 27 mov a,$27 -094d: 2f 05 bra $0954 -094f: e4 29 mov a,$29 -0951: 80 setc -0952: a4 27 sbc a,$27 -0954: c4 27 mov $27,a -0956: f5 f2 07 mov a,$07f2+x -0959: fd mov y,a -095a: cb f2 mov $f2,y -095c: fa 27 f3 mov ($f3),($27) -095f: e4 29 mov a,$29 -0961: 80 setc -0962: a4 27 sbc a,$27 -0964: fc inc y -0965: cb f2 mov $f2,y -0967: c4 f3 mov $f3,a -0969: 80 setc -096a: b8 16 0d sbc $0d,#$16 -096d: b8 00 0e sbc $0e,#$00 -0970: 1d dec x -0971: 30 03 bmi $0976 -0973: 5f 1a 09 jmp $091a - -0976: cd 07 mov x,#$07 -0978: 8f d2 0d mov $0d,#$d2 -097b: 8f 03 0e mov $0e,#$03 -097e: d8 0f mov $0f,x -0980: f4 53 mov a,$53+x -0982: fd mov y,a -0983: 28 40 and a,#$40 -0985: 0d push psw -0986: dd mov a,y -0987: 28 04 and a,#$04 -0989: 0d push psw -098a: 7d mov a,x -098b: fd mov y,a -098c: 1c asl a -098d: 5d mov x,a -098e: f5 48 02 mov a,$0248+x ; get base note -0991: c4 2e mov $2e,a -0993: f5 47 02 mov a,$0247+x -0996: c4 2d mov $2d,a -0998: 8e pop psw -0999: f0 11 beq $09ac -099b: 4d push x ; save word addressing -099c: 3f f3 0e call $0ef3 ; advance pitch envelope -099f: ce pop x ; restore pitch flag -09a0: 7a 2d addw ya,$2d -09a2: 80 setc -09a3: a8 b0 sbc a,#$b0 -09a5: c4 2d mov $2d,a -09a7: dd mov a,y -09a8: a8 04 sbc a,#$04 -09aa: c4 2e mov $2e,a -09ac: f5 88 02 mov a,$0288+x -09af: fd mov y,a -09b0: f5 87 02 mov a,$0287+x -09b3: 7a 2d addw ya,$2d -09b5: 8e pop psw -09b6: d0 03 bne $09bb -09b8: 3f b7 10 call $10b7 ; translate note to frequency -09bb: f8 0f mov x,$0f -09bd: d5 57 02 mov $0257+x,a -09c0: dd mov a,y -09c1: d5 5f 02 mov $025f+x,a -09c4: 80 setc -09c5: b8 15 0d sbc $0d,#$15 -09c8: b8 00 0e sbc $0e,#$00 -09cb: 1d dec x -09cc: 10 b0 bpl $097e -09ce: 8f 5c f2 mov $f2,#$5c -09d1: 8f 00 f3 mov $f3,#$00 -09d4: cd 07 mov x,#$07 -09d6: 8f 2a 0d mov $0d,#$2a -09d9: 8f 03 0e mov $0e,#$03 -09dc: d8 0f mov $0f,x -09de: f5 fa 07 mov a,$07fa+x -09e1: c4 31 mov $31,a -09e3: 48 ff eor a,#$ff -09e5: c4 32 mov $32,a -09e7: f4 53 mov a,$53+x -09e9: 28 01 and a,#$01 -09eb: d0 06 bne $09f3 -09ed: f5 2f 02 mov a,$022f+x -09f0: 5f f8 09 jmp $09f8 - -09f3: 3f f3 0e call $0ef3 -09f6: f8 0f mov x,$0f -09f8: d5 37 02 mov $0237+x,a -09fb: fd mov y,a -09fc: e4 2f mov a,$2f -09fe: 24 31 and a,$31 -0a00: f0 0a beq $0a0c -0a02: f5 e2 07 mov a,$07e2+x -0a05: c4 f2 mov $f2,a -0a07: f5 7f 02 mov a,$027f+x -0a0a: c4 f3 mov $f3,a -0a0c: e4 40 mov a,$40 -0a0e: 24 31 and a,$31 -0a10: f0 05 beq $0a17 -0a12: 29 32 40 and ($40),($32) -0a15: 2f 37 bra $0a4e -0a17: f5 d2 07 mov a,$07d2+x -0a1a: c4 f2 mov $f2,a -0a1c: dd mov a,y -0a1d: 80 setc -0a1e: a4 f3 sbc a,$f3 -0a20: b0 09 bcs $0a2b -0a22: 8f 80 22 mov $22,#$80 -0a25: 48 ff eor a,#$ff -0a27: bc inc a -0a28: 5f 2e 0a jmp $0a2e - -0a2b: 8f c0 22 mov $22,#$c0 -0a2e: 5c lsr a -0a2f: d0 09 bne $0a3a -0a31: ad 00 cmp y,#$00 -0a33: d0 05 bne $0a3a -0a35: e8 82 mov a,#$82 -0a37: 5f 48 0a jmp $0a48 - -0a3a: 8d 15 mov y,#$15 -0a3c: 76 a6 07 cmp a,$07a6+y -0a3f: 90 02 bcc $0a43 -0a41: fe f9 dbnz y,$0a3c -0a43: f6 bc 07 mov a,$07bc+y -0a46: 04 22 or a,$22 -0a48: 75 3f 02 cmp a,$023f+x -0a4b: f0 0c beq $0a59 -0a4d: fd mov y,a -0a4e: f5 da 07 mov a,$07da+x -0a51: c4 f2 mov $f2,a -0a53: cb f3 mov $f3,y -0a55: dd mov a,y -0a56: d5 3f 02 mov $023f+x,a -0a59: f5 ea 07 mov a,$07ea+x -0a5c: c4 f2 mov $f2,a -0a5e: fd mov y,a -0a5f: f5 57 02 mov a,$0257+x -0a62: c4 f3 mov $f3,a -0a64: fc inc y -0a65: cb f2 mov $f2,y -0a67: f5 5f 02 mov a,$025f+x -0a6a: c4 f3 mov $f3,a -0a6c: 80 setc -0a6d: b8 15 0d sbc $0d,#$15 -0a70: b8 00 0e sbc $0e,#$00 -0a73: 1d dec x -0a74: 30 03 bmi $0a79 -0a76: 5f dc 09 jmp $09dc - -0a79: 8f 4c f2 mov $f2,#$4c -0a7c: fa 46 f3 mov ($f3),($46) -0a7f: e4 46 mov a,$46 -0a81: 48 ff eor a,#$ff -0a83: c4 47 mov $47,a -0a85: 29 47 41 and ($41),($47) -0a88: 29 47 43 and ($43),($47) -0a8b: 8f 00 45 mov $45,#$00 -0a8e: cd 07 mov x,#$07 -0a90: 8d 0e mov y,#$0e -0a92: f5 06 02 mov a,$0206+x -0a95: f0 2b beq $0ac2 -0a97: f4 53 mov a,$53+x -0a99: 28 80 and a,#$80 -0a9b: f0 09 beq $0aa6 -0a9d: f5 fa 07 mov a,$07fa+x -0aa0: 24 41 and a,$41 -0aa2: d0 19 bne $0abd -0aa4: 2f 1c bra $0ac2 -0aa6: f6 17 02 mov a,$0217+y -0aa9: 80 setc -0aaa: a8 01 sbc a,#$01 -0aac: d6 17 02 mov $0217+y,a -0aaf: c4 27 mov $27,a -0ab1: f6 18 02 mov a,$0218+y -0ab4: a8 00 sbc a,#$00 -0ab6: d6 18 02 mov $0218+y,a -0ab9: 04 27 or a,$27 -0abb: d0 05 bne $0ac2 -0abd: e8 00 mov a,#$00 -0abf: d5 06 02 mov $0206+x,a -0ac2: dc dec y -0ac3: dc dec y -0ac4: 1d dec x -0ac5: 10 cb bpl $0a92 -0ac7: ec 00 02 mov y,$0200 -0aca: f0 54 beq $0b20 -0acc: 8c 01 02 dec $0201 -0acf: d0 4f bne $0b20 -0ad1: cc 01 02 mov $0201,y -0ad4: e4 16 mov a,$16 -0ad6: e9 02 02 mov x,$0202 -0ad9: 30 0e bmi $0ae9 -0adb: 60 clrc -0adc: 85 03 02 adc a,$0203 -0adf: b0 04 bcs $0ae5 -0ae1: 68 7f cmp a,#$7f -0ae3: 90 13 bcc $0af8 -0ae5: e8 7f mov a,#$7f -0ae7: 2f 0a bra $0af3 -0ae9: 80 setc -0aea: a5 03 02 sbc a,$0203 -0aed: f0 04 beq $0af3 -0aef: b0 07 bcs $0af8 -0af1: e8 00 mov a,#$00 -0af3: 8d 00 mov y,#$00 -0af5: cc 00 02 mov $0200,y -0af8: c4 16 mov $16,a -0afa: 5d mov x,a -0afb: 8f 2c f2 mov $f2,#$2c -0afe: 65 04 02 cmp a,$0204 -0b01: 90 03 bcc $0b06 -0b03: e5 04 02 mov a,$0204 -0b06: c4 f3 mov $f3,a -0b08: 8f 3c f2 mov $f2,#$3c -0b0b: 7d mov a,x -0b0c: 65 05 02 cmp a,$0205 -0b0f: 90 03 bcc $0b14 -0b11: e5 04 02 mov a,$0204 -0b14: c4 f3 mov $f3,a -0b16: 8f 0c f2 mov $f2,#$0c -0b19: d8 f3 mov $f3,x -0b1b: 8f 1c f2 mov $f2,#$1c -0b1e: d8 f3 mov $f3,x -0b20: 6f ret - -0b21: e4 4b mov a,$4b -0b23: 10 0c bpl $0b31 -0b25: 28 1f and a,#$1f -0b27: 8f 6c f2 mov $f2,#$6c -0b2a: c4 f3 mov $f3,a -0b2c: 09 31 4d or ($4d),($31) -0b2f: 2f 03 bra $0b34 -0b31: 29 32 4d and ($4d),($32) -0b34: 8f 3d f2 mov $f2,#$3d -0b37: fa 4d f3 mov ($f3),($4d) -0b3a: 6f ret - -0b3b: c4 17 mov $17,a -0b3d: fa f4 19 mov ($19),($f4) -0b40: fa f5 1a mov ($1a),($f5) -0b43: e4 f7 mov a,$f7 -0b45: 28 fe and a,#$fe -0b47: c4 18 mov $18,a -0b49: 8f b1 f1 mov $f1,#$b1 -0b4c: fa 17 f6 mov ($f6),($17) -0b4f: f8 18 mov x,$18 -0b51: c8 1d cmp x,#$1d -0b53: b0 07 bcs $0b5c -0b55: e4 19 mov a,$19 -0b57: eb 1a mov y,$1a -0b59: 1f b4 17 jmp ($17b4+x) - -0b5c: 6f ret - -0b5d: 8f 6c f2 mov $f2,#$6c -0b60: 8f 00 f3 mov $f3,#$00 -0b63: 8f ff 1b mov $1b,#$ff -0b66: 5f 02 0e jmp $0e02 - -0b69: da 3a movw $3a,ya -0b6b: 8f ff 39 mov $39,#$ff -0b6e: 6f ret - -0b6f: c4 52 mov $52,a -0b71: 6f ret - -0b72: e8 00 mov a,#$00 -0b74: c5 00 02 mov $0200,a -0b77: 6f ret - -0b78: cd 01 mov x,#$01 -0b7a: 2f 02 bra $0b7e -0b7c: cd ff mov x,#$ff -0b7e: c5 00 02 mov $0200,a -0b81: c5 01 02 mov $0201,a -0b84: cc 03 02 mov $0203,y -0b87: c9 02 02 mov $0202,x -0b8a: 6f ret - -0b8b: 8f 00 5c mov $5c,#$00 -0b8e: 68 00 cmp a,#$00 -0b90: d0 03 bne $0b95 -0b92: c5 4f 05 mov $054f,a -0b95: 6f ret - -0b96: c5 16 02 mov $0216,a -0b99: cd 07 mov x,#$07 -0b9b: ad 80 cmp y,#$80 -0b9d: f0 17 beq $0bb6 -0b9f: e8 01 mov a,#$01 -0ba1: b0 0e bcs $0bb1 -0ba3: ad 00 cmp y,#$00 -0ba5: d0 08 bne $0baf -0ba7: e5 16 02 mov a,$0216 -0baa: 75 0e 02 cmp a,$020e+x -0bad: d0 22 bne $0bd1 -0baf: e8 80 mov a,#$80 -0bb1: 75 06 02 cmp a,$0206+x -0bb4: d0 1b bne $0bd1 -0bb6: f5 da 07 mov a,$07da+x -0bb9: c4 f2 mov $f2,a -0bbb: e8 00 mov a,#$00 -0bbd: c4 f3 mov $f3,a -0bbf: d5 2f 02 mov $022f+x,a -0bc2: d5 06 02 mov $0206+x,a -0bc5: d5 77 02 mov $0277+x,a -0bc8: d4 53 mov $53+x,a -0bca: f5 fa 07 mov a,$07fa+x -0bcd: 04 45 or a,$45 -0bcf: c4 45 mov $45,a -0bd1: 1d dec x -0bd2: 10 c7 bpl $0b9b -0bd4: 6f ret - -0bd5: 8d 0e mov y,#$0e -0bd7: c5 16 02 mov $0216,a -0bda: 3f b2 0d call $0db2 -0bdd: da 09 movw $09,ya -0bdf: 8d 00 mov y,#$00 -0be1: f7 09 mov a,($09)+y -0be3: c4 3c mov $3c,a -0be5: 3a 09 incw $09 -0be7: 8d 07 mov y,#$07 -0be9: f7 09 mov a,($09)+y -0beb: c4 3d mov $3d,a -0bed: 8d 06 mov y,#$06 -0bef: f7 09 mov a,($09)+y -0bf1: c4 3e mov $3e,a -0bf3: 8f 80 3f mov $3f,#$80 -0bf6: cd 07 mov x,#$07 -0bf8: 3f 43 0c call $0c43 -0bfb: 30 36 bmi $0c33 -0bfd: e8 80 mov a,#$80 -0bff: d5 06 02 mov $0206+x,a -0c02: e5 16 02 mov a,$0216 -0c05: d5 0e 02 mov $020e+x,a -0c08: 8d 02 mov y,#$02 -0c0a: f7 09 mov a,($09)+y -0c0c: c4 35 mov $35,a -0c0e: fc inc y -0c0f: f7 09 mov a,($09)+y -0c11: c4 36 mov $36,a -0c13: 8d 04 mov y,#$04 -0c15: f7 09 mov a,($09)+y -0c17: c4 37 mov $37,a -0c19: fc inc y -0c1a: f7 09 mov a,($09)+y -0c1c: c4 38 mov $38,a -0c1e: e4 39 mov a,$39 -0c20: f0 04 beq $0c26 -0c22: ba 3a movw ya,$3a -0c24: da 37 movw $37,ya -0c26: 8d 01 mov y,#$01 -0c28: f7 09 mov a,($09)+y -0c2a: 2d push a -0c2b: 8d 00 mov y,#$00 -0c2d: f7 09 mov a,($09)+y -0c2f: ee pop y -0c30: 3f 6d 0c call $0c6d -0c33: 60 clrc -0c34: 98 08 09 adc $09,#$08 -0c37: 90 02 bcc $0c3b -0c39: ab 0a inc $0a -0c3b: 8b 3c dec $3c -0c3d: d0 a8 bne $0be7 -0c3f: 8f 00 39 mov $39,#$00 -0c42: 6f ret - -0c43: 8d 07 mov y,#$07 -0c45: e4 3f mov a,$3f -0c47: 24 3d and a,$3d -0c49: f0 0c beq $0c57 -0c4b: f5 06 02 mov a,$0206+x -0c4e: f0 15 beq $0c65 -0c50: e4 3e mov a,$3e -0c52: 75 27 02 cmp a,$0227+x -0c55: b0 10 bcs $0c67 -0c57: 4b 3f lsr $3f -0c59: d0 05 bne $0c60 -0c5b: 8f 80 3f mov $3f,#$80 -0c5e: cd 08 mov x,#$08 -0c60: 1d dec x -0c61: dc dec y -0c62: 10 e1 bpl $0c45 -0c64: 6f ret - -0c65: e4 3e mov a,$3e -0c67: d5 27 02 mov $0227+x,a -0c6a: e8 00 mov a,#$00 -0c6c: 6f ret - -0c6d: d8 33 mov $33,x ; play sound (instrument) -0c6f: 2d push a -0c70: dd mov a,y -0c71: d5 67 02 mov $0267+x,a -0c74: 7d mov a,x -0c75: 1c asl a -0c76: 5d mov x,a -0c77: e4 37 mov a,$37 -0c79: d5 47 02 mov $0247+x,a -0c7c: e4 38 mov a,$38 -0c7e: d5 48 02 mov $0248+x,a -0c81: e4 35 mov a,$35 -0c83: d5 17 02 mov $0217+x,a -0c86: e4 36 mov a,$36 -0c88: d5 18 02 mov $0218+x,a -0c8b: ae pop a -0c8c: 8d 02 mov y,#$02 -0c8e: 3f b2 0d call $0db2 -0c91: da 07 movw $07,ya ; get current voice and instrument -0c93: f8 33 mov x,$33 -0c95: f5 fa 07 mov a,$07fa+x ; get channel bit mask ID -0c98: c4 4e mov $4e,a -0c9a: 48 ff eor a,#$ff ; and store inversion -0c9c: c4 4f mov $4f,a -0c9e: 8d 00 mov y,#$00 ; get mode flags -0ca0: f7 07 mov a,($07)+y -0ca2: d4 53 mov $53+x,a ; save permanently and in local temp RAM -0ca4: c4 34 mov $34,a -0ca6: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) -0ca8: f0 05 beq $0caf ; if not... -0caa: 09 4e 50 or ($50),($4e) ; turn pitch mod on -0cad: 2f 03 bra $0cb2 -0caf: 29 4f 50 and ($50),($4f) ; turn pitch mod off -0cb2: 8f 2d f2 mov $f2,#$2d -0cb5: fa 50 f3 mov ($f3),($50) -0cb8: e4 34 mov a,$34 ; retrieve the saved flag -0cba: 28 10 and a,#$10 ; is echo enabled? ($10 = echo) -0cbc: f0 2f beq $0ced ; if not... -0cbe: 8d 05 mov y,#$05 ; get echo byte from sound -0cc0: f7 07 mov a,($07)+y -0cc2: 8d 0c mov y,#$0c -0cc4: 3f b2 0d call $0db2 -0cc7: 8d 00 mov y,#$00 -0cc9: f6 0a 08 mov a,$080a+y ; get the echo register values to "poke" -0ccc: c4 f2 mov $f2,a ; (from the table) -0cce: f7 10 mov a,($10)+y ; now get info to feed to the registers -0cd0: ad 01 cmp y,#$01 ; (from the echo environment) -0cd2: f0 04 beq $0cd8 -0cd4: ad 02 cmp y,#$02 -0cd6: d0 09 bne $0ce1 -0cd8: d6 03 02 mov $0203+y,a -0cdb: 64 16 cmp a,$16 -0cdd: 90 02 bcc $0ce1 -0cdf: e4 16 mov a,$16 -0ce1: c4 f3 mov $f3,a -0ce3: fc inc y -0ce4: ad 0c cmp y,#$0c ; repeat for every byte of the array -0ce6: 90 e1 bcc $0cc9 -0ce8: 09 4e 51 or ($51),($4e) -0ceb: 2f 03 bra $0cf0 - -0ced: 29 4f 51 and ($51),($4f) -0cf0: 8f 4d f2 mov $f2,#$4d -0cf3: fa 51 f3 mov ($f3),($51) ; send the echo unit -0cf6: e4 34 mov a,$34 -0cf8: 28 01 and a,#$01 -0cfa: 0d push psw -0cfb: 8d 01 mov y,#$01 -0cfd: f7 07 mov a,($07)+y ; now get the amplitude -0cff: 8e pop psw -0d00: d0 08 bne $0d0a -0d02: f8 33 mov x,$33 -0d04: d5 2f 02 mov $022f+x,a -0d07: 5f 20 0d jmp $0d20 - -0d0a: 8d 04 mov y,#$04 -0d0c: 3f b2 0d call $0db2 -0d0f: f8 33 mov x,$33 -0d11: f5 1e 08 mov a,$081e+x -0d14: c4 0d mov $0d,a -0d16: f5 16 08 mov a,$0816+x -0d19: c4 0e mov $0e,a -0d1b: ba 35 movw ya,$35 -0d1d: 3f 7c 0e call $0e7c -0d20: e4 34 mov a,$34 -0d22: 28 04 and a,#$04 -0d24: f0 1a beq $0d40 -0d26: 8d 03 mov y,#$03 -0d28: f7 07 mov a,($07)+y -0d2a: 8d 06 mov y,#$06 -0d2c: 3f b2 0d call $0db2 -0d2f: f8 33 mov x,$33 -0d31: f5 2e 08 mov a,$082e+x -0d34: c4 0d mov $0d,a -0d36: f5 26 08 mov a,$0826+x -0d39: c4 0e mov $0e,a -0d3b: ba 35 movw ya,$35 -0d3d: 3f 7c 0e call $0e7c -0d40: e4 34 mov a,$34 -0d42: 28 08 and a,#$08 -0d44: 0d push psw -0d45: 8d 04 mov y,#$04 -0d47: f7 07 mov a,($07)+y -0d49: 8e pop psw -0d4a: d0 08 bne $0d54 -0d4c: f8 33 mov x,$33 -0d4e: d5 6f 02 mov $026f+x,a -0d51: 5f 81 0d jmp $0d81 - -0d54: 8d 08 mov y,#$08 -0d56: 3f b2 0d call $0db2 -0d59: f8 33 mov x,$33 -0d5b: f5 4e 08 mov a,$084e+x -0d5e: c4 0d mov $0d,a -0d60: f5 46 08 mov a,$0846+x -0d63: c4 0e mov $0e,a -0d65: ba 35 movw ya,$35 -0d67: 3f 7c 0e call $0e7c -0d6a: 8d 07 mov y,#$07 -0d6c: f7 0d mov a,($0d)+y -0d6e: f0 0b beq $0d7b -0d70: 8d 15 mov y,#$15 -0d72: f7 0d mov a,($0d)+y -0d74: d0 05 bne $0d7b -0d76: e8 ff mov a,#$ff -0d78: 5f 7d 0d jmp $0d7d - -0d7b: e8 00 mov a,#$00 -0d7d: 8d 15 mov y,#$15 -0d7f: d7 0d mov ($0d)+y,a -0d81: e4 34 mov a,$34 -0d83: 28 02 and a,#$02 -0d85: 0d push psw -0d86: 8d 02 mov y,#$02 -0d88: f7 07 mov a,($07)+y -0d8a: 8e pop psw -0d8b: d0 08 bne $0d95 -0d8d: f8 33 mov x,$33 -0d8f: d5 77 02 mov $0277+x,a -0d92: 5f ab 0d jmp $0dab - -0d95: 8d 0a mov y,#$0a -0d97: 3f b2 0d call $0db2 -0d9a: f8 33 mov x,$33 -0d9c: f5 3e 08 mov a,$083e+x -0d9f: c4 0d mov $0d,a -0da1: f5 36 08 mov a,$0836+x -0da4: c4 0e mov $0e,a -0da6: ba 35 movw ya,$35 -0da8: 3f 7c 0e call $0e7c -0dab: 09 4e 45 or ($45),($4e) -0dae: 09 4e 40 or ($40),($4e) -0db1: 6f ret - -0db2: 8f 00 06 mov $06,#$00 ; load current song/sfx/etc. address into stack -0db5: 1c asl a -0db6: 2b 06 rol $06 -0db8: 60 clrc -0db9: 96 e0 17 adc a,$17e0+y -0dbc: c4 05 mov $05,a -0dbe: e4 06 mov a,$06 -0dc0: 96 e1 17 adc a,$17e1+y -0dc3: c4 06 mov $06,a -0dc5: 8d 01 mov y,#$01 -0dc7: f7 05 mov a,($05)+y -0dc9: c4 11 mov $11,a -0dcb: dc dec y -0dcc: f7 05 mov a,($05)+y -0dce: c4 10 mov $10,a -0dd0: eb 11 mov y,$11 -0dd2: 6f ret - -0dd3: cd 31 mov x,#$31 -0dd5: 8d 0e mov y,#$0e -0dd7: 3f 1a 0e call $0e1a -0dda: e8 00 mov a,#$00 -0ddc: fd mov y,a -0ddd: c4 03 mov $03,a -0ddf: 8f 02 04 mov $04,#$02 -0de2: d7 03 mov ($03)+y,a -0de4: 3a 03 incw $03 -0de6: 78 07 04 cmp $04,#$07 -0de9: 90 f7 bcc $0de2 -0deb: d6 00 00 mov $0000+y,a -0dee: fc inc y -0def: ad f0 cmp y,#$f0 -0df1: 90 f8 bcc $0deb -0df3: 9c dec a -0df4: c4 41 mov $41,a -0df6: c4 43 mov $43,a -0df8: c4 48 mov $48,a -0dfa: c4 42 mov $42,a -0dfc: c4 47 mov $47,a -0dfe: 8f 7f 16 mov $16,#$7f -0e01: 6f ret - -0e02: e5 e1 17 mov a,$17e1 -0e05: 8f 6d f2 mov $f2,#$6d -0e08: c4 f3 mov $f3,a -0e0a: c4 04 mov $04,a -0e0c: e8 00 mov a,#$00 -0e0e: fd mov y,a -0e0f: c4 03 mov $03,a -0e11: d7 03 mov ($03)+y,a -0e13: fe fc dbnz y,$0e11 -0e15: ab 04 inc $04 -0e17: d0 f8 bne $0e11 -0e19: 6f ret - -0e1a: d8 03 mov $03,x -0e1c: cb 04 mov $04,y -0e1e: 8d 00 mov y,#$00 -0e20: f7 03 mov a,($03)+y -0e22: 68 ff cmp a,#$ff -0e24: f0 0a beq $0e30 -0e26: c4 f2 mov $f2,a -0e28: fc inc y -0e29: f7 03 mov a,($03)+y -0e2b: c4 f3 mov $f3,a -0e2d: fc inc y -0e2e: d0 f0 bne $0e20 -0e30: 6f ret - -; pre-defined DSP flags -0e31: db $6c,$ff ; clear flags -0e33: db $3d,$00 ; turn off noise generator (NON) -0e35: db $4d,$00 ; turn off echo (EON) -0e37: db $7d,$00 ; turn off echo delay time (EDL) -0e39: db $6d,$ff ; pointer to echo memory (ESA) -0e3b: db $5d,$18 ; set sample directory ($1800) -0e3d: db $5c,$00 ; set key off (KOFF) -0e3f: db $2d,$00 ; disable pitch modulation (PMON) -0e41: db $05,$00 ; disable ASDR (channel 1) -0e43: db $15,$00 ; disable ASDR (channel 2) -0e45: db $25,$00 ; disable ASDR (channel 3) -0e47: db $35,$00 ; disable ASDR (channel 4) -0e49: db $45,$00 ; disable ASDR (channel 5) -0e4b: db $55,$00 ; disable ASDR (channel 6) -0e4d: db $65,$00 ; disable ASDR (channel 7) -0e4f: db $75,$00 ; disable ASDR (channel 8) -0e51: db $07,$00 ; reset GAIN (channel 1) -0e53: db $17,$00 ; reset GAIN (channel 2) -0e55: db $27,$00 ; reset GAIN (channel 3) -0e57: db $37,$00 ; reset GAIN (channel 4) -0e59: db $47,$00 ; reset GAIN (channel 5) -0e5b: db $57,$00 ; reset GAIN (channel 6) -0e5d: db $67,$00 ; reset GAIN (channel 7) -0e5f: db $77,$00 ; reset GAIN (channel 8) -0e61: db $7c,$00 ; end of sample flag -0e63: db $2c,$00 ; turn off EVOLL -0e65: db $3c,$00 ; turn off EVOLR -0e67: db $0c,$7f ; turn on MVOLL -0e69: db $1c,$7f ; turn on MVOLR -0e6b: db $04,$00 ; reset SRCN (channel 1) -0e6d: db $14,$00 ; reset SRCN (channel 2) -0e6f: db $24,$00 ; reset SRCN (channel 3) -0e71: db $34,$00 ; reset SRCN (channel 4) -0e73: db $44,$00 ; reset SRCN (channel 5) -0e75: db $54,$00 ; reset SRCN (channel 6) -0e77: db $64,$00 ; reset SRCN (channel 7) -0e79: db $74,$00 ; reset SRCN (channel 8) -0e7b: db $ff - -0e7c: da 27 movw $27,ya -0e7e: 8d 07 mov y,#$07 -0e80: f7 10 mov a,($10)+y ; get amplitude table -0e82: d7 0d mov ($0d)+y,a -0e84: dc dec y -0e85: 10 f9 bpl $0e80 -0e87: e4 10 mov a,$10 -0e89: 60 clrc -0e8a: 88 08 adc a,#$08 -0e8c: 8d 08 mov y,#$08 -0e8e: d7 0d mov ($0d)+y,a -0e90: e4 11 mov a,$11 -0e92: 88 00 adc a,#$00 -0e94: fc inc y -0e95: d7 0d mov ($0d)+y,a -0e97: 8d 03 mov y,#$03 -0e99: f7 0d mov a,($0d)+y -0e9b: 5d mov x,a -0e9c: 8d 02 mov y,#$02 -0e9e: f7 0d mov a,($0d)+y -0ea0: fd mov y,a -0ea1: 7d mov a,x -0ea2: cf mul ya -0ea3: da 2b movw $2b,ya -0ea5: ba 27 movw ya,$27 -0ea7: 9a 2b subw ya,$2b -0ea9: b0 03 bcs $0eae -0eab: e8 00 mov a,#$00 -0ead: fd mov y,a -0eae: cb 2c mov $2c,y -0eb0: 8d 0d mov y,#$0d -0eb2: d7 0d mov ($0d)+y,a -0eb4: fc inc y -0eb5: e4 2c mov a,$2c -0eb7: d7 0d mov ($0d)+y,a -0eb9: 8d 03 mov y,#$03 -0ebb: f7 0d mov a,($0d)+y -0ebd: bc inc a -0ebe: 8d 0f mov y,#$0f -0ec0: d7 0d mov ($0d)+y,a -0ec2: 68 03 cmp a,#$03 -0ec4: b0 06 bcs $0ecc -0ec6: 8d 04 mov y,#$04 -0ec8: e8 00 mov a,#$00 -0eca: d7 0d mov ($0d)+y,a -0ecc: 8d 08 mov y,#$08 -0ece: f7 0d mov a,($0d)+y -0ed0: 8d 0a mov y,#$0a -0ed2: d7 0d mov ($0d)+y,a -0ed4: 8d 09 mov y,#$09 -0ed6: f7 0d mov a,($0d)+y -0ed8: 8d 0b mov y,#$0b -0eda: d7 0d mov ($0d)+y,a -0edc: e8 01 mov a,#$01 -0ede: 8d 14 mov y,#$14 -0ee0: d7 0d mov ($0d)+y,a -0ee2: 9c dec a -0ee3: 8d 0c mov y,#$0c -0ee5: d7 0d mov ($0d)+y,a -0ee7: 8d 12 mov y,#$12 -0ee9: d7 0d mov ($0d)+y,a -0eeb: fc inc y -0eec: d7 0d mov ($0d)+y,a -0eee: c4 20 mov $20,a -0ef0: 5f a1 0f jmp $0fa1 - -0ef3: 8d 14 mov y,#$14 -0ef5: f7 0d mov a,($0d)+y -0ef7: f0 39 beq $0f32 -0ef9: 8d 04 mov y,#$04 -0efb: f7 0d mov a,($0d)+y -0efd: c4 20 mov $20,a -0eff: 8d 0f mov y,#$0f -0f01: f7 0d mov a,($0d)+y -0f03: c4 21 mov $21,a -0f05: f0 03 beq $0f0a -0f07: 9c dec a -0f08: d0 06 bne $0f10 -0f0a: 8d 03 mov y,#$03 -0f0c: f7 0d mov a,($0d)+y -0f0e: 8d 0f mov y,#$0f -0f10: d7 0d mov ($0d)+y,a -0f12: 78 02 21 cmp $21,#$02 -0f15: 90 03 bcc $0f1a -0f17: 5f a1 0f jmp $0fa1 - -0f1a: 8d 0c mov y,#$0c -0f1c: f7 0d mov a,($0d)+y -0f1e: bc inc a -0f1f: 8d 05 mov y,#$05 -0f21: 77 0d cmp a,($0d)+y -0f23: 90 17 bcc $0f3c -0f25: 9c dec a -0f26: 8d 01 mov y,#$01 -0f28: 77 0d cmp a,($0d)+y -0f2a: f0 6a beq $0f96 -0f2c: e8 00 mov a,#$00 -0f2e: 8d 14 mov y,#$14 -0f30: d7 0d mov ($0d)+y,a -0f32: 8d 11 mov y,#$11 -0f34: f7 0d mov a,($0d)+y -0f36: 2d push a -0f37: dc dec y -0f38: f7 0d mov a,($0d)+y -0f3a: ee pop y -0f3b: 6f ret - -0f3c: 8d 0c mov y,#$0c -0f3e: d7 0d mov ($0d)+y,a -0f40: 8d 06 mov y,#$06 -0f42: f7 0d mov a,($0d)+y -0f44: 8d 0a mov y,#$0a -0f46: 60 clrc -0f47: 97 0d adc a,($0d)+y -0f49: d7 0d mov ($0d)+y,a -0f4b: 90 07 bcc $0f54 -0f4d: fc inc y -0f4e: f7 0d mov a,($0d)+y -0f50: 88 00 adc a,#$00 -0f52: d7 0d mov ($0d)+y,a -0f54: 8d 0e mov y,#$0e -0f56: f7 0d mov a,($0d)+y -0f58: 5d mov x,a -0f59: dc dec y -0f5a: f7 0d mov a,($0d)+y -0f5c: d0 04 bne $0f62 -0f5e: c8 00 cmp x,#$00 -0f60: f0 3f beq $0fa1 -0f62: 8d 03 mov y,#$03 -0f64: 80 setc -0f65: b7 0d sbc a,($0d)+y -0f67: 8d 0d mov y,#$0d -0f69: d7 0d mov ($0d)+y,a -0f6b: c4 2b mov $2b,a -0f6d: 7d mov a,x -0f6e: a8 00 sbc a,#$00 -0f70: b0 06 bcs $0f78 -0f72: e8 00 mov a,#$00 -0f74: d7 0d mov ($0d)+y,a -0f76: c4 2b mov $2b,a -0f78: fc inc y -0f79: d7 0d mov ($0d)+y,a -0f7b: 04 2b or a,$2b -0f7d: d0 0b bne $0f8a -0f7f: 8d 01 mov y,#$01 -0f81: f7 0d mov a,($0d)+y -0f83: 68 ff cmp a,#$ff -0f85: f0 03 beq $0f8a -0f87: 5f 9a 0f jmp $0f9a - -0f8a: 8d 0c mov y,#$0c -0f8c: f7 0d mov a,($0d)+y -0f8e: 8d 01 mov y,#$01 -0f90: 77 0d cmp a,($0d)+y -0f92: 90 0d bcc $0fa1 -0f94: f0 0b beq $0fa1 -0f96: 8d 00 mov y,#$00 -0f98: f7 0d mov a,($0d)+y -0f9a: 8d 0c mov y,#$0c -0f9c: d7 0d mov ($0d)+y,a -0f9e: 3f 44 10 call $1044 -0fa1: f8 20 mov x,$20 -0fa3: f0 14 beq $0fb9 -0fa5: 78 03 21 cmp $21,#$03 -0fa8: 90 0f bcc $0fb9 -0faa: 8d 13 mov y,#$13 -0fac: cd 03 mov x,#$03 -0fae: f7 0d mov a,($0d)+y -0fb0: d4 1c mov $1c+x,a -0fb2: dc dec y -0fb3: 1d dec x -0fb4: 10 f8 bpl $0fae -0fb6: 5f 21 10 jmp $1021 - -0fb9: 3f 33 10 call $1033 -0fbc: 8d 06 mov y,#$06 -0fbe: f7 0d mov a,($0d)+y -0fc0: 5d mov x,a -0fc1: 8d 00 mov y,#$00 -0fc3: f7 12 mov a,($12)+y -0fc5: c8 01 cmp x,#$01 -0fc7: f0 06 beq $0fcf -0fc9: 5d mov x,a -0fca: fc inc y -0fcb: f7 12 mov a,($12)+y -0fcd: fd mov y,a -0fce: 7d mov a,x -0fcf: f8 20 mov x,$20 -0fd1: f0 52 beq $1025 -0fd3: 78 02 21 cmp $21,#$02 -0fd6: f0 4d beq $1025 -0fd8: da 27 movw $27,ya -0fda: 8d 11 mov y,#$11 -0fdc: f7 0d mov a,($0d)+y -0fde: c4 1d mov $1d,a -0fe0: dc dec y -0fe1: f7 0d mov a,($0d)+y -0fe3: c4 1c mov $1c,a -0fe5: eb 1d mov y,$1d -0fe7: 80 setc -0fe8: 9a 27 subw ya,$27 -0fea: da 1e movw $1e,ya -0fec: e8 00 mov a,#$00 -0fee: 3c rol a -0fef: c4 27 mov $27,a -0ff1: d0 08 bne $0ffb -0ff3: 58 ff 1e eor $1e,#$ff -0ff6: 58 ff 1f eor $1f,#$ff -0ff9: 3a 1e incw $1e -0ffb: 8d 03 mov y,#$03 -0ffd: f7 0d mov a,($0d)+y -0fff: 5d mov x,a -1000: ba 1e movw ya,$1e -1002: 3f 5f 10 call $105f -1005: c4 1e mov $1e,a -1007: d8 1f mov $1f,x -1009: 78 01 27 cmp $27,#$01 -100c: d0 08 bne $1016 -100e: 58 ff 1e eor $1e,#$ff -1011: 58 ff 1f eor $1f,#$ff -1014: 3a 1e incw $1e -1016: 8d 12 mov y,#$12 -1018: e4 1e mov a,$1e -101a: d7 0d mov ($0d)+y,a -101c: fc inc y -101d: e4 1f mov a,$1f -101f: d7 0d mov ($0d)+y,a -1021: ba 1c movw ya,$1c -1023: 7a 1e addw ya,$1e -1025: da 1c movw $1c,ya -1027: 8d 10 mov y,#$10 -1029: d7 0d mov ($0d)+y,a -102b: e4 1d mov a,$1d -102d: fc inc y -102e: d7 0d mov ($0d)+y,a -1030: ba 1c movw ya,$1c -1032: 6f ret - -1033: 8d 0a mov y,#$0a -1035: 5f 3a 10 jmp $103a - -1038: 8d 08 mov y,#$08 -103a: f7 0d mov a,($0d)+y -103c: c4 12 mov $12,a -103e: fc inc y -103f: f7 0d mov a,($0d)+y -1041: c4 13 mov $13,a -1043: 6f ret - -1044: 2d push a -1045: 3f 38 10 call $1038 -1048: 8d 06 mov y,#$06 -104a: f7 0d mov a,($0d)+y -104c: fd mov y,a -104d: ae pop a -104e: cf mul ya -104f: 7a 12 addw ya,$12 -1051: da 12 movw $12,ya -1053: 8d 0a mov y,#$0a -1055: e4 12 mov a,$12 -1057: d7 0d mov ($0d)+y,a -1059: fc inc y -105a: e4 13 mov a,$13 -105c: d7 0d mov ($0d)+y,a -105e: 6f ret - -105f: c8 00 cmp x,#$00 -1061: d0 05 bne $1068 -1063: e8 ff mov a,#$ff -1065: fd mov y,a -1066: 5d mov x,a -1067: 6f ret - -1068: cb 24 mov $24,y -106a: 3e 24 cmp x,$24 -106c: f0 02 beq $1070 -106e: b0 19 bcs $1089 -1070: c4 23 mov $23,a -1072: dd mov a,y -1073: 8d 00 mov y,#$00 -1075: 9e div ya,x -1076: c4 25 mov $25,a -1078: fd mov y,a -1079: 7d mov a,x -107a: cf mul ya -107b: c4 26 mov $26,a -107d: e4 24 mov a,$24 -107f: 80 setc -1080: a4 26 sbc a,$26 -1082: fd mov y,a -1083: e4 23 mov a,$23 -1085: 9e div ya,x -1086: f8 25 mov x,$25 -1088: 6f ret - -1089: 9e div ya,x -108a: cd 00 mov x,#$00 -108c: 6f ret - -108d: f5 7f 02 mov a,$027f+x -1090: 8d 04 mov y,#$04 -1092: cf mul ya -1093: 7a 0b addw ya,$0b -1095: da 03 movw $03,ya -1097: 8d 01 mov y,#$01 -1099: f7 03 mov a,($03)+y -109b: c4 2a mov $2a,a -109d: dc dec y -109e: f7 03 mov a,($03)+y -10a0: 80 setc -10a1: a8 03 sbc a,#$03 -10a3: c4 29 mov $29,a -10a5: b8 00 2a sbc $2a,#$00 -10a8: f7 29 mov a,($29)+y -10aa: c4 49 mov $49,a -10ac: fc inc y -10ad: f7 29 mov a,($29)+y -10af: c4 4a mov $4a,a -10b1: fc inc y -10b2: f7 29 mov a,($29)+y -10b4: c4 4b mov $4b,a -10b6: 6f ret - -10b7: ad 04 cmp y,#$04 -10b9: 90 06 bcc $10c1 -10bb: d0 0a bne $10c7 -10bd: 68 b0 cmp a,#$b0 -10bf: b0 06 bcs $10c7 -10c1: 8f ff 4c mov $4c,#$ff -10c4: 5f dd 10 jmp $10dd - -10c7: ad 80 cmp y,#$80 -10c9: 90 0f bcc $10da -10cb: 8f 00 4c mov $4c,#$00 -10ce: 60 clrc ; convert note to pitch from table -10cf: 88 20 adc a,#$20 -10d1: 5d mov x,a -10d2: dd mov a,y -10d3: 88 df adc a,#$df -10d5: fd mov y,a -10d6: 7d mov a,x -10d7: 5f dd 10 jmp $10dd - -10da: 8f 04 4c mov $4c,#$04 -10dd: cd f0 mov x,#$f0 -10df: 9e div ya,x -10e0: 78 ff 4c cmp $4c,#$ff -10e3: d0 02 bne $10e7 -10e5: c4 4c mov $4c,a -10e7: f6 02 11 mov a,$1102+y -10ea: c4 27 mov $27,a -10ec: f6 f2 11 mov a,$11f2+y -10ef: c4 28 mov $28,a -10f1: e8 04 mov a,#$04 -10f3: 80 setc -10f4: a4 4c sbc a,$4c -10f6: f0 07 beq $10ff -10f8: fd mov y,a -10f9: 4b 28 lsr $28 -10fb: 6b 27 ror $27 -10fd: fe fa dbnz y,$10f9 -10ff: ba 27 movw ya,$27 -1101: 6f ret - -; pitch table (low byte) -1102: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 - -; pitch table (high byte) -11f2: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f - -; note interval frequencies (low byte) -12e2: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 - -; note interval frequencies (high byte) -1302: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 - -1322: e4 5c mov a,$5c -1324: d0 0f bne $1335 -1326: e5 4f 05 mov a,$054f -1329: f0 22 beq $134d -132b: e8 00 mov a,#$00 -132d: c5 4f 05 mov $054f,a -1330: 3f 1a 17 call $171a -1333: 2f ed bra $1322 -1335: e4 5b mov a,$5b -1337: 9c dec a -1338: c4 5d mov $5d,a -133a: 1c asl a -133b: c4 5e mov $5e,a -133d: f8 5d mov x,$5d -133f: f4 61 mov a,$61+x -1341: 5d mov x,a -1342: 1f a8 17 jmp ($17a8+x) - -1345: 8b 5e dec $5e -1347: 8b 5e dec $5e -1349: 8b 5d dec $5d -134b: 10 f0 bpl $133d -134d: 6f ret - -134e: f8 5d mov x,$5d -1350: 9b 9b dec $9b+x -1352: d0 f1 bne $1345 -1354: f5 60 05 mov a,$0560+x -1357: d4 9b mov $9b+x,a -1359: 9b a3 dec $a3+x -135b: d0 e8 bne $1345 -135d: f4 61 mov a,$61+x -135f: 68 02 cmp a,#$02 -1361: d0 07 bne $136a -1363: e8 06 mov a,#$06 -1365: d4 61 mov $61+x,a -1367: 5f 7b 13 jmp $137b - -136a: e8 08 mov a,#$08 -136c: d4 61 mov $61+x,a -136e: 5f 69 15 jmp $1569 - -1371: 3f d0 14 call $14d0 -1374: d4 ce mov $ce+x,a -1376: 3f d0 14 call $14d0 -1379: d4 cf mov $cf+x,a -137b: 3f d0 14 call $14d0 -137e: fd mov y,a ; get the current note/command -137f: 28 20 and a,#$20 -1381: c4 5f mov $5f,a -1383: dd mov a,y -1384: 28 40 and a,#$40 -1386: c4 60 mov $60,a -1388: f8 5d mov x,$5d -138a: d5 88 05 mov $0588+x,a -138d: ad 80 cmp y,#$80 ; is it a note? -138f: 90 3d bcc $13ce -1391: ad f0 cmp y,#$f0 ; is it a special meaning flag? -1393: 90 08 bcc $139d -1395: dd mov a,y ; then it must be a command... -1396: 28 0f and a,#$0f ; get command number -1398: 1c asl a -1399: 5d mov x,a -139a: 1f 4c 15 jmp ($154c+x) ; jump to command number position - -139d: f5 90 05 mov a,$0590+x ; pitch bend -13a0: f0 4c beq $13ee -13a2: dd mov a,y -13a3: 28 08 and a,#$08 -13a5: 0d push psw -13a6: dd mov a,y -13a7: 28 07 and a,#$07 -13a9: bc inc a -13aa: 1c asl a -13ab: f8 5e mov x,$5e -13ad: 8e pop psw -13ae: f0 0d beq $13bd -13b0: 60 clrc -13b1: 94 de adc a,$de+x -13b3: d4 de mov $de+x,a -13b5: f4 df mov a,$df+x -13b7: 88 00 adc a,#$00 -13b9: d4 df mov $df+x,a -13bb: 2f 31 bra $13ee -13bd: c4 27 mov $27,a -13bf: f4 de mov a,$de+x -13c1: 80 setc -13c2: a4 27 sbc a,$27 -13c4: d4 de mov $de+x,a -13c6: f4 df mov a,$df+x -13c8: a8 00 sbc a,#$00 -13ca: d4 df mov $df+x,a -13cc: 2f 20 bra $13ee -13ce: f5 90 05 mov a,$0590+x ; play the note (check first) -13d1: f0 1b beq $13ee -13d3: dd mov a,y -13d4: 28 1f and a,#$1f -13d6: fd mov y,a -13d7: f8 5e mov x,$5e -13d9: f4 ce mov a,$ce+x -13db: 60 clrc -13dc: 96 e2 12 adc a,$12e2+y ; get the relative frequency -13df: d4 ce mov $ce+x,a -13e1: f4 cf mov a,$cf+x -13e3: 96 02 13 adc a,$1302+y -13e6: d4 cf mov $cf+x,a -13e8: e8 00 mov a,#$00 -13ea: d4 de mov $de+x,a -13ec: d4 df mov $df+x,a -13ee: 3f d0 14 call $14d0 -13f1: 68 00 cmp a,#$00 -13f3: d0 12 bne $1407 -13f5: f8 5d mov x,$5d -13f7: f4 61 mov a,$61+x -13f9: 68 08 cmp a,#$08 -13fb: d0 07 bne $1404 -13fd: e8 0a mov a,#$0a -13ff: d4 61 mov $61+x,a -1401: 5f a7 15 jmp $15a7 - -1404: 5f 3d 13 jmp $133d - -1407: f8 5d mov x,$5d -1409: d4 a3 mov $a3+x,a -140b: fd mov y,a -140c: f5 60 05 mov a,$0560+x -140f: d4 9b mov $9b+x,a -1411: cf mul ya -1412: da 35 movw $35,ya -1414: 3f 28 15 call $1528 -1417: f5 98 05 mov a,$0598+x -141a: 30 18 bmi $1434 -141c: 5d mov x,a -141d: f5 06 02 mov a,$0206+x -1420: f0 0a beq $142c -1422: e8 40 mov a,#$40 -1424: 75 27 02 cmp a,$0227+x -1427: b0 05 bcs $142e -1429: 5f 45 13 jmp $1345 - -142c: e8 40 mov a,#$40 -142e: d5 27 02 mov $0227+x,a -1431: 5f 55 14 jmp $1455 - -1434: f5 a0 05 mov a,$05a0+x -1437: c4 3d mov $3d,a -1439: f5 a8 05 mov a,$05a8+x -143c: 30 04 bmi $1442 -143e: eb 5f mov y,$5f -1440: f0 05 beq $1447 -1442: 9c dec a -1443: 10 02 bpl $1447 -1445: e8 07 mov a,#$07 -1447: 5d mov x,a -1448: f5 fa 07 mov a,$07fa+x -144b: c4 3f mov $3f,a -144d: 8f 40 3e mov $3e,#$40 -1450: 3f 43 0c call $0c43 -1453: 30 78 bmi $14cd -1455: e8 01 mov a,#$01 -1457: d5 06 02 mov $0206+x,a -145a: d8 ab mov $ab,x -145c: 7d mov a,x -145d: f8 5d mov x,$5d -145f: d5 a8 05 mov $05a8+x,a -1462: f5 90 05 mov a,$0590+x -1465: d0 0c bne $1473 -1467: f8 5e mov x,$5e -1469: f4 ce mov a,$ce+x -146b: c4 37 mov $37,a -146d: f4 cf mov a,$cf+x -146f: c4 38 mov $38,a -1471: 2f 25 bra $1498 -1473: f8 5e mov x,$5e -1475: f4 ce mov a,$ce+x -1477: 60 clrc -1478: 94 be adc a,$be+x -147a: fd mov y,a -147b: f4 cf mov a,$cf+x -147d: 94 bf adc a,$bf+x -147f: c4 38 mov $38,a -1481: dd mov a,y -1482: 60 clrc -1483: 94 ae adc a,$ae+x -1485: fd mov y,a -1486: e4 38 mov a,$38 -1488: 94 af adc a,$af+x -148a: c4 38 mov $38,a -148c: dd mov a,y -148d: 60 clrc -148e: 94 de adc a,$de+x -1490: c4 37 mov $37,a -1492: e4 38 mov a,$38 -1494: 94 df adc a,$df+x -1496: c4 38 mov $38,a -1498: eb 5f mov y,$5f -149a: d0 0f bne $14ab -149c: 0b ab asl $ab -149e: f8 ab mov x,$ab -14a0: d5 48 02 mov $0248+x,a -14a3: e4 37 mov a,$37 -14a5: d5 47 02 mov $0247+x,a -14a8: 5f 45 13 jmp $1345 - -14ab: f8 5d mov x,$5d -14ad: f5 68 05 mov a,$0568+x -14b0: 60 clrc -14b1: 95 70 05 adc a,$0570+x -14b4: 10 02 bpl $14b8 -14b6: e8 7f mov a,#$7f -14b8: c4 ac mov $ac,a -14ba: e4 60 mov a,$60 -14bc: f0 02 beq $14c0 -14be: e8 08 mov a,#$08 -14c0: 04 5d or a,$5d -14c2: 5d mov x,a -14c3: f5 78 05 mov a,$0578+x -14c6: f8 ab mov x,$ab -14c8: eb ac mov y,$ac -14ca: 3f 6d 0c call $0c6d -14cd: 5f 45 13 jmp $1345 - -; calculate delta expression -14d0: f8 5e mov x,$5e -14d2: e7 8b mov a,($8b+x) -14d4: bb 8b inc $8b+x -14d6: d0 02 bne $14da -14d8: bb 8c inc $8c+x -14da: 6f ret - -; vcmd f0 - end of sequence -14db: f8 5d mov x,$5d -14dd: e8 0a mov a,#$0a -14df: d4 61 mov $61+x,a -14e1: 5f a7 15 jmp $15a7 - -; vcmd f1 - melody delta expression -14e4: 3f d0 14 call $14d0 -14e7: c4 ad mov $ad,a -14e9: f8 5d mov x,$5d -14eb: f5 70 05 mov a,$0570+x -14ee: 3f 38 15 call $1538 -14f1: d5 70 05 mov $0570+x,a -14f4: 5f 7b 13 jmp $137b - -; vcmd f2 - melody absolute expression -14f7: 3f d0 14 call $14d0 -14fa: f8 5d mov x,$5d -14fc: d5 70 05 mov $0570+x,a -14ff: 5f 7b 13 jmp $137b - -; vcmd f3 - mute -1502: f8 5d mov x,$5d -1504: f5 a8 05 mov a,$05a8+x -1507: 30 0d bmi $1516 -1509: fd mov y,a -150a: f6 06 02 mov a,$0206+y -150d: 68 80 cmp a,#$80 -150f: f0 05 beq $1516 -1511: e8 00 mov a,#$00 -1513: d6 67 02 mov $0267+y,a -1516: 3f d0 14 call $14d0 -1519: f8 5d mov x,$5d -151b: d4 a3 mov $a3+x,a -151d: f5 60 05 mov a,$0560+x -1520: d4 9b mov $9b+x,a -1522: 3f 28 15 call $1528 -1525: 5f 45 13 jmp $1345 - -; vcmd f4 - rest -1528: f4 61 mov a,$61+x -152a: 68 06 cmp a,#$06 -152c: d0 05 bne $1533 -152e: e8 02 mov a,#$02 -1530: 5f 35 15 jmp $1535 - -1533: e8 04 mov a,#$04 -1535: d4 61 mov $61+x,a -1537: 6f ret - -; add the delta to the total -1538: 78 80 ad cmp $ad,#$80 -153b: 90 08 bcc $1545 -153d: 60 clrc -153e: 84 ad adc a,$ad -1540: 10 09 bpl $154b -1542: e8 00 mov a,#$00 -1544: 6f ret - -1545: 84 ad adc a,$ad -1547: 10 02 bpl $154b -1549: e8 7f mov a,#$7f -154b: 6f ret - -; vcmd table (f0-f4) -154c: dw $14db ; f0 - end of sequence -154e: dw $14e4 ; f1 - melody delta expression -1550: dw $14f7 ; f2 - melody absolute expression -1552: dw $1502 ; f3 - mute -1554: dw $1516 ; f4 - rest - -1556: 3f d0 14 call $14d0 -1559: f8 5d mov x,$5d -155b: d5 b0 05 mov $05b0+x,a -155e: e8 00 mov a,#$00 -1560: d4 de mov $de+x,a -1562: d4 df mov $df+x,a -1564: f8 5d mov x,$5d -1566: d5 88 05 mov $0588+x,a -1569: f8 5d mov x,$5d -156b: f5 90 05 mov a,$0590+x -156e: f0 19 beq $1589 -1570: f5 b0 05 mov a,$05b0+x -1573: 8d 12 mov y,#$12 -1575: 3f b2 0d call $0db2 -1578: 3f 96 15 call $1596 -157b: 28 0e and a,#$0e -157d: fd mov y,a -157e: f8 5e mov x,$5e -1580: f7 10 mov a,($10)+y -1582: d4 ce mov $ce+x,a -1584: fc inc y -1585: f7 10 mov a,($10)+y -1587: d4 cf mov $cf+x,a -1589: 8f 20 5f mov $5f,#$20 -158c: f8 5d mov x,$5d -158e: f5 88 05 mov a,$0588+x -1591: c4 60 mov $60,a -1593: 5f ee 13 jmp $13ee - -1596: e4 00 mov a,$00 ; fetch a random number (RNG) -1598: 1c asl a -1599: 44 00 eor a,$00 -159b: 1c asl a -159c: 1c asl a -159d: 1c asl a -159e: 2b 02 rol $02 -15a0: 2b 01 rol $01 -15a2: 2b 00 rol $00 -15a4: e4 02 mov a,$02 -15a6: 6f ret - -15a7: 3f ae 15 call $15ae ; get current pattern command -15aa: 5d mov x,a -15ab: 1f 7f 16 jmp ($167f+x) - -15ae: f8 5e mov x,$5e ; get 1 byte -15b0: e7 7b mov a,($7b+x) -15b2: bb 7b inc $7b+x -15b4: d0 02 bne $15b8 -15b6: bb 7c inc $7c+x -15b8: 6f ret - -; pattern command 00/16 - end of pattern -15b9: f8 5d mov x,$5d -15bb: e8 0c mov a,#$0c -15bd: d4 61 mov $61+x,a -15bf: 5f 97 16 jmp $1697 - -; pattern command 14 -15c2: 8d 00 mov y,#$00 -15c4: f8 5e mov x,$5e -15c6: 3f b0 15 call $15b0 -15c9: ad 10 cmp y,#$10 -15cb: b0 04 bcs $15d1 -15cd: d6 3f 05 mov $053f+y,a -15d0: fc inc y -15d1: 3f b0 15 call $15b0 -15d4: 68 14 cmp a,#$14 -15d6: f0 ee beq $15c6 -15d8: 68 16 cmp a,#$16 -15da: d0 dd bne $15b9 -15dc: dd mov a,y -15dd: 5d mov x,a -15de: 3f 96 15 call $1596 -15e1: 8d 00 mov y,#$00 -15e3: 9e div ya,x -15e4: f6 3f 05 mov a,$053f+y -15e7: 8d 10 mov y,#$10 -15e9: 3f 72 16 call $1672 -15ec: 2f 05 bra $15f3 - -; pattern command 02 - play melody -15ee: 8d 10 mov y,#$10 -15f0: 3f 6d 16 call $166d -15f3: e8 06 mov a,#$06 -15f5: d4 61 mov $61+x,a -15f7: 5f 71 13 jmp $1371 - -; pattern command 04 -15fa: 8d 14 mov y,#$14 ; get 1 byte -15fc: 3f 6d 16 call $166d -15ff: e8 08 mov a,#$08 -1601: d4 61 mov $61+x,a -1603: 5f 56 15 jmp $1556 - -; pattern command 06 - set channel tuning -1606: 3f ae 15 call $15ae ; get 1 byte -1609: eb 5e mov y,$5e -160b: d6 be 00 mov $00be+y,a -160e: 3f b0 15 call $15b0 -1611: d6 bf 00 mov $00bf+y,a -1614: 5f a7 15 jmp $15a7 - -; pattern command 08 - set instrument -1617: 3f ae 15 call $15ae ; get 1 byte -161a: f8 5d mov x,$5d -161c: d5 78 05 mov $0578+x,a -161f: 5f a7 15 jmp $15a7 - -; pattern command 0a - set pitch envelope -1622: 3f ae 15 call $15ae ; get 1 byte -1625: f8 5d mov x,$5d -1627: d5 80 05 mov $0580+x,a -162a: 5f a7 15 jmp $15a7 - -; pattern command 10 - set channel gain (relative?) -162d: 3f ae 15 call $15ae ; get 1 byte -1630: c4 ad mov $ad,a -1632: f8 5d mov x,$5d -1634: f5 68 05 mov a,$0568+x -1637: 3f 38 15 call $1538 -163a: d5 68 05 mov $0568+x,a -163d: 5f a7 15 jmp $15a7 - -; pattern command 12 - set channel gain (absolute) -1640: 3f ae 15 call $15ae ; get 1 byte -1643: f8 5d mov x,$5d -1645: d5 68 05 mov $0568+x,a -1648: 5f a7 15 jmp $15a7 - -; pattern command 0c -164b: e8 ff mov a,#$ff -164d: f8 5d mov x,$5d -164f: d5 90 05 mov $0590+x,a -1652: 5f a7 15 jmp $15a7 - -; pattern command 0e - (2 bytes) -1655: 3f ae 15 call $15ae ; get 1 byte -1658: eb 5e mov y,$5e -165a: d6 ce 00 mov $00ce+y,a -165d: 3f b0 15 call $15b0 ; get another byte -1660: d6 cf 00 mov $00cf+y,a -1663: e8 00 mov a,#$00 -1665: f8 5d mov x,$5d -1667: d5 90 05 mov $0590+x,a -166a: 5f a7 15 jmp $15a7 - -; get the next byte and its corresponding phrase pointer -166d: 6d push y -166e: 3f ae 15 call $15ae -1671: ee pop y -1672: 3f b2 0d call $0db2 -1675: f8 5e mov x,$5e -1677: d4 8b mov $8b+x,a -1679: dd mov a,y -167a: d4 8c mov $8c+x,a -167c: f8 5d mov x,$5d -167e: 6f ret - -; pattern command table (00-17) -167f: dw $15b9 ; 00 - end of pattern -1681: dw $15ee ; 02 - play melody -1683: dw $15fa ; 04 -1685: dw $1606 ; 06 - set channel tuning -1687: dw $1617 ; 08 - set instrument -1689: dw $1622 ; 0a - set pitch envelope -168b: dw $164b ; 0c -168d: dw $1655 ; 0e - (2 bytes) -168f: dw $162d ; 10 - set channel gain (relative)? -1691: dw $1640 ; 12 - set channel gain (absolute) -1693: dw $15c2 ; 14 -1695: dw $15b9 ; 16 - end of pattern (same as 00) - -; melody command 00 - end of melody -1697: 3f 9e 16 call $169e -169a: 5d mov x,a -169b: 1f 0e 17 jmp ($170e+x) - -169e: f8 5e mov x,$5e -16a0: e7 6b mov a,($6b+x) -16a2: bb 6b inc $6b+x -16a4: d0 02 bne $16a8 -16a6: bb 6c inc $6c+x -16a8: 6f ret - -; melody command 02 - go to loop -16a9: f8 5d mov x,$5d -16ab: e8 00 mov a,#$00 -16ad: d4 61 mov $61+x,a -16af: 8b 5c dec $5c -16b1: 5f 45 13 jmp $1345 - -; melody command 04 -16b4: f8 5e mov x,$5e -16b6: f5 50 05 mov a,$0550+x -16b9: d4 6b mov $6b+x,a -16bb: f5 51 05 mov a,$0551+x -16be: d4 6c mov $6c+x,a -16c0: 5f 97 16 jmp $1697 - -; melody command 06 - toggle channel mute -16c3: 3f 9e 16 call $169e -16c6: f8 5d mov x,$5d -16c8: d5 60 05 mov $0560+x,a -16cb: 5f 97 16 jmp $1697 - -; melody command 08 - play phrase -16ce: 3f 9e 16 call $169e -16d1: eb 5e mov y,$5e -16d3: d6 ae 00 mov $00ae+y,a -16d6: 3f a0 16 call $16a0 -16d9: d6 af 00 mov $00af+y,a -16dc: 5f 97 16 jmp $1697 - -; melody command 0a - set channel number -16df: 3f 9e 16 call $169e -16e2: 8d 16 mov y,#$16 -16e4: 3f b2 0d call $0db2 -16e7: f8 5e mov x,$5e -16e9: d4 7b mov $7b+x,a -16eb: dd mov a,y -16ec: d4 7c mov $7c+x,a -16ee: f8 5d mov x,$5d -16f0: e8 0a mov a,#$0a -16f2: d4 61 mov $61+x,a -16f4: 5f a7 15 jmp $15a7 - -; melody command 0c -16f7: 3f 9e 16 call $169e -16fa: f8 5d mov x,$5d -16fc: d5 98 05 mov $0598+x,a -16ff: 68 ff cmp a,#$ff -1701: d0 08 bne $170b -1703: 3f 9e 16 call $169e -1706: f8 5d mov x,$5d -1708: d5 a0 05 mov $05a0+x,a -170b: 5f 97 16 jmp $1697 - -; melody command table (00-0c) -170c: dw $1697 ; 00 - end of melody -170e: dw $16a9 ; 02 - go to loop -1710: dw $16b4 ; 04 -1712: dw $16c3 ; 06 - toggle channel mute -1714: dw $16ce ; 08 - play phrase -1716: dw $16df ; 0a - set channel number -1718: dw $16f3 ; 0c - -171a: 8d 93 mov y,#$93 -171c: f9 5a mov x,$5a+y -171e: f6 b7 05 mov a,$05b7+y -1721: d6 5a 00 mov $005a+y,a -1724: 7d mov a,x -1725: d6 b7 05 mov $05b7+y,a -1728: fe f2 dbnz y,$171c -172a: 8d 69 mov y,#$69 -172c: f6 4e 05 mov a,$054e+y -172f: 5d mov x,a -1730: f6 4a 06 mov a,$064a+y -1733: d6 4e 05 mov $054e+y,a -1736: 7d mov a,x -1737: d6 4a 06 mov $064a+y,a -173a: fe f0 dbnz y,$172c -173c: 6f ret - -173d: 3f 46 17 call $1746 -1740: e8 01 mov a,#$01 -1742: c5 4f 05 mov $054f,a -1745: 6f ret - -1746: 2d push a ; start song -1747: 3f 1a 17 call $171a ; stop the current song -174a: ae pop a -174b: 8d 1a mov y,#$1a ; find the start of the song struct -174d: 3f b2 0d call $0db2 -1750: da 69 movw $69,ya -1752: 8d 00 mov y,#$00 ; get number of channels -1754: f7 69 mov a,($69)+y -1756: c4 5b mov $5b,a ; save number of channels in total and current -1758: c4 5c mov $5c,a -175a: f0 4b beq $17a7 ; if 0, then return -175c: 8f 00 5d mov $5d,#$00 -175f: 8f 00 5e mov $5e,#$00 -1762: fc inc y -1763: f7 69 mov a,($69)+y -1765: 6d push y -1766: 8d 18 mov y,#$18 -1768: 3f b2 0d call $0db2 -176b: f8 5e mov x,$5e -176d: d5 50 05 mov $0550+x,a -1770: d4 6b mov $6b+x,a -1772: dd mov a,y -1773: ee pop y -1774: d5 51 05 mov $0551+x,a -1777: d4 6c mov $6c+x,a -1779: e8 00 mov a,#$00 -177b: d4 ae mov $ae+x,a -177d: d4 af mov $af+x,a -177f: d4 be mov $be+x,a -1781: d4 bf mov $bf+x,a -1783: f8 5d mov x,$5d -1785: e8 0c mov a,#$0c -1787: d4 61 mov $61+x,a -1789: e8 ff mov a,#$ff -178b: d5 90 05 mov $0590+x,a -178e: d5 a8 05 mov $05a8+x,a -1791: e8 00 mov a,#$00 -1793: d5 68 05 mov $0568+x,a -1796: d5 70 05 mov $0570+x,a -1799: d5 88 05 mov $0588+x,a -179c: ab 5e inc $5e -179e: ab 5e inc $5e -17a0: 3d inc x -17a1: d8 5d mov $5d,x -17a3: 3e 5b cmp x,$5b -17a5: 90 bb bcc $1762 -17a7: 6f ret - -17a8: dw $1345 -17aa: dw $134e -17ac: dw $134e -17ae: dw $137b -17b0: dw $1569 -17b2: dw $15a7 -17b4: dw $1697 -17b6: dw $0b5d -17b8: dw $0bd5 -17ba: dw $174b -17bc: dw $1746 -17be: dw $173d -17c0: dw $171a -17c2: dw $0790 -17c4: dw $0b7c -17c6: dw $0b78 -17c8: dw $0b72 -17ca: dw $0b6f -17cc: dw $0b69 -17ce: dw $0b8b -17d0: dw $0b96 \ No newline at end of file From 055cdd0efac99f4ea582c2b86c9c6a10ecd43bff Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:49:57 -0700 Subject: [PATCH 015/116] Delete Super Star Wars - The Empire Strikes Back.s --- Super Star Wars - The Empire Strikes Back.s | 2039 ------------------- 1 file changed, 2039 deletions(-) delete mode 100644 Super Star Wars - The Empire Strikes Back.s diff --git a/Super Star Wars - The Empire Strikes Back.s b/Super Star Wars - The Empire Strikes Back.s deleted file mode 100644 index 68443139..00000000 --- a/Super Star Wars - The Empire Strikes Back.s +++ /dev/null @@ -1,2039 +0,0 @@ -0700: 20 clrp -0701: cd ff mov x,#$ff ; set stack pointer -0703: bd mov sp,x -0704: 8f b0 f1 mov $f1,#$b0 ; clear input ports APUI00-APUI04 -0707: 8f 20 fa mov $fa,#$20 -070a: 8f 81 f1 mov $f1,#$81 ; toggle timer 2 -070d: 3f ca 0e call $0eca ; clear/reset routine -0710: 8f 00 13 mov $13,#$00 -0713: 8f 1a 14 mov $14,#$1a -0716: 8d 03 mov y,#$03 ; set temporary storage -0718: f6 00 00 mov a,$0000+y -071b: 16 22 07 or a,$0722+y -071e: d6 00 00 mov $0000+y,a -0721: fe f5 dbnz y,$0718 -0723: ab 1d inc $1d -0725: e4 23 mov a,$23 -0727: d0 05 bne $072e -0729: 3f 54 18 call $1854 ; do a random number generator (RNG) -072c: 2f 03 bra $0731 -072e: 3f 51 08 call $0851 -0731: e4 f6 mov a,$f6 -0733: f0 03 beq $0738 -0735: 3f 86 0b call $0b86 -0738: e4 fd mov a,$fd -073a: 60 clrc -073b: 84 1c adc a,$1c -073d: c4 1c mov $1c,a -073f: 68 05 cmp a,#$05 -0741: 90 ee bcc $0731 -0743: a8 05 sbc a,#$05 -0745: c4 1c mov $1c,a -0747: 68 14 cmp a,#$14 -0749: 90 d8 bcc $0723 -074b: 8f 00 1c mov $1c,#$00 -074e: 2f d3 bra $0723 -0750: 8d 00 mov y,#$00 -0752: 8f aa f4 mov $f4,#$aa -0755: 8f bb f5 mov $f5,#$bb -0758: f8 f4 mov x,$f4 -075a: c8 cc cmp x,#$cc -075c: d0 fa bne $0758 -075e: fa f6 04 mov ($04),($f6) -0761: fa f7 05 mov ($05),($f7) -0764: 7d mov a,x -0765: f8 f5 mov x,$f5 -0767: c4 f4 mov $f4,a -0769: d0 05 bne $0770 -076b: d8 f5 mov $f5,x -076d: 1f 04 00 jmp ($0004+x) - -0770: cd 00 mov x,#$00 -0772: 3e f4 cmp x,$f4 -0774: d0 fc bne $0772 -0776: e4 f5 mov a,$f5 -0778: d8 f4 mov $f4,x -077a: d7 04 mov ($04)+y,a -077c: 3a 04 incw $04 -077e: 3e f4 cmp x,$f4 -0780: f0 fc beq $077e -0782: 3d inc x -0783: 3e f4 cmp x,$f4 -0785: f0 ef beq $0776 -0787: f8 f4 mov x,$f4 -0789: 2f d3 bra $075e -078b: 3f ca 0e call $0eca -078e: 8f b0 f1 mov $f1,#$b0 -0791: cd 00 mov x,#$00 -0793: f5 50 07 mov a,$0750+x -0796: d5 00 01 mov $0100+x,a -0799: 3d inc x -079a: c8 3b cmp x,#$3b -079c: 90 f5 bcc $0793 -079e: 5f 00 01 jmp $0100 - -; gain tables -07a1: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08 -07b1: db $06,$05,$04,$03,$02,$01,$1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 - -; DSP registers: VxENVX -07cd: db $08,$18,$28,$38,$48,$58,$68,$78 -; DSP registers: VxGAIN -07d5: db $07,$17,$27,$37,$47,$57,$67,$77 -; DSP registers: VxSCRN (select sample) -07dd: db $04,$14,$24,$34,$44,$54,$64,$74 -; DSP registers: VxPITCHL -07e5: db $02,$12,$22,$32,$42,$52,$62,$72 -; DSP registers: VxVOLL -07ed: db $00,$10,$20,$30,$40,$50,$60,$70 - -; voice numbers and bits for clearing those void bits -07f5: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f - -; echo poke registers -0805: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f - -0811: db $02,$02,$02,$02,$02,$03,$03,$03 -0819: db $9e,$b3,$c8,$dd,$f2,$07,$1c,$31 - -0821: db $03,$03,$03,$03,$03,$03,$03,$03 -0829: db $46,$5b,$70,$85,$9a,$af,$c4,$d9 - -0831: db $03,$04,$04,$04,$04,$04,$04,$04 -0839: db $ee,$03,$18,$2d,$42,$57,$6c,$81 - -0841: db $04,$04,$04,$04,$04,$05,$05,$05 -0849: db $96,$ac,$c2,$d8,$ee,$04,$1a,$30 - -0849: 96 ac c2 adc a,$c2ac+y -084c: d8 ee mov $ee,x -084e: 04 1a or a,$1a -0850: 30 3f bmi $0891 -0852: 54 18 eor a,$18+x -0854: 3f 86 0b call $0b86 -0857: e5 00 02 mov a,$0200 -085a: f0 09 beq $0865 -085c: 60 clrc -085d: 85 01 02 adc a,$0201 -0860: c5 01 02 mov $0201,a -0863: 90 06 bcc $086b -0865: 3f 37 14 call $1437 -0868: 3f 86 0b call $0b86 -086b: 8f 00 37 mov $37,#$00 -086e: 8f 00 4c mov $4c,#$00 -0871: 8f 7c f2 mov $f2,#$7c ; clear end of sample flags? -0874: e4 f3 mov a,$f3 -0876: 04 49 or a,$49 -0878: 24 4f and a,$4f -087a: c4 49 mov $49,a -087c: 8f 00 f3 mov $f3,#$00 -087f: 24 4a and a,$4a -0881: 04 4b or a,$4b -0883: c4 4b mov $4b,a -0885: cd 07 mov x,#$07 -0887: 8f 81 15 mov $15,#$81 -088a: 8f 04 16 mov $16,#$04 -088d: 3f 75 0b call $0b75 -0890: d8 17 mov $17,x -0892: f5 f5 07 mov a,$07f5+x ; clear voice number bits -0895: c4 39 mov $39,a -0897: 48 ff eor a,#$ff -0899: c4 3a mov $3a,a -089b: f4 5b mov a,$5b+x -089d: 28 02 and a,#$02 -089f: c4 38 mov $38,a -08a1: d0 06 bne $08a9 -08a3: f5 7e 02 mov a,$027e+x -08a6: 5f ae 08 jmp $08ae - -08a9: 3f 08 10 call $1008 -08ac: f8 17 mov x,$17 -08ae: 75 86 02 cmp a,$0286+x -08b1: d0 10 bne $08c3 -08b3: 3f a2 11 call $11a2 -08b6: 3f 5b 0b call $0b5b -08b9: e4 50 mov a,$50 -08bb: 24 4d and a,$4d -08bd: 24 39 and a,$39 -08bf: d0 43 bne $0904 -08c1: f0 44 beq $0907 -08c3: d5 86 02 mov $0286+x,a -08c6: 09 39 37 or ($37),($39) -08c9: 3f a2 11 call $11a2 -08cc: 7d mov a,x -08cd: 1c asl a -08ce: 5d mov x,a -08cf: e4 51 mov a,$51 -08d1: d5 8e 02 mov $028e+x,a -08d4: e4 52 mov a,$52 -08d6: d5 8f 02 mov $028f+x,a -08d9: f8 17 mov x,$17 -08db: e4 53 mov a,$53 -08dd: 28 20 and a,#$20 -08df: f0 05 beq $08e6 -08e1: 29 3a 4a and ($4a),($3a) -08e4: 2f 03 bra $08e9 -08e6: 09 39 4a or ($4a),($39) -08e9: e4 53 mov a,$53 -08eb: 28 40 and a,#$40 -08ed: f0 05 beq $08f4 -08ef: 09 39 50 or ($50),($39) -08f2: 2f 03 bra $08f7 -08f4: 29 3a 50 and ($50),($3a) -08f7: 3f 5b 0b call $0b5b -08fa: e4 50 mov a,$50 -08fc: 04 4d or a,$4d -08fe: 24 39 and a,$39 -0900: d0 02 bne $0904 -0902: f0 03 beq $0907 -0904: 09 39 4c or ($4c),($39) -0907: 1d dec x -0908: 30 0a bmi $0914 -090a: 80 setc -090b: b8 15 15 sbc $15,#$15 -090e: b8 00 16 sbc $16,#$00 -0911: 5f 8d 08 jmp $088d - -0914: e4 4d mov a,$4d -0916: 24 4b and a,$4b -0918: 04 4c or a,$4c -091a: c4 4e mov $4e,a -091c: 8f 5c f2 mov $f2,#$5c -091f: c4 f3 mov $f3,a -0921: cd 07 mov x,#$07 -0923: 8f 30 15 mov $15,#$30 -0926: 8f 05 16 mov $16,#$05 -0929: 8f 00 3c mov $3c,#$00 -092c: 3f 75 0b call $0b75 -092f: d8 17 mov $17,x -0931: e4 5a mov a,$5a -0933: d0 13 bne $0948 -0935: f4 5b mov a,$5b+x -0937: 28 08 and a,#$08 -0939: c4 3c mov $3c,a -093b: d0 06 bne $0943 -093d: f5 76 02 mov a,$0276+x -0940: 5f 48 09 jmp $0948 - -0943: 3f 08 10 call $1008 -0946: f8 17 mov x,$17 -0948: fd mov y,a -0949: f5 6e 02 mov a,$026e+x -094c: c4 31 mov $31,a -094e: cf mul ya -094f: cd 64 mov x,#$64 -0951: 9e div ya,x -0952: f8 17 mov x,$17 -0954: eb 3c mov y,$3c -0956: f0 11 beq $0969 -0958: c4 2f mov $2f,a -095a: 8d 15 mov y,#$15 -095c: f7 15 mov a,($15)+y -095e: d0 04 bne $0964 -0960: e4 2f mov a,$2f -0962: 2f 05 bra $0969 -0964: e4 31 mov a,$31 -0966: 80 setc -0967: a4 2f sbc a,$2f -0969: c4 2f mov $2f,a -096b: f5 ed 07 mov a,$07ed+x -096e: fd mov y,a -096f: cb f2 mov $f2,y -0971: fa 2f f3 mov ($f3),($2f) -0974: e4 31 mov a,$31 -0976: 80 setc -0977: a4 2f sbc a,$2f -0979: fc inc y -097a: cb f2 mov $f2,y -097c: c4 f3 mov $f3,a -097e: 80 setc -097f: b8 16 15 sbc $15,#$16 -0982: b8 00 16 sbc $16,#$00 -0985: 1d dec x -0986: 30 03 bmi $098b -0988: 5f 2c 09 jmp $092c - -098b: cd 07 mov x,#$07 -098d: 8f d9 15 mov $15,#$d9 -0990: 8f 03 16 mov $16,#$03 -0993: 3f 75 0b call $0b75 -0996: d8 17 mov $17,x -0998: f4 5b mov a,$5b+x -099a: fd mov y,a -099b: 28 40 and a,#$40 -099d: 0d push psw -099e: dd mov a,y -099f: 28 04 and a,#$04 -09a1: 0d push psw -09a2: 7d mov a,x -09a3: fd mov y,a -09a4: 1c asl a -09a5: 5d mov x,a -09a6: f5 4f 02 mov a,$024f+x ; get base note -09a9: c4 36 mov $36,a -09ab: f5 4e 02 mov a,$024e+x -09ae: c4 35 mov $35,a -09b0: 8e pop psw -09b1: f0 11 beq $09c4 -09b3: 4d push x ; save word addressing -09b4: 3f 08 10 call $1008 ; advance pitch envelope -09b7: ce pop x ; restore pitch flag -09b8: 7a 35 addw ya,$35 -09ba: 80 setc -09bb: a8 b0 sbc a,#$b0 -09bd: c4 35 mov $35,a -09bf: dd mov a,y -09c0: a8 04 sbc a,#$04 -09c2: c4 36 mov $36,a -09c4: f5 8f 02 mov a,$028f+x -09c7: fd mov y,a -09c8: f5 8e 02 mov a,$028e+x -09cb: 7a 35 addw ya,$35 -09cd: 8e pop psw -09ce: d0 03 bne $09d3 -09d0: 3f cc 11 call $11cc ; translate note to frequency -09d3: f8 17 mov x,$17 -09d5: d5 5e 02 mov $025e+x,a -09d8: dd mov a,y -09d9: d5 66 02 mov $0266+x,a -09dc: 80 setc -09dd: b8 15 15 sbc $15,#$15 -09e0: b8 00 16 sbc $16,#$00 -09e3: 1d dec x -09e4: 10 ad bpl $0993 -09e6: 8f 5c f2 mov $f2,#$5c -09e9: 8f 00 f3 mov $f3,#$00 -09ec: cd 07 mov x,#$07 -09ee: 8f 31 15 mov $15,#$31 -09f1: 8f 03 16 mov $16,#$03 -09f4: 3f 75 0b call $0b75 -09f7: d8 17 mov $17,x -09f9: f5 f5 07 mov a,$07f5+x -09fc: c4 39 mov $39,a -09fe: 48 ff eor a,#$ff -0a00: c4 3a mov $3a,a -0a02: f4 5b mov a,$5b+x -0a04: 28 01 and a,#$01 -0a06: d0 06 bne $0a0e -0a08: f5 36 02 mov a,$0236+x -0a0b: 5f 13 0a jmp $0a13 - -0a0e: 3f 08 10 call $1008 -0a11: f8 17 mov x,$17 -0a13: 5c lsr a -0a14: d5 3e 02 mov $023e+x,a -0a17: fd mov y,a -0a18: e4 37 mov a,$37 -0a1a: 24 39 and a,$39 -0a1c: f0 0a beq $0a28 -0a1e: f5 dd 07 mov a,$07dd+x -0a21: c4 f2 mov $f2,a -0a23: f5 86 02 mov a,$0286+x -0a26: c4 f3 mov $f3,a -0a28: e4 48 mov a,$48 -0a2a: 24 39 and a,$39 -0a2c: f0 06 beq $0a34 -0a2e: 29 3a 48 and ($48),($3a) -0a31: 5c lsr a -0a32: 2f 35 bra $0a69 -0a34: f5 cd 07 mov a,$07cd+x -0a37: c4 f2 mov $f2,a -0a39: dd mov a,y -0a3a: 80 setc -0a3b: a4 f3 sbc a,$f3 -0a3d: b0 08 bcs $0a47 -0a3f: 8f 80 2a mov $2a,#$80 -0a42: 48 ff eor a,#$ff -0a44: bc inc a -0a45: 2f 03 bra $0a4a -0a47: 8f c0 2a mov $2a,#$c0 -0a4a: 5c lsr a -0a4b: d0 08 bne $0a55 -0a4d: ad 00 cmp y,#$00 -0a4f: d0 04 bne $0a55 -0a51: e8 82 mov a,#$82 -0a53: 2f 0e bra $0a63 -0a55: 8d 15 mov y,#$15 -0a57: 76 a1 07 cmp a,$07a1+y -0a5a: 90 02 bcc $0a5e -0a5c: fe f9 dbnz y,$0a57 -0a5e: f6 b7 07 mov a,$07b7+y -0a61: 04 2a or a,$2a -0a63: 75 46 02 cmp a,$0246+x -0a66: f0 0c beq $0a74 -0a68: fd mov y,a -0a69: f5 d5 07 mov a,$07d5+x -0a6c: c4 f2 mov $f2,a -0a6e: cb f3 mov $f3,y -0a70: dd mov a,y -0a71: d5 46 02 mov $0246+x,a -0a74: f5 e5 07 mov a,$07e5+x -0a77: c4 f2 mov $f2,a -0a79: fd mov y,a -0a7a: f5 5e 02 mov a,$025e+x -0a7d: c4 f3 mov $f3,a -0a7f: fc inc y -0a80: cb f2 mov $f2,y -0a82: f5 66 02 mov a,$0266+x -0a85: c4 f3 mov $f3,a -0a87: 80 setc -0a88: b8 15 15 sbc $15,#$15 -0a8b: b8 00 16 sbc $16,#$00 -0a8e: 1d dec x -0a8f: 30 03 bmi $0a94 -0a91: 5f f4 09 jmp $09f4 - -0a94: 8f 4c f2 mov $f2,#$4c -0a97: fa 4e f3 mov ($f3),($4e) -0a9a: e4 4e mov a,$4e -0a9c: 48 ff eor a,#$ff -0a9e: c4 4f mov $4f,a -0aa0: 29 4f 49 and ($49),($4f) -0aa3: 29 4f 4b and ($4b),($4f) -0aa6: 8f 00 4d mov $4d,#$00 -0aa9: 3f 86 0b call $0b86 -0aac: cd 07 mov x,#$07 -0aae: 8d 0e mov y,#$0e -0ab0: f5 0d 02 mov a,$020d+x -0ab3: f0 2b beq $0ae0 -0ab5: f4 5b mov a,$5b+x -0ab7: 28 80 and a,#$80 -0ab9: f0 09 beq $0ac4 -0abb: f5 f5 07 mov a,$07f5+x -0abe: 24 49 and a,$49 -0ac0: d0 19 bne $0adb -0ac2: 2f 1c bra $0ae0 -0ac4: f6 1e 02 mov a,$021e+y -0ac7: 80 setc -0ac8: a8 01 sbc a,#$01 -0aca: d6 1e 02 mov $021e+y,a -0acd: c4 2f mov $2f,a -0acf: f6 1f 02 mov a,$021f+y -0ad2: a8 00 sbc a,#$00 -0ad4: d6 1f 02 mov $021f+y,a -0ad7: 04 2f or a,$2f -0ad9: d0 05 bne $0ae0 -0adb: e8 00 mov a,#$00 -0add: d5 0d 02 mov $020d+x,a -0ae0: dc dec y -0ae1: dc dec y -0ae2: 1d dec x -0ae3: 10 cb bpl $0ab0 -0ae5: 3f 75 0b call $0b75 -0ae8: ec 07 02 mov y,$0207 -0aeb: f0 66 beq $0b53 -0aed: 8c 08 02 dec $0208 -0af0: d0 61 bne $0b53 -0af2: cc 08 02 mov $0208,y -0af5: e4 1e mov a,$1e -0af7: e9 09 02 mov x,$0209 -0afa: 30 0e bmi $0b0a -0afc: 60 clrc -0afd: 85 0a 02 adc a,$020a -0b00: b0 04 bcs $0b06 -0b02: 68 4b cmp a,#$4b -0b04: 90 13 bcc $0b19 -0b06: e8 4b mov a,#$4b -0b08: 2f 0a bra $0b14 -0b0a: 80 setc -0b0b: a5 0a 02 sbc a,$020a -0b0e: f0 04 beq $0b14 -0b10: b0 07 bcs $0b19 -0b12: e8 00 mov a,#$00 -0b14: 8d 00 mov y,#$00 -0b16: cc 07 02 mov $0207,y -0b19: c4 1e mov $1e,a -0b1b: 5d mov x,a -0b1c: 8f 2c f2 mov $f2,#$2c -0b1f: 65 0b 02 cmp a,$020b -0b22: 90 03 bcc $0b27 -0b24: e5 0b 02 mov a,$020b -0b27: c4 f3 mov $f3,a -0b29: 8f 3c f2 mov $f2,#$3c -0b2c: 7d mov a,x -0b2d: 65 0c 02 cmp a,$020c -0b30: 90 03 bcc $0b35 -0b32: e5 0b 02 mov a,$020b -0b35: c4 f3 mov $f3,a -0b37: 8f 0c f2 mov $f2,#$0c -0b3a: d8 f3 mov $f3,x -0b3c: 8f 1c f2 mov $f2,#$1c -0b3f: d8 f3 mov $f3,x -0b41: e5 07 02 mov a,$0207 -0b44: d0 0d bne $0b53 -0b46: e5 06 02 mov a,$0206 -0b49: f0 08 beq $0b53 -0b4b: 8f 00 64 mov $64,#$00 -0b4e: 8d 80 mov y,#$80 -0b50: 5f 52 0c jmp $0c52 - -0b53: e4 92 mov a,$92 -0b55: f0 03 beq $0b5a -0b57: 5f e0 17 jmp $17e0 - -0b5a: 6f ret - -0b5b: e4 53 mov a,$53 -0b5d: 10 0c bpl $0b6b -0b5f: 28 1f and a,#$1f -0b61: 8f 6c f2 mov $f2,#$6c -0b64: c4 f3 mov $f3,a -0b66: 09 39 55 or ($55),($39) -0b69: 2f 03 bra $0b6e -0b6b: 29 3a 55 and ($55),($3a) -0b6e: 8f 3d f2 mov $f2,#$3d -0b71: fa 55 f3 mov ($f3),($55) -0b74: 6f ret - -0b75: 4d push x -0b76: e4 f6 mov a,$f6 -0b78: f0 4c beq $0bc6 -0b7a: f8 f7 mov x,$f7 -0b7c: c8 1e cmp x,#$1e -0b7e: 90 46 bcc $0bc6 -0b80: c8 23 cmp x,#$23 -0b82: b0 42 bcs $0bc6 -0b84: 2f 05 bra $0b8b -0b86: 4d push x -0b87: e4 f6 mov a,$f6 -0b89: f0 3b beq $0bc6 -0b8b: e4 f6 mov a,$f6 -0b8d: 64 f6 cmp a,$f6 -0b8f: d0 fa bne $0b8b -0b91: c4 1f mov $1f,a -0b93: fa f4 21 mov ($21),($f4) -0b96: fa f5 22 mov ($22),($f5) -0b99: e4 f7 mov a,$f7 -0b9b: 28 fe and a,#$fe -0b9d: c4 20 mov $20,a -0b9f: 8f b1 f1 mov $f1,#$b1 -0ba2: 28 fe and a,#$fe -0ba4: c4 20 mov $20,a -0ba6: 68 20 cmp a,#$20 -0ba8: f0 07 beq $0bb1 -0baa: 68 22 cmp a,#$22 -0bac: f0 03 beq $0bb1 -0bae: fa 1f f6 mov ($f6),($1f) -0bb1: 5d mov x,a -0bb2: c8 29 cmp x,#$29 -0bb4: b0 10 bcs $0bc6 -0bb6: e4 21 mov a,$21 -0bb8: eb 22 mov y,$22 -0bba: 3f c8 0b call $0bc8 -0bbd: fa 21 f4 mov ($f4),($21) -0bc0: fa 22 f5 mov ($f5),($22) -0bc3: fa 20 f7 mov ($f7),($20) -0bc6: ce pop x -0bc7: 6f ret - -0bc8: 1f 5c 19 jmp ($195c+x) - -0bcb: 3f 06 0f call $0f06 -0bce: e8 01 mov a,#$01 -0bd0: 8d 08 mov y,#$08 -0bd2: cd 01 mov x,#$01 -0bd4: 3f f0 0b call $0bf0 -0bd7: 8f 6c f2 mov $f2,#$6c -0bda: 8f 00 f3 mov $f3,#$00 -0bdd: 8f ff 23 mov $23,#$ff -0be0: 6f ret - -0be1: da 42 movw $42,ya -0be3: 8f ff 41 mov $41,#$ff -0be6: 6f ret - -0be7: c4 5a mov $5a,a -0be9: 6f ret - -0bea: e8 00 mov a,#$00 -0bec: c5 07 02 mov $0207,a -0bef: 6f ret - -0bf0: cd 01 mov x,#$01 -0bf2: 2d push a -0bf3: e8 00 mov a,#$00 -0bf5: c5 06 02 mov $0206,a -0bf8: ae pop a -0bf9: 2f 02 bra $0bfd -0bfb: cd ff mov x,#$ff -0bfd: c5 07 02 mov $0207,a -0c00: c5 08 02 mov $0208,a -0c03: cc 0a 02 mov $020a,y -0c06: c9 09 02 mov $0209,x -0c09: 6f ret - -0c0a: 8d ff mov y,#$ff -0c0c: cc 05 02 mov $0205,y -0c0f: 5f a9 0c jmp $0ca9 - -0c12: 3f 65 18 call $1865 -0c15: e5 fc 19 mov a,$19fc -0c18: c5 33 06 mov $0633,a -0c1b: e5 fd 19 mov a,$19fd -0c1e: c5 34 06 mov $0634,a -0c21: 05 33 06 or a,$0633 -0c24: f0 20 beq $0c46 -0c26: 3f 37 14 call $1437 -0c29: e5 33 06 mov a,$0633 -0c2c: 80 setc -0c2d: a8 01 sbc a,#$01 -0c2f: c5 33 06 mov $0633,a -0c32: e5 34 06 mov a,$0634 -0c35: a8 00 sbc a,#$00 -0c37: c5 34 06 mov $0634,a -0c3a: b0 ea bcs $0c26 -0c3c: cd 07 mov x,#$07 -0c3e: e8 00 mov a,#$00 -0c40: d5 6e 02 mov $026e+x,a -0c43: 1d dec x -0c44: 10 fa bpl $0c40 -0c46: 6f ret - -0c47: 8f 00 64 mov $64,#$00 -0c4a: 68 00 cmp a,#$00 -0c4c: d0 03 bne $0c51 -0c4e: c5 46 05 mov $0546,a -0c51: 6f ret - -0c52: c5 1d 02 mov $021d,a -0c55: cd 07 mov x,#$07 -0c57: ad 80 cmp y,#$80 -0c59: f0 17 beq $0c72 -0c5b: e8 01 mov a,#$01 -0c5d: b0 0e bcs $0c6d -0c5f: ad 00 cmp y,#$00 -0c61: d0 08 bne $0c6b -0c63: e5 1d 02 mov a,$021d -0c66: 75 15 02 cmp a,$0215+x -0c69: d0 23 bne $0c8e -0c6b: e8 80 mov a,#$80 -0c6d: 75 0d 02 cmp a,$020d+x -0c70: d0 1c bne $0c8e -0c72: f5 d5 07 mov a,$07d5+x -0c75: c4 f2 mov $f2,a -0c77: e8 00 mov a,#$00 -0c79: 8f 9f f3 mov $f3,#$9f -0c7c: d5 36 02 mov $0236+x,a -0c7f: d5 0d 02 mov $020d+x,a -0c82: d5 7e 02 mov $027e+x,a -0c85: d4 5b mov $5b+x,a -0c87: f5 f5 07 mov a,$07f5+x -0c8a: 04 4d or a,$4d -0c8c: c4 4d mov $4d,a -0c8e: 1d dec x -0c8f: 10 c6 bpl $0c57 -0c91: 6f ret - -0c92: 2d push a -0c93: e8 00 mov a,#$00 -0c95: c5 06 02 mov $0206,a -0c98: ae pop a -0c99: 5f fb 0b jmp $0bfb - -0c9c: 2d push a -0c9d: e8 01 mov a,#$01 -0c9f: c5 06 02 mov $0206,a -0ca2: ae pop a -0ca3: 5f fb 0b jmp $0bfb - -0ca6: cc 05 02 mov $0205,y -0ca9: 8d 0e mov y,#$0e -0cab: c5 1d 02 mov $021d,a -0cae: 3f a9 0e call $0ea9 -0cb1: da 11 movw $11,ya -0cb3: 8d 00 mov y,#$00 -0cb5: f7 11 mov a,($11)+y -0cb7: c4 44 mov $44,a -0cb9: 3a 11 incw $11 -0cbb: 8d 07 mov y,#$07 -0cbd: f7 11 mov a,($11)+y -0cbf: c4 45 mov $45,a -0cc1: 8d 06 mov y,#$06 -0cc3: f7 11 mov a,($11)+y -0cc5: c4 46 mov $46,a -0cc7: 8f 80 47 mov $47,#$80 -0cca: cd 07 mov x,#$07 -0ccc: 3f 1c 0d call $0d1c -0ccf: 30 3b bmi $0d0c -0cd1: e8 80 mov a,#$80 -0cd3: d5 0d 02 mov $020d+x,a -0cd6: e5 1d 02 mov a,$021d -0cd9: d5 15 02 mov $0215+x,a -0cdc: 8d 02 mov y,#$02 -0cde: f7 11 mov a,($11)+y -0ce0: c4 3d mov $3d,a -0ce2: fc inc y -0ce3: f7 11 mov a,($11)+y -0ce5: c4 3e mov $3e,a -0ce7: 8d 04 mov y,#$04 -0ce9: f7 11 mov a,($11)+y -0ceb: c4 3f mov $3f,a -0ced: fc inc y -0cee: f7 11 mov a,($11)+y -0cf0: c4 40 mov $40,a -0cf2: e4 41 mov a,$41 -0cf4: f0 04 beq $0cfa -0cf6: ba 42 movw ya,$42 -0cf8: da 3f movw $3f,ya -0cfa: 8d 01 mov y,#$01 -0cfc: f7 11 mov a,($11)+y -0cfe: 2d push a -0cff: 8d 00 mov y,#$00 -0d01: f7 11 mov a,($11)+y -0d03: 8d 01 mov y,#$01 -0d05: cc 04 02 mov $0204,y -0d08: ee pop y -0d09: 3f 46 0d call $0d46 -0d0c: 60 clrc -0d0d: 98 08 11 adc $11,#$08 -0d10: 90 02 bcc $0d14 -0d12: ab 12 inc $12 -0d14: 8b 44 dec $44 -0d16: d0 a3 bne $0cbb -0d18: 8f 00 41 mov $41,#$00 -0d1b: 6f ret - -0d1c: 8d 07 mov y,#$07 -0d1e: e4 47 mov a,$47 -0d20: 24 45 and a,$45 -0d22: f0 0c beq $0d30 -0d24: f5 0d 02 mov a,$020d+x -0d27: f0 15 beq $0d3e -0d29: e4 46 mov a,$46 -0d2b: 75 2e 02 cmp a,$022e+x -0d2e: b0 10 bcs $0d40 -0d30: 4b 47 lsr $47 -0d32: d0 05 bne $0d39 -0d34: 8f 80 47 mov $47,#$80 -0d37: cd 08 mov x,#$08 -0d39: 1d dec x -0d3a: dc dec y -0d3b: 10 e1 bpl $0d1e -0d3d: 6f ret - -0d3e: e4 46 mov a,$46 -0d40: d5 2e 02 mov $022e+x,a -0d43: e8 00 mov a,#$00 -0d45: 6f ret - -0d46: d8 3b mov $3b,x ; play sound (instrument) -0d48: 2d push a -0d49: f5 d5 07 mov a,$07d5+x -0d4c: c4 f2 mov $f2,a -0d4e: 8f 9f f3 mov $f3,#$9f -0d51: dd mov a,y -0d52: d5 6e 02 mov $026e+x,a -0d55: 7d mov a,x -0d56: 1c asl a -0d57: 5d mov x,a -0d58: e4 3f mov a,$3f -0d5a: d5 4e 02 mov $024e+x,a -0d5d: e4 40 mov a,$40 -0d5f: d5 4f 02 mov $024f+x,a -0d62: e4 3d mov a,$3d -0d64: d5 1e 02 mov $021e+x,a -0d67: e4 3e mov a,$3e -0d69: d5 1f 02 mov $021f+x,a -0d6c: ae pop a -0d6d: 8d 02 mov y,#$02 -0d6f: 3f a9 0e call $0ea9 -0d72: da 0f movw $0f,ya ;get current voice and instrument -0d74: f8 3b mov x,$3b -0d76: f5 f5 07 mov a,$07f5+x ;get channel bit mask ID -0d79: c4 56 mov $56,a -0d7b: 48 ff eor a,#$ff ;and store inversion -0d7d: c4 57 mov $57,a -0d7f: 8d 00 mov y,#$00 ;get mode flags -0d81: f7 0f mov a,($0f)+y -0d83: 2d push a -0d84: e5 05 02 mov a,$0205 -0d87: 30 0a bmi $0d93 -0d89: ae pop a -0d8a: 2d push a -0d8b: 28 08 and a,#$08 -0d8d: f0 04 beq $0d93 -0d8f: ae pop a -0d90: 48 08 eor a,#$08 -0d92: 2d push a -0d93: ae pop a -0d94: d4 5b mov $5b+x,a -0d96: c4 3c mov $3c,a -0d98: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) -0d9a: f0 05 beq $0da1 ; if not... -0d9c: 09 56 58 or ($58),($56) ; turn pitch mod on -0d9f: 2f 03 bra $0da4 -0da1: 29 57 58 and ($58),($57) ; turn pitch mod off -0da4: 8f 2d f2 mov $f2,#$2d -0da7: fa 58 f3 mov ($f3),($58) -0daa: e4 3c mov a,$3c ; retrieve the saved flag -0dac: 28 10 and a,#$10 ; is echo enabled? ($10 = echo) -0dae: f0 2f beq $0ddf ; if not... -0db0: 8d 05 mov y,#$05 ; get echo byte from sound -0db2: f7 0f mov a,($0f)+y -0db4: 8d 0c mov y,#$0c -0db6: 3f a9 0e call $0ea9 -0db9: 8d 00 mov y,#$00 -0dbb: f6 05 08 mov a,$0805+y ; get the echo register values to "poke" -0dbe: c4 f2 mov $f2,a ; (from the table) -0dc0: f7 18 mov a,($18)+y ; now get info to feed to the registers -0dc2: ad 01 cmp y,#$01 ; (from the echo environment) -0dc4: f0 04 beq $0dca -0dc6: ad 02 cmp y,#$02 -0dc8: d0 09 bne $0dd3 -0dca: d6 0a 02 mov $020a+y,a -0dcd: 64 1e cmp a,$1e -0dcf: 90 02 bcc $0dd3 -0dd1: e4 1e mov a,$1e -0dd3: c4 f3 mov $f3,a -0dd5: fc inc y -0dd6: ad 0c cmp y,#$0c ;repeat for every byte of the array -0dd8: 90 e1 bcc $0dbb -0dda: 09 56 59 or ($59),($56) -0ddd: 2f 03 bra $0de2 -0ddf: 29 57 59 and ($59),($57) ;send the echo unit -0de2: 8f 4d f2 mov $f2,#$4d -0de5: fa 59 f3 mov ($f3),($59) -0de8: e4 3c mov a,$3c -0dea: 28 01 and a,#$01 -0dec: 0d push psw -0ded: 8d 01 mov y,#$01 -0def: f7 0f mov a,($0f)+y ;now get the amplitude -0df1: 8e pop psw -0df2: d0 08 bne $0dfc -0df4: f8 3b mov x,$3b -0df6: d5 36 02 mov $0236+x,a -0df9: 5f 12 0e jmp $0e12 - -0dfc: 8d 04 mov y,#$04 -0dfe: 3f a9 0e call $0ea9 -0e01: f8 3b mov x,$3b -0e03: f5 19 08 mov a,$0819+x -0e06: c4 15 mov $15,a -0e08: f5 11 08 mov a,$0811+x -0e0b: c4 16 mov $16,a -0e0d: ba 3d movw ya,$3d -0e0f: 3f 80 0f call $0f80 -0e12: e4 3c mov a,$3c -0e14: 28 04 and a,#$04 -0e16: f0 1a beq $0e32 -0e18: 8d 03 mov y,#$03 -0e1a: f7 0f mov a,($0f)+y -0e1c: 8d 06 mov y,#$06 -0e1e: 3f a9 0e call $0ea9 -0e21: f8 3b mov x,$3b -0e23: f5 29 08 mov a,$0829+x -0e26: c4 15 mov $15,a -0e28: f5 21 08 mov a,$0821+x -0e2b: c4 16 mov $16,a -0e2d: ba 3d movw ya,$3d -0e2f: 3f 80 0f call $0f80 -0e32: e5 05 02 mov a,$0205 -0e35: 10 0c bpl $0e43 -0e37: e4 3c mov a,$3c -0e39: 28 08 and a,#$08 -0e3b: 0d push psw -0e3c: 8d 04 mov y,#$04 -0e3e: f7 0f mov a,($0f)+y -0e40: 8e pop psw -0e41: d0 08 bne $0e4b -0e43: f8 3b mov x,$3b -0e45: d5 76 02 mov $0276+x,a -0e48: 5f 78 0e jmp $0e78 - -0e4b: 8d 08 mov y,#$08 -0e4d: 3f a9 0e call $0ea9 -0e50: f8 3b mov x,$3b -0e52: f5 49 08 mov a,$0849+x -0e55: c4 15 mov $15,a -0e57: f5 41 08 mov a,$0841+x -0e5a: c4 16 mov $16,a -0e5c: ba 3d movw ya,$3d -0e5e: 3f 80 0f call $0f80 -0e61: 8d 07 mov y,#$07 -0e63: f7 15 mov a,($15)+y -0e65: f0 0b beq $0e72 -0e67: 8d 15 mov y,#$15 -0e69: f7 15 mov a,($15)+y -0e6b: d0 05 bne $0e72 -0e6d: e8 ff mov a,#$ff -0e6f: 5f 74 0e jmp $0e74 - -0e72: e8 00 mov a,#$00 -0e74: 8d 15 mov y,#$15 -0e76: d7 15 mov ($15)+y,a -0e78: e4 3c mov a,$3c -0e7a: 28 02 and a,#$02 -0e7c: 0d push psw -0e7d: 8d 02 mov y,#$02 -0e7f: f7 0f mov a,($0f)+y -0e81: 8e pop psw -0e82: d0 08 bne $0e8c -0e84: f8 3b mov x,$3b -0e86: d5 7e 02 mov $027e+x,a -0e89: 5f a2 0e jmp $0ea2 - -0e8c: 8d 0a mov y,#$0a -0e8e: 3f a9 0e call $0ea9 -0e91: f8 3b mov x,$3b -0e93: f5 39 08 mov a,$0839+x -0e96: c4 15 mov $15,a -0e98: f5 31 08 mov a,$0831+x -0e9b: c4 16 mov $16,a -0e9d: ba 3d movw ya,$3d -0e9f: 3f 80 0f call $0f80 -0ea2: 09 56 4d or ($4d),($56) -0ea5: 09 56 48 or ($48),($56) -0ea8: 6f ret - -0ea9: 8f 00 0e mov $0e,#$00 ; load current song/sfx/etc. address into stack -0eac: 1c asl a -0ead: 2b 0e rol $0e -0eaf: 60 clrc -0eb0: 96 e0 19 adc a,$19e0+y -0eb3: c4 0d mov $0d,a -0eb5: e4 0e mov a,$0e -0eb7: 96 e1 19 adc a,$19e1+y -0eba: c4 0e mov $0e,a -0ebc: 8d 01 mov y,#$01 -0ebe: f7 0d mov a,($0d)+y -0ec0: c4 19 mov $19,a -0ec2: dc dec y -0ec3: f7 0d mov a,($0d)+y -0ec5: c4 18 mov $18,a -0ec7: eb 19 mov y,$19 -0ec9: 6f ret - -0eca: cd 35 mov x,#$35 -0ecc: 8d 0f mov y,#$0f -0ece: 3f 1e 0f call $0f1e -0ed1: e8 00 mov a,#$00 -0ed3: fd mov y,a -0ed4: c4 04 mov $04,a -0ed6: 8f 02 05 mov $05,#$02 -0ed9: d7 04 mov ($04)+y,a -0edb: 3a 04 incw $04 -0edd: 78 07 05 cmp $05,#$07 -0ee0: 90 f7 bcc $0ed9 -0ee2: d6 00 00 mov $0000+y,a -0ee5: fc inc y -0ee6: ad f0 cmp y,#$f0 -0ee8: 90 f8 bcc $0ee2 -0eea: 8d 00 mov y,#$00 -0eec: 60 clrc -0eed: d6 8a 00 mov $008a+y,a -0ef0: 88 19 adc a,#$19 -0ef2: fc inc y -0ef3: ad 08 cmp y,#$08 -0ef5: d0 f6 bne $0eed -0ef7: 9c dec a -0ef8: c4 49 mov $49,a -0efa: c4 4b mov $4b,a -0efc: c4 50 mov $50,a -0efe: c4 4a mov $4a,a -0f00: c4 4f mov $4f,a -0f02: 8f 00 1e mov $1e,#$00 -0f05: 6f ret - -0f06: e5 e1 19 mov a,$19e1 -0f09: 8f 6d f2 mov $f2,#$6d -0f0c: c4 f3 mov $f3,a -0f0e: c4 05 mov $05,a -0f10: e8 00 mov a,#$00 -0f12: fd mov y,a -0f13: c4 04 mov $04,a -0f15: d7 04 mov ($04)+y,a -0f17: fe fc dbnz y,$0f15 -0f19: ab 05 inc $05 -0f1b: d0 f8 bne $0f15 -0f1d: 6f ret - -0f1e: d8 04 mov $04,x -0f20: cb 05 mov $05,y -0f22: 8d 00 mov y,#$00 -0f24: f7 04 mov a,($04)+y -0f26: 68 ff cmp a,#$ff -0f28: f0 0a beq $0f34 -0f2a: c4 f2 mov $f2,a -0f2c: fc inc y -0f2d: f7 04 mov a,($04)+y -0f2f: c4 f3 mov $f3,a -0f31: fc inc y -0f32: d0 f0 bne $0f24 -0f34: 6f ret - -; pre-defined DSP flags -0f35: db $6c,$3f,$3d,$00,$4d,$00,$7d,$00,$6d,$ff,$5d,$1a,$5c,$00,$2d,$00,$05,$00,$15,$00,$25,$00,$35,$00,$45,$00,$55,$00,$65,$00,$75,$00,$07,$00,$17,$00,$27,$00,$37,$00,$47,$00,$57,$00,$67,$00,$77,$00,$7c,$00,$2c,$00,$3c,$00,$0c,$00,$1c,$00,$04,$00,$14,$00,$24,$00,$34,$00,$44,$00,$54,$00,$64,$00,$74,$00,$ff - -0f80: da 2f movw $2f,ya -0f82: 8d 07 mov y,#$07 -0f84: f7 18 mov a,($18)+y -0f86: d7 15 mov ($15)+y,a -0f88: dc dec y -0f89: 10 f9 bpl $0f84 -0f8b: e4 18 mov a,$18 -0f8d: 60 clrc -0f8e: 88 08 adc a,#$08 -0f90: 8d 08 mov y,#$08 -0f92: d7 15 mov ($15)+y,a -0f94: e4 19 mov a,$19 -0f96: 88 00 adc a,#$00 -0f98: fc inc y -0f99: d7 15 mov ($15)+y,a -0f9b: 8d 03 mov y,#$03 -0f9d: f7 15 mov a,($15)+y -0f9f: 5d mov x,a -0fa0: 8d 02 mov y,#$02 -0fa2: f7 15 mov a,($15)+y -0fa4: fd mov y,a -0fa5: 7d mov a,x -0fa6: cf mul ya -0fa7: da 33 movw $33,ya -0fa9: 4d push x -0faa: ba 2f movw ya,$2f -0fac: e9 04 02 mov x,$0204 -0faf: d0 0a bne $0fbb -0fb1: 5d mov x,a -0fb2: e5 02 02 mov a,$0202 -0fb5: ec 03 02 mov y,$0203 -0fb8: 3f e1 15 call $15e1 -0fbb: ce pop x -0fbc: 9a 33 subw ya,$33 -0fbe: b0 03 bcs $0fc3 -0fc0: e8 00 mov a,#$00 -0fc2: fd mov y,a -0fc3: cb 34 mov $34,y -0fc5: 8d 0d mov y,#$0d -0fc7: d7 15 mov ($15)+y,a -0fc9: fc inc y -0fca: e4 34 mov a,$34 -0fcc: d7 15 mov ($15)+y,a -0fce: 8d 03 mov y,#$03 -0fd0: f7 15 mov a,($15)+y -0fd2: bc inc a -0fd3: 8d 0f mov y,#$0f -0fd5: d7 15 mov ($15)+y,a -0fd7: 68 03 cmp a,#$03 -0fd9: b0 06 bcs $0fe1 -0fdb: 8d 04 mov y,#$04 -0fdd: e8 00 mov a,#$00 -0fdf: d7 15 mov ($15)+y,a -0fe1: 8d 08 mov y,#$08 -0fe3: f7 15 mov a,($15)+y -0fe5: 8d 0a mov y,#$0a -0fe7: d7 15 mov ($15)+y,a -0fe9: 8d 09 mov y,#$09 -0feb: f7 15 mov a,($15)+y -0fed: 8d 0b mov y,#$0b -0fef: d7 15 mov ($15)+y,a -0ff1: e8 01 mov a,#$01 -0ff3: 8d 14 mov y,#$14 -0ff5: d7 15 mov ($15)+y,a -0ff7: 9c dec a -0ff8: 8d 0c mov y,#$0c -0ffa: d7 15 mov ($15)+y,a -0ffc: 8d 12 mov y,#$12 -0ffe: d7 15 mov ($15)+y,a -1000: fc inc y -1001: d7 15 mov ($15)+y,a -1003: c4 28 mov $28,a -1005: 5f b6 10 jmp $10b6 - -1008: 8d 14 mov y,#$14 -100a: f7 15 mov a,($15)+y -100c: f0 39 beq $1047 -100e: 8d 04 mov y,#$04 -1010: f7 15 mov a,($15)+y -1012: c4 28 mov $28,a -1014: 8d 0f mov y,#$0f -1016: f7 15 mov a,($15)+y -1018: c4 29 mov $29,a -101a: f0 03 beq $101f -101c: 9c dec a -101d: d0 06 bne $1025 -101f: 8d 03 mov y,#$03 -1021: f7 15 mov a,($15)+y -1023: 8d 0f mov y,#$0f -1025: d7 15 mov ($15)+y,a -1027: 78 02 29 cmp $29,#$02 -102a: 90 03 bcc $102f -102c: 5f b6 10 jmp $10b6 - -102f: 8d 0c mov y,#$0c -1031: f7 15 mov a,($15)+y -1033: bc inc a -1034: 8d 05 mov y,#$05 -1036: 77 15 cmp a,($15)+y -1038: 90 17 bcc $1051 -103a: 9c dec a -103b: 8d 01 mov y,#$01 -103d: 77 15 cmp a,($15)+y -103f: f0 6a beq $10ab -1041: e8 00 mov a,#$00 -1043: 8d 14 mov y,#$14 -1045: d7 15 mov ($15)+y,a -1047: 8d 11 mov y,#$11 -1049: f7 15 mov a,($15)+y -104b: 2d push a -104c: dc dec y -104d: f7 15 mov a,($15)+y -104f: ee pop y -1050: 6f ret - -1051: 8d 0c mov y,#$0c -1053: d7 15 mov ($15)+y,a -1055: 8d 06 mov y,#$06 -1057: f7 15 mov a,($15)+y -1059: 8d 0a mov y,#$0a -105b: 60 clrc -105c: 97 15 adc a,($15)+y -105e: d7 15 mov ($15)+y,a -1060: 90 07 bcc $1069 -1062: fc inc y -1063: f7 15 mov a,($15)+y -1065: 88 00 adc a,#$00 -1067: d7 15 mov ($15)+y,a -1069: 8d 0e mov y,#$0e -106b: f7 15 mov a,($15)+y -106d: 5d mov x,a -106e: dc dec y -106f: f7 15 mov a,($15)+y -1071: d0 04 bne $1077 -1073: c8 00 cmp x,#$00 -1075: f0 3f beq $10b6 -1077: 8d 03 mov y,#$03 -1079: 80 setc -107a: b7 15 sbc a,($15)+y -107c: 8d 0d mov y,#$0d -107e: d7 15 mov ($15)+y,a -1080: c4 33 mov $33,a -1082: 7d mov a,x -1083: a8 00 sbc a,#$00 -1085: b0 06 bcs $108d -1087: e8 00 mov a,#$00 -1089: d7 15 mov ($15)+y,a -108b: c4 33 mov $33,a -108d: fc inc y -108e: d7 15 mov ($15)+y,a -1090: 04 33 or a,$33 -1092: d0 0b bne $109f -1094: 8d 01 mov y,#$01 -1096: f7 15 mov a,($15)+y -1098: 68 ff cmp a,#$ff -109a: f0 03 beq $109f -109c: 5f af 10 jmp $10af - -109f: 8d 0c mov y,#$0c -10a1: f7 15 mov a,($15)+y -10a3: 8d 01 mov y,#$01 -10a5: 77 15 cmp a,($15)+y -10a7: 90 0d bcc $10b6 -10a9: f0 0b beq $10b6 -10ab: 8d 00 mov y,#$00 -10ad: f7 15 mov a,($15)+y -10af: 8d 0c mov y,#$0c -10b1: d7 15 mov ($15)+y,a -10b3: 3f 59 11 call $1159 -10b6: f8 28 mov x,$28 -10b8: f0 14 beq $10ce -10ba: 78 03 29 cmp $29,#$03 -10bd: 90 0f bcc $10ce -10bf: 8d 13 mov y,#$13 -10c1: cd 03 mov x,#$03 -10c3: f7 15 mov a,($15)+y -10c5: d4 24 mov $24+x,a -10c7: dc dec y -10c8: 1d dec x -10c9: 10 f8 bpl $10c3 -10cb: 5f 36 11 jmp $1136 - -10ce: 3f 48 11 call $1148 -10d1: 8d 06 mov y,#$06 -10d3: f7 15 mov a,($15)+y -10d5: 5d mov x,a -10d6: 8d 00 mov y,#$00 -10d8: f7 1a mov a,($1a)+y -10da: c8 01 cmp x,#$01 -10dc: f0 06 beq $10e4 -10de: 5d mov x,a -10df: fc inc y -10e0: f7 1a mov a,($1a)+y -10e2: fd mov y,a -10e3: 7d mov a,x -10e4: f8 28 mov x,$28 -10e6: f0 52 beq $113a -10e8: 78 02 29 cmp $29,#$02 -10eb: f0 4d beq $113a -10ed: da 2f movw $2f,ya -10ef: 8d 11 mov y,#$11 -10f1: f7 15 mov a,($15)+y -10f3: c4 25 mov $25,a -10f5: dc dec y -10f6: f7 15 mov a,($15)+y -10f8: c4 24 mov $24,a -10fa: eb 25 mov y,$25 -10fc: 80 setc -10fd: 9a 2f subw ya,$2f -10ff: da 26 movw $26,ya -1101: e8 00 mov a,#$00 -1103: 3c rol a -1104: c4 2f mov $2f,a -1106: d0 08 bne $1110 -1108: 58 ff 26 eor $26,#$ff -110b: 58 ff 27 eor $27,#$ff -110e: 3a 26 incw $26 -1110: 8d 03 mov y,#$03 -1112: f7 15 mov a,($15)+y -1114: 5d mov x,a -1115: ba 26 movw ya,$26 -1117: 3f 74 11 call $1174 -111a: c4 26 mov $26,a -111c: d8 27 mov $27,x -111e: 78 01 2f cmp $2f,#$01 -1121: d0 08 bne $112b -1123: 58 ff 26 eor $26,#$ff -1126: 58 ff 27 eor $27,#$ff -1129: 3a 26 incw $26 -112b: 8d 12 mov y,#$12 -112d: e4 26 mov a,$26 -112f: d7 15 mov ($15)+y,a -1131: fc inc y -1132: e4 27 mov a,$27 -1134: d7 15 mov ($15)+y,a -1136: ba 24 movw ya,$24 -1138: 7a 26 addw ya,$26 -113a: da 24 movw $24,ya -113c: 8d 10 mov y,#$10 -113e: d7 15 mov ($15)+y,a -1140: e4 25 mov a,$25 -1142: fc inc y -1143: d7 15 mov ($15)+y,a -1145: ba 24 movw ya,$24 -1147: 6f ret - -1148: 8d 0a mov y,#$0a -114a: 5f 4f 11 jmp $114f - -114d: 8d 08 mov y,#$08 -114f: f7 15 mov a,($15)+y -1151: c4 1a mov $1a,a -1153: fc inc y -1154: f7 15 mov a,($15)+y -1156: c4 1b mov $1b,a -1158: 6f ret - -1159: 2d push a -115a: 3f 4d 11 call $114d -115d: 8d 06 mov y,#$06 -115f: f7 15 mov a,($15)+y -1161: fd mov y,a -1162: ae pop a -1163: cf mul ya -1164: 7a 1a addw ya,$1a -1166: da 1a movw $1a,ya -1168: 8d 0a mov y,#$0a -116a: e4 1a mov a,$1a -116c: d7 15 mov ($15)+y,a -116e: fc inc y -116f: e4 1b mov a,$1b -1171: d7 15 mov ($15)+y,a -1173: 6f ret - -1174: c8 00 cmp x,#$00 -1176: d0 05 bne $117d -1178: e8 ff mov a,#$ff -117a: fd mov y,a -117b: 5d mov x,a -117c: 6f ret - -117d: cb 2c mov $2c,y -117f: 3e 2c cmp x,$2c -1181: f0 02 beq $1185 -1183: b0 19 bcs $119e -1185: c4 2b mov $2b,a -1187: dd mov a,y -1188: 8d 00 mov y,#$00 -118a: 9e div ya,x -118b: c4 2d mov $2d,a -118d: fd mov y,a -118e: 7d mov a,x -118f: cf mul ya -1190: c4 2e mov $2e,a -1192: e4 2c mov a,$2c -1194: 80 setc -1195: a4 2e sbc a,$2e -1197: fd mov y,a -1198: e4 2b mov a,$2b -119a: 9e div ya,x -119b: f8 2d mov x,$2d -119d: 6f ret - -119e: 9e div ya,x -119f: cd 00 mov x,#$00 -11a1: 6f ret - -11a2: f5 86 02 mov a,$0286+x -11a5: 8d 04 mov y,#$04 -11a7: cf mul ya -11a8: 7a 13 addw ya,$13 -11aa: da 04 movw $04,ya -11ac: 8d 01 mov y,#$01 -11ae: f7 04 mov a,($04)+y -11b0: c4 32 mov $32,a -11b2: dc dec y -11b3: f7 04 mov a,($04)+y -11b5: 80 setc -11b6: a8 03 sbc a,#$03 -11b8: c4 31 mov $31,a -11ba: b8 00 32 sbc $32,#$00 -11bd: f7 31 mov a,($31)+y -11bf: c4 51 mov $51,a -11c1: fc inc y -11c2: f7 31 mov a,($31)+y -11c4: c4 52 mov $52,a -11c6: fc inc y -11c7: f7 31 mov a,($31)+y -11c9: c4 53 mov $53,a -11cb: 6f ret - -11cc: ad 04 cmp y,#$04 -11ce: 90 06 bcc $11d6 -11d0: d0 0a bne $11dc -11d2: 68 b0 cmp a,#$b0 -11d4: b0 06 bcs $11dc -11d6: 8f ff 54 mov $54,#$ff -11d9: 5f f2 11 jmp $11f2 - -11dc: ad 80 cmp y,#$80 -11de: 90 0f bcc $11ef -11e0: 8f 00 54 mov $54,#$00 -11e3: 60 clrc -11e4: 88 20 adc a,#$20 -11e6: 5d mov x,a -11e7: dd mov a,y -11e8: 88 df adc a,#$df -11ea: fd mov y,a -11eb: 7d mov a,x -11ec: 5f f2 11 jmp $11f2 - -11ef: 8f 04 54 mov $54,#$04 -11f2: cd f0 mov x,#$f0 -11f4: 9e div ya,x -11f5: 78 ff 54 cmp $54,#$ff -11f8: d0 02 bne $11fc -11fa: c4 54 mov $54,a -11fc: f6 17 12 mov a,$1217+y ;get pitch value (from table) -11ff: c4 2f mov $2f,a -1201: f6 07 13 mov a,$1307+y -1204: c4 30 mov $30,a -1206: e8 04 mov a,#$04 -1208: 80 setc -1209: a4 54 sbc a,$54 -120b: f0 07 beq $1214 -120d: fd mov y,a -120e: 4b 30 lsr $30 -1210: 6b 2f ror $2f -1212: fe fa dbnz y,$120e -1214: ba 2f movw ya,$2f -1216: 6f ret - -; pitch table (low byte) -1217: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 - -; pitch table (high byte) -1307: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f - -; note interval frequencies (low byte) -13f7: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 - -; note interval frequencies (high byte) -1417: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 - -1437: e4 64 mov a,$64 -1439: d0 0c bne $1447 -143b: e5 46 05 mov a,$0546 -143e: f0 22 beq $1462 -1440: e8 00 mov a,#$00 -1442: c5 46 05 mov $0546,a -1445: 2f f0 bra $1437 -1447: e4 63 mov a,$63 -1449: 9c dec a -144a: c4 65 mov $65,a -144c: 1c asl a -144d: c4 66 mov $66,a -144f: 3f 75 0b call $0b75 -1452: f8 65 mov x,$65 -1454: f4 68 mov a,$68+x -1456: 5d mov x,a -1457: 1f e0 18 jmp ($18e0+x) - -145a: 8b 66 dec $66 -145c: 8b 66 dec $66 -145e: 8b 65 dec $65 -1460: 10 ed bpl $144f -1462: 6f ret - -1463: f8 65 mov x,$65 -1465: 9b 9b dec $9b+x -1467: d0 f1 bne $145a -1469: f5 47 05 mov a,$0547+x -146c: d4 9b mov $9b+x,a -146e: 9b a3 dec $a3+x -1470: d0 e8 bne $145a -1472: f4 68 mov a,$68+x -1474: e8 04 mov a,#$04 -1476: d4 68 mov $68+x,a -1478: 5f 7b 14 jmp $147b - -147b: f8 65 mov x,$65 -147d: f4 82 mov a,$82+x -147f: 68 19 cmp a,#$19 -1481: f0 25 beq $14a8 -1483: 60 clrc -1484: 94 8a adc a,$8a+x -1486: f8 66 mov x,$66 -1488: c4 00 mov $00,a -148a: fd mov y,a -148b: f6 3b 06 mov a,$063b+y -148e: c4 04 mov $04,a -1490: f6 3c 06 mov a,$063c+y -1493: c4 05 mov $05,a -1495: 8d 02 mov y,#$02 -1497: f7 04 mov a,($04)+y -1499: 74 72 cmp a,$72+x -149b: d0 0b bne $14a8 -149d: 8d 03 mov y,#$03 -149f: f7 04 mov a,($04)+y -14a1: 74 73 cmp a,$73+x -14a3: d0 03 bne $14a8 -14a5: 5f fd 16 jmp $16fd - -14a8: 3f bd 15 call $15bd -14ab: fd mov y,a ; get the current note/command -14ac: 28 20 and a,#$20 -14ae: c4 67 mov $67,a -14b0: f8 65 mov x,$65 -14b2: ad 80 cmp y,#$80 ; is it a note? -14b4: 90 3d bcc $14f3 -14b6: ad f0 cmp y,#$f0 ; is it a special meaning flag? -14b8: 90 08 bcc $14c2 -14ba: dd mov a,y ; then it must be a command... -14bb: 28 0f and a,#$0f -14bd: 1c asl a -14be: 5d mov x,a -14bf: 1f 3e 18 jmp ($183e+x) ; jump to command number position - -14c2: f5 67 05 mov a,$0567+x ; pitch bend -14c5: f0 4c beq $1513 -14c7: dd mov a,y -14c8: 28 08 and a,#$08 -14ca: 0d push psw -14cb: dd mov a,y -14cc: 28 07 and a,#$07 -14ce: bc inc a -14cf: 1c asl a -14d0: f8 66 mov x,$66 -14d2: 8e pop psw -14d3: f0 0d beq $14e2 -14d5: 60 clrc -14d6: 94 be adc a,$be+x -14d8: d4 be mov $be+x,a -14da: f4 bf mov a,$bf+x -14dc: 88 00 adc a,#$00 -14de: d4 bf mov $bf+x,a -14e0: 2f 31 bra $1513 -14e2: c4 2f mov $2f,a -14e4: f4 be mov a,$be+x -14e6: 80 setc -14e7: a4 2f sbc a,$2f -14e9: d4 be mov $be+x,a -14eb: f4 bf mov a,$bf+x -14ed: a8 00 sbc a,#$00 -14ef: d4 bf mov $bf+x,a -14f1: 2f 20 bra $1513 -14f3: f5 67 05 mov a,$0567+x ; play the note (check first) -14f6: f0 1b beq $1513 -14f8: dd mov a,y -14f9: 28 1f and a,#$1f ; get the actual note value -14fb: fd mov y,a -14fc: f8 66 mov x,$66 -14fe: f4 ae mov a,$ae+x -1500: 60 clrc -1501: 96 f7 13 adc a,$13f7+y -1504: d4 ae mov $ae+x,a -1506: f4 af mov a,$af+x -1508: 96 17 14 adc a,$1417+y -150b: d4 af mov $af+x,a -150d: e8 00 mov a,#$00 -150f: d4 be mov $be+x,a -1511: d4 bf mov $bf+x,a -1513: 3f bd 15 call $15bd -1516: 68 00 cmp a,#$00 -1518: d0 07 bne $1521 -151a: f8 65 mov x,$65 -151c: f4 68 mov a,$68+x -151e: 5f 4f 14 jmp $144f - -1521: f8 65 mov x,$65 -1523: d4 a3 mov $a3+x,a -1525: fd mov y,a -1526: f5 47 05 mov a,$0547+x -1529: d4 9b mov $9b+x,a -152b: cf mul ya -152c: da 3d movw $3d,ya -152e: 3f 25 18 call $1825 -1531: f5 6f 05 mov a,$056f+x -1534: 5d mov x,a -1535: f5 0d 02 mov a,$020d+x -1538: f0 0a beq $1544 -153a: e8 40 mov a,#$40 -153c: 75 2e 02 cmp a,$022e+x -153f: b0 05 bcs $1546 -1541: 5f 5a 14 jmp $145a - -1544: e8 40 mov a,#$40 -1546: d5 2e 02 mov $022e+x,a -1549: e8 01 mov a,#$01 -154b: d5 0d 02 mov $020d+x,a -154e: d8 ab mov $ab,x -1550: 7d mov a,x -1551: f8 65 mov x,$65 -1553: f5 67 05 mov a,$0567+x -1556: d0 0c bne $1564 -1558: f8 66 mov x,$66 -155a: f4 ae mov a,$ae+x -155c: c4 3f mov $3f,a -155e: f4 af mov a,$af+x -1560: c4 40 mov $40,a -1562: 2f 1e bra $1582 -1564: f8 66 mov x,$66 -1566: f4 ae mov a,$ae+x -1568: 60 clrc -1569: 94 be adc a,$be+x -156b: c4 3f mov $3f,a -156d: f4 af mov a,$af+x -156f: 94 bf adc a,$bf+x -1571: c4 40 mov $40,a -1573: f5 77 05 mov a,$0577+x -1576: 60 clrc -1577: 84 3f adc a,$3f -1579: c4 3f mov $3f,a -157b: f5 78 05 mov a,$0578+x -157e: 84 40 adc a,$40 -1580: c4 40 mov $40,a -1582: eb 67 mov y,$67 -1584: d0 0f bne $1595 -1586: 0b ab asl $ab -1588: f8 ab mov x,$ab -158a: d5 4f 02 mov $024f+x,a -158d: e4 3f mov a,$3f -158f: d5 4e 02 mov $024e+x,a -1592: 5f 5a 14 jmp $145a - -1595: f8 65 mov x,$65 -1597: f5 4f 05 mov a,$054f+x -159a: 60 clrc -159b: 95 57 05 adc a,$0557+x -159e: 10 02 bpl $15a2 -15a0: e8 7f mov a,#$7f -15a2: c4 ac mov $ac,a -15a4: f8 65 mov x,$65 -15a6: f5 5f 05 mov a,$055f+x -15a9: f8 ab mov x,$ab -15ab: 8d 00 mov y,#$00 -15ad: cc 04 02 mov $0204,y -15b0: 8d ff mov y,#$ff -15b2: cc 05 02 mov $0205,y -15b5: eb ac mov y,$ac -15b7: 3f 46 0d call $0d46 -15ba: 5f 5a 14 jmp $145a - -15bd: f8 66 mov x,$66 -15bf: e7 72 mov a,($72+x) -15c1: bb 72 inc $72+x ; update melody (sequence) position pointer -15c3: d0 02 bne $15c7 -15c5: bb 73 inc $73+x -15c7: 6f ret - -; vcmd f0 - end of sequence -15c8: f8 65 mov x,$65 -15ca: e8 00 mov a,#$00 -15cc: d4 68 mov $68+x,a -15ce: 8b 64 dec $64 -15d0: 5f 5a 14 jmp $145a - -; vcmd f1 - delta expression -15d3: f8 65 mov x,$65 -15d5: f5 57 05 mov a,$0557+x -15d8: 3f f6 15 call $15f6 -15db: d5 57 05 mov $0557+x,a -15de: 5f 7b 14 jmp $147b - -15e1: 6d push y -15e2: 4d push x -15e3: ee pop y -15e4: cf mul ya -15e5: da 2f movw $2f,ya -15e7: 7d mov a,x -15e8: ee pop y -15e9: cf mul ya -15ea: 6d push y -15eb: 0b 2f asl $2f -15ed: 84 30 adc a,$30 -15ef: 5d mov x,a -15f0: ae pop a -15f1: 88 00 adc a,#$00 -15f3: fd mov y,a -15f4: 7d mov a,x -15f5: 6f ret - -15f6: 4d push x ; scale volume - get 2 bytes -15f7: fd mov y,a -15f8: 6d push y -15f9: 3f bd 15 call $15bd -15fc: cf mul ya -15fd: da 2f movw $2f,ya -15ff: ee pop y -1600: 3f bd 15 call $15bd -1603: cf mul ya -1604: 6d push y -1605: 0b 2f asl $2f -1607: 84 30 adc a,$30 -1609: 5d mov x,a -160a: ae pop a -160b: 88 00 adc a,#$00 -160d: fd mov y,a -160e: d0 03 bne $1613 -1610: 7d mov a,x -1611: 10 02 bpl $1615 -1613: e8 7f mov a,#$7f -1615: ce pop x -1616: 6f ret - -; vcmd f2 - absolute expression -1617: 3f bd 15 call $15bd -161a: f8 65 mov x,$65 -161c: d5 57 05 mov $0557+x,a -161f: 5f 7b 14 jmp $147b - -; vcmd f3 - mute -1622: f8 65 mov x,$65 -1624: f5 6f 05 mov a,$056f+x -1627: 30 15 bmi $163e -1629: fd mov y,a -162a: f6 0d 02 mov a,$020d+y -162d: 68 80 cmp a,#$80 -162f: f0 0d beq $163e -1631: e8 00 mov a,#$00 -1633: d6 6e 02 mov $026e+y,a -1636: f6 d5 07 mov a,$07d5+y -1639: c4 f2 mov $f2,a -163b: 8f 9f f3 mov $f3,#$9f - -; vcmd f4 - rest -163e: 3f bd 15 call $15bd -1641: f8 65 mov x,$65 -1643: d4 a3 mov $a3+x,a -1645: f5 47 05 mov a,$0547+x -1648: d4 9b mov $9b+x,a -164a: 3f 25 18 call $1825 -164d: 5f 5a 14 jmp $145a - -; vcmd f5 - set sound/instrument -1650: 3f bd 15 call $15bd ; get 1 more byte = read sound number -1653: f8 65 mov x,$65 -1655: d5 5f 05 mov $055f+x,a ; move it onto the stack -1658: f4 82 mov a,$82+x -165a: 68 19 cmp a,#$19 ; $19 = phrase stack max value? -165c: f0 32 beq $1690 -165e: 60 clrc -165f: 94 8a adc a,$8a+x -1661: f8 66 mov x,$66 -1663: c4 00 mov $00,a -1665: fd mov y,a -1666: f6 3b 06 mov a,$063b+y -1669: c4 04 mov $04,a -166b: f6 3c 06 mov a,$063c+y -166e: c4 05 mov $05,a -1670: f6 39 06 mov a,$0639+y -1673: 8d 09 mov y,#$09 -1675: 77 04 cmp a,($04)+y -1677: 90 02 bcc $167b -1679: e8 00 mov a,#$00 -167b: bc inc a -167c: eb 00 mov y,$00 -167e: d6 39 06 mov $0639+y,a -1681: 60 clrc -1682: 88 09 adc a,#$09 -1684: fd mov y,a -1685: f7 04 mov a,($04)+y -1687: 68 ff cmp a,#$ff -1689: f0 05 beq $1690 -168b: f8 65 mov x,$65 -168d: d5 5f 05 mov $055f+x,a -1690: 5f 7b 14 jmp $147b - -; vcmd f6 - play phrase -1693: f8 65 mov x,$65 -1695: f4 82 mov a,$82+x ; push entry onto stack -1697: 80 setc -1698: a8 05 sbc a,#$05 -169a: d4 82 mov $82+x,a -169c: 60 clrc ; set to current player -169d: 94 8a adc a,$8a+x -169f: fd mov y,a -16a0: cb 00 mov $00,y -16a2: f8 66 mov x,$66 -16a4: f4 72 mov a,$72+x -16a6: d6 3b 06 mov $063b+y,a ; LSB of pointer -16a9: f4 73 mov a,$73+x -16ab: d6 3c 06 mov $063c+y,a ; MSB of pointer -16ae: e8 00 mov a,#$00 -16b0: d6 38 06 mov $0638+y,a ; number of loops -16b3: 3f bd 15 call $15bd ; start point low byte -16b6: 2d push a -16b7: 3f bf 15 call $15bf ; start point high byte -16ba: 2d push a -16bb: 3f bf 15 call $15bf ; end point low byte -16be: 3f bf 15 call $15bf ; end point high byte -16c1: 3f bf 15 call $15bf ; number of loops -16c4: 3f bf 15 call $15bf ; frequency offset LSB low byte -16c7: fd mov y,a -16c8: 3f bf 15 call $15bf ; frequency offset LSB high byte -16cb: 2d push a -16cc: dd mov a,y -16cd: 60 clrc -16ce: 95 77 05 adc a,$0577+x ; adjust frequency -16d1: d5 77 05 mov $0577+x,a -16d4: ae pop a -16d5: 95 78 05 adc a,$0578+x -16d8: d5 78 05 mov $0578+x,a -16db: f8 65 mov x,$65 -16dd: f5 57 05 mov a,$0557+x -16e0: eb 00 mov y,$00 -16e2: d6 3a 06 mov $063a+y,a -16e5: 3f f6 15 call $15f6 ; scale the volume (read next 2 bytes) -16e8: d5 57 05 mov $0557+x,a -16eb: eb 00 mov y,$00 ; initialize instrument pointer -16ed: e8 00 mov a,#$00 -16ef: d6 39 06 mov $0639+y,a -16f2: f8 66 mov x,$66 -16f4: ae pop a -16f5: d4 73 mov $73+x,a -16f7: ae pop a -16f8: d4 72 mov $72+x,a -16fa: 5f 7b 14 jmp $147b - -16fd: eb 00 mov y,$00 -16ff: f6 38 06 mov a,$0638+y -1702: bc inc a -1703: d6 38 06 mov $0638+y,a -1706: 8d 04 mov y,#$04 -1708: f7 04 mov a,($04)+y -170a: f0 07 beq $1713 -170c: eb 00 mov y,$00 -170e: 76 38 06 cmp a,$0638+y -1711: f0 0f beq $1722 -1713: 8d 00 mov y,#$00 -1715: f7 04 mov a,($04)+y -1717: d4 72 mov $72+x,a -1719: 8d 01 mov y,#$01 -171b: f7 04 mov a,($04)+y -171d: d4 73 mov $73+x,a -171f: 5f a8 14 jmp $14a8 - -1722: f5 77 05 mov a,$0577+x -1725: 80 setc -1726: 8d 05 mov y,#$05 -1728: b7 04 sbc a,($04)+y -172a: d5 77 05 mov $0577+x,a -172d: f5 78 05 mov a,$0578+x -1730: 8d 06 mov y,#$06 -1732: b7 04 sbc a,($04)+y -1734: d5 78 05 mov $0578+x,a -1737: eb 00 mov y,$00 -1739: f6 3a 06 mov a,$063a+y -173c: f8 65 mov x,$65 -173e: d5 57 05 mov $0557+x,a -1741: f8 66 mov x,$66 -1743: e4 04 mov a,$04 -1745: 60 clrc -1746: 88 0a adc a,#$0a -1748: d4 72 mov $72+x,a -174a: e4 05 mov a,$05 -174c: 88 00 adc a,#$00 -174e: d4 73 mov $73+x,a -1750: 8d 09 mov y,#$09 -1752: f7 04 mov a,($04)+y -1754: 60 clrc -1755: 94 72 adc a,$72+x -1757: d4 72 mov $72+x,a -1759: f4 73 mov a,$73+x -175b: 88 00 adc a,#$00 -175d: d4 73 mov $73+x,a -175f: f8 65 mov x,$65 -1761: f4 82 mov a,$82+x -1763: 60 clrc -1764: 88 05 adc a,#$05 -1766: d4 82 mov $82+x,a -1768: 5f 7b 14 jmp $147b - -; vcmd f7-f8 - set detune -176b: 28 02 and a,#$02 -176d: c4 67 mov $67,a -176f: 3f bd 15 call $15bd -1772: d4 ae mov $ae+x,a -1774: 3f bd 15 call $15bd -1777: d4 af mov $af+x,a -1779: e8 00 mov a,#$00 -177b: d4 be mov $be+x,a -177d: d4 bf mov $bf+x,a -177f: 5f 13 15 jmp $1513 - -; vcmd f9 - go to loop -1782: eb 65 mov y,$65 -1784: fc inc y -1785: f7 70 mov a,($70)+y -1787: 8d 10 mov y,#$10 -1789: 3f a9 0e call $0ea9 -178c: f8 66 mov x,$66 -178e: d4 72 mov $72+x,a -1790: db 73 mov $73+x,y -1792: e8 1c mov a,#$1c -1794: d4 ae mov $ae+x,a -1796: e8 02 mov a,#$02 -1798: d4 af mov $af+x,a -179a: f8 65 mov x,$65 -179c: e8 00 mov a,#$00 -179e: d5 4f 05 mov $054f+x,a -17a1: d5 57 05 mov $0557+x,a -17a4: 5f 7b 14 jmp $147b - -; vcmd fa - set tempo -17a7: 3f bd 15 call $15bd -17aa: c5 00 02 mov $0200,a -17ad: 3f bd 15 call $15bd -17b0: c5 02 02 mov $0202,a -17b3: 3f bd 15 call $15bd -17b6: c5 03 02 mov $0203,a -17b9: 5f 7b 14 jmp $147b - -17bc: 8f ff 92 mov $92,#$ff -17bf: 8f 20 93 mov $93,#$20 -17c2: 8f 00 64 mov $64,#$00 -17c5: da 94 movw $94,ya -17c7: 8f 80 98 mov $98,#$80 -17ca: 8f 00 96 mov $96,#$00 -17cd: c8 00 cmp x,#$00 -17cf: d0 0c bne $17dd -17d1: cd 02 mov x,#$02 -17d3: cb 99 mov $99,y -17d5: c4 9a mov $9a,a -17d7: 8f 99 94 mov $94,#$99 -17da: 8f 00 95 mov $95,#$00 -17dd: d8 97 mov $97,x -17df: 6f ret - -17e0: 8b 93 dec $93 -17e2: f0 01 beq $17e5 -17e4: 6f ret - -17e5: eb 96 mov y,$96 -17e7: f7 94 mov a,($94)+y -17e9: 24 98 and a,$98 -17eb: f0 04 beq $17f1 -17ed: e8 a0 mov a,#$a0 -17ef: 2f 02 bra $17f3 -17f1: e8 50 mov a,#$50 -17f3: c4 42 mov $42,a -17f5: 8f 01 43 mov $43,#$01 -17f8: 8f ff 41 mov $41,#$ff -17fb: 4b 98 lsr $98 -17fd: b0 0d bcs $180c -17ff: 8f 0c 93 mov $93,#$0c -1802: 78 08 98 cmp $98,#$08 -1805: d0 19 bne $1820 -1807: 8f 24 93 mov $93,#$24 -180a: 2f 14 bra $1820 -180c: 8f 80 98 mov $98,#$80 -180f: 8f 3c 93 mov $93,#$3c -1812: ab 96 inc $96 -1814: e4 96 mov a,$96 -1816: 64 97 cmp a,$97 -1818: d0 06 bne $1820 -181a: 8f 60 93 mov $93,#$60 -181d: 8f 00 96 mov $96,#$00 -1820: e8 00 mov a,#$00 -1822: 5f a9 0c jmp $0ca9 - -1825: e8 02 mov a,#$02 -1827: d4 68 mov $68+x,a -1829: 6f ret - -182a: 78 80 ad cmp $ad,#$80 -182d: 90 08 bcc $1837 -182f: 60 clrc -1830: 84 ad adc a,$ad -1832: 10 09 bpl $183d -1834: e8 00 mov a,#$00 -1836: 6f ret - -1837: 84 ad adc a,$ad -1839: 10 02 bpl $183d -183b: e8 7f mov a,#$7f -183d: 6f ret - -; vcmd table (f0-fa) -183e: dw $15c8 ; f0 - end of melody -1840: dw $15d3 ; f1 - delta expression -1842: dw $1617 ; f2 - absolute expression -1844: dw $1622 ; f3 - mute -1846: dw $163e ; f4 - rest -1848: dw $1650 ; f5 - set sound/instrument -184a: dw $1693 ; f6 - play phrase -184c: dw $176b ; f7 - set detune -184e: dw $176b ; f8 - set detune -1850: dw $1782 ; f9 - go to loop -1852: dw $17a7 ; fa - set tempo - -1854: e4 01 mov a,$01 -1856: 1c asl a -1857: 44 01 eor a,$01 -1859: 1c asl a -185a: 1c asl a -185b: 1c asl a -185c: 2b 03 rol $03 -185e: 2b 02 rol $02 -1860: 2b 01 rol $01 -1862: e4 03 mov a,$03 -1864: 6f ret - -1865: 8f 00 92 mov $92,#$00 -1868: 8d 1a mov y,#$1a -186a: 3f a9 0e call $0ea9 -186d: da 70 movw $70,ya -186f: 8d 00 mov y,#$00 -1871: f7 70 mov a,($70)+y -1873: c4 63 mov $63,a -1875: c4 64 mov $64,a -1877: f0 66 beq $18df -1879: 8f 00 65 mov $65,#$00 -187c: 8f 00 66 mov $66,#$00 -187f: fc inc y -1880: f7 70 mov a,($70)+y -1882: 6d push y -1883: 8d 10 mov y,#$10 -1885: 3f a9 0e call $0ea9 -1888: f8 66 mov x,$66 -188a: d4 72 mov $72+x,a -188c: dd mov a,y -188d: ee pop y -188e: d4 73 mov $73+x,a -1890: f8 65 mov x,$65 -1892: e8 19 mov a,#$19 -1894: d4 82 mov $82+x,a -1896: e8 04 mov a,#$04 -1898: d4 68 mov $68+x,a -189a: e8 ff mov a,#$ff -189c: d5 67 05 mov $0567+x,a -189f: e8 01 mov a,#$01 -18a1: d5 47 05 mov $0547+x,a -18a4: 7d mov a,x -18a5: d5 6f 05 mov $056f+x,a -18a8: f8 66 mov x,$66 -18aa: e8 1c mov a,#$1c -18ac: d4 ae mov $ae+x,a -18ae: e8 02 mov a,#$02 -18b0: d4 af mov $af+x,a -18b2: e8 00 mov a,#$00 -18b4: d5 77 05 mov $0577+x,a -18b7: d5 78 05 mov $0578+x,a -18ba: f8 65 mov x,$65 -18bc: d5 4f 05 mov $054f+x,a -18bf: d5 57 05 mov $0557+x,a -18c2: e8 00 mov a,#$00 -18c4: c5 00 02 mov $0200,a -18c7: c5 02 02 mov $0202,a -18ca: e8 01 mov a,#$01 -18cc: c5 03 02 mov $0203,a -18cf: e8 ff mov a,#$ff -18d1: c5 01 02 mov $0201,a -18d4: ab 66 inc $66 -18d6: ab 66 inc $66 -18d8: 3d inc x -18d9: d8 65 mov $65,x -18db: 3e 63 cmp x,$63 -18dd: 90 a0 bcc $187f -18df: 6f ret - -18e0: dw $145a -18e2: dw $1463 -18e4: dw $147b - -18e6: ba 21 movw ya,$21 -18e8: da 0a movw $0a,ya -18ea: 6f ret - -18eb: eb 21 mov y,$21 -18ed: fa 1f f6 mov ($f6),($1f) -18f0: 00 nop -18f1: 00 nop -18f2: 00 nop -18f3: 00 nop -18f4: e4 f4 mov a,$f4 -18f6: d7 0a mov ($0a)+y,a -18f8: dc dec y -18f9: e4 f5 mov a,$f5 -18fb: d7 0a mov ($0a)+y,a -18fd: dc dec y -18fe: e4 f6 mov a,$f6 -1900: d7 0a mov ($0a)+y,a -1902: dc dec y -1903: e4 f7 mov a,$f7 -1905: d7 0a mov ($0a)+y,a -1907: dc dec y -1908: 10 ea bpl $18f4 -190a: ba 0a movw ya,$0a -190c: 7a 21 addw ya,$21 -190e: da 0a movw $0a,ya -1910: 3a 0a incw $0a -1912: 8f b1 f1 mov $f1,#$b1 -1915: fa 1f f6 mov ($f6),($1f) -1918: 6f ret - -1919: eb 21 mov y,$21 -191b: fa 1f f6 mov ($f6),($1f) -191e: e4 f6 mov a,$f6 -1920: 64 f6 cmp a,$f6 -1922: d0 fa bne $191e -1924: 68 00 cmp a,#$00 -1926: f0 f6 beq $191e -1928: 64 1f cmp a,$1f -192a: f0 f2 beq $191e -192c: c4 1f mov $1f,a -192e: e4 f4 mov a,$f4 -1930: d7 0a mov ($0a)+y,a -1932: dc dec y -1933: 30 19 bmi $194e -1935: e4 f5 mov a,$f5 -1937: d7 0a mov ($0a)+y,a -1939: dc dec y -193a: 30 12 bmi $194e -193c: e4 f7 mov a,$f7 -193e: d7 0a mov ($0a)+y,a -1940: cb f7 mov $f7,y -1942: fa 0a f4 mov ($f4),($0a) -1945: fa 0b f5 mov ($f5),($0b) -1948: fa 1f f6 mov ($f6),($1f) -194b: dc dec y -194c: 10 d0 bpl $191e -194e: 8f b1 f1 mov $f1,#$b1 -1951: fa 1f f6 mov ($f6),($1f) -1954: ba 0a movw ya,$0a -1956: 7a 21 addw ya,$21 -1958: da 0a movw $0a,ya -195a: 3a 0a incw $0a -195c: 6f ret - -195e: dw $0bcb -1860: dw $0c0a -1862: dw $0c12 \ No newline at end of file From c642e6c7193d095e4651ad0165e781b8edbe240f Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:50:12 -0700 Subject: [PATCH 016/116] Delete The Jungle Book.s --- The Jungle Book.s | 2644 --------------------------------------------- 1 file changed, 2644 deletions(-) delete mode 100644 The Jungle Book.s diff --git a/The Jungle Book.s b/The Jungle Book.s deleted file mode 100644 index b0b0e24e..00000000 --- a/The Jungle Book.s +++ /dev/null @@ -1,2644 +0,0 @@ -0700: 20 clrp -0701: cd ff mov x,#$ff ; set stack pointer -0703: bd mov sp,x -0704: 8f a0 fa mov $fa,#$a0 ; stop all timers -0707: 8f a0 fb mov $fb,#$a0 -070a: 8f 20 fc mov $fc,#$20 -070d: 8f 87 f1 mov $f1,#$87 ; clear COM ports -0710: 3f c0 10 call $10c0 ; initialize all sound -0713: 8f 00 24 mov $24,#$00 ; install permanent pointer to the wave source dir -0716: 8f 1f 25 mov $25,#$1f -0719: 8f 01 f6 mov $f6,#$01 -071c: 62 08 set3 $08 -071e: 3f be 0b call $0bbe -0721: 3f 85 0b call $0b85 -0724: 33 07 f7 bbc1 $07,$071e -0727: 8d 10 mov y,#$10 -0729: 3f 4a 07 call $074a -072c: 83 07 12 bbs4 $07,$0741 -072f: e4 fe mov a,$fe -0731: f0 0e beq $0741 -0733: e4 c9 mov a,$c9 -0735: f0 07 beq $073e -0737: 60 clrc -0738: 84 ca adc a,$ca -073a: c4 ca mov $ca,a -073c: 90 03 bcc $0741 -073e: 3f 50 17 call $1750 -0741: e4 fd mov a,$fd -0743: f0 d9 beq $071e -0745: 3f 7b 08 call $087b -0748: 2f d4 bra $071e -074a: e4 ff mov a,$ff -074c: d0 03 bne $0751 -074e: e8 01 mov a,#$01 -0750: 6f ret - -0751: cb 3b mov $3b,y -0753: 8f 00 3a mov $3a,#$00 -0756: cd 14 mov x,#$14 -0758: e4 f6 mov a,$f6 -075a: f0 03 beq $075f -075c: 3f be 0b call $0bbe -075f: eb 3b mov y,$3b -0761: f5 4a 08 mov a,$084a+x -0764: c4 f2 mov $f2,a -0766: f5 28 02 mov a,$0228+x -0769: 64 f3 cmp a,$f3 -076b: f0 0f beq $077c -076d: b0 09 bcs $0778 -076f: 8b f3 dec $f3 -0771: dc dec y -0772: d0 f5 bne $0769 -0774: ab 3a inc $3a -0776: 2f 04 bra $077c -0778: ab f3 inc $f3 -077a: 2f f5 bra $0771 -077c: 1d dec x -077d: 10 d9 bpl $0758 -077f: e4 3a mov a,$3a -0781: 6f ret - -0782: 8f aa f4 mov $f4,#$aa -0785: 8f bb f5 mov $f5,#$bb -0788: e8 cc mov a,#$cc -078a: fa f4 ef mov ($ef),($f4) -078d: 69 f4 ef cmp ($ef),($f4) -0790: d0 f8 bne $078a -0792: 2e ef f5 cbne $ef,$078a -0795: e4 ef mov a,$ef -0797: fa f6 3d mov ($3d),($f6) -079a: fa f7 3e mov ($3e),($f7) -079d: fd mov y,a -079e: e4 f5 mov a,$f5 -07a0: cb f4 mov $f4,y -07a2: d0 08 bne $07ac -07a4: 8f b0 f1 mov $f1,#$b0 -07a7: cb f5 mov $f5,y -07a9: 5f 00 07 jmp $0700 - -07ac: cd 00 mov x,#$00 -07ae: 7d mov a,x -07af: fa f4 ef mov ($ef),($f4) -07b2: 69 f4 ef cmp ($ef),($f4) -07b5: d0 f8 bne $07af -07b7: 2e ef f5 cbne $ef,$07af -07ba: e4 f5 mov a,$f5 -07bc: d8 f4 mov $f4,x -07be: d5 be 07 mov $07be+x,a -07c1: 7d mov a,x -07c2: 3d inc x -07c3: d0 02 bne $07c7 -07c5: ab 3e inc $3e -07c7: fa f4 ef mov ($ef),($f4) -07ca: 69 f4 ef cmp ($ef),($f4) -07cd: d0 f8 bne $07c7 -07cf: 64 ef cmp a,$ef -07d1: f0 f4 beq $07c7 -07d3: 3e ef cmp x,$ef -07d5: d0 be bne $0795 -07d7: e4 f5 mov a,$f5 -07d9: d8 f4 mov $f4,x -07db: 2f e1 bra $07be -07dd: 72 08 clr3 $08 -07df: 8d 80 mov y,#$80 -07e1: 3f 42 0d call $0d42 -07e4: 3f 16 11 call $1116 -07e7: 32 07 clr1 $07 -07e9: 8f 6c f2 mov $f2,#$6c -07ec: 8f 3f f3 mov $f3,#$3f -07ef: cd 00 mov x,#$00 -07f1: f5 82 07 mov a,$0782+x -07f4: d4 00 mov $00+x,a -07f6: 3d inc x -07f7: c8 5b cmp x,#$5b -07f9: 90 f6 bcc $07f1 -07fb: 5f 00 00 jmp $0000 - -; gain tables -07fe: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 -0814: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 - -; DSP registers: VxENVX -082a: db $08,$18,$28,$38,$48,$58,$68,$78 -; DSP registers: VxGAIN -0832: db $07,$17,$27,$37,$47,$57,$67,$77 -; DSP registers: VxSCRN (select sample) -083a: db $04,$14,$24,$34,$44,$54,$64,$74 -; DSP registers: VxPITCHL -0842: db $02,$12,$22,$32,$42,$52,$62,$72 -; DSP registers: VxVOLL -084a: db $00,$10,$20,$30,$40,$50,$60,$70,$01,$11,$21,$31,$41,$51,$61,$71,$2c,$3c,$0d,$0c,$1c - -; voice numbers and bits for clearing those void bits -085f: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f - -; echo poke registers -086f: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f - -087b: 3f be 0b call $0bbe ; que command -087e: 8f 00 44 mov $44,#$00 ; reset sample flags -0881: 8f 00 55 mov $55,#$00 -0884: 8f 7c f2 mov $f2,#$7c -0887: e4 f3 mov a,$f3 -0889: 24 58 and a,$58 -088b: c4 52 mov $52,a -088d: 8f 00 f3 mov $f3,#$00 -0890: cd 07 mov x,#$07 ; find out all channels changing waves -0892: 3f be 0b call $0bbe ; (to restart them, starting with 7) -0895: d8 28 mov $28,x -0897: 7d mov a,x -0898: 60 clrc -0899: 88 10 adc a,#$10 -089b: c4 2d mov $2d,a -089d: f5 5f 08 mov a,$085f+x -08a0: c4 45 mov $45,a -08a2: 48 ff eor a,#$ff -08a4: c4 46 mov $46,a -08a6: f4 62 mov a,$62+x -08a8: c4 48 mov $48,a -08aa: a2 08 set5 $08 -08ac: 23 48 06 bbs1 $48,$08b5 -08af: f5 ec fc mov a,$fcec+x -08b2: 5f c3 08 jmp $08c3 - -08b5: eb 2d mov y,$2d -08b7: f6 e3 04 mov a,$04e3+y -08ba: d0 02 bne $08be -08bc: b2 08 clr5 $08 -08be: 3f 9c 12 call $129c -08c1: f8 28 mov x,$28 -08c3: 75 f4 fc cmp a,$fcf4+x -08c6: d0 0d bne $08d5 -08c8: 3f 5a 14 call $145a -08cb: e4 5d mov a,$5d -08cd: 24 56 and a,$56 -08cf: 24 45 and a,$45 -08d1: d0 43 bne $0916 -08d3: 2f 44 bra $0919 -08d5: d5 f4 fc mov $fcf4+x,a -08d8: 09 45 44 or ($44),($45) -08db: 3f 5a 14 call $145a -08de: 7d mov a,x -08df: 1c asl a -08e0: 5d mov x,a -08e1: e5 04 01 mov a,$0104 -08e4: d5 4b 01 mov $014b+x,a -08e7: e5 05 01 mov a,$0105 -08ea: d5 4c 01 mov $014c+x,a -08ed: f8 28 mov x,$28 -08ef: e4 5e mov a,$5e -08f1: 28 20 and a,#$20 -08f3: f0 05 beq $08fa -08f5: 29 46 53 and ($53),($46) -08f8: 2f 03 bra $08fd -08fa: 09 45 53 or ($53),($45) -08fd: b3 08 0b bbc5 $08,$090b -0900: e4 5e mov a,$5e -0902: 28 40 and a,#$40 -0904: f0 05 beq $090b -0906: 09 45 5d or ($5d),($45) -0909: 2f 03 bra $090e -090b: 29 46 5d and ($5d),($46) -090e: e4 5d mov a,$5d -0910: 04 56 or a,$56 -0912: 24 45 and a,$45 -0914: f0 03 beq $0919 -0916: 09 45 55 or ($55),($45) -0919: 1d dec x -091a: 30 03 bmi $091f -091c: 5f 92 08 jmp $0892 - -091f: e4 56 mov a,$56 -0921: 24 53 and a,$53 -0923: 04 54 or a,$54 -0925: c4 54 mov $54,a -0927: 24 54 and a,$54 -0929: 04 55 or a,$55 -092b: c4 57 mov $57,a -092d: 8f 5c f2 mov $f2,#$5c -0930: c4 f3 mov $f3,a -0932: cd 07 mov x,#$07 -0934: 3f be 0b call $0bbe -0937: d8 28 mov $28,x -0939: f5 5f 08 mov a,$085f+x -093c: c4 45 mov $45,a -093e: 7d mov a,x -093f: 60 clrc -0940: 88 18 adc a,#$18 -0942: c4 2d mov $2d,a -0944: e5 a2 03 mov a,$03a2 -0947: d0 12 bne $095b -0949: f4 62 mov a,$62+x -094b: c4 48 mov $48,a -094d: 63 48 06 bbs3 $48,$0956 -0950: f5 e4 fc mov a,$fce4+x -0953: 5f 5b 09 jmp $095b - -0956: 3f 9c 12 call $129c -0959: f8 28 mov x,$28 -095b: 60 clrc -095c: 95 9a 03 adc a,$039a+x -095f: 30 06 bmi $0967 -0961: 70 04 bvs $0967 -0963: 68 65 cmp a,#$65 -0965: 30 0b bmi $0972 -0967: f5 9a 03 mov a,$039a+x -096a: 30 04 bmi $0970 -096c: e8 64 mov a,#$64 -096e: 2f 02 bra $0972 -0970: e8 00 mov a,#$00 -0972: fd mov y,a -0973: f5 43 01 mov a,$0143+x -0976: c4 3c mov $3c,a -0978: cf mul ya -0979: cd 64 mov x,#$64 -097b: 9e div ya,x -097c: f8 28 mov x,$28 -097e: 73 48 14 bbc3 $48,$0995 -0981: c4 3a mov $3a,a -0983: 6d push y -0984: eb 2d mov y,$2d -0986: f6 c3 03 mov a,$03c3+y -0989: ee pop y -098a: d0 04 bne $0990 -098c: e4 3a mov a,$3a -098e: 2f 05 bra $0995 -0990: e4 3c mov a,$3c -0992: 80 setc -0993: a4 3a sbc a,$3a -0995: c4 3a mov $3a,a -0997: d5 28 02 mov $0228+x,a -099a: e4 3c mov a,$3c -099c: 80 setc -099d: a4 3a sbc a,$3a -099f: d5 30 02 mov $0230+x,a -09a2: 1d dec x -09a3: 30 03 bmi $09a8 -09a5: 5f 34 09 jmp $0934 - -09a8: cd 07 mov x,#$07 ; process pitch envelopes (start with ch 7) -09aa: 3f be 0b call $0bbe -09ad: d8 28 mov $28,x -09af: 7d mov a,x -09b0: 60 clrc -09b1: 88 08 adc a,#$08 -09b3: c4 2d mov $2d,a -09b5: f4 62 mov a,$62+x -09b7: c4 48 mov $48,a -09b9: 7d mov a,x -09ba: 1c asl a -09bb: 5d mov x,a -09bc: f5 d5 fc mov a,$fcd5+x -09bf: c4 43 mov $43,a -09c1: f5 d4 fc mov a,$fcd4+x -09c4: c4 42 mov $42,a -09c6: 53 48 15 bbc2 $48,$09de -09c9: 4d push x -09ca: 42 08 set2 $08 -09cc: 3f 9c 12 call $129c -09cf: 52 08 clr2 $08 -09d1: ce pop x -09d2: 7a 42 addw ya,$42 -09d4: 80 setc -09d5: a8 b0 sbc a,#$b0 -09d7: c4 42 mov $42,a -09d9: dd mov a,y -09da: a8 04 sbc a,#$04 -09dc: c4 43 mov $43,a -09de: f5 4c 01 mov a,$014c+x -09e1: fd mov y,a -09e2: f5 4b 01 mov a,$014b+x -09e5: 7a 42 addw ya,$42 -09e7: da 3a movw $3a,ya -09e9: fb d8 mov y,$d8+x -09eb: f4 d7 mov a,$d7+x -09ed: 7a 3a addw ya,$3a -09ef: c3 48 03 bbs6 $48,$09f5 -09f2: 3f dc 14 call $14dc ; translate note to frequency -09f5: da 3a movw $3a,ya ; add in hardware tuning -09f7: e4 28 mov a,$28 ; word addressing -09f9: 1c asl a -09fa: 5d mov x,a -09fb: f5 5c 01 mov a,$015c+x -09fe: fd mov y,a -09ff: f5 5b 01 mov a,$015b+x -0a02: 7a 3a addw ya,$3a -0a04: f8 28 mov x,$28 -0a06: d5 33 01 mov $0133+x,a -0a09: dd mov a,y -0a0a: d5 3b 01 mov $013b+x,a -0a0d: 1d dec x -0a0e: 10 9a bpl $09aa -0a10: 8f 5c f2 mov $f2,#$5c -0a13: 8f 00 f3 mov $f3,#$00 -0a16: cd 07 mov x,#$07 -0a18: 3f be 0b call $0bbe -0a1b: d8 28 mov $28,x -0a1d: 7d mov a,x -0a1e: 60 clrc -0a1f: 88 00 adc a,#$00 -0a21: c4 2d mov $2d,a -0a23: f5 5f 08 mov a,$085f+x -0a26: c4 45 mov $45,a -0a28: 48 ff eor a,#$ff -0a2a: c4 46 mov $46,a -0a2c: f4 62 mov a,$62+x -0a2e: c4 48 mov $48,a -0a30: 03 48 07 bbs0 $48,$0a3a -0a33: f5 23 01 mov a,$0123+x -0a36: fd mov y,a -0a37: 5f 47 0a jmp $0a47 - -0a3a: 3f 9c 12 call $129c -0a3d: fd mov y,a -0a3e: f8 28 mov x,$28 -0a40: b3 07 04 bbc5 $07,$0a47 -0a43: e8 00 mov a,#$00 -0a45: d4 6a mov $6a+x,a -0a47: e8 80 mov a,#$80 -0a49: de 6a 04 cbne $6a+x,$0a50 -0a4c: e4 5a mov a,$5a -0a4e: 2f 02 bra $0a52 -0a50: e4 59 mov a,$59 -0a52: cf mul ya -0a53: f5 92 03 mov a,$0392+x -0a56: cf mul ya -0a57: dd mov a,y -0a58: d5 2b 01 mov $012b+x,a -0a5b: e4 51 mov a,$51 -0a5d: 24 45 and a,$45 -0a5f: d0 35 bne $0a96 -0a61: f5 2a 08 mov a,$082a+x -0a64: c4 f2 mov $f2,a -0a66: dd mov a,y -0a67: 80 setc -0a68: a4 f3 sbc a,$f3 -0a6a: b0 08 bcs $0a74 -0a6c: 8f 80 39 mov $39,#$80 -0a6f: 48 ff eor a,#$ff -0a71: bc inc a -0a72: 2f 03 bra $0a77 -0a74: 8f c0 39 mov $39,#$c0 -0a77: 5c lsr a -0a78: d0 08 bne $0a82 -0a7a: ad 00 cmp y,#$00 -0a7c: d0 04 bne $0a82 -0a7e: e8 82 mov a,#$82 -0a80: 2f 0e bra $0a90 -0a82: 8d 15 mov y,#$15 -0a84: 76 fe 07 cmp a,$07fe+y -0a87: 90 02 bcc $0a8b -0a89: fe f9 dbnz y,$0a84 -0a8b: f6 14 08 mov a,$0814+y -0a8e: 04 39 or a,$39 -0a90: 75 cc fc cmp a,$fccc+x -0a93: f0 20 beq $0ab5 -0a95: fd mov y,a -0a96: 29 46 51 and ($51),($46) -0a99: f5 4a 08 mov a,$084a+x -0a9c: c4 f2 mov $f2,a -0a9e: f5 28 02 mov a,$0228+x -0aa1: c4 f3 mov $f3,a -0aa3: ab f2 inc $f2 -0aa5: f5 30 02 mov a,$0230+x -0aa8: c4 f3 mov $f3,a -0aaa: f5 32 08 mov a,$0832+x -0aad: c4 f2 mov $f2,a -0aaf: cb f3 mov $f3,y -0ab1: dd mov a,y -0ab2: d5 cc fc mov $fccc+x,a -0ab5: f5 42 08 mov a,$0842+x -0ab8: c4 f2 mov $f2,a -0aba: fd mov y,a -0abb: f5 33 01 mov a,$0133+x -0abe: c4 f3 mov $f3,a -0ac0: fc inc y -0ac1: cb f2 mov $f2,y -0ac3: f5 3b 01 mov a,$013b+x -0ac6: c4 f3 mov $f3,a -0ac8: 1d dec x -0ac9: 30 03 bmi $0ace -0acb: 5f 18 0a jmp $0a18 - -0ace: 8f 4c f2 mov $f2,#$4c -0ad1: fa 57 f3 mov ($f3),($57) -0ad4: e4 57 mov a,$57 -0ad6: 48 ff eor a,#$ff -0ad8: c4 58 mov $58,a -0ada: 29 58 52 and ($52),($58) -0add: 29 58 54 and ($54),($58) -0ae0: 8f 00 56 mov $56,#$00 -0ae3: 3f be 0b call $0bbe -0ae6: 8d 07 mov y,#$07 -0ae8: cd 0e mov x,#$0e -0aea: 3f be 0b call $0bbe -0aed: f6 6a 00 mov a,$006a+y -0af0: f0 31 beq $0b23 -0af2: f6 62 00 mov a,$0062+y -0af5: c4 48 mov $48,a -0af7: f3 48 07 bbc7 $48,$0b01 -0afa: f6 5f 08 mov a,$085f+y -0afd: 24 52 and a,$52 -0aff: d0 1d bne $0b1e -0b01: f6 6a 00 mov a,$006a+y -0b04: 68 80 cmp a,#$80 -0b06: d0 1b bne $0b23 -0b08: f6 46 02 mov a,$0246+y -0b0b: 28 02 and a,#$02 -0b0d: d0 14 bne $0b23 -0b0f: 9b 73 dec $73+x -0b11: f4 73 mov a,$73+x -0b13: 2e 05 02 cbne $05,$0b18 -0b16: 9b 74 dec $74+x -0b18: f4 73 mov a,$73+x -0b1a: 14 74 or a,$74+x -0b1c: d0 05 bne $0b23 -0b1e: e8 80 mov a,#$80 -0b20: 3f 7b 17 call $177b -0b23: 1d dec x -0b24: 1d dec x -0b25: dc dec y -0b26: 10 c2 bpl $0aea -0b28: 3f be 0b call $0bbe -0b2b: ec 43 02 mov y,$0243 -0b2e: f0 54 beq $0b84 -0b30: 6e cc 51 dbnz $cc,$0b84 -0b33: cb cc mov $cc,y -0b35: e5 3b 02 mov a,$023b -0b38: f8 cd mov x,$cd -0b3a: 30 0d bmi $0b49 -0b3c: 60 clrc -0b3d: 84 ce adc a,$ce -0b3f: b0 04 bcs $0b45 -0b41: 68 7f cmp a,#$7f -0b43: 90 12 bcc $0b57 -0b45: e8 7f mov a,#$7f -0b47: 2f 09 bra $0b52 -0b49: 80 setc -0b4a: a4 ce sbc a,$ce -0b4c: f0 04 beq $0b52 -0b4e: b0 07 bcs $0b57 -0b50: e8 00 mov a,#$00 -0b52: 8d 00 mov y,#$00 -0b54: cc 43 02 mov $0243,y -0b57: 5d mov x,a -0b58: 65 44 02 cmp a,$0244 -0b5b: 90 03 bcc $0b60 -0b5d: e5 44 02 mov a,$0244 -0b60: c5 38 02 mov $0238,a -0b63: 7d mov a,x -0b64: c5 3b 02 mov $023b,a -0b67: c5 3c 02 mov $023c,a -0b6a: 65 45 02 cmp a,$0245 -0b6d: 90 03 bcc $0b72 -0b6f: e5 45 02 mov a,$0245 -0b72: c5 39 02 mov $0239,a -0b75: e5 43 02 mov a,$0243 -0b78: d0 0a bne $0b84 -0b7a: aa 07 40 mov1 c,$0007,2 -0b7d: 90 05 bcc $0b84 -0b7f: 8d 80 mov y,#$80 -0b81: 5f 42 0d jmp $0d42 - -0b84: 6f ret - -0b85: 32 08 clr1 $08 -0b87: e4 e7 mov a,$e7 -0b89: f0 2f beq $0bba -0b8b: 9c dec a -0b8c: c4 e7 mov $e7,a -0b8e: f8 e9 mov x,$e9 -0b90: f5 90 10 mov a,$1090+x -0b93: 28 fe and a,#$fe -0b95: c4 30 mov $30,a -0b97: f5 a0 10 mov a,$10a0+x -0b9a: c4 31 mov $31,a -0b9c: f5 b0 10 mov a,$10b0+x -0b9f: c4 32 mov $32,a -0ba1: 3d inc x -0ba2: c8 10 cmp x,#$10 -0ba4: d0 02 bne $0ba8 -0ba6: cd 00 mov x,#$00 -0ba8: d8 e9 mov $e9,x -0baa: e4 30 mov a,$30 -0bac: 5d mov x,a -0bad: 28 fe and a,#$fe -0baf: c8 45 cmp x,#$45 -0bb1: b0 07 bcs $0bba -0bb3: e4 31 mov a,$31 -0bb5: eb 32 mov y,$32 -0bb7: 3f bb 0b call $0bbb -0bba: 6f ret - -0bbb: 1f 45 1e jmp ($1e45+x) - -; que command -0bbe: 73 08 24 bbc3 $08,$0be5 -0bc1: 69 03 f6 cmp ($f6),($03) -0bc4: f0 1f beq $0be5 -0bc6: 23 08 1c bbs1 $08,$0be5 -0bc9: 2d push a -0bca: e4 f6 mov a,$f6 -0bcc: f0 16 beq $0be4 -0bce: 2e f6 13 cbne $f6,$0be4 -0bd1: e4 f7 mov a,$f7 -0bd3: 68 1e cmp a,#$1e -0bd5: d0 30 bne $0c07 -0bd7: fa f4 18 mov ($18),($f4) -0bda: fa f5 19 mov ($19),($f5) -0bdd: e4 f6 mov a,$f6 -0bdf: 8f b7 f1 mov $f1,#$b7 -0be2: c4 f6 mov $f6,a -0be4: ae pop a -0be5: 6f ret - -0be6: 6d push y -0be7: 4d push x -0be8: ba f4 movw ya,$f4 -0bea: da 1a movw $1a,ya -0bec: f8 f6 mov x,$f6 -0bee: 8f b7 f1 mov $f1,#$b7 -0bf1: 8d 00 mov y,#$00 -0bf3: f7 1a mov a,($1a)+y -0bf5: c4 f4 mov $f4,a -0bf7: fc inc y -0bf8: f7 1a mov a,($1a)+y -0bfa: c4 f5 mov $f5,a -0bfc: fc inc y -0bfd: f7 1a mov a,($1a)+y -0bff: c4 f7 mov $f7,a -0c01: d8 f6 mov $f6,x -0c03: ce pop x -0c04: ee pop y -0c05: ae pop a -0c06: 6f ret - -0c07: 68 22 cmp a,#$22 -0c09: f0 52 beq $0c5d -0c0b: 68 0c cmp a,#$0c -0c0d: f0 d7 beq $0be6 -0c0f: 68 0e cmp a,#$0e -0c11: d0 03 bne $0c16 -0c13: 5f dd 07 jmp $07dd - -0c16: 68 02 cmp a,#$02 -0c18: d0 15 bne $0c2f -0c1a: 4d push x -0c1b: 6d push y -0c1c: e4 f6 mov a,$f6 -0c1e: 8f b7 f1 mov $f1,#$b7 -0c21: 2d push a -0c22: 72 08 clr3 $08 -0c24: 3f d2 0c call $0cd2 -0c27: 62 08 set3 $08 -0c29: ae pop a -0c2a: c4 f6 mov $f6,a -0c2c: ee pop y -0c2d: 2f 2b bra $0c5a -0c2f: 4d push x -0c30: f8 e8 mov x,$e8 -0c32: d5 90 10 mov $1090+x,a -0c35: e4 f4 mov a,$f4 -0c37: d5 a0 10 mov $10a0+x,a -0c3a: e4 f5 mov a,$f5 -0c3c: d5 b0 10 mov $10b0+x,a -0c3f: e4 f6 mov a,$f6 -0c41: 8f b7 f1 mov $f1,#$b7 -0c44: c4 f6 mov $f6,a -0c46: 3d inc x -0c47: c8 10 cmp x,#$10 -0c49: d0 02 bne $0c4d -0c4b: cd 00 mov x,#$00 -0c4d: d8 e8 mov $e8,x -0c4f: e4 e7 mov a,$e7 -0c51: bc inc a -0c52: c4 e7 mov $e7,a -0c54: 68 10 cmp a,#$10 -0c56: d0 02 bne $0c5a -0c58: 22 08 set1 $08 -0c5a: ce pop x -0c5b: ae pop a -0c5c: 6f ret - -0c5d: 6d push y -0c5e: 4d push x -0c5f: f8 f4 mov x,$f4 -0c61: e4 f6 mov a,$f6 -0c63: 8f b7 f1 mov $f1,#$b7 -0c66: c4 f6 mov $f6,a -0c68: 4d push x -0c69: e4 18 mov a,$18 -0c6b: c5 94 0c mov $0c94,a -0c6e: c5 9c 0c mov $0c9c,a -0c71: c5 a3 0c mov $0ca3,a -0c74: e4 19 mov a,$19 -0c76: c5 95 0c mov $0c95,a -0c79: c5 9d 0c mov $0c9d,a -0c7c: c5 a4 0c mov $0ca4,a -0c7f: e4 f6 mov a,$f6 -0c81: f0 fc beq $0c7f -0c83: 2e f6 f9 cbne $f6,$0c7f -0c86: ba f4 movw ya,$f4 -0c88: da 1a movw $1a,ya -0c8a: ba f6 movw ya,$f6 -0c8c: 8f b7 f1 mov $f1,#$b7 -0c8f: c4 f6 mov $f6,a -0c91: e4 1a mov a,$1a -0c93: d5 93 0c mov $0c93+x,a -0c96: 1d dec x -0c97: 30 0f bmi $0ca8 -0c99: e4 1b mov a,$1b -0c9b: d5 9b 0c mov $0c9b+x,a -0c9e: 1d dec x -0c9f: 30 07 bmi $0ca8 -0ca1: dd mov a,y -0ca2: d5 a2 0c mov $0ca2+x,a -0ca5: 1d dec x -0ca6: 10 d7 bpl $0c7f -0ca8: e4 f6 mov a,$f6 -0caa: f0 fc beq $0ca8 -0cac: 2e f6 f9 cbne $f6,$0ca8 -0caf: ba f4 movw ya,$f4 -0cb1: da 1a movw $1a,ya -0cb3: ba f6 movw ya,$f6 -0cb5: 8f b7 f1 mov $f1,#$b7 -0cb8: c4 f6 mov $f6,a -0cba: ad 01 cmp y,#$01 -0cbc: d0 07 bne $0cc5 -0cbe: ae pop a -0cbf: ba 1a movw ya,$1a -0cc1: da 18 movw $18,ya -0cc3: 2f 09 bra $0cce -0cc5: ae pop a -0cc6: 8d 00 mov y,#$00 -0cc8: 7a 18 addw ya,$18 -0cca: da 18 movw $18,ya -0ccc: 3a 18 incw $18 -0cce: ce pop x -0ccf: ee pop y -0cd0: ae pop a -0cd1: 6f ret - -0cd2: 3f 34 11 call $1134 -0cd5: 3f 2a 11 call $112a -0cd8: 22 07 set1 $07 -0cda: 6f ret - -0cdb: c5 a2 03 mov $03a2,a -0cde: 6f ret - -0cdf: e8 00 mov a,#$00 -0ce1: c5 43 02 mov $0243,a -0ce4: 6f ret - -0ce5: cd 01 mov x,#$01 -0ce7: 52 07 clr2 $07 -0ce9: 2f 02 bra $0ced -0ceb: cd ff mov x,#$ff -0ced: c5 43 02 mov $0243,a -0cf0: c4 cc mov $cc,a -0cf2: cb ce mov $ce,y -0cf4: d8 cd mov $cd,x -0cf6: 6f ret - -0cf7: 2d push a -0cf8: dd mov a,y -0cf9: 28 7f and a,#$7f -0cfb: c5 3e 02 mov $023e,a -0cfe: ae pop a -0cff: 92 08 clr4 $08 -0d01: 2f 02 bra $0d05 -0d03: 82 08 set4 $08 -0d05: 8f ff cb mov $cb,#$ff -0d08: 5f 95 0d jmp $0d95 - -0d0b: 3f f9 1c call $1cf9 -0d0e: e5 fc 1e mov a,$1efc -0d11: c5 63 06 mov $0663,a -0d14: e5 fd 1e mov a,$1efd -0d17: c5 64 06 mov $0664,a -0d1a: 05 63 06 or a,$0663 -0d1d: f0 20 beq $0d3f -0d1f: 3f 50 17 call $1750 -0d22: e5 63 06 mov a,$0663 -0d25: 80 setc -0d26: a8 01 sbc a,#$01 -0d28: c5 63 06 mov $0663,a -0d2b: e5 64 06 mov a,$0664 -0d2e: a8 00 sbc a,#$00 -0d30: c5 64 06 mov $0664,a -0d33: b0 ea bcs $0d1f -0d35: cd 07 mov x,#$07 -0d37: e8 00 mov a,#$00 -0d39: d5 43 01 mov $0143+x,a -0d3c: 1d dec x -0d3d: 10 fa bpl $0d39 -0d3f: 6f ret - -0d40: 8d ff mov y,#$ff -0d42: cd 07 mov x,#$07 -0d44: ad 80 cmp y,#$80 -0d46: f0 04 beq $0d4c -0d48: ad ff cmp y,#$ff -0d4a: d0 05 bne $0d51 -0d4c: 82 07 set4 $07 -0d4e: 8f 00 84 mov $84,#$00 -0d51: c4 72 mov $72,a -0d53: ad 80 cmp y,#$80 -0d55: f0 16 beq $0d6d -0d57: e8 01 mov a,#$01 -0d59: ad ff cmp y,#$ff -0d5b: f0 0d beq $0d6a -0d5d: ad 00 cmp y,#$00 -0d5f: d0 07 bne $0d68 -0d61: e4 72 mov a,$72 -0d63: 75 1b 01 cmp a,$011b+x -0d66: d0 1d bne $0d85 -0d68: e8 80 mov a,#$80 -0d6a: de 6a 18 cbne $6a+x,$0d85 -0d6d: f5 32 08 mov a,$0832+x -0d70: c4 f2 mov $f2,a -0d72: 8f 9f f3 mov $f3,#$9f -0d75: e8 00 mov a,#$00 -0d77: d5 23 01 mov $0123+x,a -0d7a: d4 6a mov $6a+x,a -0d7c: d4 62 mov $62+x,a -0d7e: f5 5f 08 mov a,$085f+x -0d81: 04 56 or a,$56 -0d83: c4 56 mov $56,a -0d85: 1d dec x -0d86: 10 cb bpl $0d53 -0d88: 6f ret - -0d89: 52 07 clr2 $07 -0d8b: 5f eb 0c jmp $0ceb - -0d8e: 42 07 set2 $07 -0d90: 5f eb 0c jmp $0ceb - -0d93: cb cb mov $cb,y -0d95: 8d 0e mov y,#$0e -0d97: c4 72 mov $72,a -0d99: 3f 63 10 call $1063 -0d9c: da 22 movw $22,ya -0d9e: 8d 00 mov y,#$00 -0da0: f7 22 mov a,($22)+y -0da2: c4 4d mov $4d,a -0da4: 3a 22 incw $22 -0da6: 8d 07 mov y,#$07 -0da8: f7 22 mov a,($22)+y -0daa: 24 0a and a,$0a -0dac: c4 4e mov $4e,a -0dae: 8d 06 mov y,#$06 -0db0: f7 22 mov a,($22)+y -0db2: c4 4f mov $4f,a -0db4: 8f 80 50 mov $50,#$80 -0db7: cd 07 mov x,#$07 -0db9: 3f 70 0e call $0e70 -0dbc: 10 03 bpl $0dc1 -0dbe: 5f 42 0e jmp $0e42 - -0dc1: 83 08 07 bbs4 $08,$0dcb -0dc4: e8 02 mov a,#$02 -0dc6: 15 46 02 or a,$0246+x -0dc9: 2f 05 bra $0dd0 -0dcb: e8 fd mov a,#$fd -0dcd: 35 46 02 and a,$0246+x -0dd0: d5 46 02 mov $0246+x,a -0dd3: e8 80 mov a,#$80 -0dd5: d4 6a mov $6a+x,a -0dd7: e5 3e 02 mov a,$023e -0dda: d4 cf mov $cf+x,a -0ddc: e5 3f 02 mov a,$023f -0ddf: d5 92 03 mov $0392+x,a -0de2: e5 40 02 mov a,$0240 -0de5: d5 9a 03 mov $039a+x,a -0de8: e5 8e 03 mov a,$038e -0deb: c4 0d mov $0d,a -0ded: e5 90 03 mov a,$0390 -0df0: c4 0c mov $0c,a -0df2: e5 8f 03 mov a,$038f -0df5: c4 0e mov $0e,a -0df7: e5 91 03 mov a,$0391 -0dfa: c4 0f mov $0f,a -0dfc: 7d mov a,x -0dfd: 1c asl a -0dfe: fd mov y,a -0dff: e8 00 mov a,#$00 -0e01: d6 5b 01 mov $015b+y,a -0e04: d6 5c 01 mov $015c+y,a -0e07: c5 3d 02 mov $023d,a -0e0a: e5 41 02 mov a,$0241 -0e0d: d6 d7 00 mov $00d7+y,a -0e10: e5 42 02 mov a,$0242 -0e13: d6 d8 00 mov $00d8+y,a -0e16: e4 72 mov a,$72 -0e18: d5 1b 01 mov $011b+x,a -0e1b: 8d 02 mov y,#$02 -0e1d: f7 22 mov a,($22)+y -0e1f: c4 49 mov $49,a -0e21: fc inc y -0e22: f7 22 mov a,($22)+y -0e24: c4 4a mov $4a,a -0e26: 8d 04 mov y,#$04 -0e28: f7 22 mov a,($22)+y -0e2a: c4 4b mov $4b,a -0e2c: fc inc y -0e2d: f7 22 mov a,($22)+y -0e2f: c4 4c mov $4c,a -0e31: 8d 01 mov y,#$01 -0e33: f7 22 mov a,($22)+y -0e35: 2d push a -0e36: 8d 00 mov y,#$00 -0e38: f7 22 mov a,($22)+y -0e3a: 02 07 set0 $07 -0e3c: ee pop y -0e3d: 72 07 clr3 $07 -0e3f: 3f e5 0e call $0ee5 -0e42: 60 clrc -0e43: 98 08 22 adc $22,#$08 -0e46: 90 02 bcc $0e4a -0e48: ab 23 inc $23 -0e4a: 8b 4d dec $4d -0e4c: f0 03 beq $0e51 -0e4e: 5f a6 0d jmp $0da6 - -0e51: e8 00 mov a,#$00 -0e53: c5 3e 02 mov $023e,a -0e56: c5 41 02 mov $0241,a -0e59: c5 42 02 mov $0242,a -0e5c: c5 40 02 mov $0240,a -0e5f: c5 8e 03 mov $038e,a -0e62: c5 90 03 mov $0390,a -0e65: c5 8f 03 mov $038f,a -0e68: c5 91 03 mov $0391,a -0e6b: 9c dec a -0e6c: c5 3f 02 mov $023f,a -0e6f: 6f ret - -0e70: 8f 00 09 mov $09,#$00 -0e73: 83 09 5a bbs4 $09,$0ed0 -0e76: 8d 07 mov y,#$07 -0e78: 8f ff 3a mov $3a,#$ff -0e7b: 8f ff 3b mov $3b,#$ff -0e7e: 73 09 08 bbc3 $09,$0e89 -0e81: c8 08 cmp x,#$08 -0e83: b0 4b bcs $0ed0 -0e85: 8d 00 mov y,#$00 -0e87: 2f 09 bra $0e92 -0e89: 3f be 0b call $0bbe -0e8c: e4 50 mov a,$50 -0e8e: 24 4e and a,$4e -0e90: f0 1f beq $0eb1 -0e92: f4 6a mov a,$6a+x -0e94: f0 41 beq $0ed7 -0e96: e4 4f mov a,$4f -0e98: 03 09 06 bbs0 $09,$0ea1 -0e9b: 74 10 cmp a,$10+x -0e9d: b0 38 bcs $0ed7 -0e9f: 2f 10 bra $0eb1 -0ea1: 74 10 cmp a,$10+x -0ea3: f0 0c beq $0eb1 -0ea5: 90 0a bcc $0eb1 -0ea7: f4 10 mov a,$10+x -0ea9: 64 3b cmp a,$3b -0eab: b0 04 bcs $0eb1 -0ead: c4 3b mov $3b,a -0eaf: d8 3a mov $3a,x -0eb1: 53 09 0c bbc2 $09,$0ec0 -0eb4: 0b 50 asl $50 -0eb6: d0 05 bne $0ebd -0eb8: 8f 01 50 mov $50,#$01 -0ebb: cd ff mov x,#$ff -0ebd: 3d inc x -0ebe: 2f 0a bra $0eca -0ec0: 4b 50 lsr $50 -0ec2: d0 05 bne $0ec9 -0ec4: 8f 80 50 mov $50,#$80 -0ec7: cd 08 mov x,#$08 -0ec9: 1d dec x -0eca: dc dec y -0ecb: 10 bc bpl $0e89 -0ecd: 03 09 03 bbs0 $09,$0ed3 -0ed0: e8 ff mov a,#$ff -0ed2: 6f ret - -0ed3: f8 3a mov x,$3a -0ed5: 30 f9 bmi $0ed0 -0ed7: 33 09 04 bbc1 $09,$0ede -0eda: f4 6a mov a,$6a+x -0edc: d0 f2 bne $0ed0 -0ede: e4 4f mov a,$4f -0ee0: d4 10 mov $10+x,a -0ee2: e8 00 mov a,#$00 -0ee4: 6f ret - -0ee5: d8 28 mov $28,x ; play sound (instrument) -0ee7: d8 47 mov $47,x -0ee9: 2d push a -0eea: f5 46 02 mov a,$0246+x -0eed: 28 fe and a,#$fe -0eef: d5 46 02 mov $0246+x,a -0ef2: 63 07 08 bbs3 $07,$0efd -0ef5: f5 32 08 mov a,$0832+x -0ef8: c4 f2 mov $f2,a -0efa: 8f 9f f3 mov $f3,#$9f -0efd: dd mov a,y -0efe: d5 43 01 mov $0143+x,a -0f01: 7d mov a,x -0f02: 1c asl a -0f03: 5d mov x,a -0f04: e4 4b mov a,$4b -0f06: d5 d4 fc mov $fcd4+x,a -0f09: e4 4c mov a,$4c -0f0b: d5 d5 fc mov $fcd5+x,a -0f0e: e4 49 mov a,$49 -0f10: d4 73 mov $73+x,a -0f12: e4 4a mov a,$4a -0f14: d4 74 mov $74+x,a -0f16: ae pop a -0f17: 8d 02 mov y,#$02 -0f19: 3f 63 10 call $1063 -0f1c: da 20 movw $20,ya ;get current voice and instrument -0f1e: f8 47 mov x,$47 -0f20: f5 5f 08 mov a,$085f+x ;get channel bit mask ID -0f23: c4 60 mov $60,a -0f25: 48 ff eor a,#$ff ;and store inversion -0f27: c4 61 mov $61,a -0f29: 8d 00 mov y,#$00 ;get mode flags -0f2b: f7 20 mov a,($20)+y -0f2d: 2d push a -0f2e: e4 cb mov a,$cb -0f30: 30 0a bmi $0f3c -0f32: ae pop a -0f33: 2d push a -0f34: 28 08 and a,#$08 -0f36: f0 04 beq $0f3c -0f38: ae pop a -0f39: 48 08 eor a,#$08 -0f3b: 2d push a -0f3c: ae pop a -0f3d: d4 62 mov $62+x,a -0f3f: c4 48 mov $48,a -0f41: 8f 2d f2 mov $f2,#$2d -0f44: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) -0f46: f0 05 beq $0f4d ; if not... -0f48: 09 60 f3 or ($f3),($60) ; turn pitch mod on -0f4b: 2f 03 bra $0f50 -0f4d: 29 61 f3 and ($f3),($61) ; turn pitch mod off -0f50: 63 07 6a bbs3 $07,$0fbd ; slur handler -0f53: b0 68 bcs $0fbd -0f55: 93 48 5f bbc4 $48,$0fb7 -0f58: 13 08 05 bbc0 $08,$0f60 -0f5b: e5 06 01 mov a,$0106 -0f5e: 2f 04 bra $0f64 -0f60: 8d 05 mov y,#$05 ; default echo -0f62: f7 20 mov a,($20)+y -0f64: 8d 0c mov y,#$0c ; look for echo -0f66: 3f 63 10 call $1063 -0f69: 8d 00 mov y,#$00 -0f6b: f6 6f 08 mov a,$086f+y ; get the echo register values to "poke" -0f6e: c4 f2 mov $f2,a ; (from the table) -0f70: f7 29 mov a,($29)+y ; now get info to feed to the registers -0f72: ad 01 cmp y,#$01 ; (from the echo environment) -0f74: f0 08 beq $0f7e -0f76: ad 03 cmp y,#$03 -0f78: f0 0f beq $0f89 -0f7a: ad 02 cmp y,#$02 -0f7c: d0 10 bne $0f8e -0f7e: d6 43 02 mov $0243+y,a -0f81: 65 3b 02 cmp a,$023b -0f84: 90 03 bcc $0f89 -0f86: e5 3b 02 mov a,$023b -0f89: d6 37 02 mov $0237+y,a -0f8c: 2f 02 bra $0f90 -0f8e: c4 f3 mov $f3,a -0f90: fc inc y -0f91: ad 0c cmp y,#$0c ; repeat for every byte of the array -0f93: 90 d6 bcc $0f6b -0f95: 8f 6c f2 mov $f2,#$6c -0f98: e4 f3 mov a,$f3 -0f9a: 28 20 and a,#$20 -0f9c: f0 11 beq $0faf -0f9e: e5 e1 1e mov a,$1ee1 -0fa1: 8f 6d f2 mov $f2,#$6d -0fa4: c4 f3 mov $f3,a -0fa6: 8f 6c f2 mov $f2,#$6c -0fa9: e8 df mov a,#$df -0fab: 24 f3 and a,$f3 -0fad: c4 f3 mov $f3,a -0faf: 8f 4d f2 mov $f2,#$4d -0fb2: 09 60 f3 or ($f3),($60) -0fb5: 2f 06 bra $0fbd -0fb7: 8f 4d f2 mov $f2,#$4d -0fba: 29 61 f3 and ($f3),($61) -0fbd: e4 47 mov a,$47 -0fbf: 60 clrc -0fc0: 88 00 adc a,#$00 -0fc2: c4 2d mov $2d,a -0fc4: 8d 01 mov y,#$01 -0fc6: f7 20 mov a,($20)+y ; now get the amplitude -0fc8: 03 48 08 bbs0 $48,$0fd3 -0fcb: f8 47 mov x,$47 -0fcd: d5 23 01 mov $0123+x,a -0fd0: 5f de 0f jmp $0fde - -0fd3: 8d 04 mov y,#$04 -0fd5: 3f 63 10 call $1063 -0fd8: fa 0d 0b mov ($0b),($0d) -0fdb: 3f cf 11 call $11cf -0fde: e4 47 mov a,$47 -0fe0: 60 clrc -0fe1: 88 08 adc a,#$08 -0fe3: c4 2d mov $2d,a -0fe5: 53 48 13 bbc2 $48,$0ffb -0fe8: 8d 03 mov y,#$03 -0fea: f7 20 mov a,($20)+y -0fec: 8d 06 mov y,#$06 -0fee: 3f 63 10 call $1063 -0ff1: fa 0e 0b mov ($0b),($0e) -0ff4: 42 08 set2 $08 -0ff6: 3f cf 11 call $11cf -0ff9: 52 08 clr2 $08 -0ffb: e4 47 mov a,$47 -0ffd: 60 clrc -0ffe: 88 18 adc a,#$18 -1000: c4 2d mov $2d,a -1002: 63 07 5b bbs3 $07,$1060 -1005: e4 cb mov a,$cb -1007: 10 07 bpl $1010 -1009: 8d 04 mov y,#$04 -100b: f7 20 mov a,($20)+y -100d: 63 48 08 bbs3 $48,$1018 -1010: f8 47 mov x,$47 -1012: d5 e4 fc mov $fce4+x,a -1015: 5f 39 10 jmp $1039 - -1018: 8d 08 mov y,#$08 -101a: 3f 63 10 call $1063 -101d: fa 0f 0b mov ($0b),($0f) -1020: 3f cf 11 call $11cf -1023: eb 2d mov y,$2d -1025: f6 e3 04 mov a,$04e3+y -1028: f0 0a beq $1034 -102a: f6 c3 03 mov a,$03c3+y -102d: d0 05 bne $1034 -102f: e8 ff mov a,#$ff -1031: 5f 36 10 jmp $1036 - -1034: e8 00 mov a,#$00 -1036: d6 c3 03 mov $03c3+y,a -1039: e4 47 mov a,$47 -103b: 60 clrc -103c: 88 10 adc a,#$10 -103e: c4 2d mov $2d,a -1040: 8d 02 mov y,#$02 -1042: f7 20 mov a,($20)+y -1044: 23 48 08 bbs1 $48,$104f -1047: f8 47 mov x,$47 -1049: d5 ec fc mov $fcec+x,a -104c: 5f 5a 10 jmp $105a - -104f: 8d 0a mov y,#$0a -1051: 3f 63 10 call $1063 -1054: fa 0c 0b mov ($0b),($0c) -1057: 3f cf 11 call $11cf -105a: 09 60 56 or ($56),($60) -105d: 09 60 51 or ($51),($60) -1060: 72 07 clr3 $07 -1062: 6f ret - -1063: 3f be 0b call $0bbe ; load current song/sfx/etc. address into stack -1066: 8f 00 1f mov $1f,#$00 -1069: 1c asl a -106a: 2b 1f rol $1f -106c: 60 clrc -106d: 96 e0 1e adc a,$1ee0+y -1070: c4 1e mov $1e,a -1072: e4 1f mov a,$1f -1074: 96 e1 1e adc a,$1ee1+y -1077: c4 1f mov $1f,a -1079: 8d 01 mov y,#$01 -107b: f7 1e mov a,($1e)+y -107d: c4 2a mov $2a,a -107f: dc dec y -1080: f7 1e mov a,($1e)+y -1082: c4 29 mov $29,a -1084: eb 2a mov y,$2a -1086: 6f ret - -1087: db $0f,$00,$00,$00,$00,$00,$00,$00,$00 -1090: db $12,$16,$2e,$06,$16,$28,$16,$28,$16,$28,$16,$28,$16,$28,$04,$04 -10a0: db $01,$00,$ff,$05,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$00,$ff,$09,$29 -10b0: db $01,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 - -; initalize sound registers -10c0: e8 87 mov a,#$87 -10c2: c5 20 02 mov $0220,a -10c5: c5 22 02 mov $0222,a -10c8: e8 87 mov a,#$87 -10ca: c5 21 02 mov $0221,a -10cd: c5 23 02 mov $0223,a -10d0: e8 00 mov a,#$00 -10d2: 5d mov x,a -10d3: d5 00 01 mov $0100+x,a -10d6: af mov (x)+,a -10d7: c8 f0 cmp x,#$f0 -10d9: 90 f8 bcc $10d3 -10db: 5d mov x,a -10dc: d5 00 02 mov $0200+x,a -10df: d5 00 03 mov $0300+x,a -10e2: d5 00 04 mov $0400+x,a -10e5: d5 00 05 mov $0500+x,a -10e8: d5 00 06 mov $0600+x,a -10eb: d5 00 fc mov $fc00+x,a -10ee: d5 00 fd mov $fd00+x,a -10f1: d5 00 fe mov $fe00+x,a -10f4: d5 00 ff mov $ff00+x,a -10f7: 3d inc x -10f8: d0 e2 bne $10dc -10fa: e8 ff mov a,#$ff -10fc: c4 52 mov $52,a -10fe: c4 54 mov $54,a -1100: c4 5d mov $5d,a -1102: c4 53 mov $53,a -1104: c4 58 mov $58,a -1106: c4 59 mov $59,a -1108: c4 5a mov $5a,a -110a: c5 3f 02 mov $023f,a -110d: c4 05 mov $05,a -110f: c4 06 mov $06,a -1111: c4 0a mov $0a,a -1113: 82 07 set4 $07 -1115: 6f ret - -1116: cd 14 mov x,#$14 -1118: e8 00 mov a,#$00 -111a: d5 28 02 mov $0228+x,a -111d: 1d dec x -111e: 10 fa bpl $111a -1120: 8d 01 mov y,#$01 -1122: 3f 4a 07 call $074a -1125: 68 00 cmp a,#$00 -1127: d0 f7 bne $1120 -1129: 6f ret - -112a: e8 7f mov a,#$7f -112c: c5 3b 02 mov $023b,a -112f: c5 3c 02 mov $023c,a -1132: 2f ec bra $1120 -1134: 3f 16 11 call $1116 -1137: cd 74 mov x,#$74 -1139: 8d 11 mov y,#$11 -113b: 3f 5d 11 call $115d -113e: e5 e1 1e mov a,$1ee1 -1141: 8f 6d f2 mov $f2,#$6d -1144: c4 f3 mov $f3,a -1146: 68 ff cmp a,#$ff -1148: f0 12 beq $115c -114a: c4 01 mov $01,a -114c: e8 00 mov a,#$00 -114e: fd mov y,a -114f: c4 00 mov $00,a -1151: d7 00 mov ($00)+y,a -1153: fe fc dbnz y,$1151 -1155: ab 01 inc $01 -1157: 78 fc 01 cmp $01,#$fc -115a: d0 f5 bne $1151 -115c: 6f ret - -115d: d8 00 mov $00,x -115f: cb 01 mov $01,y -1161: 8d 00 mov y,#$00 -1163: f7 00 mov a,($00)+y -1165: 68 ff cmp a,#$ff -1167: f0 0a beq $1173 -1169: c4 f2 mov $f2,a -116b: fc inc y -116c: f7 00 mov a,($00)+y -116e: c4 f3 mov $f3,a -1170: fc inc y -1171: d0 f0 bne $1163 -1173: 6f ret - -; pre-defined DSP flags -1174: db $3d,$00,$4d,$00,$0d,$00,$7d,$00,$0f,$00,$1f,$00,$2f,$00,$3f,$00,$4f,$00,$5f,$00,$6f,$00,$7f,$00,$6d,$ff,$2c,$00,$3c,$00,$0c,$00,$1c,$00,$5d,$02,$5c,$00,$2d,$00,$04,$08,$14,$08,$24,$08,$34,$08,$44,$08,$54,$08,$64,$08,$74,$08,$07,$00,$17,$00,$27,$00,$37,$00,$47,$00,$57,$00,$67,$00,$77,$00,$05,$00,$15,$00,$25,$00,$35,$00,$45,$00,$55,$00,$65,$00,$75,$00,$7c,$00,$ff - -11cf: f8 2d mov x,$2d -11d1: 8d 07 mov y,#$07 -11d3: f7 29 mov a,($29)+y -11d5: d5 e3 04 mov $04e3+x,a -11d8: dc dec y -11d9: dc dec y -11da: f7 29 mov a,($29)+y -11dc: d5 03 04 mov $0403+x,a -11df: dc dec y -11e0: f7 29 mov a,($29)+y -11e2: d5 c3 04 mov $04c3+x,a -11e5: dc dec y -11e6: f7 29 mov a,($29)+y -11e8: d5 23 04 mov $0423+x,a -11eb: dc dec y -11ec: f7 29 mov a,($29)+y -11ee: d5 43 04 mov $0443+x,a -11f1: dc dec y -11f2: f7 29 mov a,($29)+y -11f4: d5 83 04 mov $0483+x,a -11f7: dc dec y -11f8: f7 29 mov a,($29)+y -11fa: d5 63 04 mov $0463+x,a -11fd: eb 2d mov y,$2d -11ff: e4 29 mov a,$29 -1201: 60 clrc -1202: 88 08 adc a,#$08 -1204: d6 43 05 mov $0543+y,a -1207: e4 2a mov a,$2a -1209: 88 00 adc a,#$00 -120b: d6 63 05 mov $0563+y,a -120e: f6 23 04 mov a,$0423+y -1211: cd 00 mov x,#$00 -1213: eb 0b mov y,$0b -1215: f0 23 beq $123a -1217: cf mul ya -1218: cb 3a mov $3a,y -121a: c4 3b mov $3b,a -121c: cd 05 mov x,#$05 -121e: 4b 3a lsr $3a -1220: 7c ror a -1221: 1d dec x -1222: d0 fa bne $121e -1224: eb 3a mov y,$3a -1226: ad 00 cmp y,#$00 -1228: d0 08 bne $1232 -122a: 68 00 cmp a,#$00 -122c: f0 0a beq $1238 -122e: f8 3b mov x,$3b -1230: 2f 08 bra $123a -1232: cd 01 mov x,#$01 -1234: e8 ff mov a,#$ff -1236: 2f 02 bra $123a -1238: 5d mov x,a -1239: bc inc a -123a: eb 2d mov y,$2d -123c: d6 23 04 mov $0423+y,a -123f: 7d mov a,x -1240: 48 ff eor a,#$ff -1242: 08 e0 or a,#$e0 -1244: d6 a3 03 mov $03a3+y,a -1247: e8 ff mov a,#$ff -1249: d6 e3 03 mov $03e3+y,a -124c: 3f be 0b call $0bbe -124f: 5d mov x,a -1250: f6 43 04 mov a,$0443+y -1253: fd mov y,a -1254: 7d mov a,x -1255: cf mul ya -1256: da 40 movw $40,ya -1258: 03 07 06 bbs0 $07,$1261 -125b: ba 05 movw ya,$05 -125d: da 40 movw $40,ya -125f: 2f 0a bra $126b -1261: ba 49 movw ya,$49 -1263: 9a 40 subw ya,$40 -1265: b0 02 bcs $1269 -1267: ba 49 movw ya,$49 -1269: cb 41 mov $41,y -126b: eb 2d mov y,$2d -126d: d6 83 05 mov $0583+y,a -1270: e4 41 mov a,$41 -1272: d6 a3 05 mov $05a3+y,a -1275: f6 23 04 mov a,$0423+y -1278: bc inc a -1279: d0 01 bne $127c -127b: 9c dec a -127c: d6 03 05 mov $0503+y,a -127f: 68 03 cmp a,#$03 -1281: b0 05 bcs $1288 -1283: e8 00 mov a,#$00 -1285: d6 c3 04 mov $04c3+y,a -1288: e8 01 mov a,#$01 -128a: d6 a3 04 mov $04a3+y,a -128d: 9c dec a -128e: d6 23 05 mov $0523+y,a -1291: d6 44 ff mov $ff44+y,a -1294: d6 64 ff mov $ff64+y,a -1297: c4 37 mov $37,a -1299: 5f 6e 13 jmp $136e - -129c: eb 2d mov y,$2d -129e: b2 07 clr5 $07 -12a0: f6 c3 04 mov a,$04c3+y -12a3: c4 37 mov $37,a -12a5: f6 a3 04 mov a,$04a3+y -12a8: f0 42 beq $12ec -12aa: f6 a3 03 mov a,$03a3+y -12ad: 60 clrc -12ae: 96 e3 03 adc a,$03e3+y -12b1: d6 e3 03 mov $03e3+y,a -12b4: 90 18 bcc $12ce -12b6: f6 03 05 mov a,$0503+y -12b9: c4 38 mov $38,a -12bb: f0 03 beq $12c0 -12bd: 9c dec a -12be: d0 03 bne $12c3 -12c0: f6 23 04 mov a,$0423+y -12c3: d6 03 05 mov $0503+y,a -12c6: 78 02 38 cmp $38,#$02 -12c9: 90 08 bcc $12d3 -12cb: 5f 6e 13 jmp $136e - -12ce: 8f 00 37 mov $37,#$00 -12d1: 2f f8 bra $12cb -12d3: eb 2d mov y,$2d -12d5: f6 23 05 mov a,$0523+y -12d8: bc inc a -12d9: 76 03 04 cmp a,$0403+y -12dc: 90 1b bcc $12f9 -12de: 9c dec a -12df: 76 83 04 cmp a,$0483+y -12e2: d0 03 bne $12e7 -12e4: 5f 68 13 jmp $1368 - -12e7: e8 00 mov a,#$00 -12e9: d6 a3 04 mov $04a3+y,a -12ec: a2 07 set5 $07 -12ee: f6 24 ff mov a,$ff24+y -12f1: 2d push a -12f2: f6 04 ff mov a,$ff04+y -12f5: ee pop y -12f6: 5f 1f 14 jmp $141f - -12f9: d6 23 05 mov $0523+y,a -12fc: f6 a3 05 mov a,$05a3+y -12ff: 16 83 05 or a,$0583+y -1302: f0 6a beq $136e -1304: f8 28 mov x,$28 -1306: f5 46 02 mov a,$0246+x -1309: 28 02 and a,#$02 -130b: f0 24 beq $1331 -130d: e8 01 mov a,#$01 -130f: 74 6a cmp a,$6a+x -1311: d0 03 bne $1316 -1313: 83 07 09 bbs4 $07,$131f -1316: eb 28 mov y,$28 -1318: f6 46 02 mov a,$0246+y -131b: 28 01 and a,#$01 -131d: f0 3d beq $135c -131f: e8 00 mov a,#$00 -1321: d6 73 00 mov $0073+y,a -1324: d6 74 00 mov $0074+y,a -1327: eb 2d mov y,$2d -1329: d6 83 05 mov $0583+y,a -132c: d6 a3 05 mov $05a3+y,a -132f: 2f 21 bra $1352 -1331: f6 83 05 mov a,$0583+y -1334: 80 setc -1335: b6 23 04 sbc a,$0423+y -1338: d6 83 05 mov $0583+y,a -133b: c4 40 mov $40,a -133d: f6 a3 05 mov a,$05a3+y -1340: a8 00 sbc a,#$00 -1342: b0 07 bcs $134b -1344: e8 00 mov a,#$00 -1346: d6 83 05 mov $0583+y,a -1349: c4 40 mov $40,a -134b: d6 a3 05 mov $05a3+y,a -134e: 04 40 or a,$40 -1350: d0 0a bne $135c -1352: f6 83 04 mov a,$0483+y -1355: 76 03 04 cmp a,$0403+y -1358: 90 11 bcc $136b -135a: a2 07 set5 $07 -135c: eb 2d mov y,$2d -135e: f6 23 05 mov a,$0523+y -1361: 76 83 04 cmp a,$0483+y -1364: 90 08 bcc $136e -1366: f0 06 beq $136e -1368: f6 63 04 mov a,$0463+y -136b: d6 23 05 mov $0523+y,a -136e: eb 2d mov y,$2d -1370: f8 37 mov x,$37 -1372: f0 1c beq $1390 -1374: 78 03 38 cmp $38,#$03 -1377: 90 17 bcc $1390 -1379: f6 04 ff mov a,$ff04+y -137c: c4 33 mov $33,a -137e: f6 24 ff mov a,$ff24+y -1381: c4 34 mov $34,a -1383: f6 44 ff mov a,$ff44+y -1386: c4 35 mov $35,a -1388: f6 64 ff mov a,$ff64+y -138b: c4 36 mov $36,a -138d: 5f 0d 14 jmp $140d - -1390: f6 43 05 mov a,$0543+y -1393: c4 2b mov $2b,a -1395: f6 63 05 mov a,$0563+y -1398: c4 2c mov $2c,a -139a: f6 23 05 mov a,$0523+y -139d: fd mov y,a -139e: 43 08 07 bbs2 $08,$13a8 -13a1: f7 2b mov a,($2b)+y -13a3: 8d 40 mov y,#$40 -13a5: cf mul ya -13a6: 2f 10 bra $13b8 -13a8: 8d 02 mov y,#$02 -13aa: cf mul ya -13ab: 7a 2b addw ya,$2b -13ad: da 2b movw $2b,ya -13af: 8d 01 mov y,#$01 -13b1: f7 2b mov a,($2b)+y -13b3: dc dec y -13b4: 2d push a -13b5: f7 2b mov a,($2b)+y -13b7: ee pop y -13b8: f8 37 mov x,$37 -13ba: f0 55 beq $1411 -13bc: 78 02 38 cmp $38,#$02 -13bf: f0 50 beq $1411 -13c1: da 3a movw $3a,ya -13c3: eb 2d mov y,$2d -13c5: f6 24 ff mov a,$ff24+y -13c8: c4 34 mov $34,a -13ca: f6 04 ff mov a,$ff04+y -13cd: c4 33 mov $33,a -13cf: eb 34 mov y,$34 -13d1: 80 setc -13d2: 9a 3a subw ya,$3a -13d4: da 35 movw $35,ya -13d6: e8 00 mov a,#$00 -13d8: 3c rol a -13d9: c4 3a mov $3a,a -13db: d0 08 bne $13e5 -13dd: 58 ff 35 eor $35,#$ff -13e0: 58 ff 36 eor $36,#$ff -13e3: 3a 35 incw $35 -13e5: eb 2d mov y,$2d -13e7: f6 23 04 mov a,$0423+y -13ea: 5d mov x,a -13eb: ba 35 movw ya,$35 -13ed: 3f 2a 14 call $142a -13f0: c4 35 mov $35,a -13f2: d8 36 mov $36,x -13f4: 78 01 3a cmp $3a,#$01 -13f7: d0 08 bne $1401 -13f9: 58 ff 35 eor $35,#$ff -13fc: 58 ff 36 eor $36,#$ff -13ff: 3a 35 incw $35 -1401: eb 2d mov y,$2d -1403: e4 35 mov a,$35 -1405: d6 44 ff mov $ff44+y,a -1408: e4 36 mov a,$36 -140a: d6 64 ff mov $ff64+y,a -140d: ba 33 movw ya,$33 -140f: 7a 35 addw ya,$35 -1411: da 33 movw $33,ya -1413: eb 2d mov y,$2d -1415: d6 04 ff mov $ff04+y,a -1418: e4 34 mov a,$34 -141a: d6 24 ff mov $ff24+y,a -141d: ba 33 movw ya,$33 -141f: 43 08 07 bbs2 $08,$1429 -1422: cd 40 mov x,#$40 -1424: 9e div ya,x -1425: 8d 00 mov y,#$00 -1427: da 33 movw $33,ya -1429: 6f ret - -142a: c8 00 cmp x,#$00 -142c: d0 04 bne $1432 -142e: 1d dec x -142f: 7d mov a,x -1430: fd mov y,a -1431: 6f ret - -1432: 40 setp -1433: cb 01 mov $01,y -1435: 3e 01 cmp x,$01 -1437: f0 02 beq $143b -1439: b0 1a bcs $1455 -143b: c4 00 mov $00,a -143d: dd mov a,y -143e: 8d 00 mov y,#$00 -1440: 9e div ya,x -1441: c4 02 mov $02,a -1443: fd mov y,a -1444: 7d mov a,x -1445: cf mul ya -1446: c4 03 mov $03,a -1448: e4 01 mov a,$01 -144a: 80 setc -144b: a4 03 sbc a,$03 -144d: fd mov y,a -144e: e4 00 mov a,$00 -1450: 9e div ya,x -1451: f8 02 mov x,$02 -1453: 20 clrp -1454: 6f ret - -1455: 9e div ya,x -1456: cd 00 mov x,#$00 -1458: 20 clrp -1459: 6f ret - -145a: 4d push x -145b: f5 f4 fc mov a,$fcf4+x -145e: 8d 04 mov y,#$04 -1460: cf mul ya -1461: 7a 24 addw ya,$24 -1463: da 00 movw $00,ya -1465: f5 3a 08 mov a,$083a+x -1468: c4 f2 mov $f2,a -146a: 7d mov a,x -146b: 1c asl a -146c: 1c asl a -146d: 5d mov x,a -146e: f5 02 02 mov a,$0202+x -1471: c5 26 02 mov $0226,a -1474: f5 03 02 mov a,$0203+x -1477: c5 27 02 mov $0227,a -147a: 8f 09 f3 mov $f3,#$09 -147d: 8d 00 mov y,#$00 -147f: f7 00 mov a,($00)+y -1481: d5 00 02 mov $0200+x,a -1484: fc inc y -1485: f7 00 mov a,($00)+y -1487: d5 01 02 mov $0201+x,a -148a: fc inc y -148b: f7 00 mov a,($00)+y -148d: d5 02 02 mov $0202+x,a -1490: fc inc y -1491: f7 00 mov a,($00)+y -1493: d5 03 02 mov $0203+x,a -1496: 8d 01 mov y,#$01 -1498: f7 00 mov a,($00)+y -149a: c4 3d mov $3d,a -149c: dc dec y -149d: f7 00 mov a,($00)+y -149f: 80 setc -14a0: a8 03 sbc a,#$03 -14a2: c4 3c mov $3c,a -14a4: b8 00 3d sbc $3d,#$00 -14a7: f7 3c mov a,($3c)+y -14a9: c5 04 01 mov $0104,a -14ac: fc inc y -14ad: f7 3c mov a,($3c)+y -14af: c5 05 01 mov $0105,a -14b2: fc inc y -14b3: f7 3c mov a,($3c)+y -14b5: c4 5e mov $5e,a -14b7: 10 14 bpl $14cd -14b9: 28 1f and a,#$1f -14bb: 8f 6c f2 mov $f2,#$6c -14be: 38 e0 f3 and $f3,#$e0 -14c1: 04 f3 or a,$f3 -14c3: c4 f3 mov $f3,a -14c5: 8f 3d f2 mov $f2,#$3d -14c8: 09 45 f3 or ($f3),($45) -14cb: 2f 06 bra $14d3 -14cd: 8f 3d f2 mov $f2,#$3d -14d0: 29 46 f3 and ($f3),($46) -14d3: ce pop x -14d4: f5 3a 08 mov a,$083a+x -14d7: c4 f2 mov $f2,a -14d9: d8 f3 mov $f3,x -14db: 6f ret - -14dc: 60 clrc -14dd: 88 a0 adc a,#$a0 ; add offset to input frequency (1440) -14df: 5d mov x,a -14e0: dd mov a,y -14e1: 88 05 adc a,#$05 -14e3: fd mov y,a -14e4: 7d mov a,x -14e5: ad 0a cmp y,#$0a ; check if it is in within positive range -14e7: 90 06 bcc $14ef ; in range -14e9: d0 0a bne $14f5 ; out of range -14eb: 68 50 cmp a,#$50 -14ed: b0 06 bcs $14f5 ; out of range -14ef: 8f ff 5f mov $5f,#$ff -14f2: 5f 0b 15 jmp $150b - -14f5: ad 80 cmp y,#$80 -14f7: 90 0f bcc $1508 -14f9: 8f 00 5f mov $5f,#$00 -14fc: 60 clrc -14fd: 88 20 adc a,#$20 -14ff: 5d mov x,a -1500: dd mov a,y -1501: 88 df adc a,#$df -1503: fd mov y,a -1504: 7d mov a,x -1505: 5f 0b 15 jmp $150b - -1508: 8f 0a 5f mov $5f,#$0a -150b: cd f0 mov x,#$f0 -150d: 9e div ya,x -150e: 78 ff 5f cmp $5f,#$ff -1511: d0 02 bne $1515 -1513: c4 5f mov $5f,a -1515: f6 30 15 mov a,$1530+y ;get pitch value (from table) -1518: c4 3a mov $3a,a -151a: f6 20 16 mov a,$1620+y -151d: c4 3b mov $3b,a -151f: e8 0a mov a,#$0a -1521: 80 setc -1522: a4 5f sbc a,$5f -1524: f0 07 beq $152d -1526: fd mov y,a -1527: 4b 3b lsr $3b -1529: 6b 3a ror $3a -152b: fe fa dbnz y,$1527 -152d: ba 3a movw ya,$3a -152f: 6f ret - -; pitch table (low byte) -1530: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 - -; pitch table (high byte) -1620: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f - -; note interval frequencies (low byte) -1710: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 - -; note interval frequencies (high byte) -1730: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 - -1750: 3f c4 17 call $17c4 -1753: 8f 00 85 mov $85,#$00 -1756: e4 84 mov a,$84 -1758: f0 20 beq $177a -175a: e4 83 mov a,$83 -175c: 9c dec a -175d: c4 86 mov $86,a -175f: 3f be 0b call $0bbe -1762: f8 85 mov x,$85 -1764: f5 07 01 mov a,$0107+x -1767: 30 0a bmi $1773 -1769: 5d mov x,a -176a: c4 86 mov $86,a -176c: f5 66 03 mov a,$0366+x -176f: 5d mov x,a -1770: 1f 3d 1e jmp ($1e3d+x) - -1773: ab 85 inc $85 -1775: 69 83 85 cmp ($85),($83) -1778: d0 e5 bne $175f -177a: 6f ret - -177b: c4 3a mov $3a,a -177d: f6 62 00 mov a,$0062+y -1780: 28 80 and a,#$80 -1782: f0 08 beq $178c -1784: f6 10 00 mov a,$0010+y -1787: 9c dec a -1788: d6 10 00 mov $0010+y,a -178b: 6f ret - -178c: f6 6a 00 mov a,$006a+y -178f: 64 3a cmp a,$3a -1791: d0 07 bne $179a -1793: f6 10 00 mov a,$0010+y -1796: 5c lsr a -1797: d6 10 00 mov $0010+y,a -179a: 6f ret - -179b: f8 86 mov x,$86 -179d: 9b b2 dec $b2+x -179f: d0 d2 bne $1773 -17a1: 2f 19 bra $17bc -17a3: f8 86 mov x,$86 -17a5: 9b b2 dec $b2+x -17a7: d0 ca bne $1773 -17a9: e8 04 mov a,#$04 -17ab: d5 66 03 mov $0366+x,a -17ae: 5f a5 18 jmp $18a5 - -; vcmd eb - set pitch bend state -17b1: 3f 0a 18 call $180a - -; vcmd ec - set pitch bend state and release -17b4: e8 00 mov a,#$00 -17b6: d5 c6 02 mov $02c6+x,a -17b9: d5 da 02 mov $02da+x,a -17bc: e8 06 mov a,#$06 -17be: d5 66 03 mov $0366+x,a -17c1: 5f 3a 18 jmp $183a - -17c4: d3 07 2f bbc6 $07,$17f6 -17c7: d2 07 clr6 $07 -17c9: f8 83 mov x,$83 -17cb: f0 29 beq $17f6 -17cd: e8 ff mov a,#$ff -17cf: 1d dec x -17d0: d5 07 01 mov $0107+x,a -17d3: 1d dec x -17d4: 10 fa bpl $17d0 -17d6: f8 83 mov x,$83 -17d8: 1d dec x -17d9: 8f 00 3a mov $3a,#$00 -17dc: eb 3a mov y,$3a -17de: f6 07 01 mov a,$0107+y -17e1: 30 14 bmi $17f7 -17e3: fd mov y,a -17e4: f5 b2 02 mov a,$02b2+x -17e7: 76 b2 02 cmp a,$02b2+y -17ea: b0 0b bcs $17f7 -17ec: ab 3a inc $3a -17ee: 78 14 3a cmp $3a,#$14 -17f1: d0 e9 bne $17dc -17f3: 1d dec x -17f4: 10 e3 bpl $17d9 -17f6: 6f ret - -17f7: eb 3a mov y,$3a -17f9: 4d push x -17fa: 40 setp -17fb: f6 07 01 mov a,$0107+y -17fe: d9 07 mov $07+y,x -1800: 5d mov x,a -1801: fc inc y -1802: 68 ff cmp a,#$ff -1804: d0 f5 bne $17fb -1806: ce pop x -1807: 20 clrp -1808: 2f e9 bra $17f3 -180a: f5 27 06 mov a,$0627+x -180d: 30 15 bmi $1824 -180f: fd mov y,a -1810: f6 6a 00 mov a,$006a+y -1813: 68 01 cmp a,#$01 -1815: d0 0d bne $1824 -1817: e8 01 mov a,#$01 -1819: 16 46 02 or a,$0246+y -181c: d6 46 02 mov $0246+y,a -181f: e8 01 mov a,#$01 -1821: 3f 7b 17 call $177b -1824: 6f ret - -1825: c4 02 mov $02,a -1827: 7d mov a,x -1828: 8d 05 mov y,#$05 -182a: cf mul ya -182b: 60 clrc -182c: 84 02 adc a,$02 -182e: fd mov y,a -182f: cb 02 mov $02,y -1831: 6f ret - -; voice numbers -1832: db $01,$02,$04,$08,$10,$20,$40,$80 - -183a: f8 86 mov x,$86 -183c: f5 c6 02 mov a,$02c6+x -183f: c4 3a mov $3a,a -1841: f5 da 02 mov a,$02da+x -1844: c4 3b mov $3b,a -1846: 3f 62 1a call $1a62 -1849: fd mov y,a -184a: 28 0f and a,#$0f -184c: 2d push a -184d: dd mov a,y -184e: 5c lsr a -184f: 5c lsr a -1850: 5c lsr a -1851: 5c lsr a -1852: f0 28 beq $187c -1854: 60 clrc -1855: 88 f8 adc a,#$f8 -1857: 8d 00 mov y,#$00 -1859: 68 00 cmp a,#$00 -185b: 10 01 bpl $185e -185d: dc dec y -185e: 7a 3a addw ya,$3a -1860: d5 c6 02 mov $02c6+x,a -1863: dd mov a,y -1864: d5 da 02 mov $02da+x,a -1867: 8f 00 87 mov $87,#$00 -186a: 3f 3a 19 call $193a -186d: f8 86 mov x,$86 -186f: ae pop a -1870: 68 00 cmp a,#$00 -1872: f0 c6 beq $183a -1874: d4 b2 mov $b2+x,a -1876: 3f 4b 1c call $1c4b -1879: 5f 73 17 jmp $1773 - -187c: ae pop a -187d: dd mov a,y -187e: 68 00 cmp a,#$00 -1880: d0 03 bne $1885 -1882: 5f a9 17 jmp $17a9 - -1885: 68 01 cmp a,#$01 -1887: d0 0b bne $1894 -1889: 3f 62 1a call $1a62 -188c: d4 b2 mov $b2+x,a -188e: 3f 4b 1c call $1c4b -1891: 5f 73 17 jmp $1773 - -1894: 68 02 cmp a,#$02 -1896: d0 05 bne $189d -1898: 3f 0a 18 call $180a -189b: 2f 9d bra $183a -189d: f4 b2 mov a,$b2+x -189f: 2d push a -18a0: 3f 62 1a call $1a62 -18a3: 2f b2 bra $1857 -18a5: f8 86 mov x,$86 -18a7: f5 4e 02 mov a,$024e+x -18aa: 68 05 cmp a,#$05 -18ac: f0 1e beq $18cc -18ae: 3f 25 18 call $1825 -18b1: f6 68 fd mov a,$fd68+y -18b4: c4 00 mov $00,a -18b6: f6 04 fd mov a,$fd04+y -18b9: c4 01 mov $01,a -18bb: 8d 02 mov y,#$02 -18bd: f7 00 mov a,($00)+y -18bf: de 8a 0a cbne $8a+x,$18cc -18c2: 8d 03 mov y,#$03 -18c4: f7 00 mov a,($00)+y -18c6: de 9e 03 cbne $9e+x,$18cc - -; play melody byte -18c9: 5f 9b 1b jmp $1b9b - -18cc: 3f 62 1a call $1a62 ; get 1 byte -18cf: fd mov y,a ; separate the flags -18d0: ad e0 cmp y,#$e0 ; check if it's a vector command -18d2: 90 16 bcc $18ea ; if not a vector... -18d4: dd mov a,y -18d5: 28 1f and a,#$1f ; mask off bits -18d7: 1c asl a -18d8: fd mov y,a -18d9: f6 a0 1c mov a,$1ca0+y -18dc: c5 e8 18 mov $18e8,a -18df: f6 a1 1c mov a,$1ca1+y -18e2: c5 e9 18 mov $18e9,a -18e5: eb 3a mov y,$3a -18e7: 5f 10 19 jmp $1910 - -18ea: ad c0 cmp y,#$c0 ; is it a rest? -18ec: 90 06 bcc $18f4 -18ee: 80 setc -18ef: a8 bf sbc a,#$bf ; get the duration -18f1: 5f e4 1a jmp $1ae4 ; and set rest - -18f4: ad 00 cmp y,#$00 ; is it a relative note? -18f6: 10 06 bpl $18fe ; if so, play the note -18f8: 80 setc ; otherwise, it must be an absolute note... -18f9: a8 60 sbc a,#$60 -18fb: fd mov y,a -18fc: 2f 16 bra $1914 -18fe: 2d push a -18ff: 5c lsr a -1900: 5c lsr a -1901: 5c lsr a -1902: 80 setc -1903: a8 08 sbc a,#$08 -1905: 60 clrc -1906: 95 76 02 adc a,$0276+x -1909: fd mov y,a -190a: ae pop a -190b: 28 07 and a,#$07 -190d: bc inc a -190e: 2f 07 bra $1917 - -; vcmd ef - play absolute note -1910: 3f 62 1a call $1a62 -1913: fd mov y,a -1914: 3f 62 1a call $1a62 -1917: 2d push a -1918: e8 00 mov a,#$00 -191a: d5 c6 02 mov $02c6+x,a -191d: d5 da 02 mov $02da+x,a -1920: dd mov a,y -1921: d5 76 02 mov $0276+x,a -1924: 8f 01 87 mov $87,#$01 -1927: f3 07 02 bbc7 $07,$192c -192a: 8b 87 dec $87 -192c: f2 07 clr7 $07 -192e: ae pop a -192f: 3f 35 19 call $1935 -1932: 5f 73 17 jmp $1773 - -1935: d4 b2 mov $b2+x,a -1937: 3f 45 1c call $1c45 -193a: e4 87 mov a,$87 -193c: f0 06 beq $1944 -193e: 3f 0a 18 call $180a -1941: 73 07 16 bbc3 $07,$195a -1944: f5 27 06 mov a,$0627+x -1947: 30 0d bmi $1956 -1949: fd mov y,a -194a: 7d mov a,x -194b: 08 80 or a,#$80 -194d: 76 cf 00 cmp a,$00cf+y -1950: d0 04 bne $1956 -1952: dd mov a,y -1953: 5d mov x,a -1954: 2f 44 bra $199a -1956: ab 87 inc $87 -1958: 72 07 clr3 $07 -195a: e8 ff mov a,#$ff -195c: d5 27 06 mov $0627+x,a -195f: f5 b2 02 mov a,$02b2+x -1962: c4 4f mov $4f,a -1964: f5 eb 05 mov a,$05eb+x -1967: c4 09 mov $09,a -1969: f5 13 06 mov a,$0613+x -196c: c4 4e mov $4e,a -196e: f5 ff 05 mov a,$05ff+x -1971: 5d mov x,a -1972: f5 32 18 mov a,$1832+x -1975: c4 50 mov $50,a -1977: f5 7a 03 mov a,$037a+x -197a: 28 01 and a,#$01 -197c: d0 17 bne $1995 -197e: 3f 73 0e call $0e73 -1981: 30 12 bmi $1995 -1983: d3 09 12 bbc6 $09,$1998 -1986: 7d mov a,x -1987: 53 09 03 bbc2 $09,$198d -198a: bc inc a -198b: 2f 01 bra $198e -198d: 9c dec a -198e: 28 07 and a,#$07 -1990: d5 ff 05 mov $05ff+x,a -1993: 2f 03 bra $1998 -1995: 5f 5d 1a jmp $1a5d - -1998: 7d mov a,x -1999: fd mov y,a -199a: f8 86 mov x,$86 -199c: d5 27 06 mov $0627+x,a -199f: 7d mov a,x -19a0: 08 80 or a,#$80 -19a2: d6 cf 00 mov $00cf+y,a -19a5: e4 87 mov a,$87 -19a7: f0 00 beq $19a9 -19a9: cb c6 mov $c6,y -19ab: e8 01 mov a,#$01 -19ad: d6 6a 00 mov $006a+y,a -19b0: f5 b2 02 mov a,$02b2+x -19b3: d6 10 00 mov $0010+y,a -19b6: dd mov a,y -19b7: 1c asl a -19b8: fd mov y,a -19b9: f5 ee 02 mov a,$02ee+x -19bc: d6 5b 01 mov $015b+y,a -19bf: f5 02 03 mov a,$0302+x -19c2: d6 5c 01 mov $015c+y,a -19c5: f5 76 02 mov a,$0276+x -19c8: 8d 14 mov y,#$14 -19ca: cf mul ya -19cb: 80 setc -19cc: a8 84 sbc a,#$84 -19ce: c4 4b mov $4b,a -19d0: dd mov a,y -19d1: a8 03 sbc a,#$03 -19d3: c4 4c mov $4c,a -19d5: f5 da 02 mov a,$02da+x -19d8: fd mov y,a -19d9: f5 c6 02 mov a,$02c6+x -19dc: 7a 4b addw ya,$4b -19de: da 4b movw $4b,ya -19e0: f5 4f 06 mov a,$064f+x -19e3: fd mov y,a -19e4: f5 3b 06 mov a,$063b+x -19e7: 7a 4b addw ya,$4b -19e9: 7a 5b addw ya,$5b -19eb: da 4b movw $4b,ya -19ed: dd mov a,y -19ee: eb 87 mov y,$87 -19f0: d0 13 bne $1a05 -19f2: c4 2f mov $2f,a -19f4: fa 4b 2e mov ($2e),($4b) -19f7: 8f d4 00 mov $00,#$d4 -19fa: 8f fc 01 mov $01,#$fc -19fd: 7d mov a,x -19fe: 08 80 or a,#$80 -1a00: 3f 0e 1e call $1e0e -1a03: 2f 58 bra $1a5d -1a05: f5 c3 05 mov a,$05c3+x -1a08: 10 02 bpl $1a0c -1a0a: e8 7f mov a,#$7f -1a0c: c4 c7 mov $c7,a -1a0e: e4 c6 mov a,$c6 -1a10: 1c asl a -1a11: fd mov y,a -1a12: e8 00 mov a,#$00 -1a14: 12 07 clr0 $07 -1a16: d6 d7 00 mov $00d7+y,a -1a19: d6 d8 00 mov $00d8+y,a -1a1c: e4 c6 mov a,$c6 -1a1e: fd mov y,a -1a1f: f6 46 02 mov a,$0246+y -1a22: 08 02 or a,#$02 -1a24: d6 46 02 mov $0246+y,a -1a27: e8 ff mov a,#$ff -1a29: d6 92 03 mov $0392+y,a -1a2c: f5 9e 02 mov a,$029e+x -1a2f: d6 9a 03 mov $039a+y,a -1a32: f5 16 03 mov a,$0316+x -1a35: c4 0d mov $0d,a -1a37: f5 62 02 mov a,$0262+x -1a3a: c5 3d 02 mov $023d,a -1a3d: f5 3e 03 mov a,$033e+x -1a40: c4 0c mov $0c,a -1a42: f5 52 03 mov a,$0352+x -1a45: c4 0f mov $0f,a -1a47: f5 2a 03 mov a,$032a+x -1a4a: c4 0e mov $0e,a -1a4c: eb c7 mov y,$c7 -1a4e: f5 8a 02 mov a,$028a+x -1a51: cf mul ya -1a52: f5 d7 05 mov a,$05d7+x -1a55: f8 c6 mov x,$c6 -1a57: 8f ff cb mov $cb,#$ff -1a5a: 3f e5 0e call $0ee5 -1a5d: ab 87 inc $87 -1a5f: 72 07 clr3 $07 -1a61: 6f ret - -; get 1 byte -1a62: 3f be 0b call $0bbe -1a65: f8 86 mov x,$86 -1a67: f4 8a mov a,$8a+x -1a69: c5 72 1a mov $1a72,a -1a6c: f4 9e mov a,$9e+x -1a6e: c5 73 1a mov $1a73,a -1a71: e5 4d ba mov a,$ba4d -1a74: bb 8a inc $8a+x -1a76: d0 02 bne $1a7a -1a78: bb 9e inc $9e+x -1a7a: 6f ret - -; vcmd e9 - set effects mask -1a7b: 3f 62 1a call $1a62 -1a7e: c4 0a mov $0a,a -1a80: 2f 09 bra $1a8b - -; vcmd e6 - set standard allocation -1a82: e8 08 mov a,#$08 -1a84: d5 eb 05 mov $05eb+x,a -1a87: 7d mov a,x -1a88: d5 ff 05 mov $05ff+x,a -1a8b: 5f a5 18 jmp $18a5 - -; vcmd e5 - set channel allocation -1a8e: 3f 62 1a call $1a62 -1a91: d5 eb 05 mov $05eb+x,a -1a94: 3f 62 1a call $1a62 -1a97: d5 ff 05 mov $05ff+x,a -1a9a: 3f 62 1a call $1a62 -1a9d: d5 13 06 mov $0613+x,a -1aa0: 2f e9 bra $1a8b - -; vcmd f0 - end of sequence -1aa2: 3f 0a 18 call $180a -1aa5: e8 00 mov a,#$00 -1aa7: d5 66 03 mov $0366+x,a -1aaa: 8b 84 dec $84 -1aac: 5f 73 17 jmp $1773 - -; vcmd f1 - delta expression -1aaf: f5 c3 05 mov a,$05c3+x -1ab2: 3f ba 1a call $1aba -1ab5: d5 c3 05 mov $05c3+x,a -1ab8: 2f d1 bra $1a8b -1aba: 4d push x -1abb: fd mov y,a -1abc: 6d push y -1abd: 3f 62 1a call $1a62 -1ac0: cf mul ya -1ac1: da 3a movw $3a,ya -1ac3: ee pop y -1ac4: 3f 62 1a call $1a62 -1ac7: cf mul ya -1ac8: 6d push y -1ac9: 0b 3a asl $3a -1acb: 84 3b adc a,$3b -1acd: 5d mov x,a -1ace: ae pop a -1acf: 88 00 adc a,#$00 -1ad1: fd mov y,a -1ad2: d0 03 bne $1ad7 -1ad4: 7d mov a,x -1ad5: 10 02 bpl $1ad9 -1ad7: e8 7f mov a,#$7f -1ad9: ce pop x -1ada: 6f ret - -; vcmd f2 - absolute expression -1adb: 3f 62 1a call $1a62 -1ade: d5 c3 05 mov $05c3+x,a -1ae1: 5f a5 18 jmp $18a5 - -1ae4: 2d push a -1ae5: 3f 0a 18 call $180a -1ae8: ae pop a -1ae9: d4 b2 mov $b2+x,a -1aeb: 3f 45 1c call $1c45 -1aee: 5f 73 17 jmp $1773 - -; vcmd fd - set time (delay) - 64 -1af1: e8 40 mov a,#$40 -1af3: 2f f4 bra $1ae9 - -; vcmd f8 - set time (delay) - 32 -1af5: e8 20 mov a,#$20 -1af7: 2f f0 bra $1ae9 - -; vcmd fe - set time (delay) - 128 -1af9: e8 80 mov a,#$80 -1afb: 2f ec bra $1ae9 - -; vcmd ff - set time (delay) - 256 -1afd: e8 00 mov a,#$00 -1aff: 2f e8 bra $1ae9 - -; vcmd f5 - set sound (instrument) -1b01: 3f 62 1a call $1a62 -1b04: d5 d7 05 mov $05d7+x,a -1b07: f5 4e 02 mov a,$024e+x -1b0a: 68 05 cmp a,#$05 -1b0c: f0 2b beq $1b39 -1b0e: 3f 25 18 call $1825 -1b11: f6 68 fd mov a,$fd68+y -1b14: c4 00 mov $00,a -1b16: f6 04 fd mov a,$fd04+y -1b19: c4 01 mov $01,a -1b1b: f6 04 fc mov a,$fc04+y -1b1e: 8d 09 mov y,#$09 -1b20: 77 00 cmp a,($00)+y -1b22: 90 02 bcc $1b26 -1b24: e8 00 mov a,#$00 -1b26: bc inc a -1b27: eb 02 mov y,$02 -1b29: d6 04 fc mov $fc04+y,a -1b2c: 60 clrc -1b2d: 88 09 adc a,#$09 -1b2f: fd mov y,a -1b30: f7 00 mov a,($00)+y -1b32: 68 ff cmp a,#$ff -1b34: f0 03 beq $1b39 -1b36: d5 d7 05 mov $05d7+x,a -1b39: 5f a5 18 jmp $18a5 - -; vcmd f6 - play phrase -1b3c: f5 4e 02 mov a,$024e+x -1b3f: 9c dec a -1b40: d5 4e 02 mov $024e+x,a -1b43: 3f 25 18 call $1825 -1b46: f4 8a mov a,$8a+x -1b48: d6 68 fd mov $fd68+y,a -1b4b: f4 9e mov a,$9e+x -1b4d: d6 04 fd mov $fd04+y,a -1b50: e8 00 mov a,#$00 -1b52: d6 68 fc mov $fc68+y,a -1b55: 3f 62 1a call $1a62 -1b58: 2d push a -1b59: 3f 67 1a call $1a67 -1b5c: 2d push a -1b5d: 3f 67 1a call $1a67 -1b60: 3f 67 1a call $1a67 -1b63: 3f 67 1a call $1a67 -1b66: 3f 67 1a call $1a67 -1b69: fd mov y,a -1b6a: 3f 67 1a call $1a67 -1b6d: 2d push a -1b6e: dd mov a,y -1b6f: 60 clrc -1b70: 95 3b 06 adc a,$063b+x -1b73: d5 3b 06 mov $063b+x,a -1b76: ae pop a -1b77: 95 4f 06 adc a,$064f+x -1b7a: d5 4f 06 mov $064f+x,a -1b7d: f5 c3 05 mov a,$05c3+x -1b80: eb 02 mov y,$02 -1b82: d6 04 fe mov $fe04+y,a -1b85: 3f ba 1a call $1aba -1b88: d5 c3 05 mov $05c3+x,a -1b8b: eb 02 mov y,$02 -1b8d: e8 00 mov a,#$00 -1b8f: d6 04 fc mov $fc04+y,a -1b92: ae pop a -1b93: d4 9e mov $9e+x,a -1b95: ae pop a -1b96: d4 8a mov $8a+x,a -1b98: 5f a5 18 jmp $18a5 - -1b9b: eb 02 mov y,$02 -1b9d: f6 68 fc mov a,$fc68+y -1ba0: bc inc a -1ba1: d6 68 fc mov $fc68+y,a -1ba4: 8d 04 mov y,#$04 -1ba6: f7 00 mov a,($00)+y -1ba8: f0 07 beq $1bb1 -1baa: eb 02 mov y,$02 -1bac: 76 68 fc cmp a,$fc68+y -1baf: f0 0f beq $1bc0 -1bb1: 8d 00 mov y,#$00 -1bb3: f7 00 mov a,($00)+y -1bb5: d4 8a mov $8a+x,a -1bb7: 8d 01 mov y,#$01 -1bb9: f7 00 mov a,($00)+y -1bbb: d4 9e mov $9e+x,a -1bbd: 5f cc 18 jmp $18cc - -1bc0: f5 3b 06 mov a,$063b+x -1bc3: 80 setc -1bc4: 8d 05 mov y,#$05 -1bc6: b7 00 sbc a,($00)+y -1bc8: d5 3b 06 mov $063b+x,a -1bcb: f5 4f 06 mov a,$064f+x -1bce: 8d 06 mov y,#$06 -1bd0: b7 00 sbc a,($00)+y -1bd2: d5 4f 06 mov $064f+x,a -1bd5: eb 02 mov y,$02 -1bd7: f6 04 fe mov a,$fe04+y -1bda: d5 c3 05 mov $05c3+x,a -1bdd: e4 00 mov a,$00 -1bdf: 60 clrc -1be0: 88 0a adc a,#$0a -1be2: d4 8a mov $8a+x,a -1be4: e4 01 mov a,$01 -1be6: 88 00 adc a,#$00 -1be8: d4 9e mov $9e+x,a -1bea: 8d 09 mov y,#$09 -1bec: f7 00 mov a,($00)+y -1bee: 60 clrc -1bef: 94 8a adc a,$8a+x -1bf1: d4 8a mov $8a+x,a -1bf3: f4 9e mov a,$9e+x -1bf5: 88 00 adc a,#$00 -1bf7: d4 9e mov $9e+x,a -1bf9: f5 4e 02 mov a,$024e+x -1bfc: bc inc a -1bfd: d5 4e 02 mov $024e+x,a -1c00: 5f a5 18 jmp $18a5 - -; vcmd ea - set release -1c03: 3f 0a 18 call $180a -1c06: 2f 03 bra $1c0b - -; vcmd f9 - go to loop -1c08: 3f 25 1d call $1d25 -1c0b: 5f a5 18 jmp $18a5 - -; vcmd fa - set tempo -1c0e: 3f 62 1a call $1a62 -1c11: c4 c9 mov $c9,a -1c13: 2f f6 bra $1c0b - -; vcmd fb - set panning -1c15: 3f 62 1a call $1a62 -1c18: d5 9e 02 mov $029e+x,a -1c1b: 2f ee bra $1c0b - -; vcmd e0 - set hardware detune -1c1d: 3f 62 1a call $1a62 -1c20: d5 ee 02 mov $02ee+x,a -1c23: 3f 62 1a call $1a62 -1c26: d5 02 03 mov $0302+x,a -1c29: 2f e0 bra $1c0b - -; vcmd f3 - set priority -1c2b: 3f 62 1a call $1a62 -1c2e: d5 b2 02 mov $02b2+x,a -1c31: c2 07 set6 $07 -1c33: 2f d6 bra $1c0b - -; vcmd ed - set velocity -1c35: 3f 62 1a call $1a62 -1c38: d5 8a 02 mov $028a+x,a -1c3b: 2f ce bra $1c0b - -; vcmd fc - set no retrigger -1c3d: 62 07 set3 $07 -1c3f: 2f ca bra $1c0b - -; vcmd f4 - set tied note -1c41: e2 07 set7 $07 -1c43: 2f c6 bra $1c0b -1c45: e8 02 mov a,#$02 -1c47: d5 66 03 mov $0366+x,a -1c4a: 6f ret - -1c4b: e8 08 mov a,#$08 -1c4d: d5 66 03 mov $0366+x,a -1c50: 6f ret - -1c51: 78 80 c8 cmp $c8,#$80 -1c54: 90 08 bcc $1c5e -1c56: 60 clrc -1c57: 84 c8 adc a,$c8 -1c59: 10 09 bpl $1c64 -1c5b: e8 00 mov a,#$00 -1c5d: 6f ret - -1c5e: 84 c8 adc a,$c8 -1c60: 10 02 bpl $1c64 -1c62: e8 7f mov a,#$7f -1c64: 6f ret - -; vcmd e1 - set amplitude articulation -1c65: 3f 62 1a call $1a62 -1c68: d5 16 03 mov $0316+x,a -1c6b: 2f 9e bra $1c0b - -; vcmd 00-0f - extended melody vectors -1c6d: 3f 62 1a call $1a62 -1c70: d5 62 02 mov $0262+x,a -1c73: 2f 96 bra $1c0b - -; vcmd e2 - set stereo articulation -1c75: 3f 62 1a call $1a62 -1c78: d5 52 03 mov $0352+x,a -1c7b: 2f 8e bra $1c0b - -; vcmd e4 - set pitch articulation -1c7d: 3f 62 1a call $1a62 -1c80: d5 2a 03 mov $032a+x,a -1c83: 2f f6 bra $1c7b - -; vcmd e3 - set tone articulation -1c85: 3f 62 1a call $1a62 -1c88: d5 3e 03 mov $033e+x,a -1c8b: 2f ee bra $1c7b - -1c8d: 3f 46 1d call $1d46 -1c90: 2f e9 bra $1c7b - -; vcmd f7 - set detune -1c92: 3f 62 1a call $1a62 -1c95: d5 3b 06 mov $063b+x,a -1c98: 3f 62 1a call $1a62 -1c9b: d5 4f 06 mov $064f+x,a -1c9e: 2f db bra $1c7b - -; vcmd table (e0-ff) -1ca0: dw $1c1d ; e0 - set hardware detune -1ca2: dw $1c65 ; e1 - set amplitude articulation -1ca4: dw $1c75 ; e2 - set stereo articulation -1ca6: dw $1c85 ; e3 - set tone articulation -1ca8: dw $1c7d ; e4 - set pitch articulation -1caa: dw $1a8e ; e5 - set channel allocation -1cac: dw $1a82 ; e6 - set standard allocation -1cae: dw $1c8d ; e7 - reset track -1cb0: dw $0000 ; e8 - redirect track (disabled) -1cb2: dw $1a7b ; e9 - set effects mask -1cb4: dw $1c03 ; ea - set release -1cb6: dw $17b4 ; eb - set pitch bend state -1cb8: dw $17b1 ; ec - set pitch bend state and release -1cba: dw $1c35 ; ed - set velocity -1cbc: dw $1ce2 ; ee - extended command -1cbe: dw $1910 ; ef - play absolute note -1cc0: dw $1aa2 ; f0 - end of sequence -1cc2: dw $1aaf ; f1 - delta expression -1cc4: dw $1adb ; f2 - absolute expression -1cc6: dw $1c2b ; f3 - set priority -1cc8: dw $1c41 ; f4 - set tied note -1cca: dw $1b01 ; f5 - set sound (instrument) -1ccc: dw $1b3c ; f6 - play phrase -1cce: dw $1c92 ; f7 - set detune -1cd0: dw $1af5 ; f8 - set time (delay) - 32 -1cd2: dw $1c08 ; f9 - go to loop -1cd4: dw $1c0e ; fa - set tempo -1cd6: dw $1c15 ; fb - set panning -1cd8: dw $1c3d ; fc - set no retrigger -1cda: dw $1af1 ; fd - set time (delay) - 64 -1cdc: dw $1af9 ; fe - set time (delay) - 128 -1cde: dw $1afd ; ff - set time (delay) - 256 -1ce0: dw $1c6d ; 00-0f - extended melody vectors - -; vcmd ee - extended command -1ce2: 3f 62 1a call $1a62 -1ce5: dd mov a,y -1ce6: 1c asl a -1ce7: fd mov y,a -1ce8: f6 e0 1c mov a,$1ce0+y -1ceb: c5 f7 1c mov $1cf7,a -1cee: f6 e1 1c mov a,$1ce1+y -1cf1: c5 f8 1c mov $1cf8,a -1cf4: eb 3a mov y,$3a -1cf6: 5f f6 1c jmp $1cf6 - -1cf9: 2d push a ; start song -1cfa: 3f 40 0d call $0d40 -1cfd: ae pop a -1cfe: 92 07 clr4 $07 -1d00: 8d 1a mov y,#$1a -1d02: 3f 63 10 call $1063 -1d05: da 88 movw $88,ya -1d07: 8d 00 mov y,#$00 -1d09: f7 88 mov a,($88)+y -1d0b: c4 83 mov $83,a -1d0d: c4 84 mov $84,a -1d0f: f0 13 beq $1d24 -1d11: cb 86 mov $86,y -1d13: 3f 25 1d call $1d25 -1d16: ab 86 inc $86 -1d18: e8 00 mov a,#$00 -1d1a: f8 86 mov x,$86 -1d1c: d5 7a 03 mov $037a+x,a -1d1f: 69 83 86 cmp ($86),($83) -1d22: d0 ef bne $1d13 -1d24: 6f ret - -1d25: eb 86 mov y,$86 -1d27: fc inc y -1d28: f7 88 mov a,($88)+y -1d2a: 8d 10 mov y,#$10 -1d2c: 3f 63 10 call $1063 -1d2f: f8 86 mov x,$86 -1d31: d4 8a mov $8a+x,a -1d33: dd mov a,y -1d34: d4 9e mov $9e+x,a -1d36: e8 ff mov a,#$ff -1d38: c4 ca mov $ca,a -1d3a: c4 0a mov $0a,a -1d3c: e8 05 mov a,#$05 -1d3e: d5 4e 02 mov $024e+x,a -1d41: e8 04 mov a,#$04 -1d43: d5 66 03 mov $0366+x,a -1d46: 72 07 clr3 $07 -1d48: f2 07 clr7 $07 -1d4a: f8 86 mov x,$86 -1d4c: e8 08 mov a,#$08 -1d4e: d5 eb 05 mov $05eb+x,a -1d51: 7d mov a,x -1d52: d5 ff 05 mov $05ff+x,a -1d55: e8 00 mov a,#$00 -1d57: d5 76 02 mov $0276+x,a -1d5a: d5 c6 02 mov $02c6+x,a -1d5d: d5 da 02 mov $02da+x,a -1d60: d5 3b 06 mov $063b+x,a -1d63: d5 4f 06 mov $064f+x,a -1d66: d5 ee 02 mov $02ee+x,a -1d69: d5 02 03 mov $0302+x,a -1d6c: d5 16 03 mov $0316+x,a -1d6f: d5 62 02 mov $0262+x,a -1d72: d5 52 03 mov $0352+x,a -1d75: d5 3e 03 mov $033e+x,a -1d78: d5 2a 03 mov $032a+x,a -1d7b: d5 9e 02 mov $029e+x,a -1d7e: 9c dec a -1d7f: d5 27 06 mov $0627+x,a -1d82: d5 8a 02 mov $028a+x,a -1d85: e8 40 mov a,#$40 -1d87: d5 b2 02 mov $02b2+x,a -1d8a: e8 7f mov a,#$7f -1d8c: d5 c3 05 mov $05c3+x,a -1d8f: c2 07 set6 $07 -1d91: 8f 6a 00 mov $00,#$6a -1d94: 8f 00 01 mov $01,#$00 -1d97: 7d mov a,x -1d98: 08 80 or a,#$80 -1d9a: 8d 00 mov y,#$00 -1d9c: 5f dd 1d jmp $1ddd - -1d9f: c4 59 mov $59,a -1da1: 6f ret - -1da2: c4 5a mov $5a,a -1da4: 6f ret - -1da5: da 5b movw $5b,ya -1da7: 6f ret - -1da8: da 2e movw $2e,ya -1daa: 6f ret - -1dab: c4 fb mov $fb,a -1dad: 6f ret - -1dae: 28 7f and a,#$7f -1db0: c5 3e 02 mov $023e,a -1db3: 6f ret - -1db4: 12 08 clr0 $08 -1db6: c5 06 01 mov $0106,a -1db9: 68 ff cmp a,#$ff -1dbb: f0 02 beq $1dbf -1dbd: 02 08 set0 $08 -1dbf: 6f ret - -1dc0: c5 3f 02 mov $023f,a -1dc3: 6f ret - -1dc4: c5 40 02 mov $0240,a -1dc7: 6f ret - -1dc8: c5 41 02 mov $0241,a -1dcb: cc 42 02 mov $0242,y -1dce: 6f ret - -1dcf: 8f 9a 00 mov $00,#$9a -1dd2: 8f 03 01 mov $01,#$03 -1dd5: 2f 06 bra $1ddd - -1dd7: 8f 92 00 mov $00,#$92 -1dda: 8f 03 01 mov $01,#$03 -1ddd: c4 3a mov $3a,a -1ddf: dd mov a,y -1de0: 5d mov x,a -1de1: e8 07 mov a,#$07 -1de3: fd mov y,a -1de4: f6 cf 00 mov a,$00cf+y -1de7: 2e 3a 03 cbne $3a,$1ded -1dea: 7d mov a,x -1deb: d7 00 mov ($00)+y,a -1ded: dc dec y -1dee: 10 f4 bpl $1de4 -1df0: 6f ret - -1df1: 28 7f and a,#$7f -1df3: c4 3a mov $3a,a -1df5: cd 07 mov x,#$07 -1df7: f4 cf mov a,$cf+x -1df9: 2e 3a 08 cbne $3a,$1e04 -1dfc: f5 46 02 mov a,$0246+x -1dff: 08 03 or a,#$03 -1e01: d5 46 02 mov $0246+x,a -1e04: 1d dec x -1e05: 10 f0 bpl $1df7 -1e07: 6f ret - -1e08: 8f d7 00 mov $00,#$d7 -1e0b: 8f 00 01 mov $01,#$00 -1e0e: c4 3a mov $3a,a -1e10: e8 0f mov a,#$0f -1e12: fd mov y,a -1e13: e8 07 mov a,#$07 -1e15: 5d mov x,a -1e16: f4 cf mov a,$cf+x -1e18: 2e 3a 0a cbne $3a,$1e25 -1e1b: e4 2f mov a,$2f -1e1d: d7 00 mov ($00)+y,a -1e1f: dc dec y -1e20: e4 2e mov a,$2e -1e22: d7 00 mov ($00)+y,a -1e24: fc inc y -1e25: dc dec y -1e26: dc dec y -1e27: 1d dec x -1e28: 10 ec bpl $1e16 -1e2a: 6f ret - -1e2b: 5d mov x,a -1e2c: e8 01 mov a,#$01 -1e2e: 15 7a 03 or a,$037a+x -1e31: d5 7a 03 mov $037a+x,a -1e34: 6f ret - -1e35: 5d mov x,a -1e36: e8 fe mov a,#$fe -1e38: 35 7a 03 and a,$037a+x -1e3b: 2f f4 bra $1e31 - -1e3d: dw $1773 -1e3e: dw $17a3 -1e40: dw $18a5 -1e42: dw $183a -1e44: dw $179b -1e46: dw $0cd2 -1e48: dw $0d03 -1e4a: dw $0d0b -1e4c: dw $0cf7 -1e4e: dw $1df1 -1e50: dw $0000 -1e52: dw $07dd -1e54: dw $0d89 -1e56: dw $0ce5 -1e58: dw $0cdf -1e5a: dw $0cdb -1e5c: dw $0000 -1e5e: dw $0d40 -1e60: dw $0d42 -1e62: dw $0000 -1e64: dw $0000 -1e66: dw $0000 -1e68: dw $0d8e -1e6a: dw $0d93 -1e6c: dw $1d9f -1e6e: dw $1dab -1e70: dw $1da5 -1e72: dw $1da2 -1e74: dw $1dc8 -1e76: dw $1dae -1e78: dw $1dc0 -1e7a: dw $1dd7 -1e7c: dw $1da8 -1e7e: dw $1e08 -1e80: dw $1dc4 -1e82: dw $1dcf -1e84: dw $1db4 -1e86: dw $1e2b -1e88: dw $1e35 - -; uncompiled source code -1e8b: db $0a,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$62,$72,$61,$20,$54,$4e,$4d,$65,$6c,$0d,$0a,$0d,$0a,$4d,$65,$6c,$6f,$64,$79,$5f,$53,$65,$74,$53,$74,$65,$72,$65,$6f,$41,$72,$74,$0d,$0a,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$63,$61,$6c,$6c,$20,$20,$46,$65,$74,$63,$68,$5f,$4d,$65,$6c,$20 \ No newline at end of file From 6cb8299b2f74e19c8e6dcc0d49e07cbf48c89afc Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:50:24 -0700 Subject: [PATCH 017/116] Delete Super Star Wars - Return of the Jedi.s --- Super Star Wars - Return of the Jedi.s | 2634 ------------------------ 1 file changed, 2634 deletions(-) delete mode 100644 Super Star Wars - Return of the Jedi.s diff --git a/Super Star Wars - Return of the Jedi.s b/Super Star Wars - Return of the Jedi.s deleted file mode 100644 index 1e1c52ff..00000000 --- a/Super Star Wars - Return of the Jedi.s +++ /dev/null @@ -1,2634 +0,0 @@ -0700: 20 clrp -0701: cd ff mov x,#$ff ; set stack pointer -0703: bd mov sp,x -0704: 8f a0 fa mov $fa,#$a0 ; stop all timers -0707: 8f a0 fb mov $fb,#$a0 -070a: 8f 20 fc mov $fc,#$20 -070d: 8f 87 f1 mov $f1,#$87 ; clear COM ports -0710: 3f 80 10 call $1080 ; initialize all sound -0713: 8f 00 25 mov $25,#$00 ; install permanent pointer to the wave source dir -0716: 8f 1f 26 mov $26,#$1f -0719: 8f 01 f6 mov $f6,#$01 -071c: 62 08 set3 $08 -071e: 3f 99 0b call $0b99 -0721: 3f 60 0b call $0b60 -0724: 33 07 f7 bbc1 $07,$071e -0727: 8d 10 mov y,#$10 -0729: 3f 4a 07 call $074a -072c: 83 07 12 bbs4 $07,$0741 -072f: e4 fe mov a,$fe -0731: f0 0e beq $0741 -0733: e4 cb mov a,$cb -0735: f0 07 beq $073e -0737: 60 clrc -0738: 84 cc adc a,$cc -073a: c4 cc mov $cc,a -073c: 90 03 bcc $0741 -073e: 3f 0e 17 call $170e -0741: e4 fd mov a,$fd -0743: f0 d9 beq $071e -0745: 3f 2d 08 call $082d -0748: 2f d4 bra $071e -074a: e4 ff mov a,$ff -074c: d0 03 bne $0751 -074e: e8 01 mov a,#$01 -0750: 6f ret - -0751: cb 3c mov $3c,y -0753: 8f 00 3b mov $3b,#$00 -0756: cd 14 mov x,#$14 -0758: e4 f6 mov a,$f6 -075a: f0 03 beq $075f -075c: 3f 99 0b call $0b99 -075f: eb 3c mov y,$3c -0761: f5 fc 07 mov a,$07fc+x -0764: c4 f2 mov $f2,a -0766: f5 28 02 mov a,$0228+x -0769: fa f3 3d mov ($3d),($f3) -076c: 64 3d cmp a,$3d -076e: f0 0f beq $077f -0770: b0 09 bcs $077b -0772: 8b 3d dec $3d -0774: dc dec y -0775: d0 f5 bne $076c -0777: ab 3b inc $3b -0779: 2f 04 bra $077f -077b: ab 3d inc $3d -077d: 2f f5 bra $0774 -077f: fa 3d f3 mov ($f3),($3d) -0782: 1d dec x -0783: 10 d3 bpl $0758 -0785: e4 3b mov a,$3b -0787: 6f ret - -0788: e2 08 set7 $08 -078a: 2f 02 bra $078e -078c: f2 08 clr7 $08 -078e: 72 08 clr3 $08 -0790: 8d 80 mov y,#$80 -0792: 3f 24 0d call $0d24 -0795: 3f ce 10 call $10ce -0798: 8f 6c f2 mov $f2,#$6c -079b: 8f 3f f3 mov $f3,#$3f -079e: e3 08 0c bbs7 $08,$07ad -07a1: cd 00 mov x,#$00 -07a3: f5 80 fe mov a,$fe80+x -07a6: af mov (x)+,a -07a7: c8 61 cmp x,#$61 -07a9: 90 f8 bcc $07a3 -07ab: 4f c0 pcall $c0 -07ad: 5f 00 07 jmp $0700 - -; gain tables -07b0: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 -07c6: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 - -; DSP registers: VxENVX -07dc: db $08,$18,$28,$38,$48,$58,$68,$78 -; DSP registers: VxGAIN -07e4: db $07,$17,$27,$37,$47,$57,$67,$77 -; DSP registers: VxSCRN (select sample) -07ec: db $04,$14,$24,$34,$44,$54,$64,$74 -; DSP registers: VxPITCHL -07f4: db $02,$12,$22,$32,$42,$52,$62,$72 -; DSP registers: VxVOLL -07fc: db $00,$10,$20,$30,$40,$50,$60,$70,$01,$11,$21,$31,$41,$51,$61,$71,$2c,$3c,$0d,$0c,$1c - -; voice numbers and bits for clearing those void bits -0811: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f - -; echo poke registers -0821: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f - -082d: 3f 99 0b call $0b99 ; que command -0830: 8f 00 45 mov $45,#$00 ; reset sample flags -0833: 8f 00 57 mov $57,#$00 -0836: 8f 7c f2 mov $f2,#$7c -0839: e4 f3 mov a,$f3 -083b: 24 5a and a,$5a -083d: c4 54 mov $54,a -083f: 8f 00 f3 mov $f3,#$00 -0842: cd 07 mov x,#$07 ; find out all channels changing waves -0844: 3f 99 0b call $0b99 ; (to restart them, starting with 7) -0847: d8 29 mov $29,x -0849: 7d mov a,x -084a: 60 clrc -084b: 88 10 adc a,#$10 -084d: c4 2e mov $2e,a -084f: f5 11 08 mov a,$0811+x -0852: c4 46 mov $46,a -0854: 48 ff eor a,#$ff -0856: c4 47 mov $47,a -0858: f4 64 mov a,$64+x -085a: c4 49 mov $49,a -085c: a2 08 set5 $08 -085e: 23 49 06 bbs1 $49,$0867 -0861: f5 ec fc mov a,$fcec+x -0864: 5f 75 08 jmp $0875 - -0867: eb 2e mov y,$2e -0869: f6 e3 04 mov a,$04e3+y -086c: d0 02 bne $0870 -086e: b2 08 clr5 $08 -0870: 3f 5a 12 call $125a -0873: f8 29 mov x,$29 -0875: 75 f4 fc cmp a,$fcf4+x -0878: d0 0d bne $0887 -087a: 3f 18 14 call $1418 -087d: e4 5f mov a,$5f -087f: 24 58 and a,$58 -0881: 24 46 and a,$46 -0883: d0 43 bne $08c8 -0885: 2f 44 bra $08cb -0887: d5 f4 fc mov $fcf4+x,a -088a: 09 46 45 or ($45),($46) -088d: 3f 18 14 call $1418 -0890: 7d mov a,x -0891: 1c asl a -0892: 5d mov x,a -0893: e5 04 01 mov a,$0104 -0896: d5 4b 01 mov $014b+x,a -0899: e5 05 01 mov a,$0105 -089c: d5 4c 01 mov $014c+x,a -089f: f8 29 mov x,$29 -08a1: e4 60 mov a,$60 -08a3: 28 20 and a,#$20 -08a5: f0 05 beq $08ac -08a7: 29 47 55 and ($55),($47) -08aa: 2f 03 bra $08af -08ac: 09 46 55 or ($55),($46) -08af: b3 08 0b bbc5 $08,$08bd -08b2: e4 60 mov a,$60 -08b4: 28 40 and a,#$40 -08b6: f0 05 beq $08bd -08b8: 09 46 5f or ($5f),($46) -08bb: 2f 03 bra $08c0 -08bd: 29 47 5f and ($5f),($47) -08c0: e4 5f mov a,$5f -08c2: 04 58 or a,$58 -08c4: 24 46 and a,$46 -08c6: f0 03 beq $08cb -08c8: 09 46 57 or ($57),($46) -08cb: 1d dec x -08cc: 30 03 bmi $08d1 -08ce: 5f 44 08 jmp $0844 - -08d1: e4 58 mov a,$58 -08d3: 24 55 and a,$55 -08d5: 04 56 or a,$56 -08d7: c4 56 mov $56,a -08d9: 24 56 and a,$56 -08db: 04 57 or a,$57 -08dd: c4 59 mov $59,a -08df: 8f 5c f2 mov $f2,#$5c -08e2: c4 f3 mov $f3,a -08e4: cd 07 mov x,#$07 -08e6: 3f 99 0b call $0b99 -08e9: d8 29 mov $29,x -08eb: f5 11 08 mov a,$0811+x -08ee: c4 46 mov $46,a -08f0: 7d mov a,x -08f1: 60 clrc -08f2: 88 18 adc a,#$18 -08f4: c4 2e mov $2e,a -08f6: e5 a2 03 mov a,$03a2 -08f9: d0 12 bne $090d -08fb: f4 64 mov a,$64+x -08fd: c4 49 mov $49,a -08ff: 63 49 06 bbs3 $49,$0908 -0902: f5 e4 fc mov a,$fce4+x -0905: 5f 0d 09 jmp $090d - -0908: 3f 5a 12 call $125a -090b: f8 29 mov x,$29 -090d: 60 clrc -090e: 95 9a 03 adc a,$039a+x -0911: 30 06 bmi $0919 -0913: 70 04 bvs $0919 -0915: 68 65 cmp a,#$65 -0917: 30 0b bmi $0924 -0919: f5 9a 03 mov a,$039a+x -091c: 30 04 bmi $0922 -091e: e8 64 mov a,#$64 -0920: 2f 02 bra $0924 -0922: e8 00 mov a,#$00 -0924: fd mov y,a -0925: f5 43 01 mov a,$0143+x -0928: c4 3d mov $3d,a -092a: cf mul ya -092b: cd 64 mov x,#$64 -092d: 9e div ya,x -092e: f8 29 mov x,$29 -0930: 73 49 14 bbc3 $49,$0947 -0933: c4 3b mov $3b,a -0935: 6d push y -0936: eb 2e mov y,$2e -0938: f6 c3 03 mov a,$03c3+y -093b: ee pop y -093c: d0 04 bne $0942 -093e: e4 3b mov a,$3b -0940: 2f 05 bra $0947 -0942: e4 3d mov a,$3d -0944: 80 setc -0945: a4 3b sbc a,$3b -0947: c4 3b mov $3b,a -0949: d5 28 02 mov $0228+x,a -094c: e4 3d mov a,$3d -094e: 80 setc -094f: a4 3b sbc a,$3b -0951: d5 30 02 mov $0230+x,a -0954: 1d dec x -0955: 30 03 bmi $095a -0957: 5f e6 08 jmp $08e6 - -095a: cd 07 mov x,#$07 ; process pitch envelopes (start with ch 7) -095c: 3f 99 0b call $0b99 -095f: d8 29 mov $29,x -0961: 7d mov a,x -0962: 60 clrc -0963: 88 08 adc a,#$08 -0965: c4 2e mov $2e,a -0967: f4 64 mov a,$64+x -0969: c4 49 mov $49,a -096b: 7d mov a,x -096c: 1c asl a -096d: 5d mov x,a -096e: f5 d5 fc mov a,$fcd5+x -0971: c4 44 mov $44,a -0973: f5 d4 fc mov a,$fcd4+x -0976: c4 43 mov $43,a -0978: 53 49 15 bbc2 $49,$0990 -097b: 4d push x -097c: 42 08 set2 $08 -097e: 3f 5a 12 call $125a -0981: 52 08 clr2 $08 -0983: ce pop x -0984: 7a 43 addw ya,$43 -0986: 80 setc -0987: a8 b0 sbc a,#$b0 -0989: c4 43 mov $43,a -098b: dd mov a,y -098c: a8 04 sbc a,#$04 -098e: c4 44 mov $44,a -0990: f5 4c 01 mov a,$014c+x -0993: fd mov y,a -0994: f5 4b 01 mov a,$014b+x -0997: 7a 43 addw ya,$43 -0999: da 3b movw $3b,ya -099b: fb d9 mov y,$d9+x -099d: f4 d8 mov a,$d8+x -099f: 7a 3b addw ya,$3b -09a1: c3 49 03 bbs6 $49,$09a7 -09a4: 3f 9a 14 call $149a ; translate note to frequency -09a7: da 3b movw $3b,ya ; add in hardware tuning -09a9: e4 29 mov a,$29 ; word addressing -09ab: 1c asl a -09ac: 5d mov x,a -09ad: f5 5c 01 mov a,$015c+x -09b0: fd mov y,a -09b1: f5 5b 01 mov a,$015b+x -09b4: 7a 3b addw ya,$3b -09b6: f8 29 mov x,$29 -09b8: d5 33 01 mov $0133+x,a -09bb: dd mov a,y -09bc: d5 3b 01 mov $013b+x,a -09bf: 1d dec x -09c0: 10 9a bpl $095c -09c2: 8f 5c f2 mov $f2,#$5c -09c5: 8f 00 f3 mov $f3,#$00 -09c8: cd 07 mov x,#$07 -09ca: 3f 99 0b call $0b99 -09cd: d8 29 mov $29,x -09cf: 7d mov a,x -09d0: 60 clrc -09d1: 88 00 adc a,#$00 -09d3: c4 2e mov $2e,a -09d5: f5 11 08 mov a,$0811+x -09d8: c4 46 mov $46,a -09da: 48 ff eor a,#$ff -09dc: c4 47 mov $47,a -09de: f4 64 mov a,$64+x -09e0: c4 49 mov $49,a -09e2: 03 49 07 bbs0 $49,$09ec -09e5: f5 23 01 mov a,$0123+x -09e8: fd mov y,a -09e9: 5f f9 09 jmp $09f9 - -09ec: 3f 5a 12 call $125a -09ef: fd mov y,a -09f0: f8 29 mov x,$29 -09f2: b3 07 04 bbc5 $07,$09f9 -09f5: e8 00 mov a,#$00 -09f7: d4 6c mov $6c+x,a -09f9: e8 80 mov a,#$80 -09fb: de 6c 04 cbne $6c+x,$0a02 -09fe: e4 5c mov a,$5c -0a00: 2f 02 bra $0a04 -0a02: e4 5b mov a,$5b -0a04: cf mul ya -0a05: f5 92 03 mov a,$0392+x -0a08: cf mul ya -0a09: dd mov a,y -0a0a: d5 2b 01 mov $012b+x,a -0a0d: 8f c0 3a mov $3a,#$c0 -0a10: f5 dc 07 mov a,$07dc+x -0a13: c4 f2 mov $f2,a -0a15: dd mov a,y -0a16: 80 setc -0a17: a4 f3 sbc a,$f3 -0a19: b0 06 bcs $0a21 -0a1b: 8f 80 3a mov $3a,#$80 -0a1e: 48 ff eor a,#$ff -0a20: bc inc a -0a21: c4 3f mov $3f,a -0a23: e4 46 mov a,$46 -0a25: 24 53 and a,$53 -0a27: d0 06 bne $0a2f -0a29: e4 52 mov a,$52 -0a2b: 24 46 and a,$46 -0a2d: d0 23 bne $0a52 -0a2f: e4 3f mov a,$3f -0a31: 5c lsr a -0a32: d0 08 bne $0a3c -0a34: ad 00 cmp y,#$00 -0a36: d0 04 bne $0a3c -0a38: e8 82 mov a,#$82 -0a3a: 2f 0e bra $0a4a -0a3c: 8d 15 mov y,#$15 -0a3e: 76 b0 07 cmp a,$07b0+y -0a41: 90 02 bcc $0a45 -0a43: fe f9 dbnz y,$0a3e -0a45: f6 c6 07 mov a,$07c6+y -0a48: 04 3a or a,$3a -0a4a: 75 cc fc cmp a,$fccc+x -0a4d: f0 41 beq $0a90 -0a4f: fd mov y,a -0a50: 2f 17 bra $0a69 -0a52: 8f 00 3a mov $3a,#$00 -0a55: e4 3f mov a,$3f -0a57: 68 60 cmp a,#$60 -0a59: 90 0e bcc $0a69 -0a5b: ad 60 cmp y,#$60 -0a5d: 90 04 bcc $0a63 -0a5f: 8d df mov y,#$df -0a61: 2f 06 bra $0a69 -0a63: ad 20 cmp y,#$20 -0a65: b0 02 bcs $0a69 -0a67: 8d 9e mov y,#$9e -0a69: 29 47 52 and ($52),($47) -0a6c: f5 fc 07 mov a,$07fc+x -0a6f: c4 f2 mov $f2,a -0a71: f5 28 02 mov a,$0228+x -0a74: 2d push a -0a75: e4 46 mov a,$46 -0a77: 24 53 and a,$53 -0a79: ae pop a -0a7a: d0 09 bne $0a85 -0a7c: c4 f3 mov $f3,a -0a7e: ab f2 inc $f2 -0a80: f5 30 02 mov a,$0230+x -0a83: c4 f3 mov $f3,a -0a85: f5 e4 07 mov a,$07e4+x -0a88: c4 f2 mov $f2,a -0a8a: cb f3 mov $f3,y -0a8c: dd mov a,y -0a8d: d5 cc fc mov $fccc+x,a -0a90: f5 f4 07 mov a,$07f4+x -0a93: c4 f2 mov $f2,a -0a95: fd mov y,a -0a96: f5 33 01 mov a,$0133+x -0a99: c4 f3 mov $f3,a -0a9b: fc inc y -0a9c: cb f2 mov $f2,y -0a9e: f5 3b 01 mov a,$013b+x -0aa1: c4 f3 mov $f3,a -0aa3: 1d dec x -0aa4: 30 03 bmi $0aa9 -0aa6: 5f ca 09 jmp $09ca - -0aa9: 8f 4c f2 mov $f2,#$4c -0aac: fa 59 f3 mov ($f3),($59) -0aaf: e4 59 mov a,$59 -0ab1: 48 ff eor a,#$ff -0ab3: c4 5a mov $5a,a -0ab5: 29 5a 54 and ($54),($5a) -0ab8: 29 5a 56 and ($56),($5a) -0abb: 8f 00 58 mov $58,#$00 -0abe: 3f 99 0b call $0b99 -0ac1: 8d 07 mov y,#$07 -0ac3: cd 0e mov x,#$0e -0ac5: 3f 99 0b call $0b99 -0ac8: f6 6c 00 mov a,$006c+y -0acb: f0 31 beq $0afe -0acd: f6 64 00 mov a,$0064+y -0ad0: c4 49 mov $49,a -0ad2: f3 49 07 bbc7 $49,$0adc -0ad5: f6 11 08 mov a,$0811+y -0ad8: 24 54 and a,$54 -0ada: d0 1d bne $0af9 -0adc: f6 6c 00 mov a,$006c+y -0adf: 68 80 cmp a,#$80 -0ae1: d0 1b bne $0afe -0ae3: f6 46 02 mov a,$0246+y -0ae6: 28 02 and a,#$02 -0ae8: d0 14 bne $0afe -0aea: 9b 75 dec $75+x -0aec: f4 75 mov a,$75+x -0aee: 2e 05 02 cbne $05,$0af3 -0af1: 9b 76 dec $76+x -0af3: f4 75 mov a,$75+x -0af5: 14 76 or a,$76+x -0af7: d0 05 bne $0afe -0af9: e8 80 mov a,#$80 -0afb: 3f 39 17 call $1739 -0afe: 1d dec x -0aff: 1d dec x -0b00: dc dec y -0b01: 10 c2 bpl $0ac5 -0b03: 3f 99 0b call $0b99 -0b06: ec 43 02 mov y,$0243 -0b09: f0 54 beq $0b5f -0b0b: 6e cd 51 dbnz $cd,$0b5f -0b0e: cb cd mov $cd,y -0b10: e5 3b 02 mov a,$023b -0b13: f8 ce mov x,$ce -0b15: 30 0d bmi $0b24 -0b17: 60 clrc -0b18: 84 cf adc a,$cf -0b1a: b0 04 bcs $0b20 -0b1c: 68 7f cmp a,#$7f -0b1e: 90 12 bcc $0b32 -0b20: e8 7f mov a,#$7f -0b22: 2f 09 bra $0b2d -0b24: 80 setc -0b25: a4 cf sbc a,$cf -0b27: f0 04 beq $0b2d -0b29: b0 07 bcs $0b32 -0b2b: e8 00 mov a,#$00 -0b2d: 8d 00 mov y,#$00 -0b2f: cc 43 02 mov $0243,y -0b32: 5d mov x,a -0b33: 65 44 02 cmp a,$0244 -0b36: 90 03 bcc $0b3b -0b38: e5 44 02 mov a,$0244 -0b3b: c5 38 02 mov $0238,a -0b3e: 7d mov a,x -0b3f: c5 3b 02 mov $023b,a -0b42: c5 3c 02 mov $023c,a -0b45: 65 45 02 cmp a,$0245 -0b48: 90 03 bcc $0b4d -0b4a: e5 45 02 mov a,$0245 -0b4d: c5 39 02 mov $0239,a -0b50: e5 43 02 mov a,$0243 -0b53: d0 0a bne $0b5f -0b55: aa 07 40 mov1 c,$0007,2 -0b58: 90 05 bcc $0b5f -0b5a: 8d 80 mov y,#$80 -0b5c: 5f 24 0d jmp $0d24 - -0b5f: 6f ret - -0b60: 32 08 clr1 $08 -0b62: e4 e8 mov a,$e8 -0b64: f0 2f beq $0b95 -0b66: 9c dec a -0b67: c4 e8 mov $e8,a -0b69: f8 ea mov x,$ea -0b6b: f5 50 10 mov a,$1050+x -0b6e: 28 fe and a,#$fe -0b70: c4 31 mov $31,a -0b72: f5 60 10 mov a,$1060+x -0b75: c4 32 mov $32,a -0b77: f5 70 10 mov a,$1070+x -0b7a: c4 33 mov $33,a -0b7c: 3d inc x -0b7d: c8 10 cmp x,#$10 -0b7f: d0 02 bne $0b83 -0b81: cd 00 mov x,#$00 -0b83: d8 ea mov $ea,x -0b85: e4 31 mov a,$31 -0b87: 5d mov x,a -0b88: 28 fe and a,#$fe -0b8a: c8 49 cmp x,#$49 -0b8c: b0 07 bcs $0b95 -0b8e: e4 32 mov a,$32 -0b90: eb 33 mov y,$33 -0b92: 3f 96 0b call $0b96 -0b95: 6f ret - -0b96: 1f 43 1e jmp ($1e43+x) - -0b99: 73 08 24 bbc3 $08,$0bc0 -0b9c: 69 03 f6 cmp ($f6),($03) -0b9f: f0 1f beq $0bc0 -0ba1: 23 08 1c bbs1 $08,$0bc0 -0ba4: 2d push a -0ba5: e4 f6 mov a,$f6 -0ba7: f0 16 beq $0bbf -0ba9: 2e f6 13 cbne $f6,$0bbf -0bac: e4 f7 mov a,$f7 -0bae: 68 1e cmp a,#$1e -0bb0: d0 30 bne $0be2 -0bb2: fa f4 19 mov ($19),($f4) -0bb5: fa f5 1a mov ($1a),($f5) -0bb8: e4 f6 mov a,$f6 -0bba: 8f b7 f1 mov $f1,#$b7 -0bbd: c4 f6 mov $f6,a -0bbf: ae pop a -0bc0: 6f ret - -0bc1: 6d push y -0bc2: 4d push x -0bc3: ba f4 movw ya,$f4 -0bc5: da 1b movw $1b,ya -0bc7: f8 f6 mov x,$f6 -0bc9: 8f b7 f1 mov $f1,#$b7 -0bcc: 8d 00 mov y,#$00 -0bce: f7 1b mov a,($1b)+y -0bd0: c4 f4 mov $f4,a -0bd2: fc inc y -0bd3: f7 1b mov a,($1b)+y -0bd5: c4 f5 mov $f5,a -0bd7: fc inc y -0bd8: f7 1b mov a,($1b)+y -0bda: c4 f7 mov $f7,a -0bdc: d8 f6 mov $f6,x -0bde: ce pop x -0bdf: ee pop y -0be0: ae pop a -0be1: 6f ret - -0be2: 68 22 cmp a,#$22 -0be4: f0 59 beq $0c3f -0be6: 68 0c cmp a,#$0c -0be8: f0 d7 beq $0bc1 -0bea: 68 48 cmp a,#$48 -0bec: d0 03 bne $0bf1 -0bee: 5f 88 07 jmp $0788 - -0bf1: 68 0e cmp a,#$0e -0bf3: d0 03 bne $0bf8 -0bf5: 5f 8c 07 jmp $078c - -0bf8: 68 02 cmp a,#$02 -0bfa: d0 15 bne $0c11 -0bfc: 4d push x -0bfd: 6d push y -0bfe: e4 f6 mov a,$f6 -0c00: 8f b7 f1 mov $f1,#$b7 -0c03: 2d push a -0c04: 72 08 clr3 $08 -0c06: 3f b4 0c call $0cb4 -0c09: 62 08 set3 $08 -0c0b: ae pop a -0c0c: c4 f6 mov $f6,a -0c0e: ee pop y -0c0f: 2f 2b bra $0c3c -0c11: 4d push x -0c12: f8 e9 mov x,$e9 -0c14: d5 50 10 mov $1050+x,a -0c17: e4 f4 mov a,$f4 -0c19: d5 60 10 mov $1060+x,a -0c1c: e4 f5 mov a,$f5 -0c1e: d5 70 10 mov $1070+x,a -0c21: e4 f6 mov a,$f6 -0c23: 8f b7 f1 mov $f1,#$b7 -0c26: c4 f6 mov $f6,a -0c28: 3d inc x -0c29: c8 10 cmp x,#$10 -0c2b: d0 02 bne $0c2f -0c2d: cd 00 mov x,#$00 -0c2f: d8 e9 mov $e9,x -0c31: e4 e8 mov a,$e8 -0c33: bc inc a -0c34: c4 e8 mov $e8,a -0c36: 68 10 cmp a,#$10 -0c38: d0 02 bne $0c3c -0c3a: 22 08 set1 $08 -0c3c: ce pop x -0c3d: ae pop a -0c3e: 6f ret - -0c3f: 6d push y -0c40: 4d push x -0c41: f8 f4 mov x,$f4 -0c43: e4 f6 mov a,$f6 -0c45: 8f b7 f1 mov $f1,#$b7 -0c48: c4 f6 mov $f6,a -0c4a: 4d push x -0c4b: e4 19 mov a,$19 -0c4d: c5 76 0c mov $0c76,a -0c50: c5 7e 0c mov $0c7e,a -0c53: c5 85 0c mov $0c85,a -0c56: e4 1a mov a,$1a -0c58: c5 77 0c mov $0c77,a -0c5b: c5 7f 0c mov $0c7f,a -0c5e: c5 86 0c mov $0c86,a -0c61: e4 f6 mov a,$f6 -0c63: f0 fc beq $0c61 -0c65: 2e f6 f9 cbne $f6,$0c61 -0c68: ba f4 movw ya,$f4 -0c6a: da 1b movw $1b,ya -0c6c: ba f6 movw ya,$f6 -0c6e: 8f b7 f1 mov $f1,#$b7 -0c71: c4 f6 mov $f6,a -0c73: e4 1b mov a,$1b -0c75: d5 30 e0 mov $e030+x,a -0c78: 1d dec x -0c79: 30 0f bmi $0c8a -0c7b: e4 1c mov a,$1c -0c7d: d5 30 e0 mov $e030+x,a -0c80: 1d dec x -0c81: 30 07 bmi $0c8a -0c83: dd mov a,y -0c84: d5 30 e0 mov $e030+x,a -0c87: 1d dec x -0c88: 10 d7 bpl $0c61 -0c8a: e4 f6 mov a,$f6 -0c8c: f0 fc beq $0c8a -0c8e: 2e f6 f9 cbne $f6,$0c8a -0c91: ba f4 movw ya,$f4 -0c93: da 1b movw $1b,ya -0c95: ba f6 movw ya,$f6 -0c97: 8f b7 f1 mov $f1,#$b7 -0c9a: c4 f6 mov $f6,a -0c9c: ad 01 cmp y,#$01 -0c9e: d0 07 bne $0ca7 -0ca0: ae pop a -0ca1: ba 1b movw ya,$1b -0ca3: da 19 movw $19,ya -0ca5: 2f 09 bra $0cb0 -0ca7: ae pop a -0ca8: 8d 00 mov y,#$00 -0caa: 7a 19 addw ya,$19 -0cac: da 19 movw $19,ya -0cae: 3a 19 incw $19 -0cb0: ce pop x -0cb1: ee pop y -0cb2: ae pop a -0cb3: 6f ret - -0cb4: 3f f3 10 call $10f3 -0cb7: 3f e9 10 call $10e9 -0cba: 22 07 set1 $07 -0cbc: 6f ret - -0cbd: c5 a2 03 mov $03a2,a -0cc0: 6f ret - -0cc1: e8 00 mov a,#$00 -0cc3: c5 43 02 mov $0243,a -0cc6: 6f ret - -0cc7: cd 01 mov x,#$01 -0cc9: 52 07 clr2 $07 -0ccb: 2f 02 bra $0ccf -0ccd: cd ff mov x,#$ff -0ccf: c5 43 02 mov $0243,a -0cd2: c4 cd mov $cd,a -0cd4: cb cf mov $cf,y -0cd6: d8 ce mov $ce,x -0cd8: 6f ret - -0cd9: 2d push a -0cda: dd mov a,y -0cdb: 28 7f and a,#$7f -0cdd: c5 3e 02 mov $023e,a -0ce0: ae pop a -0ce1: 92 08 clr4 $08 -0ce3: 2f 05 bra $0cea -0ce5: cc 40 02 mov $0240,y -0ce8: 82 08 set4 $08 -0cea: 5f 7d 0d jmp $0d7d - -0ced: 3f d2 1c call $1cd2 -0cf0: e5 fc 1e mov a,$1efc -0cf3: c5 8b 06 mov $068b,a -0cf6: e5 fd 1e mov a,$1efd -0cf9: c5 8c 06 mov $068c,a -0cfc: 05 8b 06 or a,$068b -0cff: f0 20 beq $0d21 -0d01: 3f 0e 17 call $170e -0d04: e5 8b 06 mov a,$068b -0d07: 80 setc -0d08: a8 01 sbc a,#$01 -0d0a: c5 8b 06 mov $068b,a -0d0d: e5 8c 06 mov a,$068c -0d10: a8 00 sbc a,#$00 -0d12: c5 8c 06 mov $068c,a -0d15: b0 ea bcs $0d01 -0d17: cd 07 mov x,#$07 -0d19: e8 00 mov a,#$00 -0d1b: d5 43 01 mov $0143+x,a -0d1e: 1d dec x -0d1f: 10 fa bpl $0d1b -0d21: 6f ret - -0d22: 8d ff mov y,#$ff -0d24: cd 07 mov x,#$07 -0d26: ad 80 cmp y,#$80 -0d28: f0 04 beq $0d2e -0d2a: ad ff cmp y,#$ff -0d2c: d0 05 bne $0d33 -0d2e: 82 07 set4 $07 -0d30: 8f 00 86 mov $86,#$00 -0d33: c4 74 mov $74,a -0d35: ad 80 cmp y,#$80 -0d37: f0 1b beq $0d54 -0d39: f4 d0 mov a,$d0+x -0d3b: 68 ff cmp a,#$ff -0d3d: f0 30 beq $0d6f -0d3f: 68 00 cmp a,#$00 -0d41: 10 06 bpl $0d49 -0d43: ad ff cmp y,#$ff -0d45: f0 0d beq $0d54 -0d47: 2f 26 bra $0d6f -0d49: ad 00 cmp y,#$00 -0d4b: d0 07 bne $0d54 -0d4d: f5 1b 01 mov a,$011b+x -0d50: 64 74 cmp a,$74 -0d52: d0 1b bne $0d6f -0d54: f5 e4 07 mov a,$07e4+x -0d57: c4 f2 mov $f2,a -0d59: 8f 9f f3 mov $f3,#$9f -0d5c: f5 ec 07 mov a,$07ec+x -0d5f: e8 00 mov a,#$00 -0d61: d5 23 01 mov $0123+x,a -0d64: d4 6c mov $6c+x,a -0d66: d4 64 mov $64+x,a -0d68: f5 11 08 mov a,$0811+x -0d6b: 04 58 or a,$58 -0d6d: c4 58 mov $58,a -0d6f: 1d dec x -0d70: 10 c3 bpl $0d35 -0d72: 6f ret - -0d73: 52 07 clr2 $07 -0d75: 5f cd 0c jmp $0ccd - -0d78: 42 07 set2 $07 -0d7a: 5f cd 0c jmp $0ccd - -0d7d: 8d 0e mov y,#$0e -0d7f: c4 74 mov $74,a -0d81: 3f 2c 10 call $102c -0d84: da 23 movw $23,ya -0d86: 8d 00 mov y,#$00 -0d88: f7 23 mov a,($23)+y -0d8a: c4 4e mov $4e,a -0d8c: 3a 23 incw $23 -0d8e: 8d 07 mov y,#$07 -0d90: f7 23 mov a,($23)+y -0d92: 24 0b and a,$0b -0d94: c4 4f mov $4f,a -0d96: 8d 06 mov y,#$06 -0d98: f7 23 mov a,($23)+y -0d9a: c4 50 mov $50,a -0d9c: 8f 80 51 mov $51,#$80 -0d9f: cd 07 mov x,#$07 -0da1: 3f 58 0e call $0e58 -0da4: 10 03 bpl $0da9 -0da6: 5f 2a 0e jmp $0e2a - -0da9: 83 08 07 bbs4 $08,$0db3 -0dac: e8 02 mov a,#$02 -0dae: 15 46 02 or a,$0246+x -0db1: 2f 05 bra $0db8 -0db3: e8 fd mov a,#$fd -0db5: 35 46 02 and a,$0246+x -0db8: d5 46 02 mov $0246+x,a -0dbb: e8 80 mov a,#$80 -0dbd: d4 6c mov $6c+x,a -0dbf: e5 3e 02 mov a,$023e -0dc2: d4 d0 mov $d0+x,a -0dc4: e5 3f 02 mov a,$023f -0dc7: d5 92 03 mov $0392+x,a -0dca: e5 40 02 mov a,$0240 -0dcd: d5 9a 03 mov $039a+x,a -0dd0: e5 8e 03 mov a,$038e -0dd3: c4 0e mov $0e,a -0dd5: e5 90 03 mov a,$0390 -0dd8: c4 0d mov $0d,a -0dda: e5 8f 03 mov a,$038f -0ddd: c4 0f mov $0f,a -0ddf: e5 91 03 mov a,$0391 -0de2: c4 10 mov $10,a -0de4: 7d mov a,x -0de5: 1c asl a -0de6: fd mov y,a -0de7: e8 00 mov a,#$00 -0de9: d6 5b 01 mov $015b+y,a -0dec: d6 5c 01 mov $015c+y,a -0def: c5 3d 02 mov $023d,a -0df2: e5 41 02 mov a,$0241 -0df5: d6 d8 00 mov $00d8+y,a -0df8: e5 42 02 mov a,$0242 -0dfb: d6 d9 00 mov $00d9+y,a -0dfe: e4 74 mov a,$74 -0e00: d5 1b 01 mov $011b+x,a -0e03: 8d 02 mov y,#$02 -0e05: f7 23 mov a,($23)+y -0e07: c4 4a mov $4a,a -0e09: fc inc y -0e0a: f7 23 mov a,($23)+y -0e0c: c4 4b mov $4b,a -0e0e: 8d 04 mov y,#$04 -0e10: f7 23 mov a,($23)+y -0e12: c4 4c mov $4c,a -0e14: fc inc y -0e15: f7 23 mov a,($23)+y -0e17: c4 4d mov $4d,a -0e19: 8d 01 mov y,#$01 -0e1b: f7 23 mov a,($23)+y -0e1d: 2d push a -0e1e: 8d 00 mov y,#$00 -0e20: f7 23 mov a,($23)+y -0e22: 02 07 set0 $07 -0e24: ee pop y -0e25: 72 07 clr3 $07 -0e27: 3f cd 0e call $0ecd -0e2a: 60 clrc -0e2b: 98 08 23 adc $23,#$08 -0e2e: 90 02 bcc $0e32 -0e30: ab 24 inc $24 -0e32: 8b 4e dec $4e -0e34: f0 03 beq $0e39 -0e36: 5f 8e 0d jmp $0d8e - -0e39: e8 00 mov a,#$00 -0e3b: c5 3e 02 mov $023e,a -0e3e: c5 41 02 mov $0241,a -0e41: c5 42 02 mov $0242,a -0e44: c5 40 02 mov $0240,a -0e47: c5 8e 03 mov $038e,a -0e4a: c5 90 03 mov $0390,a -0e4d: c5 8f 03 mov $038f,a -0e50: c5 91 03 mov $0391,a -0e53: 9c dec a -0e54: c5 3f 02 mov $023f,a -0e57: 6f ret - -0e58: 8f 00 0a mov $0a,#$00 -0e5b: 83 0a 5a bbs4 $0a,$0eb8 -0e5e: 8d 07 mov y,#$07 -0e60: 8f ff 3b mov $3b,#$ff -0e63: 8f ff 3c mov $3c,#$ff -0e66: 73 0a 08 bbc3 $0a,$0e71 -0e69: c8 08 cmp x,#$08 -0e6b: b0 4b bcs $0eb8 -0e6d: 8d 00 mov y,#$00 -0e6f: 2f 09 bra $0e7a -0e71: 3f 99 0b call $0b99 -0e74: e4 51 mov a,$51 -0e76: 24 4f and a,$4f -0e78: f0 1f beq $0e99 -0e7a: f4 6c mov a,$6c+x -0e7c: f0 41 beq $0ebf -0e7e: e4 50 mov a,$50 -0e80: 03 0a 06 bbs0 $0a,$0e89 -0e83: 74 11 cmp a,$11+x -0e85: b0 38 bcs $0ebf -0e87: 2f 10 bra $0e99 -0e89: 74 11 cmp a,$11+x -0e8b: f0 0c beq $0e99 -0e8d: 90 0a bcc $0e99 -0e8f: f4 11 mov a,$11+x -0e91: 64 3c cmp a,$3c -0e93: b0 04 bcs $0e99 -0e95: c4 3c mov $3c,a -0e97: d8 3b mov $3b,x -0e99: 53 0a 0c bbc2 $0a,$0ea8 -0e9c: 0b 51 asl $51 -0e9e: d0 05 bne $0ea5 -0ea0: 8f 01 51 mov $51,#$01 -0ea3: cd ff mov x,#$ff -0ea5: 3d inc x -0ea6: 2f 0a bra $0eb2 -0ea8: 4b 51 lsr $51 -0eaa: d0 05 bne $0eb1 -0eac: 8f 80 51 mov $51,#$80 -0eaf: cd 08 mov x,#$08 -0eb1: 1d dec x -0eb2: dc dec y -0eb3: 10 bc bpl $0e71 -0eb5: 03 0a 03 bbs0 $0a,$0ebb -0eb8: e8 ff mov a,#$ff -0eba: 6f ret - -0ebb: f8 3b mov x,$3b -0ebd: 30 f9 bmi $0eb8 -0ebf: 33 0a 04 bbc1 $0a,$0ec6 -0ec2: f4 6c mov a,$6c+x -0ec4: d0 f2 bne $0eb8 -0ec6: e4 50 mov a,$50 -0ec8: d4 11 mov $11+x,a -0eca: e8 00 mov a,#$00 -0ecc: 6f ret - -0ecd: d8 29 mov $29,x ; play sound (instrument) -0ecf: d8 48 mov $48,x -0ed1: 2d push a -0ed2: f5 46 02 mov a,$0246+x -0ed5: 28 fe and a,#$fe -0ed7: d5 46 02 mov $0246+x,a -0eda: 63 07 08 bbs3 $07,$0ee5 -0edd: f5 e4 07 mov a,$07e4+x -0ee0: c4 f2 mov $f2,a -0ee2: 8f 9f f3 mov $f3,#$9f -0ee5: dd mov a,y -0ee6: d5 43 01 mov $0143+x,a -0ee9: 7d mov a,x -0eea: 1c asl a -0eeb: 5d mov x,a -0eec: e4 4c mov a,$4c -0eee: d5 d4 fc mov $fcd4+x,a -0ef1: e4 4d mov a,$4d -0ef3: d5 d5 fc mov $fcd5+x,a -0ef6: e4 4a mov a,$4a -0ef8: d4 75 mov $75+x,a -0efa: e4 4b mov a,$4b -0efc: d4 76 mov $76+x,a -0efe: ae pop a -0eff: 8d 02 mov y,#$02 -0f01: 3f 2c 10 call $102c -0f04: da 21 movw $21,ya ;get current voice and instrument -0f06: f8 48 mov x,$48 -0f08: f5 11 08 mov a,$0811+x ;get channel bit mask ID -0f0b: c4 62 mov $62,a -0f0d: 48 ff eor a,#$ff ;and store inversion -0f0f: c4 63 mov $63,a -0f11: e4 53 mov a,$53 ;get mode flags -0f13: 63 07 05 bbs3 $07,$0f1b -0f16: 35 19 08 and a,$0819+x -0f19: 2f 03 bra $0f1e -0f1b: 15 11 08 or a,$0811+x -0f1e: c4 53 mov $53,a -0f20: 8d 00 mov y,#$00 -0f22: f7 21 mov a,($21)+y -0f24: d4 64 mov $64+x,a -0f26: c4 49 mov $49,a -0f28: 8f 2d f2 mov $f2,#$2d -0f2b: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) -0f2d: f0 05 beq $0f34 ; if not... -0f2f: 09 62 f3 or ($f3),($62) ; turn pitch mod on -0f32: 2f 03 bra $0f37 -0f34: 29 63 f3 and ($f3),($63) ; turn pitch mod off -0f37: 63 07 50 bbs3 $07,$0f8a ; slur handler -0f3a: b0 4e bcs $0f8a -0f3c: 93 49 45 bbc4 $49,$0f84 -0f3f: 13 08 05 bbc0 $08,$0f47 -0f42: e5 06 01 mov a,$0106 -0f45: 2f 04 bra $0f4b -0f47: 8d 05 mov y,#$05 ; default echo -0f49: f7 21 mov a,($21)+y -0f4b: 8d 0c mov y,#$0c ; look for echo -0f4d: 3f 2c 10 call $102c -0f50: 8d 00 mov y,#$00 -0f52: f6 21 08 mov a,$0821+y ; get the echo register values to "poke" -0f55: c4 f2 mov $f2,a ; (from the table) -0f57: f7 2a mov a,($2a)+y ; now get info to feed to the registers -0f59: ad 01 cmp y,#$01 ; (from the echo environment) -0f5b: f0 08 beq $0f65 -0f5d: ad 03 cmp y,#$03 -0f5f: f0 0f beq $0f70 -0f61: ad 02 cmp y,#$02 -0f63: d0 10 bne $0f75 -0f65: d6 43 02 mov $0243+y,a -0f68: 65 3b 02 cmp a,$023b -0f6b: 90 03 bcc $0f70 -0f6d: e5 3b 02 mov a,$023b -0f70: d6 37 02 mov $0237+y,a -0f73: 2f 02 bra $0f77 -0f75: c4 f3 mov $f3,a -0f77: fc inc y -0f78: ad 0c cmp y,#$0c ; repeat for every byte of the array -0f7a: 90 d6 bcc $0f52 -0f7c: 8f 4d f2 mov $f2,#$4d -0f7f: 09 62 f3 or ($f3),($62) -0f82: 2f 06 bra $0f8a -0f84: 8f 4d f2 mov $f2,#$4d -0f87: 29 63 f3 and ($f3),($63) -0f8a: e4 48 mov a,$48 -0f8c: 60 clrc -0f8d: 88 00 adc a,#$00 -0f8f: c4 2e mov $2e,a -0f91: 8d 01 mov y,#$01 -0f93: f7 21 mov a,($21)+y -0f95: 03 49 08 bbs0 $49,$0fa0 -0f98: f8 48 mov x,$48 -0f9a: d5 23 01 mov $0123+x,a -0f9d: 5f ab 0f jmp $0fab - -0fa0: 8d 04 mov y,#$04 -0fa2: 3f 2c 10 call $102c -0fa5: fa 0e 0c mov ($0c),($0e) -0fa8: 3f 8d 11 call $118d -0fab: e4 48 mov a,$48 -0fad: 60 clrc -0fae: 88 08 adc a,#$08 -0fb0: c4 2e mov $2e,a -0fb2: 53 49 13 bbc2 $49,$0fc8 -0fb5: 8d 03 mov y,#$03 -0fb7: f7 21 mov a,($21)+y -0fb9: 8d 06 mov y,#$06 -0fbb: 3f 2c 10 call $102c -0fbe: fa 0f 0c mov ($0c),($0f) -0fc1: 42 08 set2 $08 -0fc3: 3f 8d 11 call $118d -0fc6: 52 08 clr2 $08 -0fc8: e4 48 mov a,$48 -0fca: 60 clrc -0fcb: 88 18 adc a,#$18 -0fcd: c4 2e mov $2e,a -0fcf: 63 07 57 bbs3 $07,$1029 -0fd2: 8d 04 mov y,#$04 -0fd4: f7 21 mov a,($21)+y ; now get the amplitude -0fd6: 63 49 08 bbs3 $49,$0fe1 -0fd9: f8 48 mov x,$48 -0fdb: d5 e4 fc mov $fce4+x,a -0fde: 5f 02 10 jmp $1002 - -0fe1: 8d 08 mov y,#$08 -0fe3: 3f 2c 10 call $102c -0fe6: fa 10 0c mov ($0c),($10) -0fe9: 3f 8d 11 call $118d -0fec: eb 2e mov y,$2e -0fee: f6 e3 04 mov a,$04e3+y -0ff1: f0 0a beq $0ffd -0ff3: f6 c3 03 mov a,$03c3+y -0ff6: d0 05 bne $0ffd -0ff8: e8 ff mov a,#$ff -0ffa: 5f ff 0f jmp $0fff - -0ffd: e8 00 mov a,#$00 -0fff: d6 c3 03 mov $03c3+y,a -1002: e4 48 mov a,$48 -1004: 60 clrc -1005: 88 10 adc a,#$10 -1007: c4 2e mov $2e,a -1009: 8d 02 mov y,#$02 -100b: f7 21 mov a,($21)+y -100d: 23 49 08 bbs1 $49,$1018 -1010: f8 48 mov x,$48 -1012: d5 ec fc mov $fcec+x,a -1015: 5f 23 10 jmp $1023 - -1018: 8d 0a mov y,#$0a -101a: 3f 2c 10 call $102c -101d: fa 0d 0c mov ($0c),($0d) -1020: 3f 8d 11 call $118d -1023: 09 62 58 or ($58),($62) -1026: 09 62 52 or ($52),($62) -1029: 72 07 clr3 $07 -102b: 6f ret - -102c: 3f 99 0b call $0b99 ; load current song/sfx/etc. address into stack -102f: 8f 00 20 mov $20,#$00 -1032: 1c asl a -1033: 2b 20 rol $20 -1035: 60 clrc -1036: 96 e0 1e adc a,$1ee0+y -1039: c4 1f mov $1f,a -103b: e4 20 mov a,$20 -103d: 96 e1 1e adc a,$1ee1+y -1040: c4 20 mov $20,a -1042: 8d 01 mov y,#$01 -1044: f7 1f mov a,($1f)+y -1046: c4 2b mov $2b,a -1048: dc dec y -1049: f7 1f mov a,($1f)+y -104b: c4 2a mov $2a,a -104d: eb 2b mov y,$2b -104f: 6f ret - -1050: db $06,$04,$04,$04,$04,$04,$1c,$1a,$26,$04,$10,$12,$26,$26,$26,$26 -1060: db $01,$0c,$0c,$0c,$0c,$0c,$80,$00,$29,$0a,$01,$01,$2b,$4f,$4f,$4f -1070: db $00,$00,$00,$00,$00,$00,$80,$00,$38,$00,$08,$06,$38,$c0,$cd,$e2 - -; initalize sound registers -1080: 3f ce 10 call $10ce -1083: cd 32 mov x,#$32 -1085: 8d 11 mov y,#$11 -1087: 3f 1b 11 call $111b -108a: e8 00 mov a,#$00 -108c: 5d mov x,a -108d: fd mov y,a -108e: d5 00 01 mov $0100+x,a -1091: af mov (x)+,a -1092: c8 f0 cmp x,#$f0 -1094: 90 f8 bcc $108e -1096: 5d mov x,a -1097: d5 00 02 mov $0200+x,a -109a: d5 00 03 mov $0300+x,a -109d: d5 00 04 mov $0400+x,a -10a0: d5 00 05 mov $0500+x,a -10a3: d5 00 06 mov $0600+x,a -10a6: d5 00 fc mov $fc00+x,a -10a9: d5 00 fd mov $fd00+x,a -10ac: d5 00 ff mov $ff00+x,a -10af: 3d inc x -10b0: d0 e5 bne $1097 -10b2: e8 ff mov a,#$ff -10b4: c4 54 mov $54,a -10b6: c4 56 mov $56,a -10b8: c4 5f mov $5f,a -10ba: c4 55 mov $55,a -10bc: c4 5a mov $5a,a -10be: c4 5b mov $5b,a -10c0: c4 5c mov $5c,a -10c2: c5 3f 02 mov $023f,a -10c5: c4 05 mov $05,a -10c7: c4 06 mov $06,a -10c9: c4 0b mov $0b,a -10cb: 82 07 set4 $07 -10cd: 6f ret - -10ce: cd 14 mov x,#$14 -10d0: e8 00 mov a,#$00 -10d2: d5 28 02 mov $0228+x,a -10d5: 1d dec x -10d6: 10 fa bpl $10d2 -10d8: 8f 10 3b mov $3b,#$10 -10db: 8d 10 mov y,#$10 -10dd: 3f 4a 07 call $074a -10e0: 68 00 cmp a,#$00 -10e2: f0 04 beq $10e8 -10e4: 8b 3b dec $3b -10e6: d0 f0 bne $10d8 -10e8: 6f ret - -10e9: e8 7f mov a,#$7f -10eb: c5 3b 02 mov $023b,a -10ee: c5 3c 02 mov $023c,a -10f1: 2f e5 bra $10d8 - -10f3: e5 e1 1e mov a,$1ee1 -10f6: 8f 6d f2 mov $f2,#$6d -10f9: c4 f3 mov $f3,a -10fb: 68 ff cmp a,#$ff -10fd: f0 1b beq $111a -10ff: c4 01 mov $01,a -1101: e8 00 mov a,#$00 -1103: fd mov y,a -1104: c4 00 mov $00,a -1106: d7 00 mov ($00)+y,a -1108: fe fc dbnz y,$1106 -110a: ab 01 inc $01 -110c: 78 fc 01 cmp $01,#$fc -110f: d0 f5 bne $1106 -1111: 8f 6c f2 mov $f2,#$6c -1114: e8 df mov a,#$df -1116: 24 f3 and a,$f3 -1118: c4 f3 mov $f3,a -111a: 6f ret - -111b: d8 00 mov $00,x -111d: cb 01 mov $01,y -111f: 8d 00 mov y,#$00 -1121: f7 00 mov a,($00)+y -1123: 68 ff cmp a,#$ff -1125: f0 0a beq $1131 -1127: c4 f2 mov $f2,a -1129: fc inc y -112a: f7 00 mov a,($00)+y -112c: c4 f3 mov $f3,a -112e: fc inc y -112f: d0 f0 bne $1121 -1131: 6f ret - -; pre-defined DSP flags -1132: db $3d,$00 ; NON (noise enable) -1134: db $4d,$00 ; EON (echo enable) -1136: db $0d,$00 ; EFB (echo feedback) -1138: db $7d,$00 ; EDL (echo delay) -113a: db $0f,$00 ; COEF (channel 1) -113c: db $1f,$00 ; COEF (channel 2) -113e: db $2f,$00 ; COEF (channel 3) -1140: db $3f,$00 ; COEF (channel 4) -1142: db $4f,$00 ; COEF (channel 5) -1144: db $5f,$00 ; COEF (channel 6) -1146: db $6f,$00 ; COEF (channel 7) -1148: db $7f,$00 ; COEF (channel 8) -114a: db $6d,$ff ; ESA (echo buffer start offset) -114c: db $2c,$00 ; EVOL (L) (echo volume - left) -114e: db $3c,$00 ; EVOL (R) (echo volume - right) -1150: db $0c,$00 ; MVOL (L) (main volume - left) -1152: db $1c,$00 ; MVOL (R) (main volume - right) -1154: db $5d,$02 ; DIR (offset of source directory) -1156: db $5c,$00 ; KOF (key off) -1158: db $2d,$00 ; PMON (pitch modulation) -115a: db $04,$08 ; SRCN (source number - channel 1) -115c: db $14,$08 ; SRCN (source number - channel 2) -115e: db $24,$08 ; SRCN (source number - channel 3) -1160: db $34,$08 ; SRCN (source number - channel 4) -1162: db $44,$08 ; SRCN (source number - channel 5) -1164: db $54,$08 ; SRCN (source number - channel 6) -1166: db $64,$08 ; SRCN (source number - channel 7) -1168: db $74,$08 ; SRCN (source number - channel 8) -116a: db $07,$00 ; GAIN (channel 1) -116c: db $17,$00 ; GAIN (channel 2) -116e: db $27,$00 ; GAIN (channel 3) -1170: db $37,$00 ; GAIN (channel 4) -1172: db $47,$00 ; GAIN (channel 5) -1174: db $57,$00 ; GAIN (channel 6) -1176: db $67,$00 ; GAIN (channel 7) -1178: db $77,$00 ; GAIN (channel 8) -117a: db $05,$00 ; ASDR (1 - channel 1) -117c: db $15,$00 ; ASDR (1 - channel 2) -117e: db $25,$00 ; ASDR (1 - channel 3) -1180: db $35,$00 ; ASDR (1 - channel 4) -1182: db $45,$00 ; ASDR (1 - channel 5) -1184: db $55,$00 ; ASDR (1 - channel 6) -1186: db $65,$00 ; ASDR (1 - channel 7) -1188: db $75,$00 ; ASDR (1 - channel 8) -118a: db $7c,$00 ; ENDX -118b: db $ff - -118d: f8 2e mov x,$2e -118f: 8d 07 mov y,#$07 -1191: f7 2a mov a,($2a)+y -1193: d5 e3 04 mov $04e3+x,a -1196: dc dec y -1197: dc dec y -1198: f7 2a mov a,($2a)+y -119a: d5 03 04 mov $0403+x,a -119d: dc dec y -119e: f7 2a mov a,($2a)+y -11a0: d5 c3 04 mov $04c3+x,a -11a3: dc dec y -11a4: f7 2a mov a,($2a)+y -11a6: d5 23 04 mov $0423+x,a -11a9: dc dec y -11aa: f7 2a mov a,($2a)+y -11ac: d5 43 04 mov $0443+x,a -11af: dc dec y -11b0: f7 2a mov a,($2a)+y -11b2: d5 83 04 mov $0483+x,a -11b5: dc dec y -11b6: f7 2a mov a,($2a)+y -11b8: d5 63 04 mov $0463+x,a -11bb: eb 2e mov y,$2e -11bd: e4 2a mov a,$2a -11bf: 60 clrc -11c0: 88 08 adc a,#$08 -11c2: d6 43 05 mov $0543+y,a -11c5: e4 2b mov a,$2b -11c7: 88 00 adc a,#$00 -11c9: d6 63 05 mov $0563+y,a -11cc: f6 23 04 mov a,$0423+y -11cf: cd 00 mov x,#$00 -11d1: eb 0c mov y,$0c -11d3: f0 23 beq $11f8 -11d5: cf mul ya -11d6: cb 3b mov $3b,y -11d8: c4 3c mov $3c,a -11da: cd 05 mov x,#$05 -11dc: 4b 3b lsr $3b -11de: 7c ror a -11df: 1d dec x -11e0: d0 fa bne $11dc -11e2: eb 3b mov y,$3b -11e4: ad 00 cmp y,#$00 -11e6: d0 08 bne $11f0 -11e8: 68 00 cmp a,#$00 -11ea: f0 0a beq $11f6 -11ec: f8 3c mov x,$3c -11ee: 2f 08 bra $11f8 -11f0: cd 01 mov x,#$01 -11f2: e8 ff mov a,#$ff -11f4: 2f 02 bra $11f8 -11f6: 5d mov x,a -11f7: bc inc a -11f8: eb 2e mov y,$2e -11fa: d6 23 04 mov $0423+y,a -11fd: 7d mov a,x -11fe: 48 ff eor a,#$ff -1200: 08 e0 or a,#$e0 -1202: d6 a3 03 mov $03a3+y,a -1205: e8 ff mov a,#$ff -1207: d6 e3 03 mov $03e3+y,a -120a: 3f 99 0b call $0b99 -120d: 5d mov x,a -120e: f6 43 04 mov a,$0443+y -1211: fd mov y,a -1212: 7d mov a,x -1213: cf mul ya -1214: da 41 movw $41,ya -1216: 03 07 06 bbs0 $07,$121f -1219: ba 05 movw ya,$05 -121b: da 41 movw $41,ya -121d: 2f 0a bra $1229 -121f: ba 4a movw ya,$4a -1221: 9a 41 subw ya,$41 -1223: b0 02 bcs $1227 -1225: ba 4a movw ya,$4a -1227: cb 42 mov $42,y -1229: eb 2e mov y,$2e -122b: d6 83 05 mov $0583+y,a -122e: e4 42 mov a,$42 -1230: d6 a3 05 mov $05a3+y,a -1233: f6 23 04 mov a,$0423+y -1236: bc inc a -1237: d0 01 bne $123a -1239: 9c dec a -123a: d6 03 05 mov $0503+y,a -123d: 68 03 cmp a,#$03 -123f: b0 05 bcs $1246 -1241: e8 00 mov a,#$00 -1243: d6 c3 04 mov $04c3+y,a -1246: e8 01 mov a,#$01 -1248: d6 a3 04 mov $04a3+y,a -124b: 9c dec a -124c: d6 23 05 mov $0523+y,a -124f: d6 44 ff mov $ff44+y,a -1252: d6 64 ff mov $ff64+y,a -1255: c4 38 mov $38,a -1257: 5f 2c 13 jmp $132c - -125a: eb 2e mov y,$2e -125c: b2 07 clr5 $07 -125e: f6 c3 04 mov a,$04c3+y -1261: c4 38 mov $38,a -1263: f6 a3 04 mov a,$04a3+y -1266: f0 42 beq $12aa -1268: f6 a3 03 mov a,$03a3+y -126b: 60 clrc -126c: 96 e3 03 adc a,$03e3+y -126f: d6 e3 03 mov $03e3+y,a -1272: 90 18 bcc $128c -1274: f6 03 05 mov a,$0503+y -1277: c4 39 mov $39,a -1279: f0 03 beq $127e -127b: 9c dec a -127c: d0 03 bne $1281 -127e: f6 23 04 mov a,$0423+y -1281: d6 03 05 mov $0503+y,a -1284: 78 02 39 cmp $39,#$02 -1287: 90 08 bcc $1291 -1289: 5f 2c 13 jmp $132c - -128c: 8f 00 38 mov $38,#$00 -128f: 2f f8 bra $1289 -1291: eb 2e mov y,$2e -1293: f6 23 05 mov a,$0523+y -1296: bc inc a -1297: 76 03 04 cmp a,$0403+y -129a: 90 1b bcc $12b7 -129c: 9c dec a -129d: 76 83 04 cmp a,$0483+y -12a0: d0 03 bne $12a5 -12a2: 5f 26 13 jmp $1326 - -12a5: e8 00 mov a,#$00 -12a7: d6 a3 04 mov $04a3+y,a -12aa: a2 07 set5 $07 -12ac: f6 24 ff mov a,$ff24+y -12af: 2d push a -12b0: f6 04 ff mov a,$ff04+y -12b3: ee pop y -12b4: 5f dd 13 jmp $13dd - -12b7: d6 23 05 mov $0523+y,a -12ba: f6 a3 05 mov a,$05a3+y -12bd: 16 83 05 or a,$0583+y -12c0: f0 6a beq $132c -12c2: f8 29 mov x,$29 -12c4: f5 46 02 mov a,$0246+x -12c7: 28 02 and a,#$02 -12c9: f0 24 beq $12ef -12cb: e8 01 mov a,#$01 -12cd: 74 6c cmp a,$6c+x -12cf: d0 03 bne $12d4 -12d1: 83 07 09 bbs4 $07,$12dd -12d4: eb 29 mov y,$29 -12d6: f6 46 02 mov a,$0246+y -12d9: 28 01 and a,#$01 -12db: f0 3d beq $131a -12dd: e8 00 mov a,#$00 -12df: d6 75 00 mov $0075+y,a -12e2: d6 76 00 mov $0076+y,a -12e5: eb 2e mov y,$2e -12e7: d6 83 05 mov $0583+y,a -12ea: d6 a3 05 mov $05a3+y,a -12ed: 2f 21 bra $1310 -12ef: f6 83 05 mov a,$0583+y -12f2: 80 setc -12f3: b6 23 04 sbc a,$0423+y -12f6: d6 83 05 mov $0583+y,a -12f9: c4 41 mov $41,a -12fb: f6 a3 05 mov a,$05a3+y -12fe: a8 00 sbc a,#$00 -1300: b0 07 bcs $1309 -1302: e8 00 mov a,#$00 -1304: d6 83 05 mov $0583+y,a -1307: c4 41 mov $41,a -1309: d6 a3 05 mov $05a3+y,a -130c: 04 41 or a,$41 -130e: d0 0a bne $131a -1310: f6 83 04 mov a,$0483+y -1313: 76 03 04 cmp a,$0403+y -1316: 90 11 bcc $1329 -1318: a2 07 set5 $07 -131a: eb 2e mov y,$2e -131c: f6 23 05 mov a,$0523+y -131f: 76 83 04 cmp a,$0483+y -1322: 90 08 bcc $132c -1324: f0 06 beq $132c -1326: f6 63 04 mov a,$0463+y -1329: d6 23 05 mov $0523+y,a -132c: eb 2e mov y,$2e -132e: f8 38 mov x,$38 -1330: f0 1c beq $134e -1332: 78 03 39 cmp $39,#$03 -1335: 90 17 bcc $134e -1337: f6 04 ff mov a,$ff04+y -133a: c4 34 mov $34,a -133c: f6 24 ff mov a,$ff24+y -133f: c4 35 mov $35,a -1341: f6 44 ff mov a,$ff44+y -1344: c4 36 mov $36,a -1346: f6 64 ff mov a,$ff64+y -1349: c4 37 mov $37,a -134b: 5f cb 13 jmp $13cb - -134e: f6 43 05 mov a,$0543+y -1351: c4 2c mov $2c,a -1353: f6 63 05 mov a,$0563+y -1356: c4 2d mov $2d,a -1358: f6 23 05 mov a,$0523+y -135b: fd mov y,a -135c: 43 08 07 bbs2 $08,$1366 -135f: f7 2c mov a,($2c)+y -1361: 8d 40 mov y,#$40 -1363: cf mul ya -1364: 2f 10 bra $1376 -1366: 8d 02 mov y,#$02 -1368: cf mul ya -1369: 7a 2c addw ya,$2c -136b: da 2c movw $2c,ya -136d: 8d 01 mov y,#$01 -136f: f7 2c mov a,($2c)+y -1371: dc dec y -1372: 2d push a -1373: f7 2c mov a,($2c)+y -1375: ee pop y -1376: f8 38 mov x,$38 -1378: f0 55 beq $13cf -137a: 78 02 39 cmp $39,#$02 -137d: f0 50 beq $13cf -137f: da 3b movw $3b,ya -1381: eb 2e mov y,$2e -1383: f6 24 ff mov a,$ff24+y -1386: c4 35 mov $35,a -1388: f6 04 ff mov a,$ff04+y -138b: c4 34 mov $34,a -138d: eb 35 mov y,$35 -138f: 80 setc -1390: 9a 3b subw ya,$3b -1392: da 36 movw $36,ya -1394: e8 00 mov a,#$00 -1396: 3c rol a -1397: c4 3b mov $3b,a -1399: d0 08 bne $13a3 -139b: 58 ff 36 eor $36,#$ff -139e: 58 ff 37 eor $37,#$ff -13a1: 3a 36 incw $36 -13a3: eb 2e mov y,$2e -13a5: f6 23 04 mov a,$0423+y -13a8: 5d mov x,a -13a9: ba 36 movw ya,$36 -13ab: 3f e8 13 call $13e8 -13ae: c4 36 mov $36,a -13b0: d8 37 mov $37,x -13b2: 78 01 3b cmp $3b,#$01 -13b5: d0 08 bne $13bf -13b7: 58 ff 36 eor $36,#$ff -13ba: 58 ff 37 eor $37,#$ff -13bd: 3a 36 incw $36 -13bf: eb 2e mov y,$2e -13c1: e4 36 mov a,$36 -13c3: d6 44 ff mov $ff44+y,a -13c6: e4 37 mov a,$37 -13c8: d6 64 ff mov $ff64+y,a -13cb: ba 34 movw ya,$34 -13cd: 7a 36 addw ya,$36 -13cf: da 34 movw $34,ya -13d1: eb 2e mov y,$2e -13d3: d6 04 ff mov $ff04+y,a -13d6: e4 35 mov a,$35 -13d8: d6 24 ff mov $ff24+y,a -13db: ba 34 movw ya,$34 -13dd: 43 08 07 bbs2 $08,$13e7 -13e0: cd 40 mov x,#$40 -13e2: 9e div ya,x -13e3: 8d 00 mov y,#$00 -13e5: da 34 movw $34,ya -13e7: 6f ret - -13e8: c8 00 cmp x,#$00 -13ea: d0 04 bne $13f0 -13ec: 1d dec x -13ed: 7d mov a,x -13ee: fd mov y,a -13ef: 6f ret - -13f0: 40 setp -13f1: cb 01 mov $01,y -13f3: 3e 01 cmp x,$01 -13f5: f0 02 beq $13f9 -13f7: b0 1a bcs $1413 -13f9: c4 00 mov $00,a -13fb: dd mov a,y -13fc: 8d 00 mov y,#$00 -13fe: 9e div ya,x -13ff: c4 02 mov $02,a -1401: fd mov y,a -1402: 7d mov a,x -1403: cf mul ya -1404: c4 03 mov $03,a -1406: e4 01 mov a,$01 -1408: 80 setc -1409: a4 03 sbc a,$03 -140b: fd mov y,a -140c: e4 00 mov a,$00 -140e: 9e div ya,x -140f: f8 02 mov x,$02 -1411: 20 clrp -1412: 6f ret - -1413: 9e div ya,x -1414: cd 00 mov x,#$00 -1416: 20 clrp -1417: 6f ret - -1418: 4d push x -1419: f5 f4 fc mov a,$fcf4+x -141c: 8d 04 mov y,#$04 -141e: cf mul ya -141f: 7a 25 addw ya,$25 -1421: da 00 movw $00,ya -1423: f5 ec 07 mov a,$07ec+x -1426: c4 f2 mov $f2,a -1428: 7d mov a,x -1429: 1c asl a -142a: 1c asl a -142b: 5d mov x,a -142c: f5 02 02 mov a,$0202+x -142f: c5 26 02 mov $0226,a -1432: f5 03 02 mov a,$0203+x -1435: c5 27 02 mov $0227,a -1438: 8f 09 f3 mov $f3,#$09 -143b: 8d 00 mov y,#$00 -143d: f7 00 mov a,($00)+y -143f: d5 00 02 mov $0200+x,a -1442: fc inc y -1443: f7 00 mov a,($00)+y -1445: d5 01 02 mov $0201+x,a -1448: fc inc y -1449: f7 00 mov a,($00)+y -144b: d5 02 02 mov $0202+x,a -144e: fc inc y -144f: f7 00 mov a,($00)+y -1451: d5 03 02 mov $0203+x,a -1454: 8d 01 mov y,#$01 -1456: f7 00 mov a,($00)+y -1458: c4 3e mov $3e,a -145a: dc dec y -145b: f7 00 mov a,($00)+y -145d: 80 setc -145e: a8 03 sbc a,#$03 -1460: c4 3d mov $3d,a -1462: b8 00 3e sbc $3e,#$00 -1465: f7 3d mov a,($3d)+y -1467: c5 04 01 mov $0104,a -146a: fc inc y -146b: f7 3d mov a,($3d)+y -146d: c5 05 01 mov $0105,a -1470: fc inc y -1471: f7 3d mov a,($3d)+y -1473: c4 60 mov $60,a -1475: 10 14 bpl $148b -1477: 28 1f and a,#$1f -1479: 8f 6c f2 mov $f2,#$6c -147c: 38 e0 f3 and $f3,#$e0 -147f: 04 f3 or a,$f3 -1481: c4 f3 mov $f3,a -1483: 8f 3d f2 mov $f2,#$3d -1486: 09 46 f3 or ($f3),($46) -1489: 2f 06 bra $1491 -148b: 8f 3d f2 mov $f2,#$3d -148e: 29 47 f3 and ($f3),($47) -1491: ce pop x -1492: f5 ec 07 mov a,$07ec+x -1495: c4 f2 mov $f2,a -1497: d8 f3 mov $f3,x -1499: 6f ret - -149a: 60 clrc -149b: 88 a0 adc a,#$a0 ; add offset to input frequency (1440) -149d: 5d mov x,a -149e: dd mov a,y -149f: 88 05 adc a,#$05 -14a1: fd mov y,a -14a2: 7d mov a,x -14a3: ad 0a cmp y,#$0a ; check if it is in within positive range -14a5: 90 06 bcc $14ad ; in range -14a7: d0 0a bne $14b3 ; out of range -14a9: 68 50 cmp a,#$50 -14ab: b0 06 bcs $14b3 ; out of range -14ad: 8f ff 61 mov $61,#$ff -14b0: 5f c9 14 jmp $14c9 - -14b3: ad 80 cmp y,#$80 -14b5: 90 0f bcc $14c6 -14b7: 8f 00 61 mov $61,#$00 -14ba: 60 clrc -14bb: 88 20 adc a,#$20 -14bd: 5d mov x,a -14be: dd mov a,y -14bf: 88 df adc a,#$df -14c1: fd mov y,a -14c2: 7d mov a,x -14c3: 5f c9 14 jmp $14c9 - -14c6: 8f 0a 61 mov $61,#$0a -14c9: cd f0 mov x,#$f0 -14cb: 9e div ya,x -14cc: 78 ff 61 cmp $61,#$ff -14cf: d0 02 bne $14d3 -14d1: c4 61 mov $61,a -14d3: f6 ee 14 mov a,$14ee+y ;get pitch value (from table) -14d6: c4 3b mov $3b,a -14d8: f6 de 15 mov a,$15de+y -14db: c4 3c mov $3c,a -14dd: e8 0a mov a,#$0a -14df: 80 setc -14e0: a4 61 sbc a,$61 -14e2: f0 07 beq $14eb -14e4: fd mov y,a -14e5: 4b 3c lsr $3c -14e7: 6b 3b ror $3b -14e9: fe fa dbnz y,$14e5 -14eb: ba 3b movw ya,$3b -14ed: 6f ret - -; pitch table (low byte) -14ee: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 - -; pitch table (high byte) -15de: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f - -; note interval frequencies (low byte) -16ce: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 - -; note interval frequencies (high byte) -16ee: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 - -170e: 3f 82 17 call $1782 -1711: 8f 00 87 mov $87,#$00 -1714: e4 86 mov a,$86 -1716: f0 20 beq $1738 -1718: e4 85 mov a,$85 -171a: 9c dec a -171b: c4 88 mov $88,a -171d: 3f 99 0b call $0b99 -1720: f8 87 mov x,$87 -1722: f5 07 01 mov a,$0107+x -1725: 30 0a bmi $1731 -1727: 5d mov x,a -1728: c4 88 mov $88,a -172a: f5 66 03 mov a,$0366+x -172d: 5d mov x,a -172e: 1f 3b 1e jmp ($1e3b+x) - -1731: ab 87 inc $87 -1733: 69 85 87 cmp ($87),($85) -1736: d0 e5 bne $171d -1738: 6f ret - -1739: c4 3b mov $3b,a -173b: f6 64 00 mov a,$0064+y -173e: 28 80 and a,#$80 -1740: f0 08 beq $174a -1742: f6 11 00 mov a,$0011+y -1745: 9c dec a -1746: d6 11 00 mov $0011+y,a -1749: 6f ret - -174a: f6 6c 00 mov a,$006c+y -174d: 64 3b cmp a,$3b -174f: d0 07 bne $1758 -1751: f6 11 00 mov a,$0011+y -1754: 5c lsr a -1755: d6 11 00 mov $0011+y,a -1758: 6f ret - -1759: f8 88 mov x,$88 -175b: 9b b4 dec $b4+x -175d: d0 d2 bne $1731 -175f: 2f 19 bra $177a -1761: f8 88 mov x,$88 -1763: 9b b4 dec $b4+x -1765: d0 ca bne $1731 -1767: e8 04 mov a,#$04 -1769: d5 66 03 mov $0366+x,a -176c: 5f 6b 18 jmp $186b - -176f: 3f c8 17 call $17c8 -1772: e8 00 mov a,#$00 -1774: d5 c6 02 mov $02c6+x,a -1777: d5 da 02 mov $02da+x,a -177a: e8 06 mov a,#$06 -177c: d5 66 03 mov $0366+x,a -177f: 5f 00 18 jmp $1800 - -1782: d3 07 2f bbc6 $07,$17b4 -1785: d2 07 clr6 $07 -1787: f8 85 mov x,$85 -1789: f0 29 beq $17b4 -178b: e8 ff mov a,#$ff -178d: 1d dec x -178e: d5 07 01 mov $0107+x,a -1791: 1d dec x -1792: 10 fa bpl $178e -1794: f8 85 mov x,$85 -1796: 1d dec x -1797: 8f 00 3b mov $3b,#$00 -179a: eb 3b mov y,$3b -179c: f6 07 01 mov a,$0107+y -179f: 30 14 bmi $17b5 -17a1: fd mov y,a -17a2: f5 b2 02 mov a,$02b2+x -17a5: 76 b2 02 cmp a,$02b2+y -17a8: b0 0b bcs $17b5 -17aa: ab 3b inc $3b -17ac: 78 14 3b cmp $3b,#$14 -17af: d0 e9 bne $179a -17b1: 1d dec x -17b2: 10 e3 bpl $1797 -17b4: 6f ret - -17b5: eb 3b mov y,$3b -17b7: 4d push x -17b8: 40 setp -17b9: f6 07 01 mov a,$0107+y -17bc: d9 07 mov $07+y,x -17be: 5d mov x,a -17bf: fc inc y -17c0: 68 ff cmp a,#$ff -17c2: d0 f5 bne $17b9 -17c4: ce pop x -17c5: 20 clrp -17c6: 2f e9 bra $17b1 -17c8: f5 27 06 mov a,$0627+x -17cb: 30 1d bmi $17ea -17cd: fd mov y,a -17ce: 7d mov a,x -17cf: 08 80 or a,#$80 -17d1: 76 d0 00 cmp a,$00d0+y -17d4: d0 14 bne $17ea -17d6: e8 01 mov a,#$01 -17d8: 16 46 02 or a,$0246+y -17db: d6 46 02 mov $0246+y,a -17de: e8 01 mov a,#$01 -17e0: 3f 39 17 call $1739 -17e3: f5 7a 03 mov a,$037a+x -17e6: 28 02 and a,#$02 -17e8: d0 00 bne $17ea -17ea: 6f ret - -17eb: c4 02 mov $02,a -17ed: 7d mov a,x -17ee: 8d 05 mov y,#$05 -17f0: cf mul ya -17f1: 60 clrc -17f2: 84 02 adc a,$02 -17f4: fd mov y,a -17f5: cb 02 mov $02,y -17f7: 6f ret - -; voice numbers -17f8: db $01,$02,$04,$08,$10,$20,$40,$80 - -1800: f8 88 mov x,$88 -1802: f5 c6 02 mov a,$02c6+x -1805: c4 3b mov $3b,a -1807: f5 da 02 mov a,$02da+x -180a: c4 3c mov $3c,a -180c: 3f 3b 1a call $1a3b -180f: fd mov y,a -1810: 28 0f and a,#$0f -1812: 2d push a -1813: dd mov a,y -1814: 5c lsr a -1815: 5c lsr a -1816: 5c lsr a -1817: 5c lsr a -1818: f0 28 beq $1842 -181a: 60 clrc -181b: 88 f8 adc a,#$f8 -181d: 8d 00 mov y,#$00 -181f: 68 00 cmp a,#$00 -1821: 10 01 bpl $1824 -1823: dc dec y -1824: 7a 3b addw ya,$3b -1826: d5 c6 02 mov $02c6+x,a -1829: dd mov a,y -182a: d5 da 02 mov $02da+x,a -182d: 8f 00 89 mov $89,#$00 -1830: 3f 00 19 call $1900 -1833: f8 88 mov x,$88 -1835: ae pop a -1836: 68 00 cmp a,#$00 -1838: f0 c6 beq $1800 -183a: d4 b4 mov $b4+x,a -183c: 3f 24 1c call $1c24 -183f: 5f 31 17 jmp $1731 - -1842: ae pop a -1843: dd mov a,y -1844: 68 00 cmp a,#$00 -1846: d0 03 bne $184b -1848: 5f 67 17 jmp $1767 -184b: 68 01 cmp a,#$01 -184d: d0 0b bne $185a -184f: 3f 3b 1a call $1a3b -1852: d4 b4 mov $b4+x,a -1854: 3f 24 1c call $1c24 -1857: 5f 31 17 jmp $1731 - -185a: 68 02 cmp a,#$02 -185c: d0 05 bne $1863 -185e: 3f c8 17 call $17c8 -1861: 2f 9d bra $1800 -1863: f4 b4 mov a,$b4+x -1865: 2d push a -1866: 3f 3b 1a call $1a3b -1869: 2f b2 bra $181d -186b: f8 88 mov x,$88 -186d: f5 4e 02 mov a,$024e+x -1870: 68 05 cmp a,#$05 -1872: f0 1e beq $1892 -1874: 3f eb 17 call $17eb -1877: f6 68 fd mov a,$fd68+y -187a: c4 00 mov $00,a -187c: f6 04 fd mov a,$fd04+y -187f: c4 01 mov $01,a -1881: 8d 02 mov y,#$02 -1883: f7 00 mov a,($00)+y -1885: de 8c 0a cbne $8c+x,$1892 -1888: 8d 03 mov y,#$03 -188a: f7 00 mov a,($00)+y -188c: de a0 03 cbne $a0+x,$1892 - -; play melody byte -188f: 5f 74 1b jmp $1b74 - -1892: 3f 3b 1a call $1a3b ; get 1 byte -1895: fd mov y,a ; separate the flags -1896: ad e0 cmp y,#$e0 ; check if it's a vector command -1898: 90 16 bcc $18b0 ; if not a vector... -189a: dd mov a,y -189b: 28 1f and a,#$1f ; mask off bits -189d: 1c asl a -189e: fd mov y,a -189f: f6 79 1c mov a,$1c79+y -18a2: c5 ae 18 mov $18ae,a -18a5: f6 7a 1c mov a,$1c7a+y -18a8: c5 af 18 mov $18af,a -18ab: eb 3b mov y,$3b -18ad: 5f 0e 1c jmp $1c0e - -18b0: ad c0 cmp y,#$c0 ; is it a rest? -18b2: 90 06 bcc $18ba -18b4: 80 setc -18b5: a8 bf sbc a,#$bf ; get the duration -18b7: 5f bd 1a jmp $1abd ; and set rest - -18ba: ad 00 cmp y,#$00 ; is it a relative note? -18bc: 10 06 bpl $18c4 ; if so, play the note -18be: 80 setc ; otherwise, it must be an absolute note... -18bf: a8 60 sbc a,#$60 -18c1: fd mov y,a -18c2: 2f 16 bra $18da -18c4: 2d push a -18c5: 5c lsr a -18c6: 5c lsr a -18c7: 5c lsr a -18c8: 80 setc -18c9: a8 08 sbc a,#$08 -18cb: 60 clrc -18cc: 95 76 02 adc a,$0276+x -18cf: fd mov y,a -18d0: ae pop a -18d1: 28 07 and a,#$07 -18d3: bc inc a -18d4: 2f 07 bra $18dd -18d6: 3f 3b 1a call $1a3b -18d9: fd mov y,a -18da: 3f 3b 1a call $1a3b -18dd: 2d push a -18de: e8 00 mov a,#$00 -18e0: d5 c6 02 mov $02c6+x,a -18e3: d5 da 02 mov $02da+x,a -18e6: dd mov a,y -18e7: d5 76 02 mov $0276+x,a -18ea: 8f 01 89 mov $89,#$01 -18ed: f3 07 02 bbc7 $07,$18f2 -18f0: 8b 89 dec $89 -18f2: f2 07 clr7 $07 -18f4: ae pop a -18f5: 3f fb 18 call $18fb -18f8: 5f 31 17 jmp $1731 - -18fb: d4 b4 mov $b4+x,a -18fd: 3f 1e 1c call $1c1e -1900: e4 89 mov a,$89 -1902: f0 06 beq $190a -1904: 3f c8 17 call $17c8 -1907: 73 07 16 bbc3 $07,$1920 -190a: f5 27 06 mov a,$0627+x -190d: 30 0d bmi $191c -190f: fd mov y,a -1910: 7d mov a,x -1911: 08 80 or a,#$80 -1913: 76 d0 00 cmp a,$00d0+y -1916: d0 04 bne $191c -1918: dd mov a,y -1919: 5d mov x,a -191a: 2f 51 bra $196d -191c: ab 89 inc $89 -191e: 72 07 clr3 $07 -1920: e8 ff mov a,#$ff -1922: d5 27 06 mov $0627+x,a -1925: f5 b2 02 mov a,$02b2+x -1928: c4 50 mov $50,a -192a: f5 eb 05 mov a,$05eb+x -192d: c4 0a mov $0a,a -192f: f5 13 06 mov a,$0613+x -1932: c4 4f mov $4f,a -1934: f5 ff 05 mov a,$05ff+x -1937: 5d mov x,a -1938: f5 f8 17 mov a,$17f8+x -193b: c4 51 mov $51,a -193d: f5 7a 03 mov a,$037a+x -1940: 28 01 and a,#$01 -1942: d0 24 bne $1968 -1944: 3f 5b 0e call $0e5b -1947: 30 1f bmi $1968 -1949: f5 7a 03 mov a,$037a+x -194c: 28 fd and a,#$fd -194e: b3 0a 02 bbc5 $0a,$1953 -1951: 08 02 or a,#$02 -1953: d5 7a 03 mov $037a+x,a -1956: d3 0a 12 bbc6 $0a,$196b -1959: 7d mov a,x -195a: 53 0a 03 bbc2 $0a,$1960 -195d: bc inc a -195e: 2f 01 bra $1961 -1960: 9c dec a -1961: 28 07 and a,#$07 -1963: d5 ff 05 mov $05ff+x,a -1966: 2f 03 bra $196b -1968: 5f 36 1a jmp $1a36 - -196b: 7d mov a,x -196c: fd mov y,a -196d: f8 88 mov x,$88 -196f: d5 27 06 mov $0627+x,a -1972: 7d mov a,x -1973: 08 80 or a,#$80 -1975: d6 d0 00 mov $00d0+y,a -1978: e4 89 mov a,$89 -197a: f0 00 beq $197c -197c: cb c8 mov $c8,y -197e: e8 01 mov a,#$01 -1980: d6 6c 00 mov $006c+y,a -1983: f5 b2 02 mov a,$02b2+x -1986: d6 11 00 mov $0011+y,a -1989: dd mov a,y -198a: 1c asl a -198b: fd mov y,a -198c: f5 ee 02 mov a,$02ee+x -198f: d6 5b 01 mov $015b+y,a -1992: f5 02 03 mov a,$0302+x -1995: d6 5c 01 mov $015c+y,a -1998: f5 76 02 mov a,$0276+x -199b: 8d 14 mov y,#$14 -199d: cf mul ya -199e: 80 setc -199f: a8 84 sbc a,#$84 -19a1: c4 4c mov $4c,a -19a3: dd mov a,y -19a4: a8 03 sbc a,#$03 -19a6: c4 4d mov $4d,a -19a8: f5 da 02 mov a,$02da+x -19ab: fd mov y,a -19ac: f5 c6 02 mov a,$02c6+x -19af: 7a 4c addw ya,$4c -19b1: da 4c movw $4c,ya -19b3: f5 4f 06 mov a,$064f+x -19b6: fd mov y,a -19b7: f5 3b 06 mov a,$063b+x -19ba: 7a 4c addw ya,$4c -19bc: 7a 5d addw ya,$5d -19be: da 4c movw $4c,ya -19c0: f5 77 06 mov a,$0677+x -19c3: fd mov y,a -19c4: f5 63 06 mov a,$0663+x -19c7: 7a 4c addw ya,$4c -19c9: dd mov a,y -19ca: eb 89 mov y,$89 -19cc: d0 13 bne $19e1 -19ce: c4 30 mov $30,a -19d0: fa 4c 2f mov ($2f),($4c) -19d3: 8f d4 00 mov $00,#$d4 -19d6: 8f fc 01 mov $01,#$fc -19d9: 7d mov a,x -19da: 08 80 or a,#$80 -19dc: 3f f3 1d call $1df3 -19df: 2f 55 bra $1a36 -19e1: f5 c3 05 mov a,$05c3+x -19e4: 10 02 bpl $19e8 -19e6: e8 7f mov a,#$7f -19e8: c4 c9 mov $c9,a -19ea: e4 c8 mov a,$c8 -19ec: 1c asl a -19ed: fd mov y,a -19ee: e8 00 mov a,#$00 -19f0: 12 07 clr0 $07 -19f2: d6 d8 00 mov $00d8+y,a -19f5: d6 d9 00 mov $00d9+y,a -19f8: e4 c8 mov a,$c8 -19fa: fd mov y,a -19fb: f6 46 02 mov a,$0246+y -19fe: 08 02 or a,#$02 -1a00: d6 46 02 mov $0246+y,a -1a03: e8 ff mov a,#$ff -1a05: d6 92 03 mov $0392+y,a -1a08: f5 9e 02 mov a,$029e+x -1a0b: d6 9a 03 mov $039a+y,a -1a0e: f5 16 03 mov a,$0316+x -1a11: c4 0e mov $0e,a -1a13: f5 62 02 mov a,$0262+x -1a16: c5 3d 02 mov $023d,a -1a19: f5 3e 03 mov a,$033e+x -1a1c: c4 0d mov $0d,a -1a1e: f5 52 03 mov a,$0352+x -1a21: c4 10 mov $10,a -1a23: f5 2a 03 mov a,$032a+x -1a26: c4 0f mov $0f,a -1a28: eb c9 mov y,$c9 -1a2a: f5 8a 02 mov a,$028a+x -1a2d: cf mul ya -1a2e: f5 d7 05 mov a,$05d7+x -1a31: f8 c8 mov x,$c8 -1a33: 3f cd 0e call $0ecd -1a36: ab 89 inc $89 -1a38: 72 07 clr3 $07 -1a3a: 6f ret - -1a3b: 3f 99 0b call $0b99 -1a3e: f8 88 mov x,$88 -1a40: f4 8c mov a,$8c+x -1a42: c5 4b 1a mov $1a4b,a -1a45: f4 a0 mov a,$a0+x -1a47: c5 4c 1a mov $1a4c,a -1a4a: e5 86 dc mov a,$dc86 -1a4d: bb 8c inc $8c+x -1a4f: d0 02 bne $1a53 -1a51: bb a0 inc $a0+x -1a53: 6f ret - -; vcmd e9 - set effects mask -1a54: 3f 3b 1a call $1a3b -1a57: c4 0b mov $0b,a -1a59: 2f 09 bra $1a64 - -; vcmd e6 - set standard allocation -1a5b: e8 08 mov a,#$08 -1a5d: d5 eb 05 mov $05eb+x,a -1a60: 7d mov a,x -1a61: d5 ff 05 mov $05ff+x,a -1a64: 5f 6b 18 jmp $186b - -; vcmd e5 - set channel allocation -1a67: 3f 3b 1a call $1a3b -1a6a: d5 eb 05 mov $05eb+x,a -1a6d: 3f 3b 1a call $1a3b -1a70: d5 ff 05 mov $05ff+x,a -1a73: 3f 3b 1a call $1a3b -1a76: d5 13 06 mov $0613+x,a -1a79: 2f e9 bra $1a64 -1a7b: 3f c8 17 call $17c8 -1a7e: e8 00 mov a,#$00 -1a80: d5 66 03 mov $0366+x,a -1a83: 8b 86 dec $86 -1a85: 5f 31 17 jmp $1731 - -; vcmd f1 - delta expression -1a88: f5 c3 05 mov a,$05c3+x -1a8b: 3f 93 1a call $1a93 -1a8e: d5 c3 05 mov $05c3+x,a -1a91: 2f d1 bra $1a64 - -1a93: 4d push x -1a94: fd mov y,a -1a95: 6d push y -1a96: 3f 3b 1a call $1a3b -1a99: cf mul ya -1a9a: da 3b movw $3b,ya -1a9c: ee pop y -1a9d: 3f 3b 1a call $1a3b -1aa0: cf mul ya -1aa1: 6d push y -1aa2: 0b 3b asl $3b -1aa4: 84 3c adc a,$3c -1aa6: 5d mov x,a -1aa7: ae pop a -1aa8: 88 00 adc a,#$00 -1aaa: fd mov y,a -1aab: d0 03 bne $1ab0 -1aad: 7d mov a,x -1aae: 10 02 bpl $1ab2 -1ab0: e8 7f mov a,#$7f -1ab2: ce pop x -1ab3: 6f ret - -; vcmd f2 - absolute expression -1ab4: 3f 3b 1a call $1a3b -1ab7: d5 c3 05 mov $05c3+x,a -1aba: 5f 6b 18 jmp $186b - -1abd: 2d push a -1abe: 3f c8 17 call $17c8 -1ac1: ae pop a -1ac2: d4 b4 mov $b4+x,a -1ac4: 3f 1e 1c call $1c1e -1ac7: 5f 31 17 jmp $1731 - -; vcmd fd - set time (delay) - 64 -1aca: e8 40 mov a,#$40 -1acc: 2f f4 bra $1ac2 - -; vcmd f8 - set time (delay) - 32 -1ace: e8 20 mov a,#$20 -1ad0: 2f f0 bra $1ac2 - -; vcmd fe - set time (delay) - 128 -1ad2: e8 80 mov a,#$80 -1ad4: 2f ec bra $1ac2 - -; vcmd ff - set time (delay) - 256 -1ad6: e8 00 mov a,#$00 -1ad8: 2f e8 bra $1ac2 - -; vcmd f5 - set sound (instrument) -1ada: 3f 3b 1a call $1a3b -1add: d5 d7 05 mov $05d7+x,a -1ae0: f5 4e 02 mov a,$024e+x -1ae3: 68 05 cmp a,#$05 -1ae5: f0 2b beq $1b12 -1ae7: 3f eb 17 call $17eb -1aea: f6 68 fd mov a,$fd68+y -1aed: c4 00 mov $00,a -1aef: f6 04 fd mov a,$fd04+y -1af2: c4 01 mov $01,a -1af4: f6 04 fc mov a,$fc04+y -1af7: 8d 09 mov y,#$09 -1af9: 77 00 cmp a,($00)+y -1afb: 90 02 bcc $1aff -1afd: e8 00 mov a,#$00 -1aff: bc inc a -1b00: eb 02 mov y,$02 -1b02: d6 04 fc mov $fc04+y,a -1b05: 60 clrc -1b06: 88 09 adc a,#$09 -1b08: fd mov y,a -1b09: f7 00 mov a,($00)+y -1b0b: 68 ff cmp a,#$ff -1b0d: f0 03 beq $1b12 -1b0f: d5 d7 05 mov $05d7+x,a -1b12: 5f 6b 18 jmp $186b - -; vcmd f6 - play phrase -1b15: f5 4e 02 mov a,$024e+x -1b18: 9c dec a -1b19: d5 4e 02 mov $024e+x,a -1b1c: 3f eb 17 call $17eb -1b1f: f4 8c mov a,$8c+x -1b21: d6 68 fd mov $fd68+y,a -1b24: f4 a0 mov a,$a0+x -1b26: d6 04 fd mov $fd04+y,a -1b29: e8 00 mov a,#$00 -1b2b: d6 68 fc mov $fc68+y,a -1b2e: 3f 3b 1a call $1a3b -1b31: 2d push a -1b32: 3f 40 1a call $1a40 -1b35: 2d push a -1b36: 3f 40 1a call $1a40 -1b39: 3f 40 1a call $1a40 -1b3c: 3f 40 1a call $1a40 -1b3f: 3f 40 1a call $1a40 -1b42: fd mov y,a -1b43: 3f 40 1a call $1a40 -1b46: 2d push a -1b47: dd mov a,y -1b48: 60 clrc -1b49: 95 3b 06 adc a,$063b+x -1b4c: d5 3b 06 mov $063b+x,a -1b4f: ae pop a -1b50: 95 4f 06 adc a,$064f+x -1b53: d5 4f 06 mov $064f+x,a -1b56: f5 c3 05 mov a,$05c3+x -1b59: eb 02 mov y,$02 -1b5b: d6 00 fe mov $fe00+y,a -1b5e: 3f 93 1a call $1a93 -1b61: d5 c3 05 mov $05c3+x,a -1b64: eb 02 mov y,$02 -1b66: e8 00 mov a,#$00 -1b68: d6 04 fc mov $fc04+y,a -1b6b: ae pop a -1b6c: d4 a0 mov $a0+x,a -1b6e: ae pop a -1b6f: d4 8c mov $8c+x,a -1b71: 5f 6b 18 jmp $186b - -1b74: eb 02 mov y,$02 -1b76: f6 68 fc mov a,$fc68+y -1b79: bc inc a -1b7a: d6 68 fc mov $fc68+y,a -1b7d: 8d 04 mov y,#$04 -1b7f: f7 00 mov a,($00)+y -1b81: f0 07 beq $1b8a -1b83: eb 02 mov y,$02 -1b85: 76 68 fc cmp a,$fc68+y -1b88: f0 0f beq $1b99 -1b8a: 8d 00 mov y,#$00 -1b8c: f7 00 mov a,($00)+y -1b8e: d4 8c mov $8c+x,a -1b90: 8d 01 mov y,#$01 -1b92: f7 00 mov a,($00)+y -1b94: d4 a0 mov $a0+x,a -1b96: 5f 92 18 jmp $1892 - -1b99: f5 3b 06 mov a,$063b+x -1b9c: 80 setc -1b9d: 8d 05 mov y,#$05 -1b9f: b7 00 sbc a,($00)+y -1ba1: d5 3b 06 mov $063b+x,a -1ba4: f5 4f 06 mov a,$064f+x -1ba7: 8d 06 mov y,#$06 -1ba9: b7 00 sbc a,($00)+y -1bab: d5 4f 06 mov $064f+x,a -1bae: eb 02 mov y,$02 -1bb0: f6 00 fe mov a,$fe00+y -1bb3: d5 c3 05 mov $05c3+x,a -1bb6: e4 00 mov a,$00 -1bb8: 60 clrc -1bb9: 88 0a adc a,#$0a -1bbb: d4 8c mov $8c+x,a -1bbd: e4 01 mov a,$01 -1bbf: 88 00 adc a,#$00 -1bc1: d4 a0 mov $a0+x,a -1bc3: 8d 09 mov y,#$09 -1bc5: f7 00 mov a,($00)+y -1bc7: 60 clrc -1bc8: 94 8c adc a,$8c+x -1bca: d4 8c mov $8c+x,a -1bcc: f4 a0 mov a,$a0+x -1bce: 88 00 adc a,#$00 -1bd0: d4 a0 mov $a0+x,a -1bd2: f5 4e 02 mov a,$024e+x -1bd5: bc inc a -1bd6: d5 4e 02 mov $024e+x,a -1bd9: 5f 6b 18 jmp $186b - -; vcmd f0 - end of sequence -1bdc: 3f c8 17 call $17c8 -1bdf: 2f 03 bra $1be4 - -; vcmd f9 - go to loop -1be1: 3f 06 1d call $1d06 -1be4: 5f 6b 18 jmp $186b - -; vcmd fa - set tempo -1be7: 3f 3b 1a call $1a3b -1bea: c4 cb mov $cb,a -1bec: 2f f6 bra $1be4 - -; vcmd fb - set panning -1bee: 3f 3b 1a call $1a3b -1bf1: d5 9e 02 mov $029e+x,a -1bf4: 2f ee bra $1be4 - -; vcmd e0 - set hardware detune -1bf6: 3f 3b 1a call $1a3b -1bf9: d5 ee 02 mov $02ee+x,a -1bfc: 3f 3b 1a call $1a3b -1bff: d5 02 03 mov $0302+x,a -1c02: 2f e0 bra $1be4 - -; vcmd f3 - set priority -1c04: 3f 3b 1a call $1a3b -1c07: d5 b2 02 mov $02b2+x,a -1c0a: c2 07 set6 $07 -1c0c: 2f d6 bra $1be4 - -; vcmd f4 - set tied note -1c0e: 3f 3b 1a call $1a3b -1c11: d5 8a 02 mov $028a+x,a -1c14: 2f ce bra $1be4 - -; vcmd fc - set no retrigger -1c16: 62 07 set3 $07 -1c18: 2f ca bra $1be4 - -1c1a: e2 07 set7 $07 -1c1c: 2f c6 bra $1be4 - -1c1e: e8 02 mov a,#$02 -1c20: d5 66 03 mov $0366+x,a -1c23: 6f ret - -1c24: e8 08 mov a,#$08 -1c26: d5 66 03 mov $0366+x,a -1c29: 6f ret - -1c2a: 78 80 ca cmp $ca,#$80 -1c2d: 90 08 bcc $1c37 -1c2f: 60 clrc -1c30: 84 ca adc a,$ca -1c32: 10 09 bpl $1c3d -1c34: e8 00 mov a,#$00 -1c36: 6f ret - -1c37: 84 ca adc a,$ca -1c39: 10 02 bpl $1c3d -1c3b: e8 7f mov a,#$7f -1c3d: 6f ret - -; vcmd e1 - set amplitude articulation -1c3e: 3f 3b 1a call $1a3b -1c41: d5 16 03 mov $0316+x,a -1c44: 2f 9e bra $1be4 - -; vcmd 00-0f - extended melody vectors -1c46: 3f 3b 1a call $1a3b -1c49: d5 62 02 mov $0262+x,a -1c4c: 2f 96 bra $1be4 - -; vcmd e2 - set stereo articulation -1c4e: 3f 3b 1a call $1a3b -1c51: d5 52 03 mov $0352+x,a -1c54: 2f 8e bra $1be4 - -; vcmd e4 - set pitch articulation -1c56: 3f 3b 1a call $1a3b -1c59: d5 2a 03 mov $032a+x,a -1c5c: 2f f6 bra $1c54 - -; vcmd e3 - set tone articulation -1c5e: 3f 3b 1a call $1a3b -1c61: d5 3e 03 mov $033e+x,a -1c64: 2f ee bra $1c54 - -; vcmd e7 - reset track -1c66: 3f 25 1d call $1d25 -1c69: 2f e9 bra $1c54 - -; vcmd f7 - set detune -1c6b: 3f 3b 1a call $1a3b -1c6e: d5 63 06 mov $0663+x,a -1c71: 3f 3b 1a call $1a3b -1c74: d5 77 06 mov $0677+x,a -1c77: 2f db bra $1c54 - -; vcmd table (e0-ff) -1c79: dw $1bf6 ; e0 - set hardware detune -1c7b: dw $1c3e ; e1 - set amplitude articulation -1c7d: dw $1c4e ; e2 - set stereo articulation -1c7f: dw $1c5e ; e3 - set tone articulation -1c81: dw $1c56 ; e4 - set pitch articulation -1c83: dw $1a67 ; e5 - set channel allocation -1c85: dw $1a5b ; e6 - set standard allocation -1c87: dw $1c66 ; e7 - reset track -1c89: dw $0000 ; e8 - redirect track (disabled) -1c8b: dw $1a54 ; e9 - set effects mask -1c8d: dw $1bdc ; ea - set release -1c8f: dw $1772 ; eb - set pitch bend state -1c91: dw $176f ; ec - set pitch bend state and release -1c93: dw $1c0e ; ed - set velocity -1c95: dw $1cbb ; ee - extended command -1c97: dw $18d6 ; ef - play absolute note -1c99: dw $1a7b ; f0 - end of sequence -1c9b: dw $1a88 ; f1 - delta expression -1c9d: dw $1ab4 ; f2 - absolute expression -1c9f: dw $1c04 ; f3 - set priority -1ca1: dw $1c1a ; f4 - set tied note -1ca3: dw $1ada ; f5 - set sound (instrument) -1ca5: dw $1b15 ; f6 - play phrase -1ca7: dw $1c6b ; f7 - set detune -1ca9: dw $1ace ; f8 - set time (delay) - 32 -1cab: dw $1be1 ; f9 - go to loop -1cad: dw $1be7 ; fa - set tempo -1caf: dw $1bee ; fb - set panning -1cb1: dw $1c16 ; fc - set no retrigger -1cb3: dw $1aca ; fd - set time (delay) - 64 -1cb5: dw $1ad2 ; fe - set time (delay) - 128 -1cb7: dw $1ad6 ; ff - set time (delay) - 256 -1cb9: dw $1c46 ; 00-0f - extended melody vectors - -1cbb: 3f 3b 1a call $1a3b -1cbe: dd mov a,y -1cbf: 1c asl a -1cc0: fd mov y,a -1cc1: f6 b9 1c mov a,$1cb9+y -1cc4: c5 d0 1c mov $1cd0,a -1cc7: f6 ba 1c mov a,$1cba+y -1cca: c5 d1 1c mov $1cd1,a -1ccd: eb 3b mov y,$3b -1ccf: 5f cf 1c jmp $1ccf - -1cd2: 2d push a -1cd3: 3f 22 0d call $0d22 -1cd6: ae pop a -1cd7: 92 07 clr4 $07 -1cd9: 8d 1a mov y,#$1a -1cdb: 3f 2c 10 call $102c -1cde: da 8a movw $8a,ya -1ce0: 8d 00 mov y,#$00 -1ce2: f7 8a mov a,($8a)+y -1ce4: c4 85 mov $85,a -1ce6: c4 86 mov $86,a -1ce8: f0 1b beq $1d05 -1cea: cb 88 mov $88,y -1cec: 3f 06 1d call $1d06 -1cef: ab 88 inc $88 -1cf1: e8 00 mov a,#$00 -1cf3: d3 08 02 bbc6 $08,$1cf8 -1cf6: e8 01 mov a,#$01 -1cf8: f8 88 mov x,$88 -1cfa: 35 7a 03 and a,$037a+x -1cfd: d5 7a 03 mov $037a+x,a -1d00: 69 85 88 cmp ($88),($85) -1d03: d0 e7 bne $1cec -1d05: 6f ret - -1d06: e4 88 mov a,$88 -1d08: 5d mov x,a -1d09: 1c asl a -1d0a: bc inc a -1d0b: fd mov y,a -1d0c: f7 8a mov a,($8a)+y -1d0e: d4 8c mov $8c+x,a -1d10: fc inc y -1d11: f7 8a mov a,($8a)+y -1d13: d4 a0 mov $a0+x,a -1d15: e8 ff mov a,#$ff -1d17: c4 cc mov $cc,a -1d19: c4 0b mov $0b,a -1d1b: e8 05 mov a,#$05 -1d1d: d5 4e 02 mov $024e+x,a -1d20: e8 04 mov a,#$04 -1d22: d5 66 03 mov $0366+x,a -1d25: 72 07 clr3 $07 -1d27: f2 07 clr7 $07 -1d29: f8 88 mov x,$88 -1d2b: e8 08 mov a,#$08 -1d2d: d5 eb 05 mov $05eb+x,a -1d30: 7d mov a,x -1d31: d5 ff 05 mov $05ff+x,a -1d34: e8 00 mov a,#$00 -1d36: d5 76 02 mov $0276+x,a -1d39: d5 c6 02 mov $02c6+x,a -1d3c: d5 da 02 mov $02da+x,a -1d3f: d5 3b 06 mov $063b+x,a -1d42: d5 4f 06 mov $064f+x,a -1d45: d5 63 06 mov $0663+x,a -1d48: d5 77 06 mov $0677+x,a -1d4b: d5 ee 02 mov $02ee+x,a -1d4e: d5 02 03 mov $0302+x,a -1d51: d5 16 03 mov $0316+x,a -1d54: d5 62 02 mov $0262+x,a -1d57: d5 52 03 mov $0352+x,a -1d5a: d5 3e 03 mov $033e+x,a -1d5d: d5 2a 03 mov $032a+x,a -1d60: d5 9e 02 mov $029e+x,a -1d63: 9c dec a -1d64: d5 27 06 mov $0627+x,a -1d67: d5 8a 02 mov $028a+x,a -1d6a: e8 40 mov a,#$40 -1d6c: d5 b2 02 mov $02b2+x,a -1d6f: e8 7f mov a,#$7f -1d71: d5 c3 05 mov $05c3+x,a -1d74: c2 07 set6 $07 -1d76: 8f 6c 00 mov $00,#$6c -1d79: 8f 00 01 mov $01,#$00 -1d7c: 7d mov a,x -1d7d: 08 80 or a,#$80 -1d7f: 8d 00 mov y,#$00 -1d81: 5f c2 1d jmp $1dc2 - -1d84: c4 5b mov $5b,a -1d86: 6f ret - -1d87: c4 5c mov $5c,a -1d89: 6f ret - -1d8a: da 5d movw $5d,ya -1d8c: 6f ret - -1d8d: da 2f movw $2f,ya -1d8f: 6f ret - -1d90: c4 fb mov $fb,a -1d92: 6f ret - -1d93: 28 7f and a,#$7f -1d95: c5 3e 02 mov $023e,a -1d98: 6f ret - -1d99: 12 08 clr0 $08 -1d9b: c5 06 01 mov $0106,a -1d9e: 68 ff cmp a,#$ff -1da0: f0 02 beq $1da4 -1da2: 02 08 set0 $08 -1da4: 6f ret - -1da5: c5 3f 02 mov $023f,a -1da8: 6f ret - -1da9: c5 40 02 mov $0240,a -1dac: 6f ret - -1dad: c5 41 02 mov $0241,a -1db0: cc 42 02 mov $0242,y -1db3: 6f ret - -1db4: 8f 9a 00 mov $00,#$9a -1db7: 8f 03 01 mov $01,#$03 -1dba: 2f 06 bra $1dc2 -1dbc: 8f 92 00 mov $00,#$92 -1dbf: 8f 03 01 mov $01,#$03 -1dc2: c4 3b mov $3b,a -1dc4: dd mov a,y -1dc5: 5d mov x,a -1dc6: e8 07 mov a,#$07 -1dc8: fd mov y,a -1dc9: f6 d0 00 mov a,$00d0+y -1dcc: 2e 3b 03 cbne $3b,$1dd2 -1dcf: 7d mov a,x -1dd0: d7 00 mov ($00)+y,a -1dd2: dc dec y -1dd3: 10 f4 bpl $1dc9 -1dd5: 6f ret - -1dd6: 28 7f and a,#$7f -1dd8: c4 3b mov $3b,a -1dda: cd 07 mov x,#$07 -1ddc: f4 d0 mov a,$d0+x -1dde: 2e 3b 08 cbne $3b,$1de9 -1de1: f5 46 02 mov a,$0246+x -1de4: 08 03 or a,#$03 -1de6: d5 46 02 mov $0246+x,a -1de9: 1d dec x -1dea: 10 f0 bpl $1ddc -1dec: 6f ret - -1ded: 8f d8 00 mov $00,#$d8 -1df0: 8f 00 01 mov $01,#$00 -1df3: c4 3b mov $3b,a -1df5: e8 0f mov a,#$0f -1df7: fd mov y,a -1df8: e8 07 mov a,#$07 -1dfa: 5d mov x,a -1dfb: f4 d0 mov a,$d0+x -1dfd: 2e 3b 0a cbne $3b,$1e0a -1e00: e4 30 mov a,$30 -1e02: d7 00 mov ($00)+y,a -1e04: dc dec y -1e05: e4 2f mov a,$2f -1e07: d7 00 mov ($00)+y,a -1e09: fc inc y -1e0a: dc dec y -1e0b: dc dec y -1e0c: 1d dec x -1e0d: 10 ec bpl $1dfb -1e0f: 6f ret - -1e10: 5d mov x,a -1e11: e8 01 mov a,#$01 -1e13: 15 7a 03 or a,$037a+x -1e16: d5 7a 03 mov $037a+x,a -1e19: 6f ret - -1e1a: 5d mov x,a -1e1b: e8 fe mov a,#$fe -1e1d: 35 7a 03 and a,$037a+x -1e20: 2f f4 bra $1e16 - -1e22: dw $2e,$03,$03,$d2,$08,$6f,$c2,$08,$6f,$eb,$09,$c4,$09,$dd,$f3,$08,$05,$8d,$00,$3f,$24,$0d,$e2,$08,$6f,$31,$17,$61,$17,$6b,$18,$00,$18,$59,$17,$b4,$0c,$e8,$0c,$ed,$0c,$d9,$0c,$d6,$1d,$00,$00,$8c,$07,$73,$0d,$c7,$0c,$c1,$0c,$bd,$0c,$2b,$1e,$22,$0d,$24,$0d,$00,$00,$00,$00,$00,$00,$78,$0d,$e5,$0c,$84,$1d,$90,$1d,$8a,$1d,$87,$1d,$ad,$1d,$93,$1d,$a5,$1d,$bc,$1d,$8d,$1d,$ed,$1d,$a9,$1d,$b4,$1d,$99,$1d,$10,$1e,$1a,$1e,$22,$1e,$88,$07,$3b,$20 - -; uncompiled source code -1e8f: db $41,$20,$68,$61,$73,$20,$74,$72,$61,$63,$6b,$20,$6e,$75,$6d,$62,$65,$72,$20,$2d,$20,$4e,$4f,$20,$65,$72,$72,$6f,$72,$20,$63,$68,$65,$63,$6b,$69,$6e,$67,$20,$69,$73,$20,$64,$6f,$6e,$65,$0d,$0a,$0d,$0a,$44,$6f,$4d,$75,$74,$65,$54,$72,$61,$63,$6b,$0d,$0a,$20,$20,$20,$20,$6d,$6f \ No newline at end of file From a540f4f262d734bb831f0759e0945f9268d54afd Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:50:48 -0700 Subject: [PATCH 018/116] Delete Sculptured Software/Super Star Wars.s --- Sculptured Software/Super Star Wars.s | 1876 ------------------------- 1 file changed, 1876 deletions(-) delete mode 100644 Sculptured Software/Super Star Wars.s diff --git a/Sculptured Software/Super Star Wars.s b/Sculptured Software/Super Star Wars.s deleted file mode 100644 index 3a9304c6..00000000 --- a/Sculptured Software/Super Star Wars.s +++ /dev/null @@ -1,1876 +0,0 @@ -0700: 20 clrp -0701: cd ff mov x,#$ff ; set stack pointer -0703: bd mov sp,x -0704: 8f 6c f2 mov $f2,#$6c ; reset DSP flags -0707: d8 f3 mov $f3,x -0709: 8f b0 f1 mov $f1,#$b0 ; clear input ports APUI00-APUI04 -070c: 8f 20 fa mov $fa,#$20 -070f: 8f 81 f1 mov $f1,#$81 ; toggle timer 2 -0712: 3f f7 0d call $0df7 ; clear/reset routine -0715: 8f 00 0b mov $0b,#$00 ; variables = sample directory start -0718: 8f 18 0c mov $0c,#$18 -071b: 8d 03 mov y,#$03 ; set temporary storage -071d: f6 ff ff mov a,$ffff+y -0720: 16 27 07 or a,$0727+y -0723: d6 ff ff mov $ffff+y,a -0726: fe f5 dbnz y,$071d -0728: ab 15 inc $15 -072a: e4 1b mov a,$1b -072c: d0 05 bne $0733 -072e: 3f 86 15 call $1586 ; do a random number generator (RNG) -0731: 2f 03 bra $0736 -0733: 3f 58 08 call $0858 -0736: e4 f6 mov a,$f6 -0738: f0 03 beq $073d -073a: 3f 3d 0b call $0b3d -073d: e4 fd mov a,$fd -073f: 60 clrc -0740: 84 14 adc a,$14 -0742: c4 14 mov $14,a -0744: 68 05 cmp a,#$05 -0746: 90 ee bcc $0736 -0748: a8 05 sbc a,#$05 -074a: c4 14 mov $14,a -074c: 68 14 cmp a,#$14 -074e: 90 d8 bcc $0728 -0750: 8f 00 14 mov $14,#$00 -0753: 2f d3 bra $0728 -0755: 8d 00 mov y,#$00 -0757: 8f aa f4 mov $f4,#$aa -075a: 8f bb f5 mov $f5,#$bb -075d: f8 f4 mov x,$f4 -075f: c8 cc cmp x,#$cc -0761: d0 fa bne $075d -0763: fa f6 03 mov ($03),($f6) -0766: fa f7 04 mov ($04),($f7) -0769: 7d mov a,x -076a: f8 f5 mov x,$f5 -076c: c4 f4 mov $f4,a -076e: d0 05 bne $0775 -0770: d8 f6 mov $f6,x -0772: 1f 03 00 jmp ($0003+x) - -0775: cd 00 mov x,#$00 -0777: 3e f4 cmp x,$f4 -0779: d0 fc bne $0777 -077b: e4 f5 mov a,$f5 -077d: d7 03 mov ($03)+y,a -077f: f8 f4 mov x,$f4 -0781: d8 f4 mov $f4,x -0783: 3a 03 incw $03 -0785: 3e f4 cmp x,$f4 -0787: f0 fc beq $0785 -0789: 3d inc x -078a: 3e f4 cmp x,$f4 -078c: f0 ed beq $077b -078e: f8 f4 mov x,$f4 -0790: 2f d1 bra $0763 -0792: 3f f7 0d call $0df7 -0795: 8f b0 f1 mov $f1,#$b0 -0798: cd 00 mov x,#$00 -079a: f5 55 07 mov a,$0755+x -079d: d5 00 01 mov $0100+x,a -07a0: 3d inc x -07a1: c8 3d cmp x,#$3d -07a3: 90 f5 bcc $079a -07a5: 5f 00 01 jmp $0100 - -; gain tables -07a8: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 -07be: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 - -; DSP registers: VxENVX -07d4: db $08,$18,$28,$38,$48,$58,$68,$78 -; DSP registers: VxGAIN -07dc: db $07,$17,$27,$37,$47,$57,$67,$77 -; DSP registers: VxSCRN (select sample) -07e4: db $04,$14,$24,$34,$44,$54,$64,$74 -; DSP registers: VxPITCHL -07ec: db $02,$12,$22,$32,$42,$52,$62,$72 -; DSP registers: VxVOLL -07f4: db $00,$10,$20,$30,$40,$50,$60,$70 - -; voice numbers and bits for clearing those void bits -07fc: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f - -; echo poke registers -080c: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f - -0818: db $02,$02,$02,$02,$02,$03,$03,$03 -0820: db $97,$ac,$c1,$d6,$eb,$00,$15,$2a - -0828: db $03,$03,$03,$03,$03,$03,$03,$03 -0830: db $3f,$54,$69,$7e,$93,$a8,$bd,$d2 - -0838: db $03,$03,$04,$04,$04,$04,$04,$04 -0840: db $e7,$fc,$11,$26,$3b,$50,$65,$7a - -0848: db $04,$04,$04,$04,$04,$04,$05,$05 -0850: db $8f,$a5,$bb,$d1,$e7,$fd,$13,$29 - -0858: 3f 86 15 call $1586 ; use RNG -085b: 3f 0a 13 call $130a -085e: 8f 00 2f mov $2f,#$00 -0861: 8f 00 44 mov $44,#$00 -0864: 8f 7c f2 mov $f2,#$7c ; clear end of sample flags? -0867: e4 f3 mov a,$f3 -0869: 04 41 or a,$41 -086b: 24 47 and a,$47 -086d: c4 41 mov $41,a -086f: 8f 00 f3 mov $f3,#$00 -0872: 24 42 and a,$42 -0874: 04 43 or a,$43 -0876: c4 43 mov $43,a -0878: cd 07 mov x,#$07 -087a: 8f 7a 0d mov $0d,#$7a -087d: 8f 04 0e mov $0e,#$04 -0880: d8 0f mov $0f,x -0882: f5 fc 07 mov a,$07fc+x ; clear voice number bits -0885: c4 31 mov $31,a -0887: 48 ff eor a,#$ff -0889: c4 32 mov $32,a -088b: f4 53 mov a,$53+x -088d: 28 02 and a,#$02 -088f: c4 30 mov $30,a -0891: d0 06 bne $0899 -0893: f5 77 02 mov a,$0277+x -0896: 5f 9e 08 jmp $089e -0899: 3f db 0e call $0edb -089c: f8 0f mov x,$0f -089e: 75 7f 02 cmp a,$027f+x -08a1: d0 10 bne $08b3 -08a3: 3f 75 10 call $1075 -08a6: 3f 23 0b call $0b23 -08a9: e4 48 mov a,$48 -08ab: 24 45 and a,$45 -08ad: 24 31 and a,$31 -08af: d0 43 bne $08f4 -08b1: f0 44 beq $08f7 -08b3: d5 7f 02 mov $027f+x,a -08b6: 09 31 2f or ($2f),($31) -08b9: 3f 75 10 call $1075 -08bc: 7d mov a,x -08bd: 1c asl a -08be: 5d mov x,a -08bf: e4 49 mov a,$49 -08c1: d5 87 02 mov $0287+x,a -08c4: e4 4a mov a,$4a -08c6: d5 88 02 mov $0288+x,a -08c9: f8 0f mov x,$0f -08cb: e4 4b mov a,$4b -08cd: 28 20 and a,#$20 -08cf: f0 05 beq $08d6 -08d1: 29 32 42 and ($42),($32) -08d4: 2f 03 bra $08d9 -08d6: 09 31 42 or ($42),($31) -08d9: e4 4b mov a,$4b -08db: 28 40 and a,#$40 -08dd: f0 05 beq $08e4 -08df: 09 31 48 or ($48),($31) -08e2: 2f 03 bra $08e7 -08e4: 29 32 48 and ($48),($32) -08e7: 3f 23 0b call $0b23 -08ea: e4 48 mov a,$48 -08ec: 04 45 or a,$45 -08ee: 24 31 and a,$31 -08f0: d0 02 bne $08f4 -08f2: f0 03 beq $08f7 -08f4: 09 31 44 or ($44),($31) -08f7: 1d dec x -08f8: 30 0a bmi $0904 -08fa: 80 setc -08fb: b8 15 0d sbc $0d,#$15 -08fe: b8 00 0e sbc $0e,#$00 -0901: 5f 80 08 jmp $0880 - -0904: e4 45 mov a,$45 -0906: 24 43 and a,$43 -0908: 04 44 or a,$44 -090a: c4 46 mov $46,a -090c: 8f 5c f2 mov $f2,#$5c -090f: c4 f3 mov $f3,a -0911: cd 07 mov x,#$07 -0913: 8f d2 0d mov $0d,#$d2 -0916: 8f 03 0e mov $0e,#$03 -0919: d8 0f mov $0f,x -091b: f4 53 mov a,$53+x -091d: fd mov y,a -091e: 28 40 and a,#$40 -0920: 0d push psw -0921: dd mov a,y -0922: 28 04 and a,#$04 -0924: 0d push psw -0925: 7d mov a,x -0926: fd mov y,a -0927: 1c asl a -0928: 5d mov x,a -0929: f5 48 02 mov a,$0248+x ; get base note -092c: c4 2e mov $2e,a -092e: f5 47 02 mov a,$0247+x -0931: c4 2d mov $2d,a -0933: 8e pop psw -0934: f0 11 beq $0947 -0936: 4d push x ; save word addressing -0937: 3f db 0e call $0edb ; advance pitch envelope -093a: ce pop x ; restore pitch flag -093b: 7a 2d addw ya,$2d -093d: 80 setc -093e: a8 b0 sbc a,#$b0 -0940: c4 2d mov $2d,a -0942: dd mov a,y -0943: a8 04 sbc a,#$04 -0945: c4 2e mov $2e,a -0947: f5 88 02 mov a,$0288+x -094a: fd mov y,a -094b: f5 87 02 mov a,$0287+x -094e: 7a 2d addw ya,$2d -0950: 8e pop psw -0951: d0 03 bne $0956 -0953: 3f 9f 10 call $109f ; translate note to frequency -0956: f8 0f mov x,$0f -0958: d5 57 02 mov $0257+x,a -095b: dd mov a,y -095c: d5 5f 02 mov $025f+x,a -095f: 80 setc -0960: b8 15 0d sbc $0d,#$15 -0963: b8 00 0e sbc $0e,#$00 -0966: 1d dec x -0967: 10 b0 bpl $0919 -0969: 8f 5c f2 mov $f2,#$5c -096c: 8f 00 f3 mov $f3,#$00 -096f: cd 07 mov x,#$07 -0971: 8f 2a 0d mov $0d,#$2a -0974: 8f 03 0e mov $0e,#$03 -0977: d8 0f mov $0f,x -0979: f5 fc 07 mov a,$07fc+x -097c: c4 31 mov $31,a -097e: 48 ff eor a,#$ff -0980: c4 32 mov $32,a -0982: f4 53 mov a,$53+x -0984: 28 01 and a,#$01 -0986: d0 06 bne $098e -0988: f5 2f 02 mov a,$022f+x -098b: 5f 93 09 jmp $0993 - -098e: 3f db 0e call $0edb -0991: f8 0f mov x,$0f -0993: d5 37 02 mov $0237+x,a -0996: fd mov y,a -0997: e4 2f mov a,$2f -0999: 24 31 and a,$31 -099b: f0 0a beq $09a7 -099d: f5 e4 07 mov a,$07e4+x -09a0: c4 f2 mov $f2,a -09a2: f5 7f 02 mov a,$027f+x -09a5: c4 f3 mov $f3,a -09a7: e4 40 mov a,$40 -09a9: 24 31 and a,$31 -09ab: f0 05 beq $09b2 -09ad: 29 32 40 and ($40),($32) -09b0: 2f 37 bra $09e9 -09b2: f5 d4 07 mov a,$07d4+x -09b5: c4 f2 mov $f2,a -09b7: dd mov a,y -09b8: 80 setc -09b9: a4 f3 sbc a,$f3 -09bb: b0 09 bcs $09c6 -09bd: 8f 80 22 mov $22,#$80 -09c0: 48 ff eor a,#$ff -09c2: bc inc a -09c3: 5f c9 09 jmp $09c9 - -09c6: 8f c0 22 mov $22,#$c0 -09c9: 5c lsr a -09ca: d0 09 bne $09d5 -09cc: ad 00 cmp y,#$00 -09ce: d0 05 bne $09d5 -09d0: e8 82 mov a,#$82 -09d2: 5f e3 09 jmp $09e3 - -09d5: 8d 15 mov y,#$15 -09d7: 76 a8 07 cmp a,$07a8+y -09da: 90 02 bcc $09de -09dc: fe f9 dbnz y,$09d7 -09de: f6 be 07 mov a,$07be+y -09e1: 04 22 or a,$22 -09e3: 75 3f 02 cmp a,$023f+x -09e6: f0 0c beq $09f4 -09e8: fd mov y,a -09e9: f5 dc 07 mov a,$07dc+x -09ec: c4 f2 mov $f2,a -09ee: cb f3 mov $f3,y -09f0: dd mov a,y -09f1: d5 3f 02 mov $023f+x,a -09f4: f5 ec 07 mov a,$07ec+x -09f7: c4 f2 mov $f2,a -09f9: fd mov y,a -09fa: f5 57 02 mov a,$0257+x -09fd: c4 f3 mov $f3,a -09ff: fc inc y -0a00: cb f2 mov $f2,y -0a02: f5 5f 02 mov a,$025f+x -0a05: c4 f3 mov $f3,a -0a07: 80 setc -0a08: b8 15 0d sbc $0d,#$15 -0a0b: b8 00 0e sbc $0e,#$00 -0a0e: 1d dec x -0a0f: 30 03 bmi $0a14 -0a11: 5f 77 09 jmp $0977 - -0a14: 8f 4c f2 mov $f2,#$4c -0a17: fa 46 f3 mov ($f3),($46) -0a1a: e4 46 mov a,$46 -0a1c: 48 ff eor a,#$ff -0a1e: c4 47 mov $47,a -0a20: 29 47 41 and ($41),($47) -0a23: 29 47 43 and ($43),($47) -0a26: 8f 00 45 mov $45,#$00 -0a29: cd 07 mov x,#$07 -0a2b: 8f 29 0d mov $0d,#$29 -0a2e: 8f 05 0e mov $0e,#$05 -0a31: 8f 00 34 mov $34,#$00 -0a34: d8 0f mov $0f,x -0a36: e4 52 mov a,$52 -0a38: d0 13 bne $0a4d -0a3a: f4 53 mov a,$53+x -0a3c: 28 08 and a,#$08 -0a3e: c4 34 mov $34,a -0a40: d0 06 bne $0a48 -0a42: f5 6f 02 mov a,$026f+x -0a45: 5f 4d 0a jmp $0a4d - -0a48: 3f db 0e call $0edb -0a4b: f8 0f mov x,$0f -0a4d: fd mov y,a -0a4e: f5 67 02 mov a,$0267+x -0a51: c4 29 mov $29,a -0a53: cf mul ya -0a54: cd 64 mov x,#$64 -0a56: 9e div ya,x -0a57: f8 0f mov x,$0f -0a59: eb 34 mov y,$34 -0a5b: f0 11 beq $0a6e -0a5d: c4 27 mov $27,a -0a5f: 8d 15 mov y,#$15 -0a61: f7 0d mov a,($0d)+y -0a63: d0 04 bne $0a69 -0a65: e4 27 mov a,$27 -0a67: 2f 05 bra $0a6e -0a69: e4 29 mov a,$29 -0a6b: 80 setc -0a6c: a4 27 sbc a,$27 -0a6e: c4 27 mov $27,a -0a70: f5 f4 07 mov a,$07f4+x -0a73: fd mov y,a -0a74: cb f2 mov $f2,y -0a76: fa 27 f3 mov ($f3),($27) -0a79: e4 29 mov a,$29 -0a7b: 80 setc -0a7c: a4 27 sbc a,$27 -0a7e: fc inc y -0a7f: cb f2 mov $f2,y -0a81: c4 f3 mov $f3,a -0a83: 80 setc -0a84: b8 16 0d sbc $0d,#$16 -0a87: b8 00 0e sbc $0e,#$00 -0a8a: 1d dec x -0a8b: 30 03 bmi $0a90 -0a8d: 5f 34 0a jmp $0a34 - -0a90: cd 07 mov x,#$07 -0a92: 8d 0e mov y,#$0e -0a94: f5 06 02 mov a,$0206+x -0a97: f0 2b beq $0ac4 -0a99: f4 53 mov a,$53+x -0a9b: 28 80 and a,#$80 -0a9d: f0 09 beq $0aa8 -0a9f: f5 fc 07 mov a,$07fc+x -0aa2: 24 41 and a,$41 -0aa4: d0 19 bne $0abf -0aa6: 2f 1c bra $0ac4 -0aa8: f6 17 02 mov a,$0217+y -0aab: 80 setc -0aac: a8 01 sbc a,#$01 -0aae: d6 17 02 mov $0217+y,a -0ab1: c4 27 mov $27,a -0ab3: f6 18 02 mov a,$0218+y -0ab6: a8 00 sbc a,#$00 -0ab8: d6 18 02 mov $0218+y,a -0abb: 04 27 or a,$27 -0abd: d0 05 bne $0ac4 -0abf: e8 00 mov a,#$00 -0ac1: d5 06 02 mov $0206+x,a -0ac4: dc dec y -0ac5: dc dec y -0ac6: 1d dec x -0ac7: 10 cb bpl $0a94 -0ac9: ec 00 02 mov y,$0200 -0acc: f0 54 beq $0b22 -0ace: 8c 01 02 dec $0201 -0ad1: d0 4f bne $0b22 -0ad3: cc 01 02 mov $0201,y -0ad6: e4 16 mov a,$16 -0ad8: e9 02 02 mov x,$0202 -0adb: 30 0e bmi $0aeb -0add: 60 clrc -0ade: 85 03 02 adc a,$0203 -0ae1: b0 04 bcs $0ae7 -0ae3: 68 4b cmp a,#$4b -0ae5: 90 13 bcc $0afa -0ae7: e8 4b mov a,#$4b -0ae9: 2f 0a bra $0af5 -0aeb: 80 setc -0aec: a5 03 02 sbc a,$0203 -0aef: f0 04 beq $0af5 -0af1: b0 07 bcs $0afa -0af3: e8 00 mov a,#$00 -0af5: 8d 00 mov y,#$00 -0af7: cc 00 02 mov $0200,y -0afa: c4 16 mov $16,a -0afc: 5d mov x,a -0afd: 8f 2c f2 mov $f2,#$2c -0b00: 65 04 02 cmp a,$0204 -0b03: 90 03 bcc $0b08 -0b05: e5 04 02 mov a,$0204 -0b08: c4 f3 mov $f3,a -0b0a: 8f 3c f2 mov $f2,#$3c -0b0d: 7d mov a,x -0b0e: 65 05 02 cmp a,$0205 -0b11: 90 03 bcc $0b16 -0b13: e5 04 02 mov a,$0204 -0b16: c4 f3 mov $f3,a -0b18: 8f 0c f2 mov $f2,#$0c -0b1b: d8 f3 mov $f3,x -0b1d: 8f 1c f2 mov $f2,#$1c -0b20: d8 f3 mov $f3,x -0b22: 6f ret - -0b23: e4 4b mov a,$4b -0b25: 10 0c bpl $0b33 -0b27: 28 1f and a,#$1f -0b29: 8f 6c f2 mov $f2,#$6c -0b2c: c4 f3 mov $f3,a -0b2e: 09 31 4d or ($4d),($31) -0b31: 2f 03 bra $0b36 -0b33: 29 32 4d and ($4d),($32) -0b36: 8f 3d f2 mov $f2,#$3d -0b39: fa 4d f3 mov ($f3),($4d) -0b3c: 6f ret - -0b3d: c4 17 mov $17,a -0b3f: fa f4 19 mov ($19),($f4) -0b42: fa f5 1a mov ($1a),($f5) -0b45: e4 f7 mov a,$f7 -0b47: 8f b1 f1 mov $f1,#$b1 -0b4a: 28 fe and a,#$fe -0b4c: c4 18 mov $18,a -0b4e: fa 17 f6 mov ($f6),($17) -0b51: 5d mov x,a -0b52: c8 1d cmp x,#$1d -0b54: b0 13 bcs $0b69 -0b56: e4 19 mov a,$19 -0b58: eb 1a mov y,$1a -0b5a: 1f a4 17 jmp ($17a4+x) - -0b5d: 8f ff 1b mov $1b,#$ff -0b60: 3f 41 0e call $0e41 -0b63: 8f 6c f2 mov $f2,#$6c -0b66: 8f 00 f3 mov $f3,#$00 -0b69: 6f ret - -0b6a: da 3a movw $3a,ya -0b6c: 8f ff 39 mov $39,#$ff -0b6f: 6f ret - -0b70: c4 52 mov $52,a -0b72: 6f ret - -0b73: e8 00 mov a,#$00 -0b75: c5 00 02 mov $0200,a -0b78: 6f ret - -0b79: cd 01 mov x,#$01 -0b7b: 2f 02 bra $0b7f -0b7d: cd ff mov x,#$ff -0b7f: c5 00 02 mov $0200,a -0b82: c5 01 02 mov $0201,a -0b85: cc 03 02 mov $0203,y -0b88: c9 02 02 mov $0202,x -0b8b: 6f ret - -0b8c: 8f 00 5c mov $5c,#$00 -0b8f: 68 00 cmp a,#$00 -0b91: d0 03 bne $0b96 -0b93: c5 4f 05 mov $054f,a -0b96: 6f ret - -0b97: c5 16 02 mov $0216,a -0b9a: cd 07 mov x,#$07 -0b9c: ad 80 cmp y,#$80 -0b9e: f0 17 beq $0bb7 -0ba0: e8 01 mov a,#$01 -0ba2: b0 0e bcs $0bb2 -0ba4: ad 00 cmp y,#$00 -0ba6: d0 08 bne $0bb0 -0ba8: e5 16 02 mov a,$0216 -0bab: 75 0e 02 cmp a,$020e+x -0bae: d0 22 bne $0bd2 -0bb0: e8 80 mov a,#$80 -0bb2: 75 06 02 cmp a,$0206+x -0bb5: d0 1b bne $0bd2 -0bb7: f5 dc 07 mov a,$07dc+x -0bba: c4 f2 mov $f2,a -0bbc: e8 00 mov a,#$00 -0bbe: c4 f3 mov $f3,a -0bc0: d5 2f 02 mov $022f+x,a -0bc3: d5 06 02 mov $0206+x,a -0bc6: d5 77 02 mov $0277+x,a -0bc9: d4 53 mov $53+x,a -0bcb: f5 fc 07 mov a,$07fc+x -0bce: 04 45 or a,$45 -0bd0: c4 45 mov $45,a -0bd2: 1d dec x -0bd3: 10 c7 bpl $0b9c -0bd5: 6f ret - -0bd6: 8d 0e mov y,#$0e -0bd8: c5 16 02 mov $0216,a -0bdb: 3f bb 0d call $0dbb -0bde: da 09 movw $09,ya -0be0: 8d 00 mov y,#$00 -0be2: f7 09 mov a,($09)+y -0be4: c4 3c mov $3c,a -0be6: 3a 09 incw $09 -0be8: 8d 07 mov y,#$07 -0bea: f7 09 mov a,($09)+y -0bec: c4 3d mov $3d,a -0bee: 8d 06 mov y,#$06 -0bf0: f7 09 mov a,($09)+y -0bf2: c4 3e mov $3e,a -0bf4: 8f 80 3f mov $3f,#$80 -0bf7: cd 07 mov x,#$07 -0bf9: 3f 44 0c call $0c44 -0bfc: 30 36 bmi $0c34 -0bfe: e8 80 mov a,#$80 -0c00: d5 06 02 mov $0206+x,a -0c03: e5 16 02 mov a,$0216 -0c06: d5 0e 02 mov $020e+x,a -0c09: 8d 02 mov y,#$02 -0c0b: f7 09 mov a,($09)+y -0c0d: c4 35 mov $35,a -0c0f: fc inc y -0c10: f7 09 mov a,($09)+y -0c12: c4 36 mov $36,a -0c14: 8d 04 mov y,#$04 -0c16: f7 09 mov a,($09)+y -0c18: c4 37 mov $37,a -0c1a: fc inc y -0c1b: f7 09 mov a,($09)+y -0c1d: c4 38 mov $38,a -0c1f: e4 39 mov a,$39 -0c21: f0 04 beq $0c27 -0c23: ba 3a movw ya,$3a -0c25: da 37 movw $37,ya -0c27: 8d 01 mov y,#$01 -0c29: f7 09 mov a,($09)+y -0c2b: 2d push a -0c2c: 8d 00 mov y,#$00 -0c2e: f7 09 mov a,($09)+y -0c30: ee pop y -0c31: 3f 6e 0c call $0c6e -0c34: 60 clrc -0c35: 98 08 09 adc $09,#$08 -0c38: 90 02 bcc $0c3c -0c3a: ab 0a inc $0a -0c3c: 8b 3c dec $3c -0c3e: d0 a8 bne $0be8 -0c40: 8f 00 39 mov $39,#$00 -0c43: 6f ret - -0c44: 8d 07 mov y,#$07 -0c46: e4 3f mov a,$3f -0c48: 24 3d and a,$3d -0c4a: f0 0c beq $0c58 -0c4c: f5 06 02 mov a,$0206+x -0c4f: f0 15 beq $0c66 -0c51: e4 3e mov a,$3e -0c53: 75 27 02 cmp a,$0227+x -0c56: b0 10 bcs $0c68 -0c58: 4b 3f lsr $3f -0c5a: d0 05 bne $0c61 -0c5c: 8f 80 3f mov $3f,#$80 -0c5f: cd 08 mov x,#$08 -0c61: 1d dec x -0c62: dc dec y -0c63: 10 e1 bpl $0c46 -0c65: 6f ret - -0c66: e4 3e mov a,$3e -0c68: d5 27 02 mov $0227+x,a -0c6b: e8 00 mov a,#$00 -0c6d: 6f ret - -0c6e: d8 33 mov $33,x ; play sound (instrument) -0c70: 2d push a -0c71: f5 dc 07 mov a,$07dc+x -0c74: c4 f2 mov $f2,a -0c76: 8f 9f f3 mov $f3,#$9f -0c79: dd mov a,y -0c7a: d5 67 02 mov $0267+x,a -0c7d: 7d mov a,x -0c7e: 1c asl a -0c7f: 5d mov x,a -0c80: e4 37 mov a,$37 -0c82: d5 47 02 mov $0247+x,a -0c85: e4 38 mov a,$38 -0c87: d5 48 02 mov $0248+x,a -0c8a: e4 35 mov a,$35 -0c8c: d5 17 02 mov $0217+x,a -0c8f: e4 36 mov a,$36 -0c91: d5 18 02 mov $0218+x,a -0c94: ae pop a -0c95: 8d 02 mov y,#$02 -0c97: 3f bb 0d call $0dbb -0c9a: da 07 movw $07,ya ; get current voice and instrument -0c9c: f8 33 mov x,$33 -0c9e: f5 fc 07 mov a,$07fc+x ; get channel bit mask ID -0ca1: c4 4e mov $4e,a -0ca3: 48 ff eor a,#$ff ; and store inversion -0ca5: c4 4f mov $4f,a -0ca7: 8d 00 mov y,#$00 ; get mode flags -0ca9: f7 07 mov a,($07)+y -0cab: d4 53 mov $53+x,a ; save permanently and in local temp -0cad: c4 34 mov $34,a -0caf: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) -0cb1: f0 05 beq $0cb8 ; if not... -0cb3: 09 4e 50 or ($50),($4e) ; turn pitch mod on -0cb6: 2f 03 bra $0cbb -0cb8: 29 4f 50 and ($50),($4f) ; turn pitch mod off -0cbb: 8f 2d f2 mov $f2,#$2d -0cbe: fa 50 f3 mov ($f3),($50) -0cc1: e4 34 mov a,$34 ; retrieve the saved flag -0cc3: 28 10 and a,#$10 ; is echo enabled? ($10 = echo) -0cc5: f0 2f beq $0cf6 ; if not... -0cc7: 8d 05 mov y,#$05 ; get echo byte from sound -0cc9: f7 07 mov a,($07)+y -0ccb: 8d 0c mov y,#$0c -0ccd: 3f bb 0d call $0dbb -0cd0: 8d 00 mov y,#$00 -0cd2: f6 0c 08 mov a,$080c+y ; get the echo register values to "poke" -0cd5: c4 f2 mov $f2,a ; (from the table) -0cd7: f7 10 mov a,($10)+y ; now get info to feed to the registers -0cd9: ad 01 cmp y,#$01 ; (from the echo environment) -0cdb: f0 04 beq $0ce1 -0cdd: ad 02 cmp y,#$02 -0cdf: d0 09 bne $0cea -0ce1: d6 03 02 mov $0203+y,a -0ce4: 64 16 cmp a,$16 -0ce6: 90 02 bcc $0cea -0ce8: e4 16 mov a,$16 -0cea: c4 f3 mov $f3,a -0cec: fc inc y -0ced: ad 0c cmp y,#$0c ; repeat for every byte of the array -0cef: 90 e1 bcc $0cd2 -0cf1: 09 4e 51 or ($51),($4e) -0cf4: 2f 03 bra $0cf9 - -0cf6: 29 4f 51 and ($51),($4f) -0cf9: 8f 4d f2 mov $f2,#$4d -0cfc: fa 51 f3 mov ($f3),($51) ; send the echo unit -0cff: e4 34 mov a,$34 -0d01: 28 01 and a,#$01 -0d03: 0d push psw -0d04: 8d 01 mov y,#$01 -0d06: f7 07 mov a,($07)+y ; now get the amplitude -0d08: 8e pop psw -0d09: d0 08 bne $0d13 -0d0b: f8 33 mov x,$33 -0d0d: d5 2f 02 mov $022f+x,a -0d10: 5f 29 0d jmp $0d29 - -0d13: 8d 04 mov y,#$04 -0d15: 3f bb 0d call $0dbb -0d18: f8 33 mov x,$33 -0d1a: f5 20 08 mov a,$0820+x -0d1d: c4 0d mov $0d,a -0d1f: f5 18 08 mov a,$0818+x -0d22: c4 0e mov $0e,a -0d24: ba 35 movw ya,$35 -0d26: 3f 64 0e call $0e64 -0d29: e4 34 mov a,$34 -0d2b: 28 04 and a,#$04 -0d2d: f0 1a beq $0d49 -0d2f: 8d 03 mov y,#$03 -0d31: f7 07 mov a,($07)+y -0d33: 8d 06 mov y,#$06 -0d35: 3f bb 0d call $0dbb -0d38: f8 33 mov x,$33 -0d3a: f5 30 08 mov a,$0830+x -0d3d: c4 0d mov $0d,a -0d3f: f5 28 08 mov a,$0828+x -0d42: c4 0e mov $0e,a -0d44: ba 35 movw ya,$35 -0d46: 3f 64 0e call $0e64 -0d49: e4 34 mov a,$34 -0d4b: 28 08 and a,#$08 -0d4d: 0d push psw -0d4e: 8d 04 mov y,#$04 -0d50: f7 07 mov a,($07)+y -0d52: 8e pop psw -0d53: d0 08 bne $0d5d -0d55: f8 33 mov x,$33 -0d57: d5 6f 02 mov $026f+x,a -0d5a: 5f 8a 0d jmp $0d8a - -0d5d: 8d 08 mov y,#$08 -0d5f: 3f bb 0d call $0dbb -0d62: f8 33 mov x,$33 -0d64: f5 50 08 mov a,$0850+x -0d67: c4 0d mov $0d,a -0d69: f5 48 08 mov a,$0848+x -0d6c: c4 0e mov $0e,a -0d6e: ba 35 movw ya,$35 -0d70: 3f 64 0e call $0e64 -0d73: 8d 07 mov y,#$07 -0d75: f7 0d mov a,($0d)+y -0d77: f0 0b beq $0d84 -0d79: 8d 15 mov y,#$15 -0d7b: f7 0d mov a,($0d)+y -0d7d: d0 05 bne $0d84 -0d7f: e8 ff mov a,#$ff -0d81: 5f 86 0d jmp $0d86 - -0d84: e8 00 mov a,#$00 -0d86: 8d 15 mov y,#$15 -0d88: d7 0d mov ($0d)+y,a -0d8a: e4 34 mov a,$34 -0d8c: 28 02 and a,#$02 -0d8e: 0d push psw -0d8f: 8d 02 mov y,#$02 -0d91: f7 07 mov a,($07)+y -0d93: 8e pop psw -0d94: d0 08 bne $0d9e -0d96: f8 33 mov x,$33 -0d98: d5 77 02 mov $0277+x,a -0d9b: 5f b4 0d jmp $0db4 - -0d9e: 8d 0a mov y,#$0a -0da0: 3f bb 0d call $0dbb -0da3: f8 33 mov x,$33 -0da5: f5 40 08 mov a,$0840+x -0da8: c4 0d mov $0d,a -0daa: f5 38 08 mov a,$0838+x -0dad: c4 0e mov $0e,a -0daf: ba 35 movw ya,$35 -0db1: 3f 64 0e call $0e64 -0db4: 09 4e 45 or ($45),($4e) -0db7: 09 4e 40 or ($40),($4e) -0dba: 6f ret - -0dbb: 8f 00 06 mov $06,#$00 ; load current song/sfx/etc. address into stack -0dbe: 1c asl a -0dbf: 2b 06 rol $06 -0dc1: 60 clrc -0dc2: 96 e0 17 adc a,$17e0+y -0dc5: c4 05 mov $05,a -0dc7: e4 06 mov a,$06 -0dc9: 96 e1 17 adc a,$17e1+y -0dcc: c4 06 mov $06,a -0dce: 8d 01 mov y,#$01 -0dd0: f7 05 mov a,($05)+y -0dd2: c4 11 mov $11,a -0dd4: dc dec y -0dd5: f7 05 mov a,($05)+y -0dd7: c4 10 mov $10,a -0dd9: eb 11 mov y,$11 -0ddb: 6f ret - -; pre-defined DSP flags -0ddc: db $6c,$ff ; clear flags -0dde: db $3d,$00 ; turn off noise generator (NON) -0de0: db $4d,$00 ; turn off echo (EON) -0de2: db $7d,$00 ; turn off echo delay time (EDL) -0de4: db $6d,$ff ; pointer to echo memory (ESA) -0de6: db $5d,$18 ; set sample directory ($1800) -0de8: db $5c,$00 ; set key off (KOFF) -0dea: db $2d,$00 ; disable pitch modulation (PMON) -0dec: db $7c,$00 ; end of sample flag -0dee: db $2c,$00 ; turn off EVOLL -0df0: db $3c,$00 ; turn off EVOLR -0df2: db $0c,$4b ; turn on MVOLL -0df4: db $1c,$4b ; turn on MVOLR -0df6: db $ff - -0df7: 8d 00 mov y,#$00 -0df9: f6 dc 0d mov a,$0ddc+y ; set DSP flags from table -0dfc: 68 ff cmp a,#$ff -0dfe: f0 0b beq $0e0b -0e00: c4 f2 mov $f2,a -0e02: fc inc y -0e03: f6 dc 0d mov a,$0ddc+y -0e06: c4 f3 mov $f3,a -0e08: fc inc y -0e09: d0 ee bne $0df9 -0e0b: cd 70 mov x,#$70 -0e0d: e8 00 mov a,#$00 -0e0f: d4 04 mov $04+x,a -0e11: d4 07 mov $07+x,a -0e13: d4 03 mov $03+x,a -0e15: d4 02 mov $02+x,a -0e17: e8 00 mov a,#$00 -0e19: d4 05 mov $05+x,a -0e1b: 7d mov a,x -0e1c: 80 setc -0e1d: a8 10 sbc a,#$10 -0e1f: 5d mov x,a -0e20: 10 eb bpl $0e0d -0e22: e8 02 mov a,#$02 -0e24: cd 07 mov x,#$07 -0e26: 3f 4b 0e call $0e4b -0e29: fd mov y,a -0e2a: d6 00 00 mov $0000+y,a -0e2d: fc inc y -0e2e: ad f0 cmp y,#$f0 -0e30: 90 f8 bcc $0e2a -0e32: 9c dec a -0e33: c4 41 mov $41,a -0e35: c4 43 mov $43,a -0e37: c4 48 mov $48,a -0e39: c4 42 mov $42,a -0e3b: c4 47 mov $47,a -0e3d: 8f 4b 16 mov $16,#$4b -0e40: 6f ret - -0e41: e5 e1 17 mov a,$17e1 -0e44: 8f 6d f2 mov $f2,#$6d -0e47: c4 f3 mov $f3,a -0e49: cd 00 mov x,#$00 -0e4b: c5 55 0e mov $0e55,a -0e4e: e8 00 mov a,#$00 -0e50: c5 54 0e mov $0e54,a -0e53: c5 00 00 mov $0000,a -0e56: ac 54 0e inc $0e54 -0e59: d0 f8 bne $0e53 -0e5b: ac 55 0e inc $0e55 -0e5e: 1e 55 0e cmp x,$0e55 -0e61: d0 f0 bne $0e53 -0e63: 6f ret - -0e64: da 27 movw $27,ya -0e66: 8d 07 mov y,#$07 -0e68: f7 10 mov a,($10)+y ; get amplitude table -0e6a: d7 0d mov ($0d)+y,a -0e6c: dc dec y -0e6d: 10 f9 bpl $0e68 -0e6f: e4 10 mov a,$10 -0e71: 60 clrc -0e72: 88 08 adc a,#$08 -0e74: 8d 08 mov y,#$08 -0e76: d7 0d mov ($0d)+y,a -0e78: e4 11 mov a,$11 -0e7a: 88 00 adc a,#$00 -0e7c: fc inc y -0e7d: d7 0d mov ($0d)+y,a -0e7f: 8d 03 mov y,#$03 -0e81: f7 0d mov a,($0d)+y -0e83: 5d mov x,a -0e84: 8d 02 mov y,#$02 -0e86: f7 0d mov a,($0d)+y -0e88: fd mov y,a -0e89: 7d mov a,x -0e8a: cf mul ya -0e8b: da 2b movw $2b,ya -0e8d: ba 27 movw ya,$27 -0e8f: 9a 2b subw ya,$2b -0e91: b0 03 bcs $0e96 -0e93: e8 00 mov a,#$00 -0e95: fd mov y,a -0e96: cb 2c mov $2c,y -0e98: 8d 0d mov y,#$0d -0e9a: d7 0d mov ($0d)+y,a -0e9c: fc inc y -0e9d: e4 2c mov a,$2c -0e9f: d7 0d mov ($0d)+y,a -0ea1: 8d 03 mov y,#$03 -0ea3: f7 0d mov a,($0d)+y -0ea5: bc inc a -0ea6: 8d 0f mov y,#$0f -0ea8: d7 0d mov ($0d)+y,a -0eaa: 68 03 cmp a,#$03 -0eac: b0 06 bcs $0eb4 -0eae: 8d 04 mov y,#$04 -0eb0: e8 00 mov a,#$00 -0eb2: d7 0d mov ($0d)+y,a -0eb4: 8d 08 mov y,#$08 -0eb6: f7 0d mov a,($0d)+y -0eb8: 8d 0a mov y,#$0a -0eba: d7 0d mov ($0d)+y,a -0ebc: 8d 09 mov y,#$09 -0ebe: f7 0d mov a,($0d)+y -0ec0: 8d 0b mov y,#$0b -0ec2: d7 0d mov ($0d)+y,a -0ec4: e8 01 mov a,#$01 -0ec6: 8d 14 mov y,#$14 -0ec8: d7 0d mov ($0d)+y,a -0eca: 9c dec a -0ecb: 8d 0c mov y,#$0c -0ecd: d7 0d mov ($0d)+y,a -0ecf: 8d 12 mov y,#$12 -0ed1: d7 0d mov ($0d)+y,a -0ed3: fc inc y -0ed4: d7 0d mov ($0d)+y,a -0ed6: c4 20 mov $20,a -0ed8: 5f 89 0f jmp $0f89 - -0edb: 8d 14 mov y,#$14 -0edd: f7 0d mov a,($0d)+y -0edf: f0 39 beq $0f1a -0ee1: 8d 04 mov y,#$04 -0ee3: f7 0d mov a,($0d)+y -0ee5: c4 20 mov $20,a -0ee7: 8d 0f mov y,#$0f -0ee9: f7 0d mov a,($0d)+y -0eeb: c4 21 mov $21,a -0eed: f0 03 beq $0ef2 -0eef: 9c dec a -0ef0: d0 06 bne $0ef8 -0ef2: 8d 03 mov y,#$03 -0ef4: f7 0d mov a,($0d)+y -0ef6: 8d 0f mov y,#$0f -0ef8: d7 0d mov ($0d)+y,a -0efa: 78 02 21 cmp $21,#$02 -0efd: 90 03 bcc $0f02 -0eff: 5f 89 0f jmp $0f89 - -0f02: 8d 0c mov y,#$0c -0f04: f7 0d mov a,($0d)+y -0f06: bc inc a -0f07: 8d 05 mov y,#$05 -0f09: 77 0d cmp a,($0d)+y -0f0b: 90 17 bcc $0f24 -0f0d: 9c dec a -0f0e: 8d 01 mov y,#$01 -0f10: 77 0d cmp a,($0d)+y -0f12: f0 6a beq $0f7e -0f14: e8 00 mov a,#$00 -0f16: 8d 14 mov y,#$14 -0f18: d7 0d mov ($0d)+y,a -0f1a: 8d 11 mov y,#$11 -0f1c: f7 0d mov a,($0d)+y -0f1e: 2d push a -0f1f: dc dec y -0f20: f7 0d mov a,($0d)+y -0f22: ee pop y -0f23: 6f ret - -0f24: 8d 0c mov y,#$0c -0f26: d7 0d mov ($0d)+y,a -0f28: 8d 06 mov y,#$06 -0f2a: f7 0d mov a,($0d)+y -0f2c: 8d 0a mov y,#$0a -0f2e: 60 clrc -0f2f: 97 0d adc a,($0d)+y -0f31: d7 0d mov ($0d)+y,a -0f33: 90 07 bcc $0f3c -0f35: fc inc y -0f36: f7 0d mov a,($0d)+y -0f38: 88 00 adc a,#$00 -0f3a: d7 0d mov ($0d)+y,a -0f3c: 8d 0e mov y,#$0e -0f3e: f7 0d mov a,($0d)+y -0f40: 5d mov x,a -0f41: dc dec y -0f42: f7 0d mov a,($0d)+y -0f44: d0 04 bne $0f4a -0f46: c8 00 cmp x,#$00 -0f48: f0 3f beq $0f89 -0f4a: 8d 03 mov y,#$03 -0f4c: 80 setc -0f4d: b7 0d sbc a,($0d)+y -0f4f: 8d 0d mov y,#$0d -0f51: d7 0d mov ($0d)+y,a -0f53: c4 2b mov $2b,a -0f55: 7d mov a,x -0f56: a8 00 sbc a,#$00 -0f58: b0 06 bcs $0f60 -0f5a: e8 00 mov a,#$00 -0f5c: d7 0d mov ($0d)+y,a -0f5e: c4 2b mov $2b,a -0f60: fc inc y -0f61: d7 0d mov ($0d)+y,a -0f63: 04 2b or a,$2b -0f65: d0 0b bne $0f72 -0f67: 8d 01 mov y,#$01 -0f69: f7 0d mov a,($0d)+y -0f6b: 68 ff cmp a,#$ff -0f6d: f0 03 beq $0f72 -0f6f: 5f 82 0f jmp $0f82 - -0f72: 8d 0c mov y,#$0c -0f74: f7 0d mov a,($0d)+y -0f76: 8d 01 mov y,#$01 -0f78: 77 0d cmp a,($0d)+y -0f7a: 90 0d bcc $0f89 -0f7c: f0 0b beq $0f89 -0f7e: 8d 00 mov y,#$00 -0f80: f7 0d mov a,($0d)+y -0f82: 8d 0c mov y,#$0c -0f84: d7 0d mov ($0d)+y,a -0f86: 3f 2c 10 call $102c -0f89: f8 20 mov x,$20 -0f8b: f0 14 beq $0fa1 -0f8d: 78 03 21 cmp $21,#$03 -0f90: 90 0f bcc $0fa1 -0f92: 8d 13 mov y,#$13 -0f94: cd 03 mov x,#$03 -0f96: f7 0d mov a,($0d)+y -0f98: d4 1c mov $1c+x,a -0f9a: dc dec y -0f9b: 1d dec x -0f9c: 10 f8 bpl $0f96 -0f9e: 5f 09 10 jmp $1009 - -0fa1: 3f 1b 10 call $101b -0fa4: 8d 06 mov y,#$06 -0fa6: f7 0d mov a,($0d)+y -0fa8: 5d mov x,a -0fa9: 8d 00 mov y,#$00 -0fab: f7 12 mov a,($12)+y -0fad: c8 01 cmp x,#$01 -0faf: f0 06 beq $0fb7 -0fb1: 5d mov x,a -0fb2: fc inc y -0fb3: f7 12 mov a,($12)+y -0fb5: fd mov y,a -0fb6: 7d mov a,x -0fb7: f8 20 mov x,$20 -0fb9: f0 52 beq $100d -0fbb: 78 02 21 cmp $21,#$02 -0fbe: f0 4d beq $100d -0fc0: da 27 movw $27,ya -0fc2: 8d 11 mov y,#$11 -0fc4: f7 0d mov a,($0d)+y -0fc6: c4 1d mov $1d,a -0fc8: dc dec y -0fc9: f7 0d mov a,($0d)+y -0fcb: c4 1c mov $1c,a -0fcd: eb 1d mov y,$1d -0fcf: 80 setc -0fd0: 9a 27 subw ya,$27 -0fd2: da 1e movw $1e,ya -0fd4: e8 00 mov a,#$00 -0fd6: 3c rol a -0fd7: c4 27 mov $27,a -0fd9: d0 08 bne $0fe3 -0fdb: 58 ff 1e eor $1e,#$ff -0fde: 58 ff 1f eor $1f,#$ff -0fe1: 3a 1e incw $1e -0fe3: 8d 03 mov y,#$03 -0fe5: f7 0d mov a,($0d)+y -0fe7: 5d mov x,a -0fe8: ba 1e movw ya,$1e -0fea: 3f 47 10 call $1047 -0fed: c4 1e mov $1e,a -0fef: d8 1f mov $1f,x -0ff1: 78 01 27 cmp $27,#$01 -0ff4: d0 08 bne $0ffe -0ff6: 58 ff 1e eor $1e,#$ff -0ff9: 58 ff 1f eor $1f,#$ff -0ffc: 3a 1e incw $1e -0ffe: 8d 12 mov y,#$12 -1000: e4 1e mov a,$1e -1002: d7 0d mov ($0d)+y,a -1004: fc inc y -1005: e4 1f mov a,$1f -1007: d7 0d mov ($0d)+y,a -1009: ba 1c movw ya,$1c -100b: 7a 1e addw ya,$1e -100d: da 1c movw $1c,ya -100f: 8d 10 mov y,#$10 -1011: d7 0d mov ($0d)+y,a -1013: e4 1d mov a,$1d -1015: fc inc y -1016: d7 0d mov ($0d)+y,a -1018: ba 1c movw ya,$1c -101a: 6f ret - -101b: 8d 0a mov y,#$0a -101d: 5f 22 10 jmp $1022 - -1020: 8d 08 mov y,#$08 -1022: f7 0d mov a,($0d)+y -1024: c4 12 mov $12,a -1026: fc inc y -1027: f7 0d mov a,($0d)+y -1029: c4 13 mov $13,a -102b: 6f ret - -102c: 2d push a -102d: 3f 20 10 call $1020 -1030: 8d 06 mov y,#$06 -1032: f7 0d mov a,($0d)+y -1034: fd mov y,a -1035: ae pop a -1036: cf mul ya -1037: 7a 12 addw ya,$12 -1039: da 12 movw $12,ya -103b: 8d 0a mov y,#$0a -103d: e4 12 mov a,$12 -103f: d7 0d mov ($0d)+y,a -1041: fc inc y -1042: e4 13 mov a,$13 -1044: d7 0d mov ($0d)+y,a -1046: 6f ret - -1047: c8 00 cmp x,#$00 -1049: d0 05 bne $1050 -104b: e8 ff mov a,#$ff -104d: fd mov y,a -104e: 5d mov x,a -104f: 6f ret - -1050: cb 24 mov $24,y -1052: 3e 24 cmp x,$24 -1054: f0 02 beq $1058 -1056: b0 19 bcs $1071 -1058: c4 23 mov $23,a -105a: dd mov a,y -105b: 8d 00 mov y,#$00 -105d: 9e div ya,x -105e: c4 25 mov $25,a -1060: fd mov y,a -1061: 7d mov a,x -1062: cf mul ya -1063: c4 26 mov $26,a -1065: e4 24 mov a,$24 -1067: 80 setc -1068: a4 26 sbc a,$26 -106a: fd mov y,a -106b: e4 23 mov a,$23 -106d: 9e div ya,x -106e: f8 25 mov x,$25 -1070: 6f ret - -1071: 9e div ya,x -1072: cd 00 mov x,#$00 -1074: 6f ret - -1075: f5 7f 02 mov a,$027f+x -1078: 8d 04 mov y,#$04 -107a: cf mul ya -107b: 7a 0b addw ya,$0b -107d: da 03 movw $03,ya -107f: 8d 01 mov y,#$01 -1081: f7 03 mov a,($03)+y -1083: c4 2a mov $2a,a -1085: dc dec y -1086: f7 03 mov a,($03)+y -1088: 80 setc -1089: a8 03 sbc a,#$03 -108b: c4 29 mov $29,a -108d: b8 00 2a sbc $2a,#$00 -1090: f7 29 mov a,($29)+y -1092: c4 49 mov $49,a -1094: fc inc y -1095: f7 29 mov a,($29)+y -1097: c4 4a mov $4a,a -1099: fc inc y -109a: f7 29 mov a,($29)+y -109c: c4 4b mov $4b,a -109e: 6f ret - -109f: ad 04 cmp y,#$04 -10a1: 90 06 bcc $10a9 -10a3: d0 0a bne $10af -10a5: 68 b0 cmp a,#$b0 -10a7: b0 06 bcs $10af -10a9: 8f ff 4c mov $4c,#$ff -10ac: 5f c5 10 jmp $10c5 - -10af: ad 80 cmp y,#$80 -10b1: 90 0f bcc $10c2 -10b3: 8f 00 4c mov $4c,#$00 -10b6: 60 clrc ; convert note to pitch from table -10b7: 88 20 adc a,#$20 -10b9: 5d mov x,a -10ba: dd mov a,y -10bb: 88 df adc a,#$df -10bd: fd mov y,a -10be: 7d mov a,x -10bf: 5f c5 10 jmp $10c5 - -10c2: 8f 04 4c mov $4c,#$04 -10c5: cd f0 mov x,#$f0 -10c7: 9e div ya,x -10c8: 78 ff 4c cmp $4c,#$ff -10cb: d0 02 bne $10cf -10cd: c4 4c mov $4c,a -10cf: f6 ea 10 mov a,$10ea+y -10d2: c4 27 mov $27,a -10d4: f6 da 11 mov a,$11da+y -10d7: c4 28 mov $28,a -10d9: e8 04 mov a,#$04 -10db: 80 setc -10dc: a4 4c sbc a,$4c -10de: f0 07 beq $10e7 -10e0: fd mov y,a -10e1: 4b 28 lsr $28 -10e3: 6b 27 ror $27 -10e5: fe fa dbnz y,$10e1 -10e7: ba 27 movw ya,$27 -10e9: 6f ret - -; pitch table (low byte) -10ea: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 - -; pitch table (high byte) -11da: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f - -; note interval frequencies (low byte) -12ca: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 - -; note interval frequencies (high byte) -12ea: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 - -130a: e4 5c mov a,$5c -130c: d0 0f bne $131d -130e: e5 4f 05 mov a,$054f -1311: f0 22 beq $1335 -1313: e8 00 mov a,#$00 -1315: c5 4f 05 mov $054f,a -1318: 3f 0a 17 call $170a -131b: 2f ed bra $130a -131d: e4 5b mov a,$5b -131f: 9c dec a -1320: c4 5d mov $5d,a -1322: 1c asl a -1323: c4 5e mov $5e,a -1325: f8 5d mov x,$5d -1327: f4 61 mov a,$61+x -1329: 5d mov x,a -132a: 1f 98 17 jmp ($1798+x) - -132d: 8b 5e dec $5e -132f: 8b 5e dec $5e -1331: 8b 5d dec $5d -1333: 10 f0 bpl $1325 -1335: 6f ret - -1336: f8 5d mov x,$5d -1338: 9b 9b dec $9b+x -133a: d0 f1 bne $132d -133c: f5 60 05 mov a,$0560+x -133f: d4 9b mov $9b+x,a -1341: 9b a3 dec $a3+x -1343: d0 e8 bne $132d -1345: f4 61 mov a,$61+x -1347: 68 02 cmp a,#$02 -1349: d0 07 bne $1352 -134b: e8 06 mov a,#$06 -134d: d4 61 mov $61+x,a -134f: 5f 63 13 jmp $1363 - -1352: e8 08 mov a,#$08 -1354: d4 61 mov $61+x,a -1356: 5f 59 15 jmp $1559 - -1359: 3f b8 14 call $14b8 -135c: d4 ce mov $ce+x,a -135e: 3f b8 14 call $14b8 -1361: d4 cf mov $cf+x,a -1363: 3f b8 14 call $14b8 -1366: fd mov y,a ; get the current note/command -1367: 28 20 and a,#$20 -1369: c4 5f mov $5f,a -136b: dd mov a,y -136c: 28 40 and a,#$40 -136e: c4 60 mov $60,a -1370: f8 5d mov x,$5d -1372: d5 88 05 mov $0588+x,a -1375: ad 80 cmp y,#$80 ; is it a note? -1377: 90 3d bcc $13b6 -1379: ad f0 cmp y,#$f0 ; is it a special meaning flag? -137b: 90 08 bcc $1385 -137d: dd mov a,y ; then it must be a command... -137e: 28 0f and a,#$0f ; get command number -1380: 1c asl a -1381: 5d mov x,a -1382: 1f 3c 15 jmp ($153c+x) ; jump to command number position - -1385: f5 90 05 mov a,$0590+x ; pitch bend -1388: f0 4c beq $13d6 -138a: dd mov a,y -138b: 28 08 and a,#$08 -138d: 0d push psw -138e: dd mov a,y -138f: 28 07 and a,#$07 -1391: bc inc a -1392: 1c asl a -1393: f8 5e mov x,$5e -1395: 8e pop psw -1396: f0 0d beq $13a5 -1398: 60 clrc -1399: 94 de adc a,$de+x -139b: d4 de mov $de+x,a -139d: f4 df mov a,$df+x -139f: 88 00 adc a,#$00 -13a1: d4 df mov $df+x,a -13a3: 2f 31 bra $13d6 -13a5: c4 27 mov $27,a -13a7: f4 de mov a,$de+x -13a9: 80 setc -13aa: a4 27 sbc a,$27 -13ac: d4 de mov $de+x,a -13ae: f4 df mov a,$df+x -13b0: a8 00 sbc a,#$00 -13b2: d4 df mov $df+x,a -13b4: 2f 20 bra $13d6 -13b6: f5 90 05 mov a,$0590+x ; play the note (check first) -13b9: f0 1b beq $13d6 -13bb: dd mov a,y -13bc: 28 1f and a,#$1f -13be: fd mov y,a -13bf: f8 5e mov x,$5e -13c1: f4 ce mov a,$ce+x -13c3: 60 clrc -13c4: 96 ca 12 adc a,$12ca+y ; get the relative frequency -13c7: d4 ce mov $ce+x,a -13c9: f4 cf mov a,$cf+x -13cb: 96 ea 12 adc a,$12ea+y -13ce: d4 cf mov $cf+x,a -13d0: e8 00 mov a,#$00 -13d2: d4 de mov $de+x,a -13d4: d4 df mov $df+x,a -13d6: 3f b8 14 call $14b8 -13d9: 68 00 cmp a,#$00 -13db: d0 12 bne $13ef -13dd: f8 5d mov x,$5d -13df: f4 61 mov a,$61+x -13e1: 68 08 cmp a,#$08 -13e3: d0 07 bne $13ec -13e5: e8 0a mov a,#$0a -13e7: d4 61 mov $61+x,a -13e9: 5f 97 15 jmp $1597 - -13ec: 5f 25 13 jmp $1325 - -13ef: f8 5d mov x,$5d -13f1: d4 a3 mov $a3+x,a -13f3: fd mov y,a -13f4: f5 60 05 mov a,$0560+x -13f7: d4 9b mov $9b+x,a -13f9: cf mul ya -13fa: da 35 movw $35,ya -13fc: 3f 18 15 call $1518 -13ff: f5 98 05 mov a,$0598+x -1402: 30 18 bmi $141c -1404: 5d mov x,a -1405: f5 06 02 mov a,$0206+x -1408: f0 0a beq $1414 -140a: e8 40 mov a,#$40 -140c: 75 27 02 cmp a,$0227+x -140f: b0 05 bcs $1416 -1411: 5f 2d 13 jmp $132d - -1414: e8 40 mov a,#$40 -1416: d5 27 02 mov $0227+x,a -1419: 5f 3d 14 jmp $143d - -141c: f5 a0 05 mov a,$05a0+x -141f: c4 3d mov $3d,a -1421: f5 a8 05 mov a,$05a8+x -1424: 30 04 bmi $142a -1426: eb 5f mov y,$5f -1428: f0 05 beq $142f -142a: 9c dec a -142b: 10 02 bpl $142f -142d: e8 07 mov a,#$07 -142f: 5d mov x,a -1430: f5 fc 07 mov a,$07fc+x -1433: c4 3f mov $3f,a -1435: 8f 40 3e mov $3e,#$40 -1438: 3f 44 0c call $0c44 -143b: 30 78 bmi $14b5 -143d: e8 01 mov a,#$01 -143f: d5 06 02 mov $0206+x,a -1442: d8 ab mov $ab,x -1444: 7d mov a,x -1445: f8 5d mov x,$5d -1447: d5 a8 05 mov $05a8+x,a -144a: f5 90 05 mov a,$0590+x -144d: d0 0c bne $145b -144f: f8 5e mov x,$5e -1451: f4 ce mov a,$ce+x -1453: c4 37 mov $37,a -1455: f4 cf mov a,$cf+x -1457: c4 38 mov $38,a -1459: 2f 25 bra $1480 -145b: f8 5e mov x,$5e -145d: f4 ce mov a,$ce+x -145f: 60 clrc -1460: 94 be adc a,$be+x -1462: fd mov y,a -1463: f4 cf mov a,$cf+x -1465: 94 bf adc a,$bf+x -1467: c4 38 mov $38,a -1469: dd mov a,y -146a: 60 clrc -146b: 94 ae adc a,$ae+x -146d: fd mov y,a -146e: e4 38 mov a,$38 -1470: 94 af adc a,$af+x -1472: c4 38 mov $38,a -1474: dd mov a,y -1475: 60 clrc -1476: 94 de adc a,$de+x -1478: c4 37 mov $37,a -147a: e4 38 mov a,$38 -147c: 94 df adc a,$df+x -147e: c4 38 mov $38,a -1480: eb 5f mov y,$5f -1482: d0 0f bne $1493 -1484: 0b ab asl $ab -1486: f8 ab mov x,$ab -1488: d5 48 02 mov $0248+x,a -148b: e4 37 mov a,$37 -148d: d5 47 02 mov $0247+x,a -1490: 5f 2d 13 jmp $132d - -1493: f8 5d mov x,$5d -1495: f5 68 05 mov a,$0568+x -1498: 60 clrc -1499: 95 70 05 adc a,$0570+x -149c: 10 02 bpl $14a0 -149e: e8 7f mov a,#$7f -14a0: c4 ac mov $ac,a -14a2: e4 60 mov a,$60 -14a4: f0 02 beq $14a8 -14a6: e8 08 mov a,#$08 -14a8: 04 5d or a,$5d -14aa: 5d mov x,a -14ab: f5 78 05 mov a,$0578+x -14ae: f8 ab mov x,$ab -14b0: eb ac mov y,$ac -14b2: 3f 6e 0c call $0c6e -14b5: 5f 2d 13 jmp $132d - -; calculate delta expression -14b8: f8 5e mov x,$5e -14ba: e7 8b mov a,($8b+x) -14bc: bb 8b inc $8b+x -14be: d0 02 bne $14c2 -14c0: bb 8c inc $8c+x -14c2: 6f ret - -; vcmd f0 - end of sequence -14c3: f8 5d mov x,$5d -14c5: e8 0a mov a,#$0a -14c7: d4 61 mov $61+x,a -14c9: 5f 97 15 jmp $1597 - -; vcmd f1 - melody delta expression -14cc: 3f b8 14 call $14b8 -14cf: c4 ad mov $ad,a -14d1: f8 5d mov x,$5d -14d3: f5 70 05 mov a,$0570+x -14d6: 3f 28 15 call $1528 -14d9: d5 70 05 mov $0570+x,a -14dc: 5f 63 13 jmp $1363 - -; vcmd f2 - melody absolute expression -14df: 3f b8 14 call $14b8 -14e2: f8 5d mov x,$5d -14e4: d5 70 05 mov $0570+x,a -14e7: 5f 63 13 jmp $1363 - -; vcmd f3 - mute -14ea: f8 5d mov x,$5d -14ec: f5 a8 05 mov a,$05a8+x -14ef: 30 15 bmi $1506 -14f1: fd mov y,a -14f2: f6 06 02 mov a,$0206+y -14f5: 68 80 cmp a,#$80 -14f7: f0 0d beq $1506 -14f9: e8 00 mov a,#$00 -14fb: d6 67 02 mov $0267+y,a -14fe: f6 dc 07 mov a,$07dc+y -1501: c4 f2 mov $f2,a -1503: 8f 9f f3 mov $f3,#$9f - -; vcmd f4 - rest -1506: 3f b8 14 call $14b8 -1509: f8 5d mov x,$5d -150b: d4 a3 mov $a3+x,a -150d: f5 60 05 mov a,$0560+x -1510: d4 9b mov $9b+x,a -1512: 3f 18 15 call $1518 -1515: 5f 2d 13 jmp $132d -1518: f4 61 mov a,$61+x -151a: 68 06 cmp a,#$06 -151c: d0 05 bne $1523 -151e: e8 02 mov a,#$02 -1520: 5f 25 15 jmp $1525 - -1523: e8 04 mov a,#$04 -1525: d4 61 mov $61+x,a -1527: 6f ret - -; add the delta to the total -1528: 78 80 ad cmp $ad,#$80 -152b: 90 08 bcc $1535 -152d: 60 clrc -152e: 84 ad adc a,$ad -1530: 10 09 bpl $153b -1532: e8 00 mov a,#$00 -1534: 6f ret - -1535: 84 ad adc a,$ad -1537: 10 02 bpl $153b -1539: e8 7f mov a,#$7f -153b: 6f ret - -; vcmd table (f0-f4) -153c: dw $14c3 ; f0 - end of sequence -153e: dw $14cc ; f1 - melody delta expression -1540: dw $14df ; f2 - melody absolute expression -1542: dw $14ea ; f3 - mute -1544: dw $1506 ; f4 - rest - -1546: 3f b8 14 call $14b8 -1549: f8 5d mov x,$5d -154b: d5 b0 05 mov $05b0+x,a -154e: e8 00 mov a,#$00 -1550: d4 de mov $de+x,a -1552: d4 df mov $df+x,a -1554: f8 5d mov x,$5d -1556: d5 88 05 mov $0588+x,a -1559: f8 5d mov x,$5d -155b: f5 90 05 mov a,$0590+x -155e: f0 19 beq $1579 -1560: f5 b0 05 mov a,$05b0+x -1563: 8d 12 mov y,#$12 -1565: 3f bb 0d call $0dbb -1568: 3f 86 15 call $1586 -156b: 28 0e and a,#$0e -156d: fd mov y,a -156e: f8 5e mov x,$5e -1570: f7 10 mov a,($10)+y -1572: d4 ce mov $ce+x,a -1574: fc inc y -1575: f7 10 mov a,($10)+y -1577: d4 cf mov $cf+x,a -1579: 8f 20 5f mov $5f,#$20 -157c: f8 5d mov x,$5d -157e: f5 88 05 mov a,$0588+x -1581: c4 60 mov $60,a -1583: 5f d6 13 jmp $13d6 - -1586: e4 00 mov a,$00 ; fetch a random number (RNG) -1588: 1c asl a -1589: 44 00 eor a,$00 -158b: 1c asl a -158c: 1c asl a -158d: 1c asl a -158e: 2b 02 rol $02 -1590: 2b 01 rol $01 -1592: 2b 00 rol $00 -1594: e4 02 mov a,$02 -1596: 6f ret - -1597: 3f 9e 15 call $159e ; get current pattern command -159a: 5d mov x,a -159b: 1f 6f 16 jmp ($166f+x) - -159e: f8 5e mov x,$5e ; get 1 byte -15a0: e7 7b mov a,($7b+x) -15a2: bb 7b inc $7b+x -15a4: d0 02 bne $15a8 -15a6: bb 7c inc $7c+x -15a8: 6f ret - -; pattern command 00/16 - end of pattern -15a9: f8 5d mov x,$5d -15ab: e8 0c mov a,#$0c -15ad: d4 61 mov $61+x,a -15af: 5f 87 16 jmp $1687 - -; pattern command 14 -15b2: 8d 00 mov y,#$00 -15b4: f8 5e mov x,$5e -15b6: 3f a0 15 call $15a0 -15b9: ad 10 cmp y,#$10 -15bb: b0 04 bcs $15c1 -15bd: d6 3f 05 mov $053f+y,a -15c0: fc inc y -15c1: 3f a0 15 call $15a0 -15c4: 68 14 cmp a,#$14 -15c6: f0 ee beq $15b6 -15c8: 68 16 cmp a,#$16 -15ca: d0 dd bne $15a9 -15cc: dd mov a,y -15cd: 5d mov x,a -15ce: 3f 86 15 call $1586 -15d1: 8d 00 mov y,#$00 -15d3: 9e div ya,x -15d4: f6 3f 05 mov a,$053f+y -15d7: 8d 10 mov y,#$10 -15d9: 3f 62 16 call $1662 -15dc: 2f 05 bra $15e3 - -; pattern command 02 - play melody -15de: 8d 10 mov y,#$10 -15e0: 3f 5d 16 call $165d -15e3: e8 06 mov a,#$06 -15e5: d4 61 mov $61+x,a -15e7: 5f 59 13 jmp $1359 - -; pattern command 04 -15ea: 8d 14 mov y,#$14 -15ec: 3f 5d 16 call $165d -15ef: e8 08 mov a,#$08 -15f1: d4 61 mov $61+x,a -15f3: 5f 46 15 jmp $1546 - -; pattern command 06 - set channel tuning -15f6: 3f 9e 15 call $159e ; get 1 byte -15f9: eb 5e mov y,$5e -15fb: d6 be 00 mov $00be+y,a -15fe: 3f a0 15 call $15a0 -1601: d6 bf 00 mov $00bf+y,a -1604: 5f 97 15 jmp $1597 - -; pattern command 08 - set instrument -1607: 3f 9e 15 call $159e ; get 1 byte -160a: f8 5d mov x,$5d -160c: d5 78 05 mov $0578+x,a -160f: 5f 97 15 jmp $1597 - -; pattern command 0a - set pitch envelope -1612: 3f 9e 15 call $159e ; get 1 byte -1615: f8 5d mov x,$5d -1617: d5 80 05 mov $0580+x,a -161a: 5f 97 15 jmp $1597 - -; pattern command 10 - set channel gain (relative?) -161d: 3f 9e 15 call $159e ; get 1 byte -1620: c4 ad mov $ad,a -1622: f8 5d mov x,$5d -1624: f5 68 05 mov a,$0568+x -1627: 3f 28 15 call $1528 -162a: d5 68 05 mov $0568+x,a -162d: 5f 97 15 jmp $1597 - -; pattern command 12 - set channel gain (absolute) -1630: 3f 9e 15 call $159e ; get 1 byte -1633: f8 5d mov x,$5d -1635: d5 68 05 mov $0568+x,a -1638: 5f 97 15 jmp $1597 - -; pattern command 0c -163b: e8 ff mov a,#$ff -163d: f8 5d mov x,$5d -163f: d5 90 05 mov $0590+x,a -1642: 5f 97 15 jmp $1597 - -; pattern command 0e - (2 bytes) -1645: 3f 9e 15 call $159e ; get 1 byte -1648: eb 5e mov y,$5e -164a: d6 ce 00 mov $00ce+y,a -164d: 3f a0 15 call $15a0 ; get another byte -1650: d6 cf 00 mov $00cf+y,a -1653: e8 00 mov a,#$00 -1655: f8 5d mov x,$5d -1657: d5 90 05 mov $0590+x,a -165a: 5f 97 15 jmp $1597 - -; get the next byte and its corresponding phrase pointer -165d: 6d push y -165e: 3f 9e 15 call $159e -1661: ee pop y -1662: 3f bb 0d call $0dbb -1665: f8 5e mov x,$5e -1667: d4 8b mov $8b+x,a -1669: dd mov a,y -166a: d4 8c mov $8c+x,a -166c: f8 5d mov x,$5d -166e: 6f ret - -; pattern command table (00-17) -166f: dw $15a9 ; 00 - end of pattern -1671: dw $15de ; 02 - play melody -1673: dw $15ea ; 04 -1675: dw $15f6 ; 06 - set channel tuning -1677: dw $1607 ; 08 - set instrument -1679: dw $1612 ; 0a - set pitch envelope -167b: dw $163b ; 0c -167d: dw $1645 ; 0e - (2 bytes) -167f: dw $161d ; 10 - set channel gain (relative)? -1681: dw $1630 ; 12 - set channel gain (absolute) -1683: dw $15b2 ; 14 -1685: dw $15a9 ; 16 - end of pattern (same as 00) - -; melody command 00 - end of melody -1687: 3f 8e 16 call $168e -168a: 5d mov x,a -168b: 1f fe 16 jmp ($16fe+x) - -168e: f8 5e mov x,$5e -1690: e7 6b mov a,($6b+x) -1692: bb 6b inc $6b+x -1694: d0 02 bne $1698 -1696: bb 6c inc $6c+x -1698: 6f ret - -; melody command 02 - go to loop -1699: f8 5d mov x,$5d -169b: e8 00 mov a,#$00 -169d: d4 61 mov $61+x,a -169f: 8b 5c dec $5c -16a1: 5f 2d 13 jmp $132d - -; melody command 04 -16a4: f8 5e mov x,$5e -16a6: f5 50 05 mov a,$0550+x -16a9: d4 6b mov $6b+x,a -16ab: f5 51 05 mov a,$0551+x -16ae: d4 6c mov $6c+x,a -16b0: 5f 87 16 jmp $1687 - -; melody command 06 - toggle channel mute -16b3: 3f 8e 16 call $168e -16b6: f8 5d mov x,$5d -16b8: d5 60 05 mov $0560+x,a -16bb: 5f 87 16 jmp $1687 - -; melody command 08 - play phrase -16be: 3f 8e 16 call $168e -16c1: eb 5e mov y,$5e -16c3: d6 ae 00 mov $00ae+y,a -16c6: 3f 90 16 call $1690 -16c9: d6 af 00 mov $00af+y,a -16cc: 5f 87 16 jmp $1687 - -; melody command 0a - set channel number -16cf: 3f 8e 16 call $168e -16d2: 8d 16 mov y,#$16 -16d4: 3f bb 0d call $0dbb -16d7: f8 5e mov x,$5e -16d9: d4 7b mov $7b+x,a -16db: dd mov a,y -16dc: d4 7c mov $7c+x,a -16de: f8 5d mov x,$5d -16e0: e8 0a mov a,#$0a -16e2: d4 61 mov $61+x,a -16e4: 5f 97 15 jmp $1597 - -; melody command 0c -16e7: 3f 8e 16 call $168e -16ea: f8 5d mov x,$5d -16ec: d5 98 05 mov $0598+x,a -16ef: 68 ff cmp a,#$ff -16f1: d0 08 bne $16fb -16f3: 3f 8e 16 call $168e -16f6: f8 5d mov x,$5d -16f8: d5 a0 05 mov $05a0+x,a -16fb: 5f 87 16 jmp $1687 - -; melody command table (00-0c) -16fc: dw $1687 ; 00 - end of melody -16fe: dw $1699 ; 02 - go to loop -1700: dw $16a4 ; 04 -1702: dw $16b3 ; 06 - toggle channel mute -1704: dw $16be ; 08 - play phrase -1706: dw $16cf ; 0a - set channel number -1708: dw $16e7 ; 0c - -170a: 8d 93 mov y,#$93 -170c: f9 5a mov x,$5a+y -170e: f6 b7 05 mov a,$05b7+y -1711: d6 5a 00 mov $005a+y,a -1714: 7d mov a,x -1715: d6 b7 05 mov $05b7+y,a -1718: fe f2 dbnz y,$170c -171a: 8d 69 mov y,#$69 -171c: f6 4e 05 mov a,$054e+y -171f: 5d mov x,a -1720: f6 4a 06 mov a,$064a+y -1723: d6 4e 05 mov $054e+y,a -1726: 7d mov a,x -1727: d6 4a 06 mov $064a+y,a -172a: fe f0 dbnz y,$171c -172c: 6f ret - -172d: 3f 36 17 call $1736 -1730: e8 01 mov a,#$01 -1732: c5 4f 05 mov $054f,a -1735: 6f ret - -1736: 2d push a ; start song -1737: 3f 0a 17 call $170a ; stop the current song -173a: ae pop a -173b: 8d 1a mov y,#$1a ; find the start of the song struct -173d: 3f bb 0d call $0dbb -1740: da 69 movw $69,ya -1742: 8d 00 mov y,#$00 ; get number of channels -1744: f7 69 mov a,($69)+y -1746: c4 5b mov $5b,a ; save number of channels in total and current -1748: c4 5c mov $5c,a -174a: f0 4b beq $1797 ; if 0, then return -174c: 8f 00 5d mov $5d,#$00 -174f: 8f 00 5e mov $5e,#$00 -1752: fc inc y -1753: f7 69 mov a,($69)+y -1755: 6d push y -1756: 8d 18 mov y,#$18 -1758: 3f bb 0d call $0dbb -175b: f8 5e mov x,$5e -175d: d5 50 05 mov $0550+x,a -1760: d4 6b mov $6b+x,a -1762: dd mov a,y -1763: ee pop y -1764: d5 51 05 mov $0551+x,a -1767: d4 6c mov $6c+x,a -1769: e8 00 mov a,#$00 -176b: d4 ae mov $ae+x,a -176d: d4 af mov $af+x,a -176f: d4 be mov $be+x,a -1771: d4 bf mov $bf+x,a -1773: f8 5d mov x,$5d -1775: e8 0c mov a,#$0c -1777: d4 61 mov $61+x,a -1779: e8 ff mov a,#$ff -177b: d5 90 05 mov $0590+x,a -177e: d5 a8 05 mov $05a8+x,a -1781: e8 00 mov a,#$00 -1783: d5 68 05 mov $0568+x,a -1786: d5 70 05 mov $0570+x,a -1789: d5 88 05 mov $0588+x,a -178c: ab 5e inc $5e -178e: ab 5e inc $5e -1790: 3d inc x -1791: d8 5d mov $5d,x -1793: 3e 5b cmp x,$5b -1795: 90 bb bcc $1752 -1797: 6f ret - -1798: dw $132d -179a: dw $1336 -179c: dw $1336 -179e: dw $1363 -17a0: dw $1559 -17a2: dw $1597 -17a4: dw $1687 -17a6: dw $0b5d -17a8: dw $0bd6 -17aa: dw $173b -17ac: dw $1736 -17ae: dw $172d -17b0: dw $170a -17b2: dw $0792 -17b4: dw $0b7d -17b6: dw $0b79 -17b8: dw $0b73 -17ba: dw $0b70 -17bc: dw $0b6a -17be: dw $0b8c -17c0: dw $0b97 From d05d237b937825d895296ca37acb7f2028318150 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:51:01 -0700 Subject: [PATCH 019/116] Delete Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s --- ...o's Modern Life - Spunky's Dangerous Day.s | 2094 ----------------- 1 file changed, 2094 deletions(-) delete mode 100644 Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s diff --git a/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s b/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s deleted file mode 100644 index f2bbc2f9..00000000 --- a/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s +++ /dev/null @@ -1,2094 +0,0 @@ -0700: 20 clrp -0701: cd ff mov x,#$ff ; set stack pointer -0703: bd mov sp,x -0704: 8f b0 f1 mov $f1,#$b0 ; clear input ports APUI00-APUI04 -0707: 8f 20 fa mov $fa,#$20 -070a: 8f 81 f1 mov $f1,#$81 ; toggle timer 2 -070d: 3f d3 0e call $0ed3 ; clear/reset routine -0710: 8f 00 13 mov $13,#$00 -0713: 8f 1a 14 mov $14,#$1a -0716: 8d 03 mov y,#$03 ; set temporary storage -0718: f6 02 00 mov a,$0002+y -071b: 16 22 07 or a,$0722+y -071e: d6 02 00 mov $0002+y,a -0721: fe f5 dbnz y,$0718 -0723: ab 1d inc $1d -0725: e4 23 mov a,$23 -0727: d0 05 bne $072e -0729: 3f 49 18 call $1849 ; do a random number generator (RNG) -072c: 2f 03 bra $0731 -072e: 3f 51 08 call $0851 -0731: e4 f6 mov a,$f6 -0733: f0 03 beq $0738 -0735: 3f 7d 0b call $0b7d -0738: e4 fd mov a,$fd -073a: 60 clrc -073b: 84 1c adc a,$1c -073d: c4 1c mov $1c,a -073f: 68 05 cmp a,#$05 -0741: 90 ee bcc $0731 -0743: a8 05 sbc a,#$05 -0745: c4 1c mov $1c,a -0747: 68 14 cmp a,#$14 -0749: 90 d8 bcc $0723 -074b: 8f 00 1c mov $1c,#$00 -074e: 2f d3 bra $0723 -0750: 8d 00 mov y,#$00 -0752: 8f aa f4 mov $f4,#$aa -0755: 8f bb f5 mov $f5,#$bb -0758: f8 f4 mov x,$f4 -075a: c8 cc cmp x,#$cc -075c: d0 fa bne $0758 -075e: fa f6 00 mov ($00),($f6) -0761: fa f7 01 mov ($01),($f7) -0764: 7d mov a,x -0765: f8 f5 mov x,$f5 -0767: c4 f4 mov $f4,a -0769: d0 05 bne $0770 -076b: d8 f5 mov $f5,x -076d: 1f 00 00 jmp ($0000+x) - -0770: cd 00 mov x,#$00 -0772: 3e f4 cmp x,$f4 -0774: d0 fc bne $0772 -0776: e4 f5 mov a,$f5 -0778: d8 f4 mov $f4,x -077a: d7 00 mov ($00)+y,a -077c: 3a 00 incw $00 -077e: 3e f4 cmp x,$f4 -0780: f0 fc beq $077e -0782: 3d inc x -0783: 3e f4 cmp x,$f4 -0785: f0 ef beq $0776 -0787: f8 f4 mov x,$f4 -0789: 2f d3 bra $075e -078b: 3f d3 0e call $0ed3 -078e: 8f b0 f1 mov $f1,#$b0 -0791: cd 00 mov x,#$00 -0793: f5 50 07 mov a,$0750+x -0796: d5 00 01 mov $0100+x,a -0799: 3d inc x -079a: c8 3b cmp x,#$3b -079c: 90 f5 bcc $0793 -079e: 5f 00 01 jmp $0100 - -; gain tables -07a1: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 -07b7: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 - -; DSP registers: VxENVX -07cd: db $08,$18,$28,$38,$48,$58,$68,$78 -; DSP registers: VxGAIN -07d5: db $07,$17,$27,$37,$47,$57,$67,$77 -; DSP registers: VxSCRN (select sample) -07dd: db $04,$14,$24,$34,$44,$54,$64,$74 -; DSP registers: VxPITCHL -07e5: db $02,$12,$22,$32,$42,$52,$62,$72 -; DSP registers: VxVOLL -07ed: db $00,$10,$20,$30,$40,$50,$60,$70 - -; voice numbers and bits for clearing those void bits -07f5: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f - -; echo poke registers -0805: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f - -0811: db $02,$02,$02,$02,$02,$03,$03,$03 -0819: db $9e,$b3,$c8,$dd,$f2,$07,$1c,$31 - -0821: db $03,$03,$03,$03,$03,$03,$03,$03 -0829: db $46,$5b,$70,$85,$9a,$af,$c4,$d9 - -0831: db $03,$04,$04,$04,$04,$04,$04,$04 -0839: db $ee,$03,$18,$2d,$42,$57,$6c,$81 - -0841: db $04,$04,$04,$04,$04,$05,$05,$05 -0849: db $96,$ac,$c2,$d8,$ee,$04,$1a,$30 - -0851: 3f 49 18 call $1849 ; use RNG -0854: 3f 7d 0b call $0b7d -0857: e5 00 02 mov a,$0200 -085a: f0 09 beq $0865 -085c: 60 clrc -085d: 85 01 02 adc a,$0201 -0860: c5 01 02 mov $0201,a -0863: 90 06 bcc $086b -0865: 3f 5c 14 call $145c -0868: 3f 7d 0b call $0b7d -086b: 8f 00 37 mov $37,#$00 -086e: 8f 00 4c mov $4c,#$00 -0871: 8f 7c f2 mov $f2,#$7c ; clear end of sample flags? -0874: e4 f3 mov a,$f3 -0876: 04 49 or a,$49 -0878: 24 4f and a,$4f -087a: c4 49 mov $49,a -087c: 8f 00 f3 mov $f3,#$00 -087f: 24 4a and a,$4a -0881: 04 4b or a,$4b -0883: c4 4b mov $4b,a -0885: cd 07 mov x,#$07 -0887: 8f 81 15 mov $15,#$81 -088a: 8f 04 16 mov $16,#$04 -088d: 3f 6c 0b call $0b6c -0890: d8 17 mov $17,x -0892: f5 f5 07 mov a,$07f5+x ; clear voice number bits -0895: c4 39 mov $39,a -0897: 48 ff eor a,#$ff -0899: c4 3a mov $3a,a -089b: f4 5b mov a,$5b+x -089d: 28 02 and a,#$02 -089f: c4 38 mov $38,a -08a1: d0 06 bne $08a9 -08a3: f5 7e 02 mov a,$027e+x -08a6: 5f ae 08 jmp $08ae - -08a9: 3f 24 10 call $1024 -08ac: f8 17 mov x,$17 -08ae: 75 86 02 cmp a,$0286+x -08b1: d0 10 bne $08c3 -08b3: 3f be 11 call $11be -08b6: 3f 52 0b call $0b52 -08b9: e4 50 mov a,$50 -08bb: 24 4d and a,$4d -08bd: 24 39 and a,$39 -08bf: d0 43 bne $0904 -08c1: f0 44 beq $0907 -08c3: d5 86 02 mov $0286+x,a -08c6: 09 39 37 or ($37),($39) -08c9: 3f be 11 call $11be -08cc: 7d mov a,x -08cd: 1c asl a -08ce: 5d mov x,a -08cf: e4 51 mov a,$51 -08d1: d5 8e 02 mov $028e+x,a -08d4: e4 52 mov a,$52 -08d6: d5 8f 02 mov $028f+x,a -08d9: f8 17 mov x,$17 -08db: e4 53 mov a,$53 -08dd: 28 20 and a,#$20 -08df: f0 05 beq $08e6 -08e1: 29 3a 4a and ($4a),($3a) -08e4: 2f 03 bra $08e9 -08e6: 09 39 4a or ($4a),($39) -08e9: e4 53 mov a,$53 -08eb: 28 40 and a,#$40 -08ed: f0 05 beq $08f4 -08ef: 09 39 50 or ($50),($39) -08f2: 2f 03 bra $08f7 -08f4: 29 3a 50 and ($50),($3a) -08f7: 3f 52 0b call $0b52 -08fa: e4 50 mov a,$50 -08fc: 04 4d or a,$4d -08fe: 24 39 and a,$39 -0900: d0 02 bne $0904 -0902: f0 03 beq $0907 -0904: 09 39 4c or ($4c),($39) -0907: 1d dec x -0908: 30 0a bmi $0914 -090a: 80 setc -090b: b8 15 15 sbc $15,#$15 -090e: b8 00 16 sbc $16,#$00 -0911: 5f 8d 08 jmp $088d - -0914: e4 4d mov a,$4d -0916: 24 4b and a,$4b -0918: 04 4c or a,$4c -091a: c4 4e mov $4e,a -091c: 8f 5c f2 mov $f2,#$5c -091f: c4 f3 mov $f3,a -0921: cd 07 mov x,#$07 -0923: 8f 30 15 mov $15,#$30 -0926: 8f 05 16 mov $16,#$05 -0929: 8f 00 3c mov $3c,#$00 -092c: 3f 6c 0b call $0b6c -092f: d8 17 mov $17,x -0931: e4 5a mov a,$5a -0933: d0 13 bne $0948 -0935: f4 5b mov a,$5b+x -0937: 28 08 and a,#$08 -0939: c4 3c mov $3c,a -093b: d0 06 bne $0943 -093d: f5 76 02 mov a,$0276+x -0940: 5f 48 09 jmp $0948 - -0943: 3f 24 10 call $1024 -0946: f8 17 mov x,$17 -0948: fd mov y,a -0949: f5 6e 02 mov a,$026e+x -094c: c4 31 mov $31,a -094e: cf mul ya -094f: cd 64 mov x,#$64 -0951: 9e div ya,x -0952: f8 17 mov x,$17 -0954: eb 3c mov y,$3c -0956: f0 11 beq $0969 -0958: c4 2f mov $2f,a -095a: 8d 15 mov y,#$15 -095c: f7 15 mov a,($15)+y -095e: d0 04 bne $0964 -0960: e4 2f mov a,$2f -0962: 2f 05 bra $0969 -0964: e4 31 mov a,$31 -0966: 80 setc -0967: a4 2f sbc a,$2f -0969: c4 2f mov $2f,a -096b: f5 ed 07 mov a,$07ed+x -096e: fd mov y,a -096f: cb f2 mov $f2,y -0971: fa 2f f3 mov ($f3),($2f) -0974: e4 31 mov a,$31 -0976: 80 setc -0977: a4 2f sbc a,$2f -0979: fc inc y -097a: cb f2 mov $f2,y -097c: c4 f3 mov $f3,a -097e: 80 setc -097f: b8 16 15 sbc $15,#$16 -0982: b8 00 16 sbc $16,#$00 -0985: 1d dec x -0986: 30 03 bmi $098b -0988: 5f 2c 09 jmp $092c - -098b: cd 07 mov x,#$07 -098d: 8f d9 15 mov $15,#$d9 -0990: 8f 03 16 mov $16,#$03 -0993: 3f 6c 0b call $0b6c -0996: d8 17 mov $17,x -0998: f4 5b mov a,$5b+x -099a: fd mov y,a -099b: 28 40 and a,#$40 -099d: 0d push psw -099e: dd mov a,y -099f: 28 04 and a,#$04 -09a1: 0d push psw -09a2: 7d mov a,x -09a3: fd mov y,a -09a4: 1c asl a -09a5: 5d mov x,a -09a6: f5 4f 02 mov a,$024f+x ; get base note -09a9: c4 36 mov $36,a -09ab: f5 4e 02 mov a,$024e+x -09ae: c4 35 mov $35,a -09b0: 8e pop psw -09b1: f0 11 beq $09c4 -09b3: 4d push x ; save word addressing -09b4: 3f 24 10 call $1024 ; advance pitch envelope -09b7: ce pop x ; restore pitch flag -09b8: 7a 35 addw ya,$35 -09ba: 80 setc -09bb: a8 b0 sbc a,#$b0 -09bd: c4 35 mov $35,a -09bf: dd mov a,y -09c0: a8 04 sbc a,#$04 -09c2: c4 36 mov $36,a -09c4: f5 8f 02 mov a,$028f+x -09c7: fd mov y,a -09c8: f5 8e 02 mov a,$028e+x -09cb: 7a 35 addw ya,$35 -09cd: 8e pop psw -09ce: d0 03 bne $09d3 -09d0: 3f e8 11 call $11e8 ; translate note to frequency -09d3: f8 17 mov x,$17 -09d5: d5 5e 02 mov $025e+x,a -09d8: dd mov a,y -09d9: d5 66 02 mov $0266+x,a -09dc: 80 setc -09dd: b8 15 15 sbc $15,#$15 -09e0: b8 00 16 sbc $16,#$00 -09e3: 1d dec x -09e4: 10 ad bpl $0993 -09e6: 8f 5c f2 mov $f2,#$5c -09e9: 8f 00 f3 mov $f3,#$00 -09ec: cd 07 mov x,#$07 -09ee: 8f 31 15 mov $15,#$31 -09f1: 8f 03 16 mov $16,#$03 -09f4: 3f 6c 0b call $0b6c -09f7: d8 17 mov $17,x -09f9: f5 f5 07 mov a,$07f5+x -09fc: c4 39 mov $39,a -09fe: 48 ff eor a,#$ff -0a00: c4 3a mov $3a,a -0a02: f4 5b mov a,$5b+x -0a04: 28 01 and a,#$01 -0a06: d0 06 bne $0a0e -0a08: f5 36 02 mov a,$0236+x -0a0b: 5f 13 0a jmp $0a13 - -0a0e: 3f 24 10 call $1024 -0a11: f8 17 mov x,$17 -0a13: d5 3e 02 mov $023e+x,a -0a16: fd mov y,a -0a17: e4 37 mov a,$37 -0a19: 24 39 and a,$39 -0a1b: f0 0a beq $0a27 -0a1d: f5 dd 07 mov a,$07dd+x -0a20: c4 f2 mov $f2,a -0a22: f5 86 02 mov a,$0286+x -0a25: c4 f3 mov $f3,a -0a27: e4 48 mov a,$48 -0a29: 24 39 and a,$39 -0a2b: f0 05 beq $0a32 -0a2d: 29 3a 48 and ($48),($3a) -0a30: 2f 35 bra $0a67 -0a32: f5 cd 07 mov a,$07cd+x -0a35: c4 f2 mov $f2,a -0a37: dd mov a,y -0a38: 80 setc -0a39: a4 f3 sbc a,$f3 -0a3b: b0 08 bcs $0a45 -0a3d: 8f 80 2a mov $2a,#$80 -0a40: 48 ff eor a,#$ff -0a42: bc inc a -0a43: 2f 03 bra $0a48 -0a45: 8f c0 2a mov $2a,#$c0 -0a48: 5c lsr a -0a49: d0 08 bne $0a53 -0a4b: ad 00 cmp y,#$00 -0a4d: d0 04 bne $0a53 -0a4f: e8 82 mov a,#$82 -0a51: 2f 0e bra $0a61 -0a53: 8d 15 mov y,#$15 -0a55: 76 a1 07 cmp a,$07a1+y -0a58: 90 02 bcc $0a5c -0a5a: fe f9 dbnz y,$0a55 -0a5c: f6 b7 07 mov a,$07b7+y -0a5f: 04 2a or a,$2a -0a61: 75 46 02 cmp a,$0246+x -0a64: f0 0c beq $0a72 -0a66: fd mov y,a -0a67: f5 d5 07 mov a,$07d5+x -0a6a: c4 f2 mov $f2,a -0a6c: cb f3 mov $f3,y -0a6e: dd mov a,y -0a6f: d5 46 02 mov $0246+x,a -0a72: f5 e5 07 mov a,$07e5+x -0a75: c4 f2 mov $f2,a -0a77: fd mov y,a -0a78: f5 5e 02 mov a,$025e+x -0a7b: c4 f3 mov $f3,a -0a7d: fc inc y -0a7e: cb f2 mov $f2,y -0a80: f5 66 02 mov a,$0266+x -0a83: c4 f3 mov $f3,a -0a85: 80 setc -0a86: b8 15 15 sbc $15,#$15 -0a89: b8 00 16 sbc $16,#$00 -0a8c: 1d dec x -0a8d: 30 03 bmi $0a92 -0a8f: 5f f4 09 jmp $09f4 - -0a92: 8f 4c f2 mov $f2,#$4c -0a95: fa 4e f3 mov ($f3),($4e) -0a98: e4 4e mov a,$4e -0a9a: 48 ff eor a,#$ff -0a9c: c4 4f mov $4f,a -0a9e: 29 4f 49 and ($49),($4f) -0aa1: 29 4f 4b and ($4b),($4f) -0aa4: 8f 00 4d mov $4d,#$00 -0aa7: 3f 7d 0b call $0b7d -0aaa: cd 07 mov x,#$07 -0aac: 8d 0e mov y,#$0e -0aae: f5 0d 02 mov a,$020d+x -0ab1: f0 2b beq $0ade -0ab3: f4 5b mov a,$5b+x -0ab5: 28 80 and a,#$80 -0ab7: f0 09 beq $0ac2 -0ab9: f5 f5 07 mov a,$07f5+x -0abc: 24 49 and a,$49 -0abe: d0 19 bne $0ad9 -0ac0: 2f 1c bra $0ade -0ac2: f6 1e 02 mov a,$021e+y -0ac5: 80 setc -0ac6: a8 01 sbc a,#$01 -0ac8: d6 1e 02 mov $021e+y,a -0acb: c4 2f mov $2f,a -0acd: f6 1f 02 mov a,$021f+y -0ad0: a8 00 sbc a,#$00 -0ad2: d6 1f 02 mov $021f+y,a -0ad5: 04 2f or a,$2f -0ad7: d0 05 bne $0ade -0ad9: e8 00 mov a,#$00 -0adb: d5 0d 02 mov $020d+x,a -0ade: dc dec y -0adf: dc dec y -0ae0: 1d dec x -0ae1: 10 cb bpl $0aae -0ae3: 3f 6c 0b call $0b6c -0ae6: ec 07 02 mov y,$0207 -0ae9: f0 66 beq $0b51 -0aeb: 8c 08 02 dec $0208 -0aee: d0 61 bne $0b51 -0af0: cc 08 02 mov $0208,y -0af3: e4 1e mov a,$1e -0af5: e9 09 02 mov x,$0209 -0af8: 30 0e bmi $0b08 -0afa: 60 clrc -0afb: 85 0a 02 adc a,$020a -0afe: b0 04 bcs $0b04 -0b00: 68 7f cmp a,#$7f -0b02: 90 13 bcc $0b17 -0b04: e8 7f mov a,#$7f -0b06: 2f 0a bra $0b12 -0b08: 80 setc -0b09: a5 0a 02 sbc a,$020a -0b0c: f0 04 beq $0b12 -0b0e: b0 07 bcs $0b17 -0b10: e8 00 mov a,#$00 -0b12: 8d 00 mov y,#$00 -0b14: cc 07 02 mov $0207,y -0b17: c4 1e mov $1e,a -0b19: 5d mov x,a -0b1a: 8f 2c f2 mov $f2,#$2c -0b1d: 65 0b 02 cmp a,$020b -0b20: 90 03 bcc $0b25 -0b22: e5 0b 02 mov a,$020b -0b25: c4 f3 mov $f3,a -0b27: 8f 3c f2 mov $f2,#$3c -0b2a: 7d mov a,x -0b2b: 65 0c 02 cmp a,$020c -0b2e: 90 03 bcc $0b33 -0b30: e5 0b 02 mov a,$020b -0b33: c4 f3 mov $f3,a -0b35: 8f 0c f2 mov $f2,#$0c -0b38: d8 f3 mov $f3,x -0b3a: 8f 1c f2 mov $f2,#$1c -0b3d: d8 f3 mov $f3,x -0b3f: e5 07 02 mov a,$0207 -0b42: d0 0d bne $0b51 -0b44: e5 06 02 mov a,$0206 -0b47: f0 08 beq $0b51 -0b49: 8f 00 64 mov $64,#$00 -0b4c: 8d 80 mov y,#$80 -0b4e: 5f 49 0c jmp $0c49 - -0b51: 6f ret - -0b52: e4 53 mov a,$53 -0b54: 10 0c bpl $0b62 -0b56: 28 1f and a,#$1f -0b58: 8f 6c f2 mov $f2,#$6c -0b5b: c4 f3 mov $f3,a -0b5d: 09 39 55 or ($55),($39) -0b60: 2f 03 bra $0b65 -0b62: 29 3a 55 and ($55),($3a) -0b65: 8f 3d f2 mov $f2,#$3d -0b68: fa 55 f3 mov ($f3),($55) -0b6b: 6f ret - -0b6c: 4d push x -0b6d: e4 f6 mov a,$f6 -0b6f: f0 4c beq $0bbd -0b71: f8 f7 mov x,$f7 -0b73: c8 1e cmp x,#$1e -0b75: 90 46 bcc $0bbd -0b77: c8 23 cmp x,#$23 -0b79: b0 42 bcs $0bbd -0b7b: 2f 05 bra $0b82 -0b7d: 4d push x -0b7e: e4 f6 mov a,$f6 -0b80: f0 3b beq $0bbd -0b82: e4 f6 mov a,$f6 -0b84: 64 f6 cmp a,$f6 -0b86: d0 fa bne $0b82 -0b88: c4 1f mov $1f,a -0b8a: fa f4 21 mov ($21),($f4) -0b8d: fa f5 22 mov ($22),($f5) -0b90: e4 f7 mov a,$f7 -0b92: 28 fe and a,#$fe -0b94: c4 20 mov $20,a -0b96: 8f b1 f1 mov $f1,#$b1 -0b99: 28 fe and a,#$fe -0b9b: c4 20 mov $20,a -0b9d: 68 20 cmp a,#$20 -0b9f: f0 07 beq $0ba8 -0ba1: 68 22 cmp a,#$22 -0ba3: f0 03 beq $0ba8 -0ba5: fa 1f f6 mov ($f6),($1f) -0ba8: 5d mov x,a -0ba9: c8 29 cmp x,#$29 -0bab: b0 10 bcs $0bbd -0bad: e4 21 mov a,$21 -0baf: eb 22 mov y,$22 -0bb1: 3f bf 0b call $0bbf -0bb4: fa 21 f4 mov ($f4),($21) -0bb7: fa 22 f5 mov ($f5),($22) -0bba: fa 20 f7 mov ($f7),($20) -0bbd: ce pop x -0bbe: 6f ret - -0bbf: 1f 54 19 jmp ($1954+x) - -0bc2: 3f 0f 0f call $0f0f -0bc5: e8 01 mov a,#$01 -0bc7: 8d 08 mov y,#$08 -0bc9: cd 01 mov x,#$01 -0bcb: 3f e7 0b call $0be7 -0bce: 8f 6c f2 mov $f2,#$6c -0bd1: 8f 00 f3 mov $f3,#$00 -0bd4: 8f ff 23 mov $23,#$ff -0bd7: 6f ret - -0bd8: da 42 movw $42,ya -0bda: 8f ff 41 mov $41,#$ff -0bdd: 6f ret - -0bde: c4 5a mov $5a,a -0be0: 6f ret - -0be1: e8 00 mov a,#$00 -0be3: c5 07 02 mov $0207,a -0be6: 6f ret - -0be7: cd 01 mov x,#$01 -0be9: 2d push a -0bea: e8 00 mov a,#$00 -0bec: c5 06 02 mov $0206,a -0bef: ae pop a -0bf0: 2f 02 bra $0bf4 -0bf2: cd ff mov x,#$ff -0bf4: c5 07 02 mov $0207,a -0bf7: c5 08 02 mov $0208,a -0bfa: cc 0a 02 mov $020a,y -0bfd: c9 09 02 mov $0209,x -0c00: 6f ret - -0c01: 8d ff mov y,#$ff -0c03: cc 05 02 mov $0205,y -0c06: 5f a0 0c jmp $0ca0 - -0c09: 3f 5a 18 call $185a -0c0c: e5 fc 19 mov a,$19fc -0c0f: c5 35 06 mov $0635,a -0c12: e5 fd 19 mov a,$19fd -0c15: c5 36 06 mov $0636,a -0c18: 05 35 06 or a,$0635 -0c1b: f0 20 beq $0c3d -0c1d: 3f 5c 14 call $145c -0c20: e5 35 06 mov a,$0635 -0c23: 80 setc -0c24: a8 01 sbc a,#$01 -0c26: c5 35 06 mov $0635,a -0c29: e5 36 06 mov a,$0636 -0c2c: a8 00 sbc a,#$00 -0c2e: c5 36 06 mov $0636,a -0c31: b0 ea bcs $0c1d -0c33: cd 07 mov x,#$07 -0c35: e8 00 mov a,#$00 -0c37: d5 6e 02 mov $026e+x,a -0c3a: 1d dec x -0c3b: 10 fa bpl $0c37 -0c3d: 6f ret - -0c3e: 8f 00 64 mov $64,#$00 -0c41: 68 00 cmp a,#$00 -0c43: d0 03 bne $0c48 -0c45: c5 46 05 mov $0546,a -0c48: 6f ret - -0c49: c5 1d 02 mov $021d,a -0c4c: cd 07 mov x,#$07 -0c4e: ad 80 cmp y,#$80 -0c50: f0 17 beq $0c69 -0c52: e8 01 mov a,#$01 -0c54: b0 0e bcs $0c64 -0c56: ad 00 cmp y,#$00 -0c58: d0 08 bne $0c62 -0c5a: e5 1d 02 mov a,$021d -0c5d: 75 15 02 cmp a,$0215+x -0c60: d0 23 bne $0c85 -0c62: e8 80 mov a,#$80 -0c64: 75 0d 02 cmp a,$020d+x -0c67: d0 1c bne $0c85 -0c69: f5 d5 07 mov a,$07d5+x -0c6c: c4 f2 mov $f2,a -0c6e: e8 00 mov a,#$00 -0c70: 8f 9f f3 mov $f3,#$9f -0c73: d5 36 02 mov $0236+x,a -0c76: d5 0d 02 mov $020d+x,a -0c79: d5 7e 02 mov $027e+x,a -0c7c: d4 5b mov $5b+x,a -0c7e: f5 f5 07 mov a,$07f5+x -0c81: 04 4d or a,$4d -0c83: c4 4d mov $4d,a -0c85: 1d dec x -0c86: 10 c6 bpl $0c4e -0c88: 6f ret - -0c89: 2d push a -0c8a: e8 00 mov a,#$00 -0c8c: c5 06 02 mov $0206,a -0c8f: ae pop a -0c90: 5f f2 0b jmp $0bf2 - -0c93: 2d push a -0c94: e8 01 mov a,#$01 -0c96: c5 06 02 mov $0206,a -0c99: ae pop a -0c9a: 5f f2 0b jmp $0bf2 - -0c9d: cc 05 02 mov $0205,y -0ca0: 8d 0e mov y,#$0e -0ca2: c5 1d 02 mov $021d,a -0ca5: 3f b2 0e call $0eb2 -0ca8: da 11 movw $11,ya -0caa: 8d 00 mov y,#$00 -0cac: f7 11 mov a,($11)+y -0cae: c4 44 mov $44,a -0cb0: 3a 11 incw $11 -0cb2: 8d 07 mov y,#$07 -0cb4: f7 11 mov a,($11)+y -0cb6: c4 45 mov $45,a -0cb8: 8d 06 mov y,#$06 -0cba: f7 11 mov a,($11)+y -0cbc: c4 46 mov $46,a -0cbe: 8f 80 47 mov $47,#$80 -0cc1: cd 07 mov x,#$07 -0cc3: 3f 16 0d call $0d16 -0cc6: 30 3e bmi $0d06 -0cc8: e8 80 mov a,#$80 -0cca: d5 0d 02 mov $020d+x,a -0ccd: e5 1d 02 mov a,$021d -0cd0: d5 15 02 mov $0215+x,a -0cd3: 8d 02 mov y,#$02 -0cd5: f7 11 mov a,($11)+y -0cd7: c4 3d mov $3d,a -0cd9: fc inc y -0cda: f7 11 mov a,($11)+y -0cdc: c4 3e mov $3e,a -0cde: 8d 04 mov y,#$04 -0ce0: f7 11 mov a,($11)+y -0ce2: c4 3f mov $3f,a -0ce4: fc inc y -0ce5: f7 11 mov a,($11)+y -0ce7: c4 40 mov $40,a -0ce9: e4 41 mov a,$41 -0ceb: f0 04 beq $0cf1 -0ced: ba 42 movw ya,$42 -0cef: da 3f movw $3f,ya -0cf1: 8d 01 mov y,#$01 -0cf3: f7 11 mov a,($11)+y -0cf5: 2d push a -0cf6: 8d 00 mov y,#$00 -0cf8: f7 11 mov a,($11)+y -0cfa: 8d 01 mov y,#$01 -0cfc: cc 04 02 mov $0204,y -0cff: ee pop y -0d00: 8f 00 cf mov $cf,#$00 -0d03: 3f 40 0d call $0d40 -0d06: 60 clrc -0d07: 98 08 11 adc $11,#$08 -0d0a: 90 02 bcc $0d0e -0d0c: ab 12 inc $12 -0d0e: 8b 44 dec $44 -0d10: d0 a0 bne $0cb2 -0d12: 8f 00 41 mov $41,#$00 -0d15: 6f ret - -0d16: 8d 07 mov y,#$07 -0d18: e4 47 mov a,$47 -0d1a: 24 45 and a,$45 -0d1c: f0 0c beq $0d2a -0d1e: f5 0d 02 mov a,$020d+x -0d21: f0 15 beq $0d38 -0d23: e4 46 mov a,$46 -0d25: 75 2e 02 cmp a,$022e+x -0d28: b0 10 bcs $0d3a -0d2a: 4b 47 lsr $47 -0d2c: d0 05 bne $0d33 -0d2e: 8f 80 47 mov $47,#$80 -0d31: cd 08 mov x,#$08 -0d33: 1d dec x -0d34: dc dec y -0d35: 10 e1 bpl $0d18 -0d37: 6f ret - -0d38: e4 46 mov a,$46 -0d3a: d5 2e 02 mov $022e+x,a -0d3d: e8 00 mov a,#$00 -0d3f: 6f ret - -0d40: d8 3b mov $3b,x ; play sound (instrument) -0d42: 2d push a -0d43: e4 cf mov a,$cf -0d45: d0 08 bne $0d4f -0d47: f5 d5 07 mov a,$07d5+x -0d4a: c4 f2 mov $f2,a -0d4c: 8f 9f f3 mov $f3,#$9f -0d4f: dd mov a,y -0d50: d5 6e 02 mov $026e+x,a -0d53: 7d mov a,x -0d54: 1c asl a -0d55: 5d mov x,a -0d56: e4 3f mov a,$3f -0d58: d5 4e 02 mov $024e+x,a -0d5b: e4 40 mov a,$40 -0d5d: d5 4f 02 mov $024f+x,a -0d60: e4 3d mov a,$3d -0d62: d5 1e 02 mov $021e+x,a -0d65: e4 3e mov a,$3e -0d67: d5 1f 02 mov $021f+x,a -0d6a: ae pop a -0d6b: 8d 02 mov y,#$02 -0d6d: 3f b2 0e call $0eb2 -0d70: da 0f movw $0f,ya ;get current voice and instrument -0d72: f8 3b mov x,$3b -0d74: f5 f5 07 mov a,$07f5+x ;get channel bit mask ID -0d77: c4 56 mov $56,a -0d79: 48 ff eor a,#$ff ;and store inversion -0d7b: c4 57 mov $57,a -0d7d: 8d 00 mov y,#$00 ;get mode flags -0d7f: f7 0f mov a,($0f)+y -0d81: 2d push a -0d82: e5 05 02 mov a,$0205 -0d85: 30 0a bmi $0d91 -0d87: ae pop a -0d88: 2d push a -0d89: 28 08 and a,#$08 -0d8b: f0 04 beq $0d91 -0d8d: ae pop a -0d8e: 48 08 eor a,#$08 -0d90: 2d push a -0d91: ae pop a -0d92: d4 5b mov $5b+x,a -0d94: c4 3c mov $3c,a -0d96: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) -0d98: f0 05 beq $0d9f ; if not... -0d9a: 09 56 58 or ($58),($56) ; turn pitch mod on -0d9d: 2f 03 bra $0da2 -0d9f: 29 57 58 and ($58),($57) ; turn pitch mod off - -0da2: 8f 2d f2 mov $f2,#$2d -0da5: fa 58 f3 mov ($f3),($58) -0da8: e4 cf mov a,$cf -0daa: d0 3e bne $0dea -0dac: e4 3c mov a,$3c ; retrieve the saved flag -0dae: 28 10 and a,#$10 ; is echo enabled? ($10 = echo) -0db0: f0 2f beq $0de1 ; if not... -0db2: 8d 05 mov y,#$05 ; get echo byte from sound -0db4: f7 0f mov a,($0f)+y -0db6: 8d 0c mov y,#$0c -0db8: 3f b2 0e call $0eb2 -0dbb: 8d 00 mov y,#$00 -0dbd: f6 05 08 mov a,$0805+y ; get the echo register values to "poke" -0dc0: c4 f2 mov $f2,a ; (from the table) -0dc2: f7 18 mov a,($18)+y ; now get info to feed to the registers -0dc4: ad 01 cmp y,#$01 ; (from the echo environment) -0dc6: f0 04 beq $0dcc -0dc8: ad 02 cmp y,#$02 -0dca: d0 09 bne $0dd5 -0dcc: d6 0a 02 mov $020a+y,a -0dcf: 64 1e cmp a,$1e -0dd1: 90 02 bcc $0dd5 -0dd3: e4 1e mov a,$1e -0dd5: c4 f3 mov $f3,a -0dd7: fc inc y -0dd8: ad 0c cmp y,#$0c ; repeat for every byte of the array -0dda: 90 e1 bcc $0dbd -0ddc: 09 56 59 or ($59),($56) -0ddf: 2f 03 bra $0de4 -0de1: 29 57 59 and ($59),($57) ; send the echo unit -0de4: 8f 4d f2 mov $f2,#$4d -0de7: fa 59 f3 mov ($f3),($59) -0dea: e4 3c mov a,$3c -0dec: 28 01 and a,#$01 -0dee: 0d push psw -0def: 8d 01 mov y,#$01 -0df1: f7 0f mov a,($0f)+y ; now get the amplitude -0df3: 8e pop psw -0df4: d0 08 bne $0dfe -0df6: f8 3b mov x,$3b -0df8: d5 36 02 mov $0236+x,a -0dfb: 5f 14 0e jmp $0e14 - -0dfe: 8d 04 mov y,#$04 -0e00: 3f b2 0e call $0eb2 -0e03: f8 3b mov x,$3b -0e05: f5 19 08 mov a,$0819+x -0e08: c4 15 mov $15,a -0e0a: f5 11 08 mov a,$0811+x -0e0d: c4 16 mov $16,a -0e0f: ba 3d movw ya,$3d -0e11: 3f 89 0f call $0f89 -0e14: e4 3c mov a,$3c -0e16: 28 04 and a,#$04 -0e18: f0 1a beq $0e34 -0e1a: 8d 03 mov y,#$03 -0e1c: f7 0f mov a,($0f)+y -0e1e: 8d 06 mov y,#$06 -0e20: 3f b2 0e call $0eb2 -0e23: f8 3b mov x,$3b -0e25: f5 29 08 mov a,$0829+x -0e28: c4 15 mov $15,a -0e2a: f5 21 08 mov a,$0821+x -0e2d: c4 16 mov $16,a -0e2f: ba 3d movw ya,$3d -0e31: 3f 89 0f call $0f89 -0e34: e4 cf mov a,$cf -0e36: d0 76 bne $0eae -0e38: e5 05 02 mov a,$0205 -0e3b: 10 0c bpl $0e49 -0e3d: e4 3c mov a,$3c -0e3f: 28 08 and a,#$08 -0e41: 0d push psw -0e42: 8d 04 mov y,#$04 -0e44: f7 0f mov a,($0f)+y -0e46: 8e pop psw -0e47: d0 08 bne $0e51 -0e49: f8 3b mov x,$3b -0e4b: d5 76 02 mov $0276+x,a -0e4e: 5f 7e 0e jmp $0e7e - -0e51: 8d 08 mov y,#$08 -0e53: 3f b2 0e call $0eb2 -0e56: f8 3b mov x,$3b -0e58: f5 49 08 mov a,$0849+x -0e5b: c4 15 mov $15,a -0e5d: f5 41 08 mov a,$0841+x -0e60: c4 16 mov $16,a -0e62: ba 3d movw ya,$3d -0e64: 3f 89 0f call $0f89 -0e67: 8d 07 mov y,#$07 -0e69: f7 15 mov a,($15)+y -0e6b: f0 0b beq $0e78 -0e6d: 8d 15 mov y,#$15 -0e6f: f7 15 mov a,($15)+y -0e71: d0 05 bne $0e78 -0e73: e8 ff mov a,#$ff -0e75: 5f 7a 0e jmp $0e7a - -0e78: e8 00 mov a,#$00 -0e7a: 8d 15 mov y,#$15 -0e7c: d7 15 mov ($15)+y,a -0e7e: e4 3c mov a,$3c -0e80: 28 02 and a,#$02 -0e82: 0d push psw -0e83: 8d 02 mov y,#$02 -0e85: f7 0f mov a,($0f)+y -0e87: 8e pop psw -0e88: d0 08 bne $0e92 -0e8a: f8 3b mov x,$3b -0e8c: d5 7e 02 mov $027e+x,a -0e8f: 5f a8 0e jmp $0ea8 - -0e92: 8d 0a mov y,#$0a -0e94: 3f b2 0e call $0eb2 -0e97: f8 3b mov x,$3b -0e99: f5 39 08 mov a,$0839+x -0e9c: c4 15 mov $15,a -0e9e: f5 31 08 mov a,$0831+x -0ea1: c4 16 mov $16,a -0ea3: ba 3d movw ya,$3d -0ea5: 3f 89 0f call $0f89 -0ea8: 09 56 4d or ($4d),($56) -0eab: 09 56 48 or ($48),($56) -0eae: 8f 00 cf mov $cf,#$00 -0eb1: 6f ret - -0eb2: 8f 00 0e mov $0e,#$00 ; load current song/sfx/etc. address into stack -0eb5: 1c asl a -0eb6: 2b 0e rol $0e -0eb8: 60 clrc -0eb9: 96 e0 19 adc a,$19e0+y -0ebc: c4 0d mov $0d,a -0ebe: e4 0e mov a,$0e -0ec0: 96 e1 19 adc a,$19e1+y -0ec3: c4 0e mov $0e,a -0ec5: 8d 01 mov y,#$01 -0ec7: f7 0d mov a,($0d)+y -0ec9: c4 19 mov $19,a -0ecb: dc dec y -0ecc: f7 0d mov a,($0d)+y -0ece: c4 18 mov $18,a -0ed0: eb 19 mov y,$19 -0ed2: 6f ret - -0ed3: cd 3e mov x,#$3e -0ed5: 8d 0f mov y,#$0f -0ed7: 3f 27 0f call $0f27 -0eda: e8 00 mov a,#$00 -0edc: fd mov y,a -0edd: c4 00 mov $00,a -0edf: 8f 02 01 mov $01,#$02 -0ee2: d7 00 mov ($00)+y,a -0ee4: 3a 00 incw $00 -0ee6: 78 07 01 cmp $01,#$07 -0ee9: 90 f7 bcc $0ee2 -0eeb: d6 00 00 mov $0000+y,a -0eee: fc inc y -0eef: ad f0 cmp y,#$f0 -0ef1: 90 f8 bcc $0eeb -0ef3: 8d 00 mov y,#$00 -0ef5: 60 clrc -0ef6: d6 8a 00 mov $008a+y,a -0ef9: 88 19 adc a,#$19 -0efb: fc inc y -0efc: ad 08 cmp y,#$08 -0efe: d0 f6 bne $0ef6 -0f00: 9c dec a -0f01: c4 49 mov $49,a -0f03: c4 4b mov $4b,a -0f05: c4 50 mov $50,a -0f07: c4 4a mov $4a,a -0f09: c4 4f mov $4f,a -0f0b: 8f 00 1e mov $1e,#$00 -0f0e: 6f ret - -0f0f: e5 e1 19 mov a,$19e1 -0f12: 8f 6d f2 mov $f2,#$6d -0f15: c4 f3 mov $f3,a -0f17: c4 01 mov $01,a -0f19: e8 00 mov a,#$00 -0f1b: fd mov y,a -0f1c: c4 00 mov $00,a -0f1e: d7 00 mov ($00)+y,a -0f20: fe fc dbnz y,$0f1e -0f22: ab 01 inc $01 -0f24: d0 f8 bne $0f1e -0f26: 6f ret - -0f27: d8 00 mov $00,x -0f29: cb 01 mov $01,y -0f2b: 8d 00 mov y,#$00 -0f2d: f7 00 mov a,($00)+y -0f2f: 68 ff cmp a,#$ff -0f31: f0 0a beq $0f3d -0f33: c4 f2 mov $f2,a -0f35: fc inc y -0f36: f7 00 mov a,($00)+y -0f38: c4 f3 mov $f3,a -0f3a: fc inc y -0f3b: d0 f0 bne $0f2d -0f3d: 6f ret - -; pre-defined DSP flags -0f3e: db $6c,$3f ; clear flags -0f40: db $3d,$00 ; turn off noise generator (NON) -0f42: db $4d,$00 ; turn off echo (EON) -0f44: db $7d,$00 ; turn off echo delay time (EDL) -0f46: db $6d,$ff ; pointer to echo memory (ESA) -0f48: db $5d,$1a ; set source directory offset -0f4a: db $5c,$00 ; set key off (KOFF) -0f4c: db $2d,$00 ; disable pitch modulation (PMON) -0f4e: db $05,$00 ; set ASDR (1) (channel 1) -0f50: db $15,$00 ; set ASDR (1) (channel 2) -0f52: db $25,$00 ; set ASDR (1) (channel 3) -0f54: db $35,$00 ; set ASDR (1) (channel 4) -0f56: db $45,$00 ; set ASDR (1) (channel 5) -0f58: db $55,$00 ; set ASDR (1) (channel 6) -0f5a: db $65,$00 ; set ASDR (1) (channel 7) -0f5c: db $75,$00 ; set ASDR (1) (channel 8) -0f5e: db $07,$00 ; set GAIN (channel 1) -0f60: db $17,$00 ; set GAIN (channel 2) -0f62: db $27,$00 ; set GAIN (channel 3) -0f64: db $37,$00 ; set GAIN (channel 4) -0f66: db $47,$00 ; set GAIN (channel 5) -0f68: db $57,$00 ; set GAIN (channel 6) -0f6a: db $67,$00 ; set GAIN (channel 7) -0f6c: db $77,$00 ; set GAIN (channel 8) -0f6e: db $7c,$00 ; end of sample flag -0f70: db $2c,$00 ; turn off EVOLL -0f72: db $3c,$00 ; turn off EVOLR -0f74: db $0c,$00 ; turn off MVOLL -0f76: db $1c,$00 ; turn off MVOLR -0f78: db $04,$00 ; set source number (channel 1) -0f7a: db $14,$00 ; set source number (channel 2) -0f7c: db $24,$00 ; set source number (channel 3) -0f7e: db $34,$00 ; set source number (channel 4) -0f80: db $44,$00 ; set source number (channel 5) -0f82: db $54,$00 ; set source number (channel 6) -0f84: db $64,$00 ; set source number (channel 7) -0f86: db $74,$00 ; set source number (channel 8) -0f88: db $ff - -0f89: da 2f movw $2f,ya -0f8b: 8d 07 mov y,#$07 -0f8d: f7 18 mov a,($18)+y -0f8f: d7 15 mov ($15)+y,a -0f91: dc dec y -0f92: 10 f9 bpl $0f8d -0f94: e4 18 mov a,$18 -0f96: 60 clrc -0f97: 88 08 adc a,#$08 -0f99: 8d 08 mov y,#$08 -0f9b: d7 15 mov ($15)+y,a -0f9d: e4 19 mov a,$19 -0f9f: 88 00 adc a,#$00 -0fa1: fc inc y -0fa2: d7 15 mov ($15)+y,a -0fa4: 8d 03 mov y,#$03 -0fa6: f7 15 mov a,($15)+y -0fa8: 5d mov x,a -0fa9: 8d 02 mov y,#$02 -0fab: f7 15 mov a,($15)+y -0fad: fd mov y,a -0fae: 7d mov a,x -0faf: cf mul ya -0fb0: da 33 movw $33,ya -0fb2: 4d push x -0fb3: ba 2f movw ya,$2f -0fb5: e9 04 02 mov x,$0204 -0fb8: d0 1d bne $0fd7 -0fba: 6d push y -0fbb: 5d mov x,a -0fbc: e5 02 02 mov a,$0202 -0fbf: ec 03 02 mov y,$0203 -0fc2: 3f 16 16 call $1616 -0fc5: da 31 movw $31,ya -0fc7: ce pop x -0fc8: e5 02 02 mov a,$0202 -0fcb: ec 03 02 mov y,$0203 -0fce: 3f 16 16 call $1616 -0fd1: 60 clrc -0fd2: 84 32 adc a,$32 -0fd4: fd mov y,a -0fd5: e4 31 mov a,$31 -0fd7: ce pop x -0fd8: 9a 33 subw ya,$33 -0fda: b0 03 bcs $0fdf -0fdc: e8 00 mov a,#$00 -0fde: fd mov y,a -0fdf: cb 34 mov $34,y -0fe1: 8d 0d mov y,#$0d -0fe3: d7 15 mov ($15)+y,a -0fe5: fc inc y -0fe6: e4 34 mov a,$34 -0fe8: d7 15 mov ($15)+y,a -0fea: 8d 03 mov y,#$03 -0fec: f7 15 mov a,($15)+y -0fee: bc inc a -0fef: 8d 0f mov y,#$0f -0ff1: d7 15 mov ($15)+y,a -0ff3: 68 03 cmp a,#$03 -0ff5: b0 06 bcs $0ffd -0ff7: 8d 04 mov y,#$04 -0ff9: e8 00 mov a,#$00 -0ffb: d7 15 mov ($15)+y,a -0ffd: 8d 08 mov y,#$08 -0fff: f7 15 mov a,($15)+y -1001: 8d 0a mov y,#$0a -1003: d7 15 mov ($15)+y,a -1005: 8d 09 mov y,#$09 -1007: f7 15 mov a,($15)+y -1009: 8d 0b mov y,#$0b -100b: d7 15 mov ($15)+y,a -100d: e8 01 mov a,#$01 -100f: 8d 14 mov y,#$14 -1011: d7 15 mov ($15)+y,a -1013: 9c dec a -1014: 8d 0c mov y,#$0c -1016: d7 15 mov ($15)+y,a -1018: 8d 12 mov y,#$12 -101a: d7 15 mov ($15)+y,a -101c: fc inc y -101d: d7 15 mov ($15)+y,a -101f: c4 28 mov $28,a -1021: 5f d2 10 jmp $10d2 - -1024: 8d 14 mov y,#$14 -1026: f7 15 mov a,($15)+y -1028: f0 39 beq $1063 -102a: 8d 04 mov y,#$04 -102c: f7 15 mov a,($15)+y -102e: c4 28 mov $28,a -1030: 8d 0f mov y,#$0f -1032: f7 15 mov a,($15)+y -1034: c4 29 mov $29,a -1036: f0 03 beq $103b -1038: 9c dec a -1039: d0 06 bne $1041 -103b: 8d 03 mov y,#$03 -103d: f7 15 mov a,($15)+y -103f: 8d 0f mov y,#$0f -1041: d7 15 mov ($15)+y,a -1043: 78 02 29 cmp $29,#$02 -1046: 90 03 bcc $104b -1048: 5f d2 10 jmp $10d2 - -104b: 8d 0c mov y,#$0c -104d: f7 15 mov a,($15)+y -104f: bc inc a -1050: 8d 05 mov y,#$05 -1052: 77 15 cmp a,($15)+y -1054: 90 17 bcc $106d -1056: 9c dec a -1057: 8d 01 mov y,#$01 -1059: 77 15 cmp a,($15)+y -105b: f0 6a beq $10c7 -105d: e8 00 mov a,#$00 -105f: 8d 14 mov y,#$14 -1061: d7 15 mov ($15)+y,a -1063: 8d 11 mov y,#$11 -1065: f7 15 mov a,($15)+y -1067: 2d push a -1068: dc dec y -1069: f7 15 mov a,($15)+y -106b: ee pop y -106c: 6f ret - -106d: 8d 0c mov y,#$0c -106f: d7 15 mov ($15)+y,a -1071: 8d 06 mov y,#$06 -1073: f7 15 mov a,($15)+y -1075: 8d 0a mov y,#$0a -1077: 60 clrc -1078: 97 15 adc a,($15)+y -107a: d7 15 mov ($15)+y,a -107c: 90 07 bcc $1085 -107e: fc inc y -107f: f7 15 mov a,($15)+y -1081: 88 00 adc a,#$00 -1083: d7 15 mov ($15)+y,a -1085: 8d 0e mov y,#$0e -1087: f7 15 mov a,($15)+y -1089: 5d mov x,a -108a: dc dec y -108b: f7 15 mov a,($15)+y -108d: d0 04 bne $1093 -108f: c8 00 cmp x,#$00 -1091: f0 3f beq $10d2 -1093: 8d 03 mov y,#$03 -1095: 80 setc -1096: b7 15 sbc a,($15)+y -1098: 8d 0d mov y,#$0d -109a: d7 15 mov ($15)+y,a -109c: c4 33 mov $33,a -109e: 7d mov a,x -109f: a8 00 sbc a,#$00 -10a1: b0 06 bcs $10a9 -10a3: e8 00 mov a,#$00 -10a5: d7 15 mov ($15)+y,a -10a7: c4 33 mov $33,a -10a9: fc inc y -10aa: d7 15 mov ($15)+y,a -10ac: 04 33 or a,$33 -10ae: d0 0b bne $10bb -10b0: 8d 01 mov y,#$01 -10b2: f7 15 mov a,($15)+y -10b4: 68 ff cmp a,#$ff -10b6: f0 03 beq $10bb -10b8: 5f cb 10 jmp $10cb - -10bb: 8d 0c mov y,#$0c -10bd: f7 15 mov a,($15)+y -10bf: 8d 01 mov y,#$01 -10c1: 77 15 cmp a,($15)+y -10c3: 90 0d bcc $10d2 -10c5: f0 0b beq $10d2 -10c7: 8d 00 mov y,#$00 -10c9: f7 15 mov a,($15)+y -10cb: 8d 0c mov y,#$0c -10cd: d7 15 mov ($15)+y,a -10cf: 3f 75 11 call $1175 -10d2: f8 28 mov x,$28 -10d4: f0 14 beq $10ea -10d6: 78 03 29 cmp $29,#$03 -10d9: 90 0f bcc $10ea -10db: 8d 13 mov y,#$13 -10dd: cd 03 mov x,#$03 -10df: f7 15 mov a,($15)+y -10e1: d4 24 mov $24+x,a -10e3: dc dec y -10e4: 1d dec x -10e5: 10 f8 bpl $10df -10e7: 5f 52 11 jmp $1152 - -10ea: 3f 64 11 call $1164 -10ed: 8d 06 mov y,#$06 -10ef: f7 15 mov a,($15)+y -10f1: 5d mov x,a -10f2: 8d 00 mov y,#$00 -10f4: f7 1a mov a,($1a)+y -10f6: c8 01 cmp x,#$01 -10f8: f0 06 beq $1100 -10fa: 5d mov x,a -10fb: fc inc y -10fc: f7 1a mov a,($1a)+y -10fe: fd mov y,a -10ff: 7d mov a,x -1100: f8 28 mov x,$28 -1102: f0 52 beq $1156 -1104: 78 02 29 cmp $29,#$02 -1107: f0 4d beq $1156 -1109: da 2f movw $2f,ya -110b: 8d 11 mov y,#$11 -110d: f7 15 mov a,($15)+y -110f: c4 25 mov $25,a -1111: dc dec y -1112: f7 15 mov a,($15)+y -1114: c4 24 mov $24,a -1116: eb 25 mov y,$25 -1118: 80 setc -1119: 9a 2f subw ya,$2f -111b: da 26 movw $26,ya -111d: e8 00 mov a,#$00 -111f: 3c rol a -1120: c4 2f mov $2f,a -1122: d0 08 bne $112c -1124: 58 ff 26 eor $26,#$ff -1127: 58 ff 27 eor $27,#$ff -112a: 3a 26 incw $26 -112c: 8d 03 mov y,#$03 -112e: f7 15 mov a,($15)+y -1130: 5d mov x,a -1131: ba 26 movw ya,$26 -1133: 3f 90 11 call $1190 -1136: c4 26 mov $26,a -1138: d8 27 mov $27,x -113a: 78 01 2f cmp $2f,#$01 -113d: d0 08 bne $1147 -113f: 58 ff 26 eor $26,#$ff -1142: 58 ff 27 eor $27,#$ff -1145: 3a 26 incw $26 -1147: 8d 12 mov y,#$12 -1149: e4 26 mov a,$26 -114b: d7 15 mov ($15)+y,a -114d: fc inc y -114e: e4 27 mov a,$27 -1150: d7 15 mov ($15)+y,a -1152: ba 24 movw ya,$24 -1154: 7a 26 addw ya,$26 -1156: da 24 movw $24,ya -1158: 8d 10 mov y,#$10 -115a: d7 15 mov ($15)+y,a -115c: e4 25 mov a,$25 -115e: fc inc y -115f: d7 15 mov ($15)+y,a -1161: ba 24 movw ya,$24 -1163: 6f ret - -1164: 8d 0a mov y,#$0a -1166: 5f 6b 11 jmp $116b - -1169: 8d 08 mov y,#$08 -116b: f7 15 mov a,($15)+y -116d: c4 1a mov $1a,a -116f: fc inc y -1170: f7 15 mov a,($15)+y -1172: c4 1b mov $1b,a -1174: 6f ret - -1175: 2d push a -1176: 3f 69 11 call $1169 -1179: 8d 06 mov y,#$06 -117b: f7 15 mov a,($15)+y -117d: fd mov y,a -117e: ae pop a -117f: cf mul ya -1180: 7a 1a addw ya,$1a -1182: da 1a movw $1a,ya -1184: 8d 0a mov y,#$0a -1186: e4 1a mov a,$1a -1188: d7 15 mov ($15)+y,a -118a: fc inc y -118b: e4 1b mov a,$1b -118d: d7 15 mov ($15)+y,a -118f: 6f ret - -1190: c8 00 cmp x,#$00 -1192: d0 05 bne $1199 -1194: e8 ff mov a,#$ff -1196: fd mov y,a -1197: 5d mov x,a -1198: 6f ret - -1199: cb 2c mov $2c,y -119b: 3e 2c cmp x,$2c -119d: f0 02 beq $11a1 -119f: b0 19 bcs $11ba -11a1: c4 2b mov $2b,a -11a3: dd mov a,y -11a4: 8d 00 mov y,#$00 -11a6: 9e div ya,x -11a7: c4 2d mov $2d,a -11a9: fd mov y,a -11aa: 7d mov a,x -11ab: cf mul ya -11ac: c4 2e mov $2e,a -11ae: e4 2c mov a,$2c -11b0: 80 setc -11b1: a4 2e sbc a,$2e -11b3: fd mov y,a -11b4: e4 2b mov a,$2b -11b6: 9e div ya,x -11b7: f8 2d mov x,$2d -11b9: 6f ret - -11ba: 9e div ya,x -11bb: cd 00 mov x,#$00 -11bd: 6f ret - -11be: f5 86 02 mov a,$0286+x -11c1: 8d 04 mov y,#$04 -11c3: cf mul ya -11c4: 7a 13 addw ya,$13 -11c6: da 00 movw $00,ya -11c8: 8d 01 mov y,#$01 -11ca: f7 00 mov a,($00)+y -11cc: c4 32 mov $32,a -11ce: dc dec y -11cf: f7 00 mov a,($00)+y -11d1: 80 setc -11d2: a8 03 sbc a,#$03 -11d4: c4 31 mov $31,a -11d6: b8 00 32 sbc $32,#$00 -11d9: f7 31 mov a,($31)+y -11db: c4 51 mov $51,a -11dd: fc inc y -11de: f7 31 mov a,($31)+y -11e0: c4 52 mov $52,a -11e2: fc inc y -11e3: f7 31 mov a,($31)+y -11e5: c4 53 mov $53,a -11e7: 6f ret - -11e8: 60 clrc -11e9: 88 a0 adc a,#$a0 ; add offset to input frequency (1440) -11eb: 5d mov x,a -11ec: dd mov a,y -11ed: 88 05 adc a,#$05 -11ef: fd mov y,a -11f0: 7d mov a,x -11f1: ad 0a cmp y,#$0a ; check if it is in within positive range -11f3: 90 06 bcc $11fb ; in range -11f5: d0 0a bne $1201 ; out of range -11f7: 68 50 cmp a,#$50 -11f9: b0 06 bcs $1201 ; out of range -11fb: 8f ff 54 mov $54,#$ff -11fe: 5f 17 12 jmp $1217 - -1201: ad 80 cmp y,#$80 -1203: 90 0f bcc $1214 -1205: 8f 00 54 mov $54,#$00 -1208: 60 clrc -1209: 88 20 adc a,#$20 -120b: 5d mov x,a -120c: dd mov a,y -120d: 88 df adc a,#$df -120f: fd mov y,a -1210: 7d mov a,x -1211: 5f 17 12 jmp $1217 - -1214: 8f 0a 54 mov $54,#$0a -1217: cd f0 mov x,#$f0 -1219: 9e div ya,x -121a: 78 ff 54 cmp $54,#$ff -121d: d0 02 bne $1221 -121f: c4 54 mov $54,a -1221: f6 3c 12 mov a,$123c+y ;get pitch value (from table) -1224: c4 2f mov $2f,a -1226: f6 2c 13 mov a,$132c+y -1229: c4 30 mov $30,a -122b: e8 0a mov a,#$0a -122d: 80 setc -122e: a4 54 sbc a,$54 -1230: f0 07 beq $1239 -1232: fd mov y,a -1233: 4b 30 lsr $30 -1235: 6b 2f ror $2f -1237: fe fa dbnz y,$1233 -1239: ba 2f movw ya,$2f -123b: 6f ret - -; pitch table (low byte) -123c: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 - -; pitch table (high byte) -132c: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f - -; note interval frequencies (low byte) -141c: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 - -; note interval frequencies (high byte) -143c: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 - -145c: e4 64 mov a,$64 -145e: d0 0c bne $146c -1460: e5 46 05 mov a,$0546 -1463: f0 22 beq $1487 -1465: e8 00 mov a,#$00 -1467: c5 46 05 mov $0546,a -146a: 2f f0 bra $145c -146c: e4 63 mov a,$63 -146e: 9c dec a -146f: c4 65 mov $65,a -1471: 1c asl a -1472: c4 66 mov $66,a -1474: 3f 6c 0b call $0b6c -1477: f8 65 mov x,$65 -1479: f4 68 mov a,$68+x -147b: 5d mov x,a -147c: 1f d8 18 jmp ($18d8+x) - -147f: 8b 66 dec $66 -1481: 8b 66 dec $66 -1483: 8b 65 dec $65 -1485: 10 ed bpl $1474 -1487: 6f ret - -1488: f8 65 mov x,$65 -148a: 9b 9b dec $9b+x -148c: d0 f1 bne $147f -148e: f5 47 05 mov a,$0547+x -1491: d4 9b mov $9b+x,a -1493: 9b a3 dec $a3+x -1495: d0 e8 bne $147f -1497: f4 68 mov a,$68+x -1499: e8 04 mov a,#$04 -149b: d4 68 mov $68+x,a -149d: 5f a0 14 jmp $14a0 - -14a0: f8 65 mov x,$65 -14a2: f4 82 mov a,$82+x -14a4: 68 19 cmp a,#$19 -14a6: f0 25 beq $14cd -14a8: 60 clrc -14a9: 94 8a adc a,$8a+x -14ab: f8 66 mov x,$66 -14ad: c4 02 mov $02,a -14af: fd mov y,a -14b0: f6 3b 06 mov a,$063b+y -14b3: c4 00 mov $00,a -14b5: f6 3c 06 mov a,$063c+y -14b8: c4 01 mov $01,a -14ba: 8d 02 mov y,#$02 -14bc: f7 00 mov a,($00)+y -14be: 74 72 cmp a,$72+x -14c0: d0 0b bne $14cd -14c2: 8d 03 mov y,#$03 -14c4: f7 00 mov a,($00)+y -14c6: 74 73 cmp a,$73+x -14c8: d0 03 bne $14cd -14ca: 5f 32 17 jmp $1732 - -14cd: 3f f2 15 call $15f2 -14d0: fd mov y,a ; get the current note/command -14d1: 28 20 and a,#$20 -14d3: c4 67 mov $67,a -14d5: f8 65 mov x,$65 -14d7: ad 80 cmp y,#$80 ; is it a note? -14d9: 90 3d bcc $1518 -14db: ad f0 cmp y,#$f0 ; is it a special meaning flag? -14dd: 90 08 bcc $14e7 -14df: dd mov a,y ; then it must be a command... -14e0: 28 0f and a,#$0f -14e2: 1c asl a -14e3: 5d mov x,a -14e4: 1f 2f 18 jmp ($182f+x) ; jump to command number position - -14e7: f5 67 05 mov a,$0567+x ; pitch bend -14ea: f0 4c beq $1538 -14ec: dd mov a,y -14ed: 28 08 and a,#$08 -14ef: 0d push psw -14f0: dd mov a,y -14f1: 28 07 and a,#$07 -14f3: bc inc a -14f4: 1c asl a -14f5: f8 66 mov x,$66 -14f7: 8e pop psw -14f8: f0 0d beq $1507 -14fa: 60 clrc -14fb: 94 be adc a,$be+x -14fd: d4 be mov $be+x,a -14ff: f4 bf mov a,$bf+x -1501: 88 00 adc a,#$00 -1503: d4 bf mov $bf+x,a -1505: 2f 31 bra $1538 -1507: c4 2f mov $2f,a -1509: f4 be mov a,$be+x -150b: 80 setc -150c: a4 2f sbc a,$2f -150e: d4 be mov $be+x,a -1510: f4 bf mov a,$bf+x -1512: a8 00 sbc a,#$00 -1514: d4 bf mov $bf+x,a -1516: 2f 20 bra $1538 -1518: f5 67 05 mov a,$0567+x ; play the note (check first) -151b: f0 1b beq $1538 -151d: dd mov a,y -151e: 28 1f and a,#$1f ; get the actual note value -1520: fd mov y,a -1521: f8 66 mov x,$66 -1523: f4 ae mov a,$ae+x -1525: 60 clrc -1526: 96 1c 14 adc a,$141c+y -1529: d4 ae mov $ae+x,a -152b: f4 af mov a,$af+x -152d: 96 3c 14 adc a,$143c+y -1530: d4 af mov $af+x,a -1532: e8 00 mov a,#$00 -1534: d4 be mov $be+x,a -1536: d4 bf mov $bf+x,a -1538: 3f f2 15 call $15f2 -153b: 68 00 cmp a,#$00 -153d: d0 07 bne $1546 -153f: f8 65 mov x,$65 -1541: f4 68 mov a,$68+x -1543: 5f 74 14 jmp $1474 - -1546: f8 65 mov x,$65 -1548: d4 a3 mov $a3+x,a -154a: fd mov y,a -154b: e4 ce mov a,$ce -154d: d0 0a bne $1559 -154f: f5 47 05 mov a,$0547+x -1552: d4 9b mov $9b+x,a -1554: cf mul ya -1555: da 3d movw $3d,ya -1557: 2f 08 bra $1561 -1559: f5 47 05 mov a,$0547+x -155c: d4 9b mov $9b+x,a -155e: 8f 00 ce mov $ce,#$00 -1561: 3f 16 18 call $1816 -1564: f5 6f 05 mov a,$056f+x -1567: 5d mov x,a -1568: f5 0d 02 mov a,$020d+x -156b: f0 0a beq $1577 -156d: e8 40 mov a,#$40 -156f: 75 2e 02 cmp a,$022e+x -1572: b0 05 bcs $1579 -1574: 5f ec 15 jmp $15ec - -1577: e8 40 mov a,#$40 -1579: d5 2e 02 mov $022e+x,a -157c: e8 01 mov a,#$01 -157e: d5 0d 02 mov $020d+x,a -1581: d8 ab mov $ab,x -1583: 7d mov a,x -1584: f8 65 mov x,$65 -1586: f5 67 05 mov a,$0567+x -1589: d0 0c bne $1597 -158b: f8 66 mov x,$66 -158d: f4 ae mov a,$ae+x -158f: c4 3f mov $3f,a -1591: f4 af mov a,$af+x -1593: c4 40 mov $40,a -1595: 2f 1e bra $15b5 -1597: f8 66 mov x,$66 -1599: f4 ae mov a,$ae+x -159b: 60 clrc -159c: 94 be adc a,$be+x -159e: c4 3f mov $3f,a -15a0: f4 af mov a,$af+x -15a2: 94 bf adc a,$bf+x -15a4: c4 40 mov $40,a -15a6: f5 77 05 mov a,$0577+x -15a9: 60 clrc -15aa: 84 3f adc a,$3f -15ac: c4 3f mov $3f,a -15ae: f5 78 05 mov a,$0578+x -15b1: 84 40 adc a,$40 -15b3: c4 40 mov $40,a -15b5: eb 67 mov y,$67 -15b7: d0 0e bne $15c7 -15b9: 0b ab asl $ab -15bb: f8 ab mov x,$ab -15bd: d5 4f 02 mov $024f+x,a -15c0: e4 3f mov a,$3f -15c2: d5 4e 02 mov $024e+x,a -15c5: 2f 25 bra $15ec -15c7: f8 65 mov x,$65 -15c9: f5 4f 05 mov a,$054f+x -15cc: 60 clrc -15cd: 95 57 05 adc a,$0557+x -15d0: 10 02 bpl $15d4 -15d2: e8 7f mov a,#$7f -15d4: c4 ac mov $ac,a -15d6: f8 65 mov x,$65 -15d8: f5 5f 05 mov a,$055f+x -15db: f8 ab mov x,$ab -15dd: 8d 00 mov y,#$00 -15df: cc 04 02 mov $0204,y -15e2: 8d ff mov y,#$ff -15e4: cc 05 02 mov $0205,y -15e7: eb ac mov y,$ac -15e9: 3f 40 0d call $0d40 -15ec: 8f 00 cf mov $cf,#$00 -15ef: 5f 7f 14 jmp $147f - -15f2: f8 66 mov x,$66 -15f4: e7 72 mov a,($72+x) -15f6: bb 72 inc $72+x ; update melody (sequence) position pointer -15f8: d0 02 bne $15fc -15fa: bb 73 inc $73+x -15fc: 6f ret - -; vcmd f0 - end of sequence -15fd: f8 65 mov x,$65 -15ff: e8 00 mov a,#$00 -1601: d4 68 mov $68+x,a -1603: 8b 64 dec $64 -1605: 5f 7f 14 jmp $147f - -; vcmd f1 - delta expression -1608: f8 65 mov x,$65 -160a: f5 57 05 mov a,$0557+x -160d: 3f 2b 16 call $162b -1610: d5 57 05 mov $0557+x,a -1613: 5f a0 14 jmp $14a0 - -1616: 6d push y -1617: 4d push x -1618: ee pop y -1619: cf mul ya -161a: da 2f movw $2f,ya -161c: 7d mov a,x -161d: ee pop y -161e: cf mul ya -161f: 6d push y -1620: 0b 2f asl $2f -1622: 84 30 adc a,$30 -1624: 5d mov x,a -1625: ae pop a -1626: 88 00 adc a,#$00 -1628: fd mov y,a -1629: 7d mov a,x -162a: 6f ret - -162b: 4d push x ; scale volume - get 2 bytes -162c: fd mov y,a -162d: 6d push y -162e: 3f f2 15 call $15f2 -1631: cf mul ya -1632: da 2f movw $2f,ya -1634: ee pop y -1635: 3f f2 15 call $15f2 -1638: cf mul ya -1639: 6d push y -163a: 0b 2f asl $2f -163c: 84 30 adc a,$30 -163e: 5d mov x,a -163f: ae pop a -1640: 88 00 adc a,#$00 -1642: fd mov y,a -1643: d0 03 bne $1648 -1645: 7d mov a,x -1646: 10 02 bpl $164a -1648: e8 7f mov a,#$7f -164a: ce pop x -164b: 6f ret - -; vcmd f2 - absolute expression -164c: 3f f2 15 call $15f2 -164f: f8 65 mov x,$65 -1651: d5 57 05 mov $0557+x,a -1654: 5f a0 14 jmp $14a0 - -; vcmd f3 - mute -1657: f8 65 mov x,$65 -1659: f5 6f 05 mov a,$056f+x -165c: 30 15 bmi $1673 -165e: fd mov y,a -165f: f6 0d 02 mov a,$020d+y -1662: 68 80 cmp a,#$80 -1664: f0 0d beq $1673 -1666: e8 00 mov a,#$00 -1668: d6 6e 02 mov $026e+y,a -166b: f6 d5 07 mov a,$07d5+y -166e: c4 f2 mov $f2,a -1670: 8f 9f f3 mov $f3,#$9f - -; vcmd f4 - rest -1673: 3f f2 15 call $15f2 -1676: f8 65 mov x,$65 -1678: d4 a3 mov $a3+x,a -167a: f5 47 05 mov a,$0547+x -167d: d4 9b mov $9b+x,a -167f: 3f 16 18 call $1816 -1682: 5f 7f 14 jmp $147f - -; vcmd f5 - set sound/instrument -1685: 3f f2 15 call $15f2 ; get 1 more byte = read sound number -1688: f8 65 mov x,$65 -168a: d5 5f 05 mov $055f+x,a ; move it onto the stack -168d: f4 82 mov a,$82+x -168f: 68 19 cmp a,#$19 ; $19 = phrase stack max value? -1691: f0 32 beq $16c5 -1693: 60 clrc -1694: 94 8a adc a,$8a+x -1696: f8 66 mov x,$66 -1698: c4 02 mov $02,a -169a: fd mov y,a -169b: f6 3b 06 mov a,$063b+y -169e: c4 00 mov $00,a -16a0: f6 3c 06 mov a,$063c+y -16a3: c4 01 mov $01,a -16a5: f6 39 06 mov a,$0639+y -16a8: 8d 09 mov y,#$09 -16aa: 77 00 cmp a,($00)+y -16ac: 90 02 bcc $16b0 -16ae: e8 00 mov a,#$00 -16b0: bc inc a -16b1: eb 02 mov y,$02 -16b3: d6 39 06 mov $0639+y,a -16b6: 60 clrc -16b7: 88 09 adc a,#$09 -16b9: fd mov y,a -16ba: f7 00 mov a,($00)+y -16bc: 68 ff cmp a,#$ff -16be: f0 05 beq $16c5 -16c0: f8 65 mov x,$65 -16c2: d5 5f 05 mov $055f+x,a -16c5: 5f a0 14 jmp $14a0 - -; vcmd f6 - play phrase -16c8: f8 65 mov x,$65 -16ca: f4 82 mov a,$82+x ; push entry onto stack -16cc: 80 setc -16cd: a8 05 sbc a,#$05 -16cf: d4 82 mov $82+x,a -16d1: 60 clrc ; set to current player -16d2: 94 8a adc a,$8a+x -16d4: fd mov y,a -16d5: cb 02 mov $02,y -16d7: f8 66 mov x,$66 -16d9: f4 72 mov a,$72+x -16db: d6 3b 06 mov $063b+y,a ; LSB of pointer -16de: f4 73 mov a,$73+x -16e0: d6 3c 06 mov $063c+y,a ; MSB of pointer -16e3: e8 00 mov a,#$00 -16e5: d6 38 06 mov $0638+y,a ; number of loops -16e8: 3f f2 15 call $15f2 ; start point low byte -16eb: 2d push a -16ec: 3f f4 15 call $15f4 ; start point high byte -16ef: 2d push a -16f0: 3f f4 15 call $15f4 ; end point low byte -16f3: 3f f4 15 call $15f4 ; end point high byte -16f6: 3f f4 15 call $15f4 ; number of loops -16f9: 3f f4 15 call $15f4 ; frequency offset LSB low byte -16fc: fd mov y,a -16fd: 3f f4 15 call $15f4 ; frequency offset LSB high byte -1700: 2d push a -1701: dd mov a,y -1702: 60 clrc -1703: 95 77 05 adc a,$0577+x ; adjust frequency -1706: d5 77 05 mov $0577+x,a -1709: ae pop a -170a: 95 78 05 adc a,$0578+x -170d: d5 78 05 mov $0578+x,a -1710: f8 65 mov x,$65 -1712: f5 57 05 mov a,$0557+x -1715: eb 02 mov y,$02 -1717: d6 3a 06 mov $063a+y,a -171a: 3f 2b 16 call $162b ; scale the volume (read next 2 bytes) -171d: d5 57 05 mov $0557+x,a -1720: eb 02 mov y,$02 ; initialize instrument pointer -1722: e8 00 mov a,#$00 -1724: d6 39 06 mov $0639+y,a -1727: f8 66 mov x,$66 -1729: ae pop a -172a: d4 73 mov $73+x,a -172c: ae pop a -172d: d4 72 mov $72+x,a -172f: 5f a0 14 jmp $14a0 - -1732: eb 02 mov y,$02 -1734: f6 38 06 mov a,$0638+y -1737: bc inc a -1738: d6 38 06 mov $0638+y,a -173b: 8d 04 mov y,#$04 -173d: f7 00 mov a,($00)+y -173f: f0 07 beq $1748 -1741: eb 02 mov y,$02 -1743: 76 38 06 cmp a,$0638+y -1746: f0 0f beq $1757 -1748: 8d 00 mov y,#$00 -174a: f7 00 mov a,($00)+y -174c: d4 72 mov $72+x,a -174e: 8d 01 mov y,#$01 -1750: f7 00 mov a,($00)+y -1752: d4 73 mov $73+x,a -1754: 5f cd 14 jmp $14cd - -1757: f5 77 05 mov a,$0577+x -175a: 80 setc -175b: 8d 05 mov y,#$05 -175d: b7 00 sbc a,($00)+y -175f: d5 77 05 mov $0577+x,a -1762: f5 78 05 mov a,$0578+x -1765: 8d 06 mov y,#$06 -1767: b7 00 sbc a,($00)+y -1769: d5 78 05 mov $0578+x,a -176c: eb 02 mov y,$02 -176e: f6 3a 06 mov a,$063a+y -1771: f8 65 mov x,$65 -1773: d5 57 05 mov $0557+x,a -1776: f8 66 mov x,$66 -1778: e4 00 mov a,$00 -177a: 60 clrc -177b: 88 0a adc a,#$0a -177d: d4 72 mov $72+x,a -177f: e4 01 mov a,$01 -1781: 88 00 adc a,#$00 -1783: d4 73 mov $73+x,a -1785: 8d 09 mov y,#$09 -1787: f7 00 mov a,($00)+y -1789: 60 clrc -178a: 94 72 adc a,$72+x -178c: d4 72 mov $72+x,a -178e: f4 73 mov a,$73+x -1790: 88 00 adc a,#$00 -1792: d4 73 mov $73+x,a -1794: f8 65 mov x,$65 -1796: f4 82 mov a,$82+x -1798: 60 clrc -1799: 88 05 adc a,#$05 -179b: d4 82 mov $82+x,a -179d: 5f a0 14 jmp $14a0 - -; vcmd f7-f8 - set detune -17a0: 28 02 and a,#$02 -17a2: c4 67 mov $67,a -17a4: 3f f2 15 call $15f2 -17a7: d4 ae mov $ae+x,a -17a9: 3f f2 15 call $15f2 -17ac: d4 af mov $af+x,a -17ae: e8 00 mov a,#$00 -17b0: d4 be mov $be+x,a -17b2: d4 bf mov $bf+x,a -17b4: 5f 38 15 jmp $1538 - -; vcmd f9 - go to loop -17b7: eb 65 mov y,$65 -17b9: fc inc y -17ba: f7 70 mov a,($70)+y -17bc: 8d 10 mov y,#$10 -17be: 3f b2 0e call $0eb2 -17c1: f8 66 mov x,$66 -17c3: d4 72 mov $72+x,a -17c5: db 73 mov $73+x,y -17c7: e8 1c mov a,#$1c -17c9: d4 ae mov $ae+x,a -17cb: e8 02 mov a,#$02 -17cd: d4 af mov $af+x,a -17cf: f8 65 mov x,$65 -17d1: e8 00 mov a,#$00 -17d3: d5 4f 05 mov $054f+x,a -17d6: d5 57 05 mov $0557+x,a -17d9: 5f a0 14 jmp $14a0 - -; vcmd fa - set tempo -17dc: 3f f2 15 call $15f2 -17df: c5 00 02 mov $0200,a -17e2: 3f f2 15 call $15f2 -17e5: c5 02 02 mov $0202,a -17e8: 3f f2 15 call $15f2 -17eb: c5 03 02 mov $0203,a -17ee: 5f a0 14 jmp $14a0 - -; vcmd fb - panning -17f1: e8 00 mov a,#$00 -17f3: fd mov y,a -17f4: da 3d movw $3d,ya -17f6: 8f 01 ce mov $ce,#$01 -17f9: 3f f2 15 call $15f2 -17fc: 2d push a -17fd: fd mov y,a -17fe: f8 65 mov x,$65 -1800: f5 47 05 mov a,$0547+x -1803: cf mul ya -1804: 7a 3d addw ya,$3d -1806: da 3d movw $3d,ya -1808: ae pop a -1809: 68 ff cmp a,#$ff -180b: f0 ec beq $17f9 -180d: 5f a0 14 jmp $14a0 - -; vcmd fc - set no note retrigger? -1810: 8f 01 cf mov $cf,#$01 -1813: 5f a0 14 jmp $14a0 - -1816: e8 02 mov a,#$02 -1818: d4 68 mov $68+x,a -181a: 6f ret - -181b: 78 80 ad cmp $ad,#$80 -181e: 90 08 bcc $1828 -1820: 60 clrc -1821: 84 ad adc a,$ad -1823: 10 09 bpl $182e -1825: e8 00 mov a,#$00 -1827: 6f ret - -1828: 84 ad adc a,$ad -182a: 10 02 bpl $182e -182c: e8 7f mov a,#$7f -182e: 6f ret - -; vcmd table (f0-fc) -182f: dw $15fd ; f0 - end of melody -1831: dw $1608 ; f1 - delta expression -1833: dw $164c ; f2 - absolute expression -1835: dw $1657 ; f3 - mute -1837: dw $1673 ; f4 - rest -1839: dw $1685 ; f5 - set sound/instrument -183b: dw $16c8 ; f6 - play phrase -183d: dw $17a0 ; f7 - set detune -183f: dw $17a0 ; f8 - set detune -1841: dw $17b7 ; f9 - go to loop -1843: dw $17dc ; fa - set tempo -1845: dw $17f1 ; fb - panning -1847: dw $1810 ; fc - set no note retrigger? - -1849: e4 03 mov a,$03 -184b: 1c asl a -184c: 44 03 eor a,$03 -184e: 1c asl a -184f: 1c asl a -1850: 1c asl a -1851: 2b 05 rol $05 -1853: 2b 04 rol $04 -1855: 2b 03 rol $03 -1857: e4 05 mov a,$05 -1859: 6f ret - -185a: 8f 00 ce mov $ce,#$00 -185d: 8f 00 cf mov $cf,#$00 -1860: 8d 1a mov y,#$1a -1862: 3f b2 0e call $0eb2 -1865: da 70 movw $70,ya -1867: 8d 00 mov y,#$00 -1869: f7 70 mov a,($70)+y -186b: c4 63 mov $63,a -186d: c4 64 mov $64,a -186f: f0 66 beq $18d7 -1871: 8f 00 65 mov $65,#$00 -1874: 8f 00 66 mov $66,#$00 -1877: fc inc y -1878: f7 70 mov a,($70)+y -187a: 6d push y -187b: 8d 10 mov y,#$10 -187d: 3f b2 0e call $0eb2 -1880: f8 66 mov x,$66 -1882: d4 72 mov $72+x,a -1884: dd mov a,y -1885: ee pop y -1886: d4 73 mov $73+x,a -1888: f8 65 mov x,$65 -188a: e8 19 mov a,#$19 -188c: d4 82 mov $82+x,a -188e: e8 04 mov a,#$04 -1890: d4 68 mov $68+x,a -1892: e8 ff mov a,#$ff -1894: d5 67 05 mov $0567+x,a -1897: e8 01 mov a,#$01 -1899: d5 47 05 mov $0547+x,a -189c: 7d mov a,x -189d: d5 6f 05 mov $056f+x,a -18a0: f8 66 mov x,$66 -18a2: e8 1c mov a,#$1c -18a4: d4 ae mov $ae+x,a -18a6: e8 02 mov a,#$02 -18a8: d4 af mov $af+x,a -18aa: e8 00 mov a,#$00 -18ac: d5 77 05 mov $0577+x,a -18af: d5 78 05 mov $0578+x,a -18b2: f8 65 mov x,$65 -18b4: d5 4f 05 mov $054f+x,a -18b7: d5 57 05 mov $0557+x,a -18ba: e8 00 mov a,#$00 -18bc: c5 00 02 mov $0200,a -18bf: c5 02 02 mov $0202,a -18c2: e8 01 mov a,#$01 -18c4: c5 03 02 mov $0203,a -18c7: e8 ff mov a,#$ff -18c9: c5 01 02 mov $0201,a -18cc: ab 66 inc $66 -18ce: ab 66 inc $66 -18d0: 3d inc x -18d1: d8 65 mov $65,x -18d3: 3e 63 cmp x,$63 -18d5: 90 a0 bcc $1877 -18d7: 6f ret - -18d8: dw $147f -18da: dw $1488 -18dc: dw $14a0 - -18de: ba 21 movw ya,$21 -18e0: da 0a movw $0a,ya -18e2: 6f ret - -18e3: eb 21 mov y,$21 -18e5: fa 1f f6 mov ($f6),($1f) -18e8: 00 nop -18e9: 00 nop -18ea: 00 nop -18eb: 00 nop -18ec: e4 f4 mov a,$f4 -18ee: d7 0a mov ($0a)+y,a -18f0: dc dec y -18f1: e4 f5 mov a,$f5 -18f3: d7 0a mov ($0a)+y,a -18f5: dc dec y -18f6: e4 f6 mov a,$f6 -18f8: d7 0a mov ($0a)+y,a -18fa: dc dec y -18fb: e4 f7 mov a,$f7 -18fd: d7 0a mov ($0a)+y,a -18ff: dc dec y -1900: 10 ea bpl $18ec -1902: ba 0a movw ya,$0a -1904: 7a 21 addw ya,$21 -1906: da 0a movw $0a,ya -1908: 3a 0a incw $0a -190a: 8f b1 f1 mov $f1,#$b1 -190d: fa 1f f6 mov ($f6),($1f) -1910: 6f ret - -1911: eb 21 mov y,$21 -1913: fa 1f f6 mov ($f6),($1f) -1916: e4 f6 mov a,$f6 -1918: 64 f6 cmp a,$f6 -191a: d0 fa bne $1916 -191c: 68 00 cmp a,#$00 -191e: f0 f6 beq $1916 -1920: 64 1f cmp a,$1f -1922: f0 f2 beq $1916 -1924: c4 1f mov $1f,a -1926: e4 f4 mov a,$f4 -1928: d7 0a mov ($0a)+y,a -192a: dc dec y -192b: 30 19 bmi $1946 -192d: e4 f5 mov a,$f5 -192f: d7 0a mov ($0a)+y,a -1931: dc dec y -1932: 30 12 bmi $1946 -1934: e4 f7 mov a,$f7 -1936: d7 0a mov ($0a)+y,a -1938: cb f7 mov $f7,y -193a: fa 0a f4 mov ($f4),($0a) -193d: fa 0b f5 mov ($f5),($0b) -1940: fa 1f f6 mov ($f6),($1f) -1943: dc dec y -1944: 10 d0 bpl $1916 -1946: 8f b1 f1 mov $f1,#$b1 -1949: fa 1f f6 mov ($f6),($1f) -194c: ba 0a movw ya,$0a -194e: 7a 21 addw ya,$21 -1950: da 0a movw $0a,ya -1952: 3a 0a incw $0a -1954: 6f ret - -1955: 6f ret - -1956: dw $0bc2 -1958: dw $0c01 -195a: dw $0c09 -195c: dw $0000 -195e: dw $0000 -1960: dw $0000 -1962: dw $078b -1964: dw $0c89 -1966: dw $0be7 -1968: dw $0be1 -196a: dw $0bde -196c: dw $0bd8 -196e: dw $0c3e -1970: dw $0c49 -1972: dw $18de -1974: dw $18e3 -1976: dw $1911 -1978: dw $0c93 -197a: dw $0c9d -197c: dw $1955 From 7dbd02edd3dc395f38f5da8f54a7ea025ad8c3d8 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:51:08 -0700 Subject: [PATCH 020/116] Delete Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin --- ...er Star Wars - Return of the Jedi ($0700).bin | Bin 6100 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin diff --git a/Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin b/Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin deleted file mode 100644 index 59b0b0dac8ecc3325ef0ea82fe69dc580ba6c7e2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6100 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 Date: Sat, 4 Oct 2025 20:51:53 -0700 Subject: [PATCH 021/116] Add files via upload Improved disassemblies with code and added Return of the Jedi. --- snes/Sculptured Software/Mortal Kombat 3.s | 394 ++- .../Pink Panther in Pink Goes to Hollywood.s | 341 ++- ...o's Modern Life - Spunky's Dangerous Day.s | 335 ++- ...Star Wars - Return of the Jedi ($0700).bin | Bin 0 -> 6100 bytes .../Super Star Wars - Return of the Jedi.s | 2634 +++++++++++++++++ ...uper Star Wars - The Empire Strikes Back.s | 265 +- snes/Sculptured Software/Super Star Wars.s | 335 ++- snes/Sculptured Software/The Jungle Book.s | 369 ++- .../WWF Super WrestleMania.s | 375 ++- 9 files changed, 4554 insertions(+), 494 deletions(-) create mode 100644 snes/Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin create mode 100644 snes/Sculptured Software/Super Star Wars - Return of the Jedi.s diff --git a/snes/Sculptured Software/Mortal Kombat 3.s b/snes/Sculptured Software/Mortal Kombat 3.s index 988e665e..dfb35fc3 100644 --- a/snes/Sculptured Software/Mortal Kombat 3.s +++ b/snes/Sculptured Software/Mortal Kombat 3.s @@ -1,13 +1,13 @@ 0700: 20 clrp -0701: cd ff mov x,#$ff +0701: cd ff mov x,#$ff ; set stack pointer 0703: bd mov sp,x -0704: 8f a0 fa mov $fa,#$a0 +0704: 8f a0 fa mov $fa,#$a0 ; stop all timers 0707: 8f a0 fb mov $fb,#$a0 070a: 8f 20 fc mov $fc,#$20 -070d: 8f 87 f1 mov $f1,#$87 -0710: 3f 9f 10 call $109f +070d: 8f 87 f1 mov $f1,#$87 ; clear COM ports +0710: 3f 9f 10 call $109f ; initialize all sound 0713: 8f 00 24 mov $24,#$00 -0716: 8f 1f 25 mov $25,#$1f +0716: 8f 1f 25 mov $25,#$1f ; install permanent pointer to the wave source dir 0719: 8f 01 f6 mov $f6,#$01 071c: 62 08 set3 $08 071e: 3f f3 0b call $0bf3 @@ -33,6 +33,7 @@ 074c: d0 03 bne $0751 074e: e8 01 mov a,#$01 0750: 6f ret + 0751: cb 3b mov $3b,y 0753: 8f 00 3a mov $3a,#$00 0756: cd 14 mov x,#$14 @@ -59,6 +60,7 @@ 0783: 10 d3 bpl $0758 0785: e4 3a mov a,$3a 0787: 6f ret + 0788: e2 08 set7 $08 078a: 2f 02 bra $078e 078c: f2 08 clr7 $08 @@ -75,21 +77,41 @@ 07a7: c8 61 cmp x,#$61 07a9: 90 f8 bcc $07a3 07ab: 5f 00 00 jmp $0000 + 07ae: 4f c0 pcall $c0 07b0: 5f 00 07 jmp $0700 -07b3: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01,$1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00,$08,$18,$28,$38,$48,$58,$68,$78,$07,$17,$27,$37,$47,$57,$67,$77,$04,$14,$24,$34,$44,$54,$64,$74,$02,$12,$22,$32,$42,$52,$62,$72,$00,$10,$20,$30,$40,$50,$60,$70,$01,$11,$21,$31,$41,$51,$61,$71,$2c,$3c,$0d,$0c,$1c,$01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f,$7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f +; gain tables +07b3: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 +07c9: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 + +; DSP registers: VxENVX +07df: db $08,$18,$28,$38,$48,$58,$68,$78 +; DSP registers: VxGAIN +07e7: db $07,$17,$27,$37,$47,$57,$67,$77 +; DSP registers: VxSCRN (select sample) +07ef: db $04,$14,$24,$34,$44,$54,$64,$74 +; DSP registers: VxPITCHL +07f7: db $02,$12,$22,$32,$42,$52,$62,$72 +; DSP registers: VxVOLL +07ff: db $00,$10,$20,$30,$40,$50,$60,$70,$01,$11,$21,$31,$41,$51,$61,$71,$2c,$3c,$0d,$0c,$1c + +; voice numbers and bits for clearing those void bits +0814: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f -0830: 3f f3 0b call $0bf3 -0833: 8f 00 49 mov $49,#$00 +; echo poke registers +0824: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f + +0830: 3f f3 0b call $0bf3 ; que command +0833: 8f 00 49 mov $49,#$00 ; reset sample flags 0836: 8f 00 5b mov $5b,#$00 0839: 8f 7c f2 mov $f2,#$7c 083c: e4 f3 mov a,$f3 083e: 24 5e and a,$5e 0840: c4 58 mov $58,a 0842: 8f 00 f3 mov $f3,#$00 -0845: cd 07 mov x,#$07 -0847: 3f f3 0b call $0bf3 +0845: cd 07 mov x,#$07 ; find out all channels changing waves +0847: 3f f3 0b call $0bf3 ; (to restart them, starting with 7) 084a: d8 28 mov $28,x 084c: 7d mov a,x 084d: 60 clrc @@ -105,6 +127,7 @@ 0861: 23 4d 06 bbs1 $4d,$086a 0864: f5 ec fc mov a,$fcec+x 0867: 5f 78 08 jmp $0878 + 086a: eb 2d mov y,$2d 086c: f6 e3 04 mov a,$04e3+y 086f: d0 02 bne $0873 @@ -151,6 +174,7 @@ 08ce: 1d dec x 08cf: 30 03 bmi $08d4 08d1: 5f 47 08 jmp $0847 + 08d4: e4 5c mov a,$5c 08d6: 24 59 and a,$59 08d8: 04 5a or a,$5a @@ -176,6 +200,7 @@ 0902: 63 4d 06 bbs3 $4d,$090b 0905: f5 e4 fc mov a,$fce4+x 0908: 5f 10 09 jmp $0910 + 090b: 3f 7c 12 call $127c 090e: f8 28 mov x,$28 0910: 60 clrc @@ -217,7 +242,8 @@ 0957: 1d dec x 0958: 30 03 bmi $095d 095a: 5f e9 08 jmp $08e9 -095d: cd 07 mov x,#$07 + +095d: cd 07 mov x,#$07 ; process pitch envelopes (start with ch 7) 095f: 3f f3 0b call $0bf3 0962: d8 28 mov $28,x 0964: 7d mov a,x @@ -255,9 +281,9 @@ 09a0: f4 da mov a,$da+x 09a2: 7a 3a addw ya,$3a 09a4: c3 4d 03 bbs6 $4d,$09aa -09a7: 3f bc 14 call $14bc -09aa: da 3a movw $3a,ya -09ac: e4 28 mov a,$28 +09a7: 3f bc 14 call $14bc ; translate note to frequency +09aa: da 3a movw $3a,ya ; add in hardware tuning +09ac: e4 28 mov a,$28 ; word addressing 09ae: 1c asl a 09af: 5d mov x,a 09b0: f5 5c 01 mov a,$015c+x @@ -289,6 +315,7 @@ 09e8: f5 23 01 mov a,$0123+x 09eb: fd mov y,a 09ec: 5f fc 09 jmp $09fc + 09ef: 3f 7c 12 call $127c 09f2: fd mov y,a 09f3: f8 28 mov x,$28 @@ -380,6 +407,7 @@ 0aa6: 1d dec x 0aa7: 30 03 bmi $0aac 0aa9: 5f cd 09 jmp $09cd + 0aac: 8f 4c f2 mov $f2,#$4c 0aaf: fa 5d f3 mov ($f3),($5d) 0ab2: e4 5d mov a,$5d @@ -459,7 +487,9 @@ 0b5b: 90 05 bcc $0b62 0b5d: 8d 80 mov y,#$80 0b5f: 5f 52 0d jmp $0d52 + 0b62: 6f ret + 0b63: 32 08 clr1 $08 0b65: e4 ea mov a,$ea 0b67: f0 3a beq $0ba3 @@ -492,7 +522,9 @@ 0b9e: 3f f3 0b call $0bf3 0ba1: 2f c0 bra $0b63 0ba3: 6f ret + 0ba4: 1f 00 1e jmp ($1e00+x) + 0ba7: 79 cmp (x),(y) 0ba8: 0c 40 0c asl $0c40 0bab: 40 setp @@ -538,9 +570,11 @@ 0bfe: 2e 03 02 cbne $03,$0c03 0c01: ae pop a 0c02: 6f ret + 0c03: 2e ed 02 cbne $ed,$0c08 0c06: ae pop a 0c07: 6f ret + 0c08: 22 09 set1 $09 0c0a: fa ed ee mov ($ee),($ed) 0c0d: c4 ed mov $ed,a @@ -565,8 +599,11 @@ 0c33: ae pop a 0c34: 23 09 bc bbs1 $09,$0bf3 0c37: 6f ret + 0c38: 1f a5 0b jmp ($0ba5+x) + 0c3b: 6f ret + 0c3c: d8 31 mov $31,x 0c3e: 2f 0b bra $0c4b 0c40: 23 08 08 bbs1 $08,$0c4b @@ -594,9 +631,11 @@ 0c6e: 22 08 set1 $08 0c70: 32 09 clr1 $09 0c72: 6f ret + 0c73: fa ee ed mov ($ed),($ee) 0c76: 32 09 clr1 $09 0c78: 6f ret + 0c79: e4 f6 mov a,$f6 0c7b: 8f b7 f1 mov $f1,#$b7 0c7e: 2d push a @@ -606,6 +645,7 @@ 0c86: ae pop a 0c87: c4 f6 mov $f6,a 0c89: 6f ret + 0c8a: 8d 00 mov y,#$00 0c8c: e8 01 mov a,#$01 0c8e: da 1a movw $1a,ya @@ -646,15 +686,19 @@ 0cdd: d8 ed mov $ed,x 0cdf: d8 f6 mov $f6,x 0ce1: 6f ret + 0ce2: 3f 12 11 call $1112 0ce5: 3f 08 11 call $1108 0ce8: 22 07 set1 $07 0cea: 6f ret + 0ceb: c5 a2 03 mov $03a2,a 0cee: 6f ret + 0cef: e8 00 mov a,#$00 0cf1: c5 43 02 mov $0243,a 0cf4: 6f ret + 0cf5: cd 01 mov x,#$01 0cf7: 52 07 clr2 $07 0cf9: 2f 02 bra $0cfd @@ -664,6 +708,7 @@ 0d02: cb d1 mov $d1,y 0d04: d8 d0 mov $d0,x 0d06: 6f ret + 0d07: 2d push a 0d08: dd mov a,y 0d09: 28 7f and a,#$7f @@ -674,6 +719,7 @@ 0d13: cc 40 02 mov $0240,y 0d16: 82 08 set4 $08 0d18: 5f ae 0d jmp $0dae + 0d1b: 3f 93 1c call $1c93 0d1e: e5 fc 1e mov a,$1efc 0d21: c5 8b 06 mov $068b,a @@ -696,6 +742,7 @@ 0d4c: 1d dec x 0d4d: 10 fa bpl $0d49 0d4f: 6f ret + 0d50: 8d ff mov y,#$ff 0d52: cd 07 mov x,#$07 0d54: ad 80 cmp y,#$80 @@ -735,10 +782,13 @@ 0da0: 1d dec x 0da1: 10 c3 bpl $0d66 0da3: 6f ret + 0da4: 52 07 clr2 $07 0da6: 5f fb 0c jmp $0cfb + 0da9: 42 07 set2 $07 0dab: 5f fb 0c jmp $0cfb + 0dae: 8d 0e mov y,#$0e 0db0: c4 77 mov $77,a 0db2: 3f 63 10 call $1063 @@ -759,6 +809,7 @@ 0dd2: 3f 89 0e call $0e89 0dd5: 10 03 bpl $0dda 0dd7: 5f 5b 0e jmp $0e5b + 0dda: 83 08 07 bbs4 $08,$0de4 0ddd: e8 02 mov a,#$02 0ddf: 15 46 02 or a,$0246+x @@ -823,6 +874,7 @@ 0e63: 8b 52 dec $52 0e65: f0 03 beq $0e6a 0e67: 5f bf 0d jmp $0dbf + 0e6a: e8 00 mov a,#$00 0e6c: c5 3e 02 mov $023e,a 0e6f: c5 41 02 mov $0241,a @@ -835,6 +887,7 @@ 0e84: 9c dec a 0e85: c5 3f 02 mov $023f,a 0e88: 6f ret + 0e89: 8f 01 0b mov $0b,#$01 0e8c: 03 09 03 bbs0 $09,$0e92 0e8f: 8f 00 0b mov $0b,#$00 @@ -883,6 +936,7 @@ 0eec: 03 0b 03 bbs0 $0b,$0ef2 0eef: e8 ff mov a,#$ff 0ef1: 6f ret + 0ef2: f8 3a mov x,$3a 0ef4: 30 f9 bmi $0eef 0ef6: 33 0b 04 bbc1 $0b,$0efd @@ -892,7 +946,8 @@ 0eff: d4 12 mov $12+x,a 0f01: e8 00 mov a,#$00 0f03: 6f ret -0f04: d8 28 mov $28,x + +0f04: d8 28 mov $28,x ; play sound (instrument) 0f06: d8 4c mov $4c,x 0f08: 2d push a 0f09: f5 46 02 mov a,$0246+x @@ -918,13 +973,13 @@ 0f35: ae pop a 0f36: 8d 02 mov y,#$02 0f38: 3f 63 10 call $1063 -0f3b: da 20 movw $20,ya +0f3b: da 20 movw $20,ya ;get current voice and instrument 0f3d: f8 4c mov x,$4c -0f3f: f5 14 08 mov a,$0814+x +0f3f: f5 14 08 mov a,$0814+x ;get channel bit mask ID 0f42: c4 65 mov $65,a -0f44: 48 ff eor a,#$ff +0f44: 48 ff eor a,#$ff ;and store inversion 0f46: c4 66 mov $66,a -0f48: e4 57 mov a,$57 +0f48: e4 57 mov a,$57 ;get mode flags 0f4a: 63 07 05 bbs3 $07,$0f52 0f4d: 35 1c 08 and a,$081c+x 0f50: 2f 03 bra $0f55 @@ -935,26 +990,26 @@ 0f5b: d4 67 mov $67+x,a 0f5d: c4 4d mov $4d,a 0f5f: 8f 2d f2 mov $f2,#$2d -0f62: 28 20 and a,#$20 -0f64: f0 05 beq $0f6b -0f66: 09 65 f3 or ($f3),($65) +0f62: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) +0f64: f0 05 beq $0f6b ; if not... +0f66: 09 65 f3 or ($f3),($65) ; turn pitch mod on 0f69: 2f 03 bra $0f6e -0f6b: 29 66 f3 and ($f3),($66) -0f6e: 63 07 50 bbs3 $07,$0fc1 +0f6b: 29 66 f3 and ($f3),($66) ; turn pitch mod off +0f6e: 63 07 50 bbs3 $07,$0fc1 ; slur handler 0f71: b0 4e bcs $0fc1 0f73: 93 4d 45 bbc4 $4d,$0fbb 0f76: 13 08 05 bbc0 $08,$0f7e 0f79: e5 06 01 mov a,$0106 0f7c: 2f 04 bra $0f82 -0f7e: 8d 05 mov y,#$05 +0f7e: 8d 05 mov y,#$05 ; default echo 0f80: f7 20 mov a,($20)+y -0f82: 8d 0c mov y,#$0c +0f82: 8d 0c mov y,#$0c ; look for echo 0f84: 3f 63 10 call $1063 0f87: 8d 00 mov y,#$00 -0f89: f6 24 08 mov a,$0824+y -0f8c: c4 f2 mov $f2,a -0f8e: f7 29 mov a,($29)+y -0f90: ad 01 cmp y,#$01 +0f89: f6 24 08 mov a,$0824+y ; get the echo register values to "poke" +0f8c: c4 f2 mov $f2,a ; (from the table) +0f8e: f7 29 mov a,($29)+y ; now get info to feed to the registers +0f90: ad 01 cmp y,#$01 ; (from the echo environment) 0f92: f0 08 beq $0f9c 0f94: ad 03 cmp y,#$03 0f96: f0 0f beq $0fa7 @@ -968,7 +1023,7 @@ 0faa: 2f 02 bra $0fae 0fac: c4 f3 mov $f3,a 0fae: fc inc y -0faf: ad 0c cmp y,#$0c +0faf: ad 0c cmp y,#$0c ; repeat for every byte of the array 0fb1: 90 d6 bcc $0f89 0fb3: 8f 4d f2 mov $f2,#$4d 0fb6: 09 65 f3 or ($f3),($65) @@ -985,6 +1040,7 @@ 0fcf: f8 4c mov x,$4c 0fd1: d5 23 01 mov $0123+x,a 0fd4: 5f e2 0f jmp $0fe2 + 0fd7: 8d 04 mov y,#$04 0fd9: 3f 63 10 call $1063 0fdc: fa 0f 0d mov ($0d),($0f) @@ -1008,11 +1064,12 @@ 1004: c4 2d mov $2d,a 1006: 63 07 57 bbs3 $07,$1060 1009: 8d 04 mov y,#$04 -100b: f7 20 mov a,($20)+y +100b: f7 20 mov a,($20)+y ; now get the amplitude 100d: 63 4d 08 bbs3 $4d,$1018 1010: f8 4c mov x,$4c 1012: d5 e4 fc mov $fce4+x,a 1015: 5f 39 10 jmp $1039 + 1018: 8d 08 mov y,#$08 101a: 3f 63 10 call $1063 101d: fa 11 0d mov ($0d),($11) @@ -1024,6 +1081,7 @@ 102d: d0 05 bne $1034 102f: e8 ff mov a,#$ff 1031: 5f 36 10 jmp $1036 + 1034: e8 00 mov a,#$00 1036: d6 c3 03 mov $03c3+y,a 1039: e4 4c mov a,$4c @@ -1036,6 +1094,7 @@ 1047: f8 4c mov x,$4c 1049: d5 ec fc mov $fcec+x,a 104c: 5f 5a 10 jmp $105a + 104f: 8d 0a mov y,#$0a 1051: 3f 63 10 call $1063 1054: fa 0e 0d mov ($0d),($0e) @@ -1044,7 +1103,8 @@ 105d: 09 65 56 or ($56),($65) 1060: 72 07 clr3 $07 1062: 6f ret -1063: 3f f3 0b call $0bf3 + +1063: 3f f3 0b call $0bf3 ; load current song/sfx/etc. address into stack 1066: 8f 00 1f mov $1f,#$00 1069: 1c asl a 106a: 2b 1f rol $1f @@ -1062,22 +1122,10 @@ 1082: c4 29 mov $29,a 1084: eb 2a mov y,$2a 1086: 6f ret -1087: 4a 06 1c and1 c,$1c06,0 -108a: 1a 4a decw $4a -108c: 06 or a,(x) -108d: 1c asl a -108e: 1a 06 decw $06 -1090: 1c asl a -1091: 1a 4a decw $4a -1093: 06 or a,(x) -1094: 1c asl a -1095: 1a 4a decw $4a -1097: 06 or a,(x) -1098: 1c asl a -1099: 1a 4a decw $4a -109b: 06 or a,(x) -109c: 1c asl a -109d: 1a 4a decw $4a + +1087: db $4a,$06,$1c,$1a,$4a,$06,$1c,$1a,$06,$1c,$1a,$4a,$06,$1c,$1a,$4a,$06,$1c,$1a,$4a,$06,$1c + +; initalize sound registers 109f: 3f ed 10 call $10ed 10a2: cd 51 mov x,#$51 10a4: 8d 11 mov y,#$11 @@ -1114,6 +1162,7 @@ 10e8: c4 0c mov $0c,a 10ea: 82 07 set4 $07 10ec: 6f ret + 10ed: cd 14 mov x,#$14 10ef: e8 00 mov a,#$00 10f1: d5 28 02 mov $0228+x,a @@ -1127,6 +1176,7 @@ 1103: 8b 3a dec $3a 1105: d0 f0 bne $10f7 1107: 6f ret + 1108: e8 7f mov a,#$7f 110a: c5 3b 02 mov $023b,a 110d: c5 3c 02 mov $023c,a @@ -1150,6 +1200,7 @@ 1135: 24 f3 and a,$f3 1137: c4 f3 mov $f3,a 1139: 6f ret + 113a: d8 00 mov $00,x 113c: cb 01 mov $01,y 113e: 8d 00 mov y,#$00 @@ -1164,7 +1215,53 @@ 114e: d0 f0 bne $1140 1150: 6f ret -1151: db $3d,$00,$4d,$00,$0d,$00,$7d,$00,$0f,$00,$1f,$00,$2f,$00,$3f,$00,$4f,$00,$5f,$00,$6f,$00,$7f,$00,$6d,$ff,$2c,$00,$3c,$00,$0c,$00,$1c,$00,$5d,$02,$5c,$00,$2d,$00,$04,$08,$14,$08,$24,$08,$34,$08,$44,$08,$54,$08,$64,$08,$74,$08,$07,$00,$17,$00,$27,$00,$37,$00,$47,$00,$57,$00,$67,$00,$77,$00,$05,$00,$15,$00,$25,$00,$35,$00,$45,$00,$55,$00,$65,$00,$75,$00,$7c,$00,$ff +; pre-defined DSP flags +1151: db $3d,$00 ; NON (noise enable) +1153: db $4d,$00 ; EON (echo enable) +1155: db $0d,$00 ; EFB (echo feedback) +1157: db $7d,$00 ; EDL (echo delay) +1159: db $0f,$00 ; COEF (channel 1) +115b: db $1f,$00 ; COEF (channel 2) +115d: db $2f,$00 ; COEF (channel 3) +115f: db $3f,$00 ; COEF (channel 4) +1161: db $4f,$00 ; COEF (channel 5) +1163: db $5f,$00 ; COEF (channel 6) +1165: db $6f,$00 ; COEF (channel 7) +1167: db $7f,$00 ; COEF (channel 8) +1169: db $6d,$ff ; ESA (echo buffer start offset) +116b: db $2c,$00 ; EVOL (L) (echo volume - left) +116d: db $3c,$00 ; EVOL (R) (echo volume - right) +116f: db $0c,$00 ; MVOL (L) (main volume - left) +1171: db $1c,$00 ; MVOL (R) (main volume - right) +1173: db $5d,$02 ; DIR (offset of source directory) +1175: db $5c,$00 ; KOF (key off) +1177: db $2d,$00 ; PMON (pitch modulation) +1179: db $04,$08 ; SRCN (source number - channel 1) +117b: db $14,$08 ; SRCN (source number - channel 2) +117d: db $24,$08 ; SRCN (source number - channel 3) +117f: db $34,$08 ; SRCN (source number - channel 4) +1181: db $44,$08 ; SRCN (source number - channel 5) +1183: db $54,$08 ; SRCN (source number - channel 6) +1185: db $64,$08 ; SRCN (source number - channel 7) +1187: db $74,$08 ; SRCN (source number - channel 8) +1189: db $07,$00 ; GAIN (channel 1) +118b: db $17,$00 ; GAIN (channel 2) +118d: db $27,$00 ; GAIN (channel 3) +118f: db $37,$00 ; GAIN (channel 4) +1191: db $47,$00 ; GAIN (channel 5) +1193: db $57,$00 ; GAIN (channel 6) +1195: db $67,$00 ; GAIN (channel 7) +1197: db $77,$00 ; GAIN (channel 8) +1199: db $05,$00 ; ASDR (1 - channel 1) +119b: db $15,$00 ; ASDR (1 - channel 2) +119d: db $25,$00 ; ASDR (1 - channel 3) +119f: db $35,$00 ; ASDR (1 - channel 4) +11a1: db $45,$00 ; ASDR (1 - channel 5) +11a3: db $55,$00 ; ASDR (1 - channel 6) +11a5: db $65,$00 ; ASDR (1 - channel 7) +11a7: db $75,$00 ; ASDR (1 - channel 8) +11a9: db $7c,$00 ; ENDX +11ab: db $ff 11ac: 3f f3 0b call $0bf3 11af: f8 2d mov x,$2d @@ -1267,6 +1364,7 @@ 1274: d6 64 ff mov $ff64+y,a 1277: c4 37 mov $37,a 1279: 5f 4e 13 jmp $134e + 127c: eb 2d mov y,$2d 127e: b2 07 clr5 $07 1280: f6 c3 04 mov a,$04c3+y @@ -1288,6 +1386,7 @@ 12a6: 78 02 38 cmp $38,#$02 12a9: 90 08 bcc $12b3 12ab: 5f 4e 13 jmp $134e + 12ae: 8f 00 37 mov $37,#$00 12b1: 2f f8 bra $12ab 12b3: eb 2d mov y,$2d @@ -1299,6 +1398,7 @@ 12bf: 76 83 04 cmp a,$0483+y 12c2: d0 03 bne $12c7 12c4: 5f 48 13 jmp $1348 + 12c7: e8 00 mov a,#$00 12c9: d6 a3 04 mov $04a3+y,a 12cc: a2 07 set5 $07 @@ -1307,6 +1407,7 @@ 12d2: f6 04 ff mov a,$ff04+y 12d5: ee pop y 12d6: 5f ff 13 jmp $13ff + 12d9: d6 23 05 mov $0523+y,a 12dc: f6 a3 05 mov a,$05a3+y 12df: 16 83 05 or a,$0583+y @@ -1369,6 +1470,7 @@ 1368: f6 64 ff mov a,$ff64+y 136b: c4 36 mov $36,a 136d: 5f ed 13 jmp $13ed + 1370: f6 43 05 mov a,$0543+y 1373: c4 2b mov $2b,a 1375: f6 63 05 mov a,$0563+y @@ -1442,12 +1544,14 @@ 1405: 8d 00 mov y,#$00 1407: da 33 movw $33,ya 1409: 6f ret + 140a: c8 00 cmp x,#$00 140c: d0 04 bne $1412 140e: 1d dec x 140f: 7d mov a,x 1410: fd mov y,a 1411: 6f ret + 1412: 40 setp 1413: cb 01 mov $01,y 1415: 3e 01 cmp x,$01 @@ -1471,10 +1575,12 @@ 1431: f8 02 mov x,$02 1433: 20 clrp 1434: 6f ret + 1435: 9e div ya,x 1436: cd 00 mov x,#$00 1438: 20 clrp 1439: 6f ret + 143a: 4d push x 143b: f5 f4 fc mov a,$fcf4+x 143e: 8d 04 mov y,#$04 @@ -1537,20 +1643,22 @@ 14b7: c4 f2 mov $f2,a 14b9: d8 f3 mov $f3,x 14bb: 6f ret + 14bc: 60 clrc -14bd: 88 a0 adc a,#$a0 +14bd: 88 a0 adc a,#$a0 ; add offset to input frequency (1440) 14bf: 5d mov x,a 14c0: dd mov a,y 14c1: 88 05 adc a,#$05 14c3: fd mov y,a 14c4: 7d mov a,x -14c5: ad 0a cmp y,#$0a -14c7: 90 06 bcc $14cf -14c9: d0 0a bne $14d5 +14c5: ad 0a cmp y,#$0a ; check if it is in within positive range +14c7: 90 06 bcc $14cf ; in range +14c9: d0 0a bne $14d5 ; out of range 14cb: 68 50 cmp a,#$50 -14cd: b0 06 bcs $14d5 +14cd: b0 06 bcs $14d5 ; out of range 14cf: 8f ff 44 mov $44,#$ff 14d2: 5f eb 14 jmp $14eb + 14d5: ad 80 cmp y,#$80 14d7: 90 0f bcc $14e8 14d9: 8f 00 44 mov $44,#$00 @@ -1562,13 +1670,14 @@ 14e3: fd mov y,a 14e4: 7d mov a,x 14e5: 5f eb 14 jmp $14eb + 14e8: 8f 0a 44 mov $44,#$0a 14eb: cd f0 mov x,#$f0 14ed: 9e div ya,x 14ee: 78 ff 44 cmp $44,#$ff 14f1: d0 02 bne $14f5 14f3: c4 44 mov $44,a -14f5: f6 10 15 mov a,$1510+y +14f5: f6 10 15 mov a,$1510+y ;get pitch value (from table) 14f8: c4 3a mov $3a,a 14fa: f6 00 16 mov a,$1600+y 14fd: c4 3b mov $3b,a @@ -1583,7 +1692,10 @@ 150d: ba 3a movw ya,$3a 150f: 6f ret +; pitch table (low byte) 1510: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 + +; pitch table (high byte) 1600: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f 16f0: 3f 6a 17 call $176a @@ -1602,10 +1714,12 @@ 170c: f5 66 03 mov a,$0366+x 170f: 5d mov x,a 1710: 1f f8 1d jmp ($1df8+x) + 1713: ab 8a inc $8a 1715: 69 88 8a cmp ($8a),($88) 1718: d0 e5 bne $16ff 171a: 6f ret + 171b: c4 3a mov $3a,a 171d: f6 67 00 mov a,$0067+y 1720: 28 80 and a,#$80 @@ -1614,6 +1728,7 @@ 1727: 9c dec a 1728: d6 12 00 mov $0012+y,a 172b: 6f ret + 172c: f6 6f 00 mov a,$006f+y 172f: 64 3a cmp a,$3a 1731: d0 07 bne $173a @@ -1621,6 +1736,7 @@ 1736: 5c lsr a 1737: d6 12 00 mov $0012+y,a 173a: 6f ret + 173b: 3f f3 0b call $0bf3 173e: f8 8b mov x,$8b 1740: 9b b7 dec $b7+x @@ -1633,13 +1749,18 @@ 174f: e8 04 mov a,#$04 1751: d5 66 03 mov $0366+x,a 1754: 5f 56 18 jmp $1856 + +; vcmd ec - set pitch bend state and release 1757: 3f b0 17 call $17b0 + +; vcmd eb - set pitch bend state 175a: e8 00 mov a,#$00 175c: d5 c6 02 mov $02c6+x,a 175f: d5 da 02 mov $02da+x,a 1762: e8 06 mov a,#$06 1764: d5 66 03 mov $0366+x,a 1767: 5f e8 17 jmp $17e8 + 176a: d3 07 2f bbc6 $07,$179c 176d: d2 07 clr6 $07 176f: f8 88 mov x,$88 @@ -1665,6 +1786,7 @@ 1799: 1d dec x 179a: 10 e3 bpl $177f 179c: 6f ret + 179d: eb 3a mov y,$3a 179f: 4d push x 17a0: 40 setp @@ -1693,6 +1815,7 @@ 17ce: 28 02 and a,#$02 17d0: d0 00 bne $17d2 17d2: 6f ret + 17d3: c4 02 mov $02,a 17d5: 7d mov a,x 17d6: 8d 05 mov y,#$05 @@ -1702,12 +1825,10 @@ 17dc: fd mov y,a 17dd: cb 02 mov $02,y 17df: 6f ret -17e0: 01 tcall 0 -17e1: 02 04 set0 $04 -17e3: 08 10 or a,#$10 -17e5: 20 clrp -17e6: 40 setp -17e7: 80 setc + +; voice numbers +17e0: db $01,$02,$04,$08,$10,$20,$40,$80 + 17e8: 3f f3 0b call $0bf3 17eb: f8 8b mov x,$8b 17ed: f5 c6 02 mov a,$02c6+x @@ -1743,17 +1864,20 @@ 1825: d4 b7 mov $b7+x,a 1827: 3f 12 1c call $1c12 182a: 5f 13 17 jmp $1713 + 182d: ae pop a 182e: dd mov a,y 182f: 68 00 cmp a,#$00 1831: d0 03 bne $1836 1833: 5f 4f 17 jmp $174f + 1836: 68 01 cmp a,#$01 1838: d0 0b bne $1845 183a: 3f 29 1a call $1a29 183d: d4 b7 mov $b7+x,a 183f: 3f 12 1c call $1c12 1842: 5f 13 17 jmp $1713 + 1845: 68 02 cmp a,#$02 1847: d0 05 bne $184e 1849: 3f b0 17 call $17b0 @@ -1777,14 +1901,17 @@ 1873: 8d 03 mov y,#$03 1875: f7 00 mov a,($00)+y 1877: de a3 03 cbne $a3+x,$187d + +; play melody byte 187a: 5f 62 1b jmp $1b62 + 187d: 3f f3 0b call $0bf3 -1880: 3f 29 1a call $1a29 -1883: fd mov y,a -1884: ad e0 cmp y,#$e0 -1886: 90 16 bcc $189e +1880: 3f 29 1a call $1a29 ; get 1 byte +1883: fd mov y,a ; separate the flags +1884: ad e0 cmp y,#$e0 ; check if it's a vector command +1886: 90 16 bcc $189e ; if not a vector... 1888: dd mov a,y -1889: 28 1f and a,#$1f +1889: 28 1f and a,#$1f ; mask off bits 188b: 1c asl a 188c: fd mov y,a 188d: f6 53 1c mov a,$1c53+y @@ -1793,14 +1920,16 @@ 1896: c5 9d 18 mov $189d,a 1899: eb 3a mov y,$3a 189b: 5f c8 1a jmp $1ac8 -189e: ad c0 cmp y,#$c0 + +189e: ad c0 cmp y,#$c0 ; is it a rest? 18a0: 90 06 bcc $18a8 18a2: 80 setc -18a3: a8 bf sbc a,#$bf -18a5: 5f ab 1a jmp $1aab -18a8: ad 00 cmp y,#$00 -18aa: 10 06 bpl $18b2 -18ac: 80 setc +18a3: a8 bf sbc a,#$bf ; get the duration +18a5: 5f ab 1a jmp $1aab ; and set rest + +18a8: ad 00 cmp y,#$00 ; is it a relative note? +18aa: 10 06 bpl $18b2 ; if so, play the note +18ac: 80 setc ; otherwise, it must be an absolute note... 18ad: a8 60 sbc a,#$60 18af: fd mov y,a 18b0: 2f 16 bra $18c8 @@ -1817,6 +1946,8 @@ 18bf: 28 07 and a,#$07 18c1: bc inc a 18c2: 2f 07 bra $18cb + +; vcmd ef - play absolute note 18c4: 3f 29 1a call $1a29 18c7: fd mov y,a 18c8: 3f 29 1a call $1a29 @@ -1833,6 +1964,7 @@ 18e2: ae pop a 18e3: 3f e9 18 call $18e9 18e6: 5f 13 17 jmp $1713 + 18e9: d4 b7 mov $b7+x,a 18eb: 3f 0c 1c call $1c0c 18ee: f5 7a 03 mov a,$037a+x @@ -1883,6 +2015,7 @@ 1951: d5 ff 05 mov $05ff+x,a 1954: 2f 03 bra $1959 1956: 5f 24 1a jmp $1a24 + 1959: 7d mov a,x 195a: fd mov y,a 195b: f8 8b mov x,$8b @@ -1978,6 +2111,7 @@ 1a24: ab 8c inc $8c 1a26: 72 07 clr3 $07 1a28: 6f ret + 1a29: 3f f3 0b call $0bf3 1a2c: f8 8b mov x,$8b 1a2e: f4 8f mov a,$8f+x @@ -1989,14 +2123,20 @@ 1a3d: d0 02 bne $1a41 1a3f: bb a3 inc $a3+x 1a41: 6f ret + +; vcmd e9 - set effects mask 1a42: 3f 29 1a call $1a29 1a45: c4 0c mov $0c,a 1a47: 2f 09 bra $1a52 + +; vcmd e6 - set standard allocation 1a49: e8 08 mov a,#$08 1a4b: d5 eb 05 mov $05eb+x,a 1a4e: 7d mov a,x 1a4f: d5 ff 05 mov $05ff+x,a 1a52: 5f 56 18 jmp $1856 + +; vcmd e5 - set channel allocation 1a55: 3f 29 1a call $1a29 1a58: d5 eb 05 mov $05eb+x,a 1a5b: 3f 29 1a call $1a29 @@ -2004,11 +2144,15 @@ 1a61: 3f 29 1a call $1a29 1a64: d5 13 06 mov $0613+x,a 1a67: 2f e9 bra $1a52 + +; vcmd f0 - end of sequence 1a69: 3f b0 17 call $17b0 1a6c: e8 00 mov a,#$00 1a6e: d5 66 03 mov $0366+x,a 1a71: 8b 89 dec $89 1a73: 5f 13 17 jmp $1713 + +; vcmd f1 - delta expression 1a76: f5 c3 05 mov a,$05c3+x 1a79: 3f 81 1a call $1a81 1a7c: d5 c3 05 mov $05c3+x,a @@ -2035,23 +2179,36 @@ 1a9e: e8 7f mov a,#$7f 1aa0: ce pop x 1aa1: 6f ret + +; vcmd f2 - absolute expression 1aa2: 3f 29 1a call $1a29 1aa5: d5 c3 05 mov $05c3+x,a 1aa8: 5f 56 18 jmp $1856 + 1aab: 2d push a 1aac: 3f b0 17 call $17b0 1aaf: ae pop a 1ab0: d4 b7 mov $b7+x,a 1ab2: 3f 0c 1c call $1c0c 1ab5: 5f 13 17 jmp $1713 + +; vcmd fd - set time (delay) - 64 1ab8: e8 40 mov a,#$40 1aba: 2f f4 bra $1ab0 + +; vcnd f8 - set time (delay) - 32 1abc: e8 20 mov a,#$20 1abe: 2f f0 bra $1ab0 + +; vcmd fe - set time (delay) - 128 1ac0: e8 80 mov a,#$80 1ac2: 2f ec bra $1ab0 + +; vcmd ff - set time (delay) - 256 1ac4: e8 00 mov a,#$00 1ac6: 2f e8 bra $1ab0 + +; vcmd f5 - set sound (instrument) 1ac8: 3f 29 1a call $1a29 1acb: d5 d7 05 mov $05d7+x,a 1ace: f5 4e 02 mov a,$024e+x @@ -2078,6 +2235,8 @@ 1afb: f0 03 beq $1b00 1afd: d5 d7 05 mov $05d7+x,a 1b00: 5f 56 18 jmp $1856 + +; vcmd f6 - play phrase 1b03: f5 4e 02 mov a,$024e+x 1b06: 9c dec a 1b07: d5 4e 02 mov $024e+x,a @@ -2119,6 +2278,7 @@ 1b5c: ae pop a 1b5d: d4 8f mov $8f+x,a 1b5f: 5f 56 18 jmp $1856 + 1b62: eb 02 mov y,$02 1b64: f6 68 fc mov a,$fc68+y 1b67: bc inc a @@ -2136,6 +2296,7 @@ 1b80: f7 00 mov a,($00)+y 1b82: d4 a3 mov $a3+x,a 1b84: 5f 7d 18 jmp $187d + 1b87: f5 3b 06 mov a,$063b+x 1b8a: 80 setc 1b8b: 8d 05 mov y,#$05 @@ -2167,62 +2328,126 @@ 1bc3: bc inc a 1bc4: d5 4e 02 mov $024e+x,a 1bc7: 5f 56 18 jmp $1856 + +; vcmd ea - set release 1bca: 3f b0 17 call $17b0 1bcd: 2f 03 bra $1bd2 + +; vcmd f9 - go to loop 1bcf: 3f c7 1c call $1cc7 1bd2: 5f 56 18 jmp $1856 + +; vcmd fa - set tempo 1bd5: 3f 29 1a call $1a29 1bd8: c4 cd mov $cd,a 1bda: 2f f6 bra $1bd2 + +; vcmd fb - set panning 1bdc: 3f 29 1a call $1a29 1bdf: d5 9e 02 mov $029e+x,a 1be2: 2f ee bra $1bd2 + +; vcmd e0 - set hardware detune 1be4: 3f 29 1a call $1a29 1be7: d5 ee 02 mov $02ee+x,a 1bea: 3f 29 1a call $1a29 1bed: d5 02 03 mov $0302+x,a 1bf0: 2f e0 bra $1bd2 + +; vcmd f3 - set priority 1bf2: 3f 29 1a call $1a29 1bf5: d5 b2 02 mov $02b2+x,a 1bf8: c2 07 set6 $07 1bfa: 2f d6 bra $1bd2 + +; vcmd ed - set velocity 1bfc: 3f 29 1a call $1a29 1bff: d5 8a 02 mov $028a+x,a 1c02: 2f ce bra $1bd2 + 1c04: 62 07 set3 $07 1c06: 2f ca bra $1bd2 + +; vcmd f4 - set tied note 1c08: e2 07 set7 $07 1c0a: 2f c6 bra $1bd2 + 1c0c: e8 02 mov a,#$02 1c0e: d5 66 03 mov $0366+x,a 1c11: 6f ret + 1c12: e8 08 mov a,#$08 1c14: d5 66 03 mov $0366+x,a 1c17: 6f ret + +; vcmd e1 - set amplitude articulation 1c18: 3f 29 1a call $1a29 1c1b: d5 16 03 mov $0316+x,a 1c1e: 2f b2 bra $1bd2 + 1c20: 3f 29 1a call $1a29 1c23: d5 62 02 mov $0262+x,a 1c26: 2f aa bra $1bd2 + +; vcmd e2 - set stereo articulation 1c28: 3f 29 1a call $1a29 1c2b: d5 52 03 mov $0352+x,a 1c2e: 2f a2 bra $1bd2 + +; vcmd e4 - set pitch articulation 1c30: 3f 29 1a call $1a29 1c33: d5 2a 03 mov $032a+x,a 1c36: 2f f6 bra $1c2e + +; vcmd e3 - set tone articulation 1c38: 3f 29 1a call $1a29 1c3b: d5 3e 03 mov $033e+x,a 1c3e: 2f ee bra $1c2e + +; vcmd e7 - reset track 1c40: 3f e4 1c call $1ce4 1c43: 2f e9 bra $1c2e + +; vcmd f7 - set detune 1c45: 3f 29 1a call $1a29 1c48: d5 63 06 mov $0663+x,a 1c4b: 3f 29 1a call $1a29 1c4e: d5 77 06 mov $0677+x,a 1c51: 2f db bra $1c2e -1c53: dw $1be4,$1c18,$1c28,$1c38,$1c30,$1a55,$1a49,$1c40,$0000,$1a42,$1bca,$175a,$1757,$1bfc,$0000,$18c4,$1a69,$1a76,$1aa2,$1bf2,$1c08,$1ac8,$1b03,$1c45,$1abc,$1bcf,$1bd5,$1bdc,$1c04,$1ab8,$1ac0,$1ac4 +; vcmd table (e0-ff) +1c53: dw $1be4 ; e0 - set hardware detune +1c55: dw $1c18 ; e1 - set amplitude articulation +1c57: dw $1c28 ; e2 - set stereo articulation +1c59: dw $1c38 ; e3 - set tone articulation +1c5b: dw $1c30 ; e4 - set pitch articulation +1c5d: dw $1a55 ; e5 - set channel allocation +1c5f: dw $1a49 ; e6 - set standard allocation +1c61: dw $1c40 ; e7 - reset track +1c63: dw $0000 ; e8 - redirect track (disabled) +1c65: dw $1a42 ; e9 - set effects mask +1c67: dw $1bca ; ea - set release +1c69: dw $175a ; eb - set pitch bend state +1c6b: dw $1757 ; ec - set pitch bend state and release +1c6d: dw $1bfc ; ed - set velocity +1c6f: dw $0000 ; ee - extended command (disabled) +1c70: dw $18c4 ; ef - play absolute note +1c72: dw $1a69 ; f0 - end of sequence +1c74: dw $1a76 ; f1 - delta expression +1c76: dw $1aa2 ; f2 - absolute expression +1c78: dw $1bf2 ; f3 - set priority +1c7a: dw $1c08 ; f4 - set tied note +1c7c: dw $1ac8 ; f5 - set sound (instrument) +1c7e: dw $1b03 ; f6 - play phrase +1c80: dw $1c45 ; f7 - set detune +1c82: dw $1abc ; f8 - set time (delay) - 32 +1c84: dw $1bcf ; f9 - go to loop +1c86: dw $1bd5 ; fa - set tempo +1c88: dw $1bdc ; fb - set panning +1c8a: dw $1c04 ; fc - set no retrigger +1c8c: dw $1ab8 ; fd - set time (delay) - 64 +1c8e: dw $1ac0 ; fe - set time (delay) - 128 +1c90: dw $1ac4 ; ff - set time (delay) - 256 1c93: 2d push a 1c94: 3f 50 0d call $0d50 @@ -2248,6 +2473,7 @@ 1cc1: 69 88 8b cmp ($8b),($88) 1cc4: d0 e7 bne $1cad 1cc6: 6f ret + 1cc7: e4 8b mov a,$8b 1cc9: 5d mov x,a 1cca: 1c asl a @@ -2301,35 +2527,47 @@ 1d3c: 08 80 or a,#$80 1d3e: 8d 00 mov y,#$00 1d40: 5f 81 1d jmp $1d81 + 1d43: c4 5f mov $5f,a 1d45: 6f ret + 1d46: c4 60 mov $60,a 1d48: 6f ret + 1d49: da 61 movw $61,ya 1d4b: 6f ret + 1d4c: da 2e movw $2e,ya 1d4e: 6f ret + 1d4f: c4 fb mov $fb,a 1d51: 6f ret + 1d52: 28 7f and a,#$7f 1d54: c5 3e 02 mov $023e,a 1d57: 6f ret + 1d58: 12 08 clr0 $08 1d5a: c5 06 01 mov $0106,a 1d5d: 68 ff cmp a,#$ff 1d5f: f0 02 beq $1d63 1d61: 02 08 set0 $08 1d63: 6f ret + 1d64: c5 3f 02 mov $023f,a 1d67: 6f ret + 1d68: c5 40 02 mov $0240,a 1d6b: 6f ret + 1d6c: c5 41 02 mov $0241,a 1d6f: cc 42 02 mov $0242,y 1d72: 6f ret + 1d73: 8f 9a 00 mov $00,#$9a 1d76: 8f 03 01 mov $01,#$03 1d79: 2f 06 bra $1d81 + 1d7b: 8f 92 00 mov $00,#$92 1d7e: 8f 03 01 mov $01,#$03 1d81: c4 3a mov $3a,a @@ -2344,6 +2582,7 @@ 1d91: dc dec y 1d92: 10 f4 bpl $1d88 1d94: 6f ret + 1d95: 28 7f and a,#$7f 1d97: c4 3a mov $3a,a 1d99: cd 07 mov x,#$07 @@ -2355,6 +2594,7 @@ 1da8: 1d dec x 1da9: 10 f0 bpl $1d9b 1dab: 6f ret + 1dac: 8f da 00 mov $00,#$da 1daf: 8f 00 01 mov $01,#$00 1db2: fa 2e 3c mov ($3c),($2e) @@ -2377,11 +2617,13 @@ 1dd1: 1d dec x 1dd2: 10 ec bpl $1dc0 1dd4: 6f ret + 1dd5: 5d mov x,a 1dd6: e8 01 mov a,#$01 1dd8: 15 7a 03 or a,$037a+x 1ddb: d5 7a 03 mov $037a+x,a 1dde: 6f ret + 1ddf: 5d mov x,a 1de0: e8 fe mov a,#$fe 1de2: 35 7a 03 and a,$037a+x @@ -2389,8 +2631,10 @@ 1de7: 2e 03 03 cbne $03,$1ded 1dea: d2 08 clr6 $08 1dec: 6f ret + 1ded: c2 08 set6 $08 1def: 6f ret + 1df0: 02 09 set0 $09 1df2: 2e 03 02 cbne $03,$1df7 1df5: 12 09 clr0 $09 @@ -2398,5 +2642,5 @@ 1df8: dw $1713,$1746,$1856,$17e8,$173b,$0ce2,$0d16,$0d1b,$0d07,$1d95,$0000,$078c,$0da4,$0cf5,$0cef,$0ceb,$0000,$0d50,$0d52,$1e55,$0000,$0000,$0da9,$0d13,$1d43,$1d4f,$1d49,$1d46,$1d6c,$1d52,$1d64,$1d7b,$1d4c,$1dac,$1d68,$1d73,$1d58,$1dd5,$1ddf,$1de7,$0788,$1df0,$1e5f -;Uncompiled source code +; uncompiled source code 1e95: db $20,$20,$20,$20,$20,$20,$20,$20,$72,$65,$74,$0d,$0a,$53,$65,$74,$4e,$65,$78,$74,$45,$66,$66,$65,$63,$74,$50,$61,$6e,$0d,$0a,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$6d,$6f,$76,$20,$4e,$65,$78,$74,$45,$78,$53,$74,$65,$72,$65,$6f,$4d,$6f,$64,$2c,$00,$ \ No newline at end of file diff --git a/snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s b/snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s index d0d37a6a..a0efa0fe 100644 --- a/snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s +++ b/snes/Sculptured Software/Pink Panther in Pink Goes to Hollywood.s @@ -1,15 +1,15 @@ 0700: 20 clrp -0701: cd ff mov x,#$ff +0701: cd ff mov x,#$ff ; set stack pointer 0703: bd mov sp,x -0704: 8f 6c f2 mov $f2,#$6c +0704: 8f 6c f2 mov $f2,#$6c ; reset DSP flags 0707: d8 f3 mov $f3,x -0709: 8f b0 f1 mov $f1,#$b0 +0709: 8f b0 f1 mov $f1,#$b0 ; clear input ports APUI00-APUI04 070c: 8f 20 fa mov $fa,#$20 -070f: 8f 81 f1 mov $f1,#$81 -0712: 3f f7 0d call $0df7 -0715: 8f 00 0b mov $0b,#$00 +070f: 8f 81 f1 mov $f1,#$81 ; toggle timer 2 +0712: 3f f7 0d call $0df7 ; clear/reset routine +0715: 8f 00 0b mov $0b,#$00 ; variables = sample directory start 0718: 8f 18 0c mov $0c,#$18 -071b: 8d 03 mov y,#$03 +071b: 8d 03 mov y,#$03 ; set temporary storage 071d: f6 ff ff mov a,$ffff+y 0720: 16 27 07 or a,$0727+y 0723: d6 ff ff mov $ffff+y,a @@ -17,7 +17,7 @@ 0728: ab 15 inc $15 072a: e4 1b mov a,$1b 072c: d0 05 bne $0733 -072e: 3f 86 15 call $1586 +072e: 3f 86 15 call $1586 ; do a random number generator (RNG) 0731: 2f 03 bra $0736 0733: 3f 58 08 call $0858 0736: e4 f6 mov a,$f6 @@ -49,6 +49,7 @@ 076e: d0 05 bne $0775 0770: d8 f6 mov $f6,x 0772: 1f 03 00 jmp ($0003+x) + 0775: cd 00 mov x,#$00 0777: 3e f4 cmp x,$f4 0779: d0 fc bne $0777 @@ -74,35 +75,49 @@ 07a3: 90 f5 bcc $079a 07a5: 5f 00 01 jmp $0100 +; gain tables 07a8: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 07be: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 +; DSP registers: VxENVX 07d4: db $08,$18,$28,$38,$48,$58,$68,$78 +; DSP registers: VxGAIN 07dd: db $07,$17,$27,$37,$47,$57,$67,$77 +; DSP registers: VxSCRN (select sample) 07e4: db $04,$14,$24,$34,$44,$54,$64,$74 +; DSP registers: VxPITCHL 07ec: db $02,$12,$22,$32,$42,$52,$62,$72 +; DSP registers: VxVOLL 07f4: db $00,$10,$20,$30,$40,$50,$60,$70 + +; voice numbers and bits for clearing those void bits 07fc: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f + +; echo poke registers 080c: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f + 0818: db $02,$02,$02,$02,$02,$03,$03,$03 0820: db $97,$ac,$c1,$d6,$eb,$00,$15,$2a + 0828: db $03,$03,$03,$03,$03,$03,$03,$03 0830: db $3f,$54,$69,$7e,$93,$a8,$bd,$d2 + 0838: db $03,$03,$04,$04,$04,$04,$04,$04 0840: db $e7,$fc,$11,$26,$3b,$50,$65,$7a + 0848: db $04,$04,$04,$04,$04,$04,$05,$05 0850: db $8f,$a5,$bb,$d1,$e7,$fd,$13,$29 -0858: 3f 86 15 call $1586 +0858: 3f 86 15 call $1586 ; use RNG 085b: 3f 0a 13 call $130a 085e: 8f 00 2f mov $2f,#$00 0861: 8f 00 44 mov $44,#$00 -0864: 8f 7c f2 mov $f2,#$7c +0864: 8f 7c f2 mov $f2,#$7c ; clear end of sample flags? 0867: e4 f3 mov a,$f3 0869: 04 41 or a,$41 086b: 24 47 and a,$47 086d: c4 41 mov $41,a -086f: 8f 00 f3 mov $f3,#$00 +086f: 8f 00 f3 mov $f3,#$00 0872: 24 42 and a,$42 0874: 04 43 or a,$43 0876: c4 43 mov $43,a @@ -110,7 +125,7 @@ 087a: 8f 7a 0d mov $0d,#$7a 087d: 8f 04 0e mov $0e,#$04 0880: d8 0f mov $0f,x -0882: f5 fc 07 mov a,$07fc+x +0882: f5 fc 07 mov a,$07fc+x ; clear voice number bits 0885: c4 31 mov $31,a 0887: 48 ff eor a,#$ff 0889: c4 32 mov $32,a @@ -120,6 +135,7 @@ 0891: d0 06 bne $0899 0893: f5 77 02 mov a,$0277+x 0896: 5f 9e 08 jmp $089e + 0899: 3f db 0e call $0edb 089c: f8 0f mov x,$0f 089e: 75 7f 02 cmp a,$027f+x @@ -167,6 +183,7 @@ 08fb: b8 15 0d sbc $0d,#$15 08fe: b8 00 0e sbc $0e,#$00 0901: 5f 80 08 jmp $0880 + 0904: e4 45 mov a,$45 0906: 24 43 and a,$43 0908: 04 44 or a,$44 @@ -188,15 +205,15 @@ 0926: fd mov y,a 0927: 1c asl a 0928: 5d mov x,a -0929: f5 48 02 mov a,$0248+x +0929: f5 48 02 mov a,$0248+x ; get base note 092c: c4 2e mov $2e,a 092e: f5 47 02 mov a,$0247+x 0931: c4 2d mov $2d,a 0933: 8e pop psw 0934: f0 11 beq $0947 -0936: 4d push x -0937: 3f db 0e call $0edb -093a: ce pop x +0936: 4d push x ; save word addressing +0937: 3f db 0e call $0edb ; advance pitch envelope +093a: ce pop x ; restore pitch flag 093b: 7a 2d addw ya,$2d 093d: 80 setc 093e: a8 b0 sbc a,#$b0 @@ -210,7 +227,7 @@ 094e: 7a 2d addw ya,$2d 0950: 8e pop psw 0951: d0 03 bne $0956 -0953: 3f 9f 10 call $109f +0953: 3f 9f 10 call $109f ; translate note to frequency 0956: f8 0f mov x,$0f 0958: d5 57 02 mov $0257+x,a 095b: dd mov a,y @@ -235,6 +252,7 @@ 0986: d0 06 bne $098e 0988: f5 2f 02 mov a,$022f+x 098b: 5f 93 09 jmp $0993 + 098e: 3f db 0e call $0edb 0991: f8 0f mov x,$0f 0993: d5 37 02 mov $0237+x,a @@ -261,6 +279,7 @@ 09c0: 48 ff eor a,#$ff 09c2: bc inc a 09c3: 5f c9 09 jmp $09c9 + 09c6: 8f c0 22 mov $22,#$c0 09c9: 5c lsr a 09ca: d0 09 bne $09d5 @@ -268,6 +287,7 @@ 09ce: d0 05 bne $09d5 09d0: e8 82 mov a,#$82 09d2: 5f e3 09 jmp $09e3 + 09d5: 8d 15 mov y,#$15 09d7: 76 a8 07 cmp a,$07a8+y 09da: 90 02 bcc $09de @@ -297,6 +317,7 @@ 0a0e: 1d dec x 0a0f: 30 03 bmi $0a14 0a11: 5f 77 09 jmp $0977 + 0a14: 8f 4c f2 mov $f2,#$4c 0a17: fa 46 f3 mov ($f3),($46) 0a1a: e4 46 mov a,$46 @@ -318,6 +339,7 @@ 0a40: d0 06 bne $0a48 0a42: f5 6f 02 mov a,$026f+x 0a45: 5f 4d 0a jmp $0a4d + 0a48: 3f db 0e call $0edb 0a4b: f8 0f mov x,$0f 0a4d: fd mov y,a @@ -355,6 +377,7 @@ 0a8a: 1d dec x 0a8b: 30 03 bmi $0a90 0a8d: 5f 34 0a jmp $0a34 + 0a90: cd 07 mov x,#$07 0a92: 8d 0e mov y,#$0e 0a94: f5 06 02 mov a,$0206+x @@ -422,6 +445,7 @@ 0b1d: 8f 1c f2 mov $f2,#$1c 0b20: d8 f3 mov $f3,x 0b22: 6f ret + 0b23: e4 4b mov a,$4b 0b25: 10 0c bpl $0b33 0b27: 28 1f and a,#$1f @@ -433,6 +457,7 @@ 0b36: 8f 3d f2 mov $f2,#$3d 0b39: fa 4d f3 mov ($f3),($4d) 0b3c: 6f ret + 0b3d: c4 17 mov $17,a 0b3f: fa f4 19 mov ($19),($f4) 0b42: fa f5 1a mov ($1a),($f5) @@ -447,19 +472,24 @@ 0b56: e4 19 mov a,$19 0b58: eb 1a mov y,$1a 0b5a: 1f a4 17 jmp ($17a4+x) + 0b5d: 8f ff 1b mov $1b,#$ff 0b60: 3f 41 0e call $0e41 0b63: 8f 6c f2 mov $f2,#$6c 0b66: 8f 00 f3 mov $f3,#$00 0b69: 6f ret + 0b6a: da 3a movw $3a,ya 0b6c: 8f ff 39 mov $39,#$ff 0b6f: 6f ret + 0b70: c4 52 mov $52,a 0b72: 6f ret + 0b73: e8 00 mov a,#$00 0b75: c5 00 02 mov $0200,a 0b78: 6f ret + 0b79: cd 01 mov x,#$01 0b7b: 2f 02 bra $0b7f 0b7d: cd ff mov x,#$ff @@ -468,11 +498,13 @@ 0b85: cc 03 02 mov $0203,y 0b88: c9 02 02 mov $0202,x 0b8b: 6f ret + 0b8c: 8f 00 5c mov $5c,#$00 0b8f: 68 00 cmp a,#$00 0b91: d0 03 bne $0b96 0b93: c5 4f 05 mov $054f,a 0b96: 6f ret + 0b97: c5 16 02 mov $0216,a 0b9a: cd 07 mov x,#$07 0b9c: ad 80 cmp y,#$80 @@ -501,6 +533,7 @@ 0bd2: 1d dec x 0bd3: 10 c7 bpl $0b9c 0bd5: 6f ret + 0bd6: 8d 0e mov y,#$0e 0bd8: c5 16 02 mov $0216,a 0bdb: 3f bb 0d call $0dbb @@ -554,6 +587,7 @@ 0c3e: d0 a8 bne $0be8 0c40: 8f 00 39 mov $39,#$00 0c43: 6f ret + 0c44: 8d 07 mov y,#$07 0c46: e4 3f mov a,$3f 0c48: 24 3d and a,$3d @@ -571,11 +605,13 @@ 0c62: dc dec y 0c63: 10 e1 bpl $0c46 0c65: 6f ret + 0c66: e4 3e mov a,$3e 0c68: d5 27 02 mov $0227+x,a 0c6b: e8 00 mov a,#$00 0c6d: 6f ret -0c6e: d8 33 mov $33,x + +0c6e: d8 33 mov $33,x ; play sound (instrument) 0c70: 2d push a 0c71: f5 dc 07 mov a,$07dc+x 0c74: c4 f2 mov $f2,a @@ -596,35 +632,36 @@ 0c94: ae pop a 0c95: 8d 02 mov y,#$02 0c97: 3f bb 0d call $0dbb -0c9a: da 07 movw $07,ya +0c9a: da 07 movw $07,ya ; get current voice and instrument 0c9c: f8 33 mov x,$33 -0c9e: f5 fc 07 mov a,$07fc+x +0c9e: f5 fc 07 mov a,$07fc+x ; get channel bit mask ID 0ca1: c4 4e mov $4e,a -0ca3: 48 ff eor a,#$ff +0ca3: 48 ff eor a,#$ff ; and store inversion 0ca5: c4 4f mov $4f,a -0ca7: 8d 00 mov y,#$00 +0ca7: 8d 00 mov y,#$00 ; get mode flags 0ca9: f7 07 mov a,($07)+y -0cab: d4 53 mov $53+x,a -0cad: c4 34 mov $34,a -0caf: 28 20 and a,#$20 -0cb1: f0 05 beq $0cb8 -0cb3: 09 4e 50 or ($50),($4e) +0cab: d4 53 mov $53+x,a ; save permanently and in local temp RAM +0cad: c4 34 mov $34,a +0caf: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) +0cb1: f0 05 beq $0cb8 ; if not... +0cb3: 09 4e 50 or ($50),($4e) ; turn pitch mod on 0cb6: 2f 03 bra $0cbb -0cb8: 29 4f 50 and ($50),($4f) +0cb8: 29 4f 50 and ($50),($4f) ; turn pitch mod off + 0cbb: 8f 2d f2 mov $f2,#$2d 0cbe: fa 50 f3 mov ($f3),($50) -0cc1: e4 34 mov a,$34 -0cc3: 28 10 and a,#$10 -0cc5: f0 2f beq $0cf6 -0cc7: 8d 05 mov y,#$05 +0cc1: e4 34 mov a,$34 ; retrieve the saved flag +0cc3: 28 10 and a,#$10 ; is echo enabled? ($10 = echo) +0cc5: f0 2f beq $0cf6 ; if not... +0cc7: 8d 05 mov y,#$05 ; get echo byte from sound 0cc9: f7 07 mov a,($07)+y 0ccb: 8d 0c mov y,#$0c 0ccd: 3f bb 0d call $0dbb 0cd0: 8d 00 mov y,#$00 -0cd2: f6 0c 08 mov a,$080c+y -0cd5: c4 f2 mov $f2,a -0cd7: f7 10 mov a,($10)+y -0cd9: ad 01 cmp y,#$01 +0cd2: f6 0c 08 mov a,$080c+y ; get the echo register values to "poke" +0cd5: c4 f2 mov $f2,a ; (from the table) +0cd7: f7 10 mov a,($10)+y ; now get info to feed to the registers +0cd9: ad 01 cmp y,#$01 ; (from the echo environment) 0cdb: f0 04 beq $0ce1 0cdd: ad 02 cmp y,#$02 0cdf: d0 09 bne $0cea @@ -634,23 +671,25 @@ 0ce8: e4 16 mov a,$16 0cea: c4 f3 mov $f3,a 0cec: fc inc y -0ced: ad 0c cmp y,#$0c +0ced: ad 0c cmp y,#$0c ; repeat for every byte of the array 0cef: 90 e1 bcc $0cd2 0cf1: 09 4e 51 or ($51),($4e) 0cf4: 2f 03 bra $0cf9 + 0cf6: 29 4f 51 and ($51),($4f) 0cf9: 8f 4d f2 mov $f2,#$4d -0cfc: fa 51 f3 mov ($f3),($51) +0cfc: fa 51 f3 mov ($f3),($51) ; send the echo unit 0cff: e4 34 mov a,$34 0d01: 28 01 and a,#$01 0d03: 0d push psw 0d04: 8d 01 mov y,#$01 -0d06: f7 07 mov a,($07)+y +0d06: f7 07 mov a,($07)+y ; now get the amplitude 0d08: 8e pop psw 0d09: d0 08 bne $0d13 0d0b: f8 33 mov x,$33 0d0d: d5 2f 02 mov $022f+x,a 0d10: 5f 29 0d jmp $0d29 + 0d13: 8d 04 mov y,#$04 0d15: 3f bb 0d call $0dbb 0d18: f8 33 mov x,$33 @@ -684,6 +723,7 @@ 0d55: f8 33 mov x,$33 0d57: d5 6f 02 mov $026f+x,a 0d5a: 5f 8a 0d jmp $0d8a + 0d5d: 8d 08 mov y,#$08 0d5f: 3f bb 0d call $0dbb 0d62: f8 33 mov x,$33 @@ -701,6 +741,7 @@ 0d7d: d0 05 bne $0d84 0d7f: e8 ff mov a,#$ff 0d81: 5f 86 0d jmp $0d86 + 0d84: e8 00 mov a,#$00 0d86: 8d 15 mov y,#$15 0d88: d7 0d mov ($0d)+y,a @@ -714,6 +755,7 @@ 0d96: f8 33 mov x,$33 0d98: d5 77 02 mov $0277+x,a 0d9b: 5f b4 0d jmp $0db4 + 0d9e: 8d 0a mov y,#$0a 0da0: 3f bb 0d call $0dbb 0da3: f8 33 mov x,$33 @@ -726,7 +768,8 @@ 0db4: 09 4e 45 or ($45),($4e) 0db7: 09 4e 40 or ($40),($4e) 0dba: 6f ret -0dbb: 8f 00 06 mov $06,#$00 + +0dbb: 8f 00 06 mov $06,#$00 ; load current song/sfx/etc. address into stack 0dbe: 1c asl a 0dbf: 2b 06 rol $06 0dc1: 60 clrc @@ -744,10 +787,24 @@ 0dd9: eb 11 mov y,$11 0ddb: 6f ret -0ddc: db $6c,$ff,$3d,$00,$4d,$00,$7d,$00,$6d,$ff,5d,$18,$5c,$00,$2d,$00,$7c,$00,$2c,$00,$3c,$00,$0c,$7f,$1c,$7f,$ff +; pre-defined DSP flags +0ddc: db $6c,$ff ; clear flags +0dde: db $3d,$00 ; turn off noise generator (NON) +0de0: db $4d,$00 ; turn off echo (EON) +0de2: db $7d,$00 ; turn off echo delay time (EDL) +0de4: db $6d,$ff ; pointer to echo memory (ESA) +0de6: db $5d,$18 ; set sample directory ($1800) +0de8: db $5c,$00 ; set key off (KOFF) +0dea: db $2d,$00 ; disable pitch modulation (PMON) +0dec: db $7c,$00 ; end of sample flag +0dee: db $2c,$00 ; turn off EVOLL +0df0: db $3c,$00 ; turn off EVOLR +0df2: db $0c,$7f ; turn on MVOLL +0df4: db $1c,$7f ; turn on MVOLR +0df6: db $ff 0df7: 8d 00 mov y,#$00 -0df9: f6 dc 0d mov a,$0ddc+y +0df9: f6 dc 0d mov a,$0ddc+y ; set DSP flags from table 0dfc: 68 ff cmp a,#$ff 0dfe: f0 0b beq $0e0b 0e00: c4 f2 mov $f2,a @@ -785,6 +842,7 @@ 0e3b: c4 47 mov $47,a 0e3d: 8f 7f 16 mov $16,#$7f 0e40: 6f ret + 0e41: e5 e1 17 mov a,$17e1 0e44: 8f 6d f2 mov $f2,#$6d 0e47: c4 f3 mov $f3,a @@ -799,9 +857,10 @@ 0e5e: 1e 55 0e cmp x,$0e55 0e61: d0 f0 bne $0e53 0e63: 6f ret + 0e64: da 27 movw $27,ya 0e66: 8d 07 mov y,#$07 -0e68: f7 10 mov a,($10)+y +0e68: f7 10 mov a,($10)+y ; get amplitude table 0e6a: d7 0d mov ($0d)+y,a 0e6c: dc dec y 0e6d: 10 f9 bpl $0e68 @@ -864,6 +923,7 @@ 0ed4: d7 0d mov ($0d)+y,a 0ed6: c4 20 mov $20,a 0ed8: 5f 89 0f jmp $0f89 + 0edb: 8d 14 mov y,#$14 0edd: f7 0d mov a,($0d)+y 0edf: f0 39 beq $0f1a @@ -883,6 +943,7 @@ 0efa: 78 02 21 cmp $21,#$02 0efd: 90 03 bcc $0f02 0eff: 5f 89 0f jmp $0f89 + 0f02: 8d 0c mov y,#$0c 0f04: f7 0d mov a,($0d)+y 0f06: bc inc a @@ -903,6 +964,7 @@ 0f20: f7 0d mov a,($0d)+y 0f22: ee pop y 0f23: 6f ret + 0f24: 8d 0c mov y,#$0c 0f26: d7 0d mov ($0d)+y,a 0f28: 8d 06 mov y,#$06 @@ -945,6 +1007,7 @@ 0f6b: 68 ff cmp a,#$ff 0f6d: f0 03 beq $0f72 0f6f: 5f 82 0f jmp $0f82 + 0f72: 8d 0c mov y,#$0c 0f74: f7 0d mov a,($0d)+y 0f76: 8d 01 mov y,#$01 @@ -968,6 +1031,7 @@ 0f9b: 1d dec x 0f9c: 10 f8 bpl $0f96 0f9e: 5f 09 10 jmp $1009 + 0fa1: 3f 1b 10 call $101b 0fa4: 8d 06 mov y,#$06 0fa6: f7 0d mov a,($0d)+y @@ -1031,8 +1095,10 @@ 1016: d7 0d mov ($0d)+y,a 1018: ba 1c movw ya,$1c 101a: 6f ret + 101b: 8d 0a mov y,#$0a 101d: 5f 22 10 jmp $1022 + 1020: 8d 08 mov y,#$08 1022: f7 0d mov a,($0d)+y 1024: c4 12 mov $12,a @@ -1040,6 +1106,7 @@ 1027: f7 0d mov a,($0d)+y 1029: c4 13 mov $13,a 102b: 6f ret + 102c: 2d push a 102d: 3f 20 10 call $1020 1030: 8d 06 mov y,#$06 @@ -1056,12 +1123,14 @@ 1042: e4 13 mov a,$13 1044: d7 0d mov ($0d)+y,a 1046: 6f ret + 1047: c8 00 cmp x,#$00 1049: d0 05 bne $1050 104b: e8 ff mov a,#$ff 104d: fd mov y,a 104e: 5d mov x,a 104f: 6f ret + 1050: cb 24 mov $24,y 1052: 3e 24 cmp x,$24 1054: f0 02 beq $1058 @@ -1083,9 +1152,11 @@ 106d: 9e div ya,x 106e: f8 25 mov x,$25 1070: 6f ret + 1071: 9e div ya,x 1072: cd 00 mov x,#$00 1074: 6f ret + 1075: f5 7f 02 mov a,$027f+x 1078: 8d 04 mov y,#$04 107a: cf mul ya @@ -1109,6 +1180,7 @@ 109a: f7 29 mov a,($29)+y 109c: c4 4b mov $4b,a 109e: 6f ret + 109f: ad 04 cmp y,#$04 10a1: 90 06 bcc $10a9 10a3: d0 0a bne $10af @@ -1116,10 +1188,11 @@ 10a7: b0 06 bcs $10af 10a9: 8f ff 4c mov $4c,#$ff 10ac: 5f c5 10 jmp $10c5 + 10af: ad 80 cmp y,#$80 10b1: 90 0f bcc $10c2 10b3: 8f 00 4c mov $4c,#$00 -10b6: 60 clrc +10b6: 60 clrc ; convert note to pitch from table 10b7: 88 20 adc a,#$20 10b9: 5d mov x,a 10ba: dd mov a,y @@ -1127,6 +1200,7 @@ 10bd: fd mov y,a 10be: 7d mov a,x 10bf: 5f c5 10 jmp $10c5 + 10c2: 8f 04 4c mov $4c,#$04 10c5: cd f0 mov x,#$f0 10c7: 9e div ya,x @@ -1148,9 +1222,16 @@ 10e7: ba 27 movw ya,$27 10e9: 6f ret +; pitch table (low byte) 10ea: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 + +; pitch table (high byte) 11d9: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f + +; note interval frequencies (low byte) 12ca: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 + +; note interval frequencies (high byte) 12ea: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 130a: e4 5c mov a,$5c @@ -1170,11 +1251,13 @@ 1327: f4 61 mov a,$61+x 1329: 5d mov x,a 132a: 1f 98 17 jmp ($1798+x) + 132d: 8b 5e dec $5e 132f: 8b 5e dec $5e 1331: 8b 5d dec $5d 1333: 10 f0 bpl $1325 1335: 6f ret + 1336: f8 5d mov x,$5d 1338: 9b 9b dec $9b+x 133a: d0 f1 bne $132d @@ -1188,15 +1271,17 @@ 134b: e8 06 mov a,#$06 134d: d4 61 mov $61+x,a 134f: 5f 63 13 jmp $1363 + 1352: e8 08 mov a,#$08 1354: d4 61 mov $61+x,a 1356: 5f 59 15 jmp $1559 + 1359: 3f b8 14 call $14b8 135c: d4 ce mov $ce+x,a 135e: 3f b8 14 call $14b8 1361: d4 cf mov $cf+x,a 1363: 3f b8 14 call $14b8 -1366: fd mov y,a +1366: fd mov y,a ; get the current note/command 1367: 28 20 and a,#$20 1369: c4 5f mov $5f,a 136b: dd mov a,y @@ -1204,16 +1289,17 @@ 136e: c4 60 mov $60,a 1370: f8 5d mov x,$5d 1372: d5 88 05 mov $0588+x,a -1375: ad 80 cmp y,#$80 +1375: ad 80 cmp y,#$80 ; is it a note? 1377: 90 3d bcc $13b6 -1379: ad f0 cmp y,#$f0 +1379: ad f0 cmp y,#$f0 ; is it a special meaning flag? 137b: 90 08 bcc $1385 -137d: dd mov a,y -137e: 28 0f and a,#$0f +137d: dd mov a,y ; then it must be a command... +137e: 28 0f and a,#$0f ; get command number 1380: 1c asl a 1381: 5d mov x,a -1382: 1f 3c 15 jmp ($153c+x) -1385: f5 90 05 mov a,$0590+x +1382: 1f 3c 15 jmp ($153c+x) ; jump to command number position + +1385: f5 90 05 mov a,$0590+x ; pitch bend 1388: f0 4c beq $13d6 138a: dd mov a,y 138b: 28 08 and a,#$08 @@ -1241,7 +1327,7 @@ 13b0: a8 00 sbc a,#$00 13b2: d4 df mov $df+x,a 13b4: 2f 20 bra $13d6 -13b6: f5 90 05 mov a,$0590+x +13b6: f5 90 05 mov a,$0590+x ; play the note (check first) 13b9: f0 1b beq $13d6 13bb: dd mov a,y 13bc: 28 1f and a,#$1f @@ -1249,7 +1335,7 @@ 13bf: f8 5e mov x,$5e 13c1: f4 ce mov a,$ce+x 13c3: 60 clrc -13c4: 96 ca 12 adc a,$12ca+y +13c4: 96 ca 12 adc a,$12ca+y ; get the relative frequency 13c7: d4 ce mov $ce+x,a 13c9: f4 cf mov a,$cf+x 13cb: 96 ea 12 adc a,$12ea+y @@ -1267,7 +1353,9 @@ 13e5: e8 0a mov a,#$0a 13e7: d4 61 mov $61+x,a 13e9: 5f 97 15 jmp $1597 + 13ec: 5f 25 13 jmp $1325 + 13ef: f8 5d mov x,$5d 13f1: d4 a3 mov $a3+x,a 13f3: fd mov y,a @@ -1285,9 +1373,11 @@ 140c: 75 27 02 cmp a,$0227+x 140f: b0 05 bcs $1416 1411: 5f 2d 13 jmp $132d + 1414: e8 40 mov a,#$40 1416: d5 27 02 mov $0227+x,a 1419: 5f 3d 14 jmp $143d + 141c: f5 a0 05 mov a,$05a0+x 141f: c4 3d mov $3d,a 1421: f5 a8 05 mov a,$05a8+x @@ -1347,6 +1437,7 @@ 148b: e4 37 mov a,$37 148d: d5 47 02 mov $0247+x,a 1490: 5f 2d 13 jmp $132d + 1493: f8 5d mov x,$5d 1495: f5 68 05 mov a,$0568+x 1498: 60 clrc @@ -1364,16 +1455,22 @@ 14b0: eb ac mov y,$ac 14b2: 3f 6e 0c call $0c6e 14b5: 5f 2d 13 jmp $132d + +; calculate delta expression 14b8: f8 5e mov x,$5e 14ba: e7 8b mov a,($8b+x) 14bc: bb 8b inc $8b+x 14be: d0 02 bne $14c2 14c0: bb 8c inc $8c+x 14c2: 6f ret + +; vcmd f0 - end of sequence 14c3: f8 5d mov x,$5d 14c5: e8 0a mov a,#$0a 14c7: d4 61 mov $61+x,a 14c9: 5f 97 15 jmp $1597 + +; vcmd f1 - melody delta expression 14cc: 3f b8 14 call $14b8 14cf: c4 ad mov $ad,a 14d1: f8 5d mov x,$5d @@ -1381,10 +1478,14 @@ 14d6: 3f 28 15 call $1528 14d9: d5 70 05 mov $0570+x,a 14dc: 5f 63 13 jmp $1363 + +; vcmd f2 - melody absolute expression 14df: 3f b8 14 call $14b8 14e2: f8 5d mov x,$5d 14e4: d5 70 05 mov $0570+x,a 14e7: 5f 63 13 jmp $1363 + +; vcmd f3 - mute 14ea: f8 5d mov x,$5d 14ec: f5 a8 05 mov a,$05a8+x 14ef: 30 15 bmi $1506 @@ -1397,6 +1498,8 @@ 14fe: f6 dc 07 mov a,$07dc+y 1501: c4 f2 mov $f2,a 1503: 8f 9f f3 mov $f3,#$9f + +; vcmd f4 - rest 1506: 3f b8 14 call $14b8 1509: f8 5d mov x,$5d 150b: d4 a3 mov $a3+x,a @@ -1404,14 +1507,18 @@ 1510: d4 9b mov $9b+x,a 1512: 3f 18 15 call $1518 1515: 5f 2d 13 jmp $132d + 1518: f4 61 mov a,$61+x 151a: 68 06 cmp a,#$06 151c: d0 05 bne $1523 151e: e8 02 mov a,#$02 1520: 5f 25 15 jmp $1525 + 1523: e8 04 mov a,#$04 1525: d4 61 mov $61+x,a 1527: 6f ret + +; add the delta to the total 1528: 78 80 ad cmp $ad,#$80 152b: 90 08 bcc $1535 152d: 60 clrc @@ -1419,12 +1526,18 @@ 1530: 10 09 bpl $153b 1532: e8 00 mov a,#$00 1534: 6f ret + 1535: 84 ad adc a,$ad 1537: 10 02 bpl $153b 1539: e8 7f mov a,#$7f 153b: 6f ret -153c: dw $14c3,$14cc,$14df,$14ea,$1506 +; vcmd table (f0-f4) +153c: dw $14c3 ; f0 - end of sequence +153e: dw $14cc ; f1 - melody delta expression +1540: dw $14df ; f2 - melody absolute expression +1542: dw $14ea ; f3 - mute +1544: dw $1506 ; f4 - rest 1546: 3f b8 14 call $14b8 1549: f8 5d mov x,$5d @@ -1454,7 +1567,8 @@ 157e: f5 88 05 mov a,$0588+x 1581: c4 60 mov $60,a 1583: 5f d6 13 jmp $13d6 -1586: e4 00 mov a,$00 + +1586: e4 00 mov a,$00 ; fetch a random number (RNG) 1588: 1c asl a 1589: 44 00 eor a,$00 158b: 1c asl a @@ -1465,19 +1579,25 @@ 1592: 2b 00 rol $00 1594: e4 02 mov a,$02 1596: 6f ret -1597: 3f 9e 15 call $159e + +1597: 3f 9e 15 call $159e ; get current pattern command 159a: 5d mov x,a 159b: 1f 6f 16 jmp ($166f+x) -159e: f8 5e mov x,$5e + +159e: f8 5e mov x,$5e ; get 1 byte 15a0: e7 7b mov a,($7b+x) 15a2: bb 7b inc $7b+x 15a4: d0 02 bne $15a8 15a6: bb 7c inc $7c+x 15a8: 6f ret + +; pattern command 00/16 - end of pattern 15a9: f8 5d mov x,$5d 15ab: e8 0c mov a,#$0c 15ad: d4 61 mov $61+x,a 15af: 5f 87 16 jmp $1687 + +; pattern command 14 15b2: 8d 00 mov y,#$00 15b4: f8 5e mov x,$5e 15b6: 3f a0 15 call $15a0 @@ -1499,54 +1619,74 @@ 15d7: 8d 10 mov y,#$10 15d9: 3f 62 16 call $1662 15dc: 2f 05 bra $15e3 + +; pattern command 02 - play melody 15de: 8d 10 mov y,#$10 15e0: 3f 5d 16 call $165d 15e3: e8 06 mov a,#$06 15e5: d4 61 mov $61+x,a 15e7: 5f 59 13 jmp $1359 + +; pattern command 04 15ea: 8d 14 mov y,#$14 15ec: 3f 5d 16 call $165d 15ef: e8 08 mov a,#$08 15f1: d4 61 mov $61+x,a 15f3: 5f 46 15 jmp $1546 -15f6: 3f 9e 15 call $159e + +; pattern command 06 - set channel tuning +15f6: 3f 9e 15 call $159e ; get 1 byte 15f9: eb 5e mov y,$5e 15fb: d6 be 00 mov $00be+y,a 15fe: 3f a0 15 call $15a0 1601: d6 bf 00 mov $00bf+y,a 1604: 5f 97 15 jmp $1597 -1607: 3f 9e 15 call $159e + +; pattern command 08 - set instrument +1607: 3f 9e 15 call $159e ; get 1 byte 160a: f8 5d mov x,$5d 160c: d5 78 05 mov $0578+x,a 160f: 5f 97 15 jmp $1597 -1612: 3f 9e 15 call $159e + +; pattern command 0a - set pitch envelope +1612: 3f 9e 15 call $159e ; get 1 byte 1615: f8 5d mov x,$5d 1617: d5 80 05 mov $0580+x,a 161a: 5f 97 15 jmp $1597 -161d: 3f 9e 15 call $159e + +; pattern command 10 - set channel gain (relative?) +161d: 3f 9e 15 call $159e ; get 1 byte 1620: c4 ad mov $ad,a 1622: f8 5d mov x,$5d 1624: f5 68 05 mov a,$0568+x 1627: 3f 28 15 call $1528 162a: d5 68 05 mov $0568+x,a 162d: 5f 97 15 jmp $1597 -1630: 3f 9e 15 call $159e + +; pattern command 12 - set channel gain (absolute) +1630: 3f 9e 15 call $159e ; get 1 byte 1633: f8 5d mov x,$5d 1635: d5 68 05 mov $0568+x,a 1638: 5f 97 15 jmp $1597 + +; pattern command 0c 163b: e8 ff mov a,#$ff 163d: f8 5d mov x,$5d 163f: d5 90 05 mov $0590+x,a 1642: 5f 97 15 jmp $1597 -1645: 3f 9e 15 call $159e + +; pattern command 0e - (2 bytes) +1645: 3f 9e 15 call $159e ; get 1 byte 1648: eb 5e mov y,$5e 164a: d6 ce 00 mov $00ce+y,a -164d: 3f a0 15 call $15a0 +164d: 3f a0 15 call $15a0 ; get another byte 1650: d6 cf 00 mov $00cf+y,a 1653: e8 00 mov a,#$00 1655: f8 5d mov x,$5d 1657: d5 90 05 mov $0590+x,a 165a: 5f 97 15 jmp $1597 + +; get the next byte and its corresponding phrase pointer 165d: 6d push y 165e: 3f 9e 15 call $159e 1661: ee pop y @@ -1558,38 +1698,62 @@ 166c: f8 5d mov x,$5d 166e: 6f ret -166f: dw $15a9,$15de,$15ea,$15f6,$1607,$1612,$163b,$1645,$161d,$1630,$15b2,$15a9 +; pattern command table (00-17) +166f: dw $15a9 ; 00 - end of pattern +1671: dw $15de ; 02 - play melody +1673: dw $15ea ; 04 +1675: dw $15f6 ; 06 - set channel tuning +1677: dw $1607 ; 08 - set instrument +1679: dw $1612 ; 0a - set pitch envelope +167b: dw $163b ; 0c +167d: dw $1645 ; 0e - (2 bytes) +167f: dw $161d ; 10 - set channel gain (relative)? +1681: dw $1630 ; 12 - set channel gain (absolute) +1683: dw $15b2 ; 14 +1685: dw $15a9 ; 16 - end of pattern (same as 00) +; melody command 00 - end of melody 1687: 3f 8e 16 call $168e 168a: 5d mov x,a 168b: 1f fe 16 jmp ($16fe+x) + 168e: f8 5e mov x,$5e 1690: e7 6b mov a,($6b+x) 1692: bb 6b inc $6b+x 1694: d0 02 bne $1698 1696: bb 6c inc $6c+x 1698: 6f ret + +; melody command 02 - go to loop 1699: f8 5d mov x,$5d 169b: e8 00 mov a,#$00 169d: d4 61 mov $61+x,a 169f: 8b 5c dec $5c 16a1: 5f 2d 13 jmp $132d + +; melody command 04 16a4: f8 5e mov x,$5e 16a6: f5 50 05 mov a,$0550+x 16a9: d4 6b mov $6b+x,a 16ab: f5 51 05 mov a,$0551+x 16ae: d4 6c mov $6c+x,a 16b0: 5f 87 16 jmp $1687 + +; melody command 06 - toggle channel mute 16b3: 3f 8e 16 call $168e 16b6: f8 5d mov x,$5d 16b8: d5 60 05 mov $0560+x,a 16bb: 5f 87 16 jmp $1687 + +; melody command 08 - play phrase 16be: 3f 8e 16 call $168e 16c1: eb 5e mov y,$5e 16c3: d6 ae 00 mov $00ae+y,a 16c6: 3f 90 16 call $1690 16c9: d6 af 00 mov $00af+y,a 16cc: 5f 87 16 jmp $1687 + +; melody command 0a - set channel number 16cf: 3f 8e 16 call $168e 16d2: 8d 16 mov y,#$16 16d4: 3f bb 0d call $0dbb @@ -1601,6 +1765,8 @@ 16e0: e8 0a mov a,#$0a 16e2: d4 61 mov $61+x,a 16e4: 5f 97 15 jmp $1597 + +; melody command 0c 16e7: 3f 8e 16 call $168e 16ea: f8 5d mov x,$5d 16ec: d5 98 05 mov $0598+x,a @@ -1611,7 +1777,14 @@ 16f8: d5 a0 05 mov $05a0+x,a 16fb: 5f 87 16 jmp $1687 -16fe: dw $1687, $1699, $16a4, $16b3, $16be, $16cf, $16e7 +; melody command table (00-0c) +16fc: dw $1687 ; 00 - end of melody +16fe: dw $1699 ; 02 - go to loop +1700: dw $16a4 ; 04 +1702: dw $16b3 ; 06 - toggle channel mute +1704: dw $16be ; 08 - play phrase +1706: dw $16cf ; 0a - set channel number +1708: dw $16e7 ; 0c 170a: 8d 93 mov y,#$93 170c: f9 5a mov x,$5a+y @@ -1629,21 +1802,23 @@ 1727: d6 4a 06 mov $064a+y,a 172a: fe f0 dbnz y,$171c 172c: 6f ret + 172d: 3f 36 17 call $1736 1730: e8 01 mov a,#$01 1732: c5 4f 05 mov $054f,a 1735: 6f ret -1736: 2d push a -1737: 3f 0a 17 call $170a + +1736: 2d push a ; start song +1737: 3f 0a 17 call $170a ; stop the current song 173a: ae pop a -173b: 8d 1a mov y,#$1a +173b: 8d 1a mov y,#$1a ; find the start of the song struct 173d: 3f bb 0d call $0dbb 1740: da 69 movw $69,ya -1742: 8d 00 mov y,#$00 +1742: 8d 00 mov y,#$00 ; get number of channels 1744: f7 69 mov a,($69)+y -1746: c4 5b mov $5b,a +1746: c4 5b mov $5b,a ; save number of channels in total and current 1748: c4 5c mov $5c,a -174a: f0 4b beq $1797 +174a: f0 4b beq $1797 ; if 0, then return 174c: 8f 00 5d mov $5d,#$00 174f: 8f 00 5e mov $5e,#$00 1752: fc inc y @@ -1681,4 +1856,24 @@ 1795: 90 bb bcc $1752 1797: 6f ret -1798: dw $132d,$1336,$1336,$1363,$1559,$1597,$1687,$0b5d,$0bd6,$173b,$1736,$172d,$170a,$0792,$0b7d,$0b79,$0b73,$0b70,$0b6a,$0b8c,$0b97 \ No newline at end of file +1798: dw $132d +179a: dw $1336 +179c: dw $1336 +179e: dw $1363 +17a0: dw $1559 +17a2: dw $1597 +17a4: dw $1687 +17a6: dw $0b5d +17a8: dw $0bd6 +17aa: dw $173b +17ac: dw $1736 +17ae: dw $172d +17b0: dw $170a +17b2: dw $0792 +17b4: dw $0b7d +17b6: dw $0b79 +17b8: dw $0b73 +17ba: dw $0b70 +17bc: dw $0b6a +17be: dw $0b8c +17c0: dw $0b97 \ No newline at end of file diff --git a/snes/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s b/snes/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s index 1508054d..d5096c9f 100644 --- a/snes/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s +++ b/snes/Sculptured Software/Rocko's Modern Life - Spunky's Dangerous Day.s @@ -1,13 +1,13 @@ 0700: 20 clrp -0701: cd ff mov x,#$ff +0701: cd ff mov x,#$ff ; set stack pointer 0703: bd mov sp,x -0704: 8f b0 f1 mov $f1,#$b0 +0704: 8f b0 f1 mov $f1,#$b0 ; clear input ports APUI00-APUI04 0707: 8f 20 fa mov $fa,#$20 -070a: 8f 81 f1 mov $f1,#$81 -070d: 3f d3 0e call $0ed3 +070a: 8f 81 f1 mov $f1,#$81 ; toggle timer 2 +070d: 3f d3 0e call $0ed3 ; clear/reset routine 0710: 8f 00 13 mov $13,#$00 0713: 8f 1a 14 mov $14,#$1a -0716: 8d 03 mov y,#$03 +0716: 8d 03 mov y,#$03 ; set temporary storage 0718: f6 02 00 mov a,$0002+y 071b: 16 22 07 or a,$0722+y 071e: d6 02 00 mov $0002+y,a @@ -15,7 +15,7 @@ 0723: ab 1d inc $1d 0725: e4 23 mov a,$23 0727: d0 05 bne $072e -0729: 3f 49 18 call $1849 +0729: 3f 49 18 call $1849 ; do a random number generator (RNG) 072c: 2f 03 bra $0731 072e: 3f 51 08 call $0851 0731: e4 f6 mov a,$f6 @@ -47,6 +47,7 @@ 0769: d0 05 bne $0770 076b: d8 f5 mov $f5,x 076d: 1f 00 00 jmp ($0000+x) + 0770: cd 00 mov x,#$00 0772: 3e f4 cmp x,$f4 0774: d0 fc bne $0772 @@ -71,25 +72,40 @@ 079c: 90 f5 bcc $0793 079e: 5f 00 01 jmp $0100 +; gain tables 07a1: db $ff,$d6,$a0,$80,$6b,$50,$40,$36,$28,$20,$1b,$14,$10,$0e,$0b,$08,$06,$05,$04,$03,$02,$01 07b7: db $1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0a,$09,$06,$00 + +; DSP registers: VxENVX 07cd: db $08,$18,$28,$38,$48,$58,$68,$78 +; DSP registers: VxGAIN 07d5: db $07,$17,$27,$37,$47,$57,$67,$77 +; DSP registers: VxSCRN (select sample) 07dd: db $04,$14,$24,$34,$44,$54,$64,$74 +; DSP registers: VxPITCHL 07e5: db $02,$12,$22,$32,$42,$52,$62,$72 +; DSP registers: VxVOLL 07ed: db $00,$10,$20,$30,$40,$50,$60,$70 + +; voice numbers and bits for clearing those void bits 07f5: db $01,$02,$04,$08,$10,$20,$40,$80,$fe,$fd,$fb,$f7,$ef,$df,$bf,$7f + +; echo poke registers 0805: db $7d,$2c,$3c,$0d,$0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f + 0811: db $02,$02,$02,$02,$02,$03,$03,$03 0819: db $9e,$b3,$c8,$dd,$f2,$07,$1c,$31 + 0821: db $03,$03,$03,$03,$03,$03,$03,$03 0829: db $46,$5b,$70,$85,$9a,$af,$c4,$d9 + 0831: db $03,$04,$04,$04,$04,$04,$04,$04 0839: db $ee,$03,$18,$2d,$42,$57,$6c,$81 + 0841: db $04,$04,$04,$04,$04,$05,$05,$05 0849: db $96,$ac,$c2,$d8,$ee,$04,$1a,$30 -0851: 3f 49 18 call $1849 +0851: 3f 49 18 call $1849 ; use RNG 0854: 3f 7d 0b call $0b7d 0857: e5 00 02 mov a,$0200 085a: f0 09 beq $0865 @@ -101,7 +117,7 @@ 0868: 3f 7d 0b call $0b7d 086b: 8f 00 37 mov $37,#$00 086e: 8f 00 4c mov $4c,#$00 -0871: 8f 7c f2 mov $f2,#$7c +0871: 8f 7c f2 mov $f2,#$7c ; clear end of sample flags? 0874: e4 f3 mov a,$f3 0876: 04 49 or a,$49 0878: 24 4f and a,$4f @@ -115,7 +131,7 @@ 088a: 8f 04 16 mov $16,#$04 088d: 3f 6c 0b call $0b6c 0890: d8 17 mov $17,x -0892: f5 f5 07 mov a,$07f5+x +0892: f5 f5 07 mov a,$07f5+x ; clear voice number bits 0895: c4 39 mov $39,a 0897: 48 ff eor a,#$ff 0899: c4 3a mov $3a,a @@ -125,6 +141,7 @@ 08a1: d0 06 bne $08a9 08a3: f5 7e 02 mov a,$027e+x 08a6: 5f ae 08 jmp $08ae + 08a9: 3f 24 10 call $1024 08ac: f8 17 mov x,$17 08ae: 75 86 02 cmp a,$0286+x @@ -172,6 +189,7 @@ 090b: b8 15 15 sbc $15,#$15 090e: b8 00 16 sbc $16,#$00 0911: 5f 8d 08 jmp $088d + 0914: e4 4d mov a,$4d 0916: 24 4b and a,$4b 0918: 04 4c or a,$4c @@ -192,6 +210,7 @@ 093b: d0 06 bne $0943 093d: f5 76 02 mov a,$0276+x 0940: 5f 48 09 jmp $0948 + 0943: 3f 24 10 call $1024 0946: f8 17 mov x,$17 0948: fd mov y,a @@ -229,6 +248,7 @@ 0985: 1d dec x 0986: 30 03 bmi $098b 0988: 5f 2c 09 jmp $092c + 098b: cd 07 mov x,#$07 098d: 8f d9 15 mov $15,#$d9 0990: 8f 03 16 mov $16,#$03 @@ -245,15 +265,15 @@ 09a3: fd mov y,a 09a4: 1c asl a 09a5: 5d mov x,a -09a6: f5 4f 02 mov a,$024f+x +09a6: f5 4f 02 mov a,$024f+x ; get base note 09a9: c4 36 mov $36,a 09ab: f5 4e 02 mov a,$024e+x 09ae: c4 35 mov $35,a 09b0: 8e pop psw 09b1: f0 11 beq $09c4 -09b3: 4d push x -09b4: 3f 24 10 call $1024 -09b7: ce pop x +09b3: 4d push x ; save word addressing +09b4: 3f 24 10 call $1024 ; advance pitch envelope +09b7: ce pop x ; restore pitch flag 09b8: 7a 35 addw ya,$35 09ba: 80 setc 09bb: a8 b0 sbc a,#$b0 @@ -267,7 +287,7 @@ 09cb: 7a 35 addw ya,$35 09cd: 8e pop psw 09ce: d0 03 bne $09d3 -09d0: 3f e8 11 call $11e8 +09d0: 3f e8 11 call $11e8 ; translate note to frequency 09d3: f8 17 mov x,$17 09d5: d5 5e 02 mov $025e+x,a 09d8: dd mov a,y @@ -293,6 +313,7 @@ 0a06: d0 06 bne $0a0e 0a08: f5 36 02 mov a,$0236+x 0a0b: 5f 13 0a jmp $0a13 + 0a0e: 3f 24 10 call $1024 0a11: f8 17 mov x,$17 0a13: d5 3e 02 mov $023e+x,a @@ -355,6 +376,7 @@ 0a8c: 1d dec x 0a8d: 30 03 bmi $0a92 0a8f: 5f f4 09 jmp $09f4 + 0a92: 8f 4c f2 mov $f2,#$4c 0a95: fa 4e f3 mov ($f3),($4e) 0a98: e4 4e mov a,$4e @@ -438,7 +460,9 @@ 0b49: 8f 00 64 mov $64,#$00 0b4c: 8d 80 mov y,#$80 0b4e: 5f 49 0c jmp $0c49 + 0b51: 6f ret + 0b52: e4 53 mov a,$53 0b54: 10 0c bpl $0b62 0b56: 28 1f and a,#$1f @@ -450,6 +474,7 @@ 0b65: 8f 3d f2 mov $f2,#$3d 0b68: fa 55 f3 mov ($f3),($55) 0b6b: 6f ret + 0b6c: 4d push x 0b6d: e4 f6 mov a,$f6 0b6f: f0 4c beq $0bbd @@ -490,7 +515,9 @@ 0bba: fa 20 f7 mov ($f7),($20) 0bbd: ce pop x 0bbe: 6f ret + 0bbf: 1f 54 19 jmp ($1954+x) + 0bc2: 3f 0f 0f call $0f0f 0bc5: e8 01 mov a,#$01 0bc7: 8d 08 mov y,#$08 @@ -500,14 +527,18 @@ 0bd1: 8f 00 f3 mov $f3,#$00 0bd4: 8f ff 23 mov $23,#$ff 0bd7: 6f ret + 0bd8: da 42 movw $42,ya 0bda: 8f ff 41 mov $41,#$ff 0bdd: 6f ret + 0bde: c4 5a mov $5a,a 0be0: 6f ret + 0be1: e8 00 mov a,#$00 0be3: c5 07 02 mov $0207,a 0be6: 6f ret + 0be7: cd 01 mov x,#$01 0be9: 2d push a 0bea: e8 00 mov a,#$00 @@ -520,9 +551,11 @@ 0bfa: cc 0a 02 mov $020a,y 0bfd: c9 09 02 mov $0209,x 0c00: 6f ret + 0c01: 8d ff mov y,#$ff 0c03: cc 05 02 mov $0205,y 0c06: 5f a0 0c jmp $0ca0 + 0c09: 3f 5a 18 call $185a 0c0c: e5 fc 19 mov a,$19fc 0c0f: c5 35 06 mov $0635,a @@ -545,11 +578,13 @@ 0c3a: 1d dec x 0c3b: 10 fa bpl $0c37 0c3d: 6f ret + 0c3e: 8f 00 64 mov $64,#$00 0c41: 68 00 cmp a,#$00 0c43: d0 03 bne $0c48 0c45: c5 46 05 mov $0546,a 0c48: 6f ret + 0c49: c5 1d 02 mov $021d,a 0c4c: cd 07 mov x,#$07 0c4e: ad 80 cmp y,#$80 @@ -578,16 +613,19 @@ 0c85: 1d dec x 0c86: 10 c6 bpl $0c4e 0c88: 6f ret + 0c89: 2d push a 0c8a: e8 00 mov a,#$00 0c8c: c5 06 02 mov $0206,a 0c8f: ae pop a 0c90: 5f f2 0b jmp $0bf2 + 0c93: 2d push a 0c94: e8 01 mov a,#$01 0c96: c5 06 02 mov $0206,a 0c99: ae pop a 0c9a: 5f f2 0b jmp $0bf2 + 0c9d: cc 05 02 mov $0205,y 0ca0: 8d 0e mov y,#$0e 0ca2: c5 1d 02 mov $021d,a @@ -645,6 +683,7 @@ 0d10: d0 a0 bne $0cb2 0d12: 8f 00 41 mov $41,#$00 0d15: 6f ret + 0d16: 8d 07 mov y,#$07 0d18: e4 47 mov a,$47 0d1a: 24 45 and a,$45 @@ -662,11 +701,13 @@ 0d34: dc dec y 0d35: 10 e1 bpl $0d18 0d37: 6f ret + 0d38: e4 46 mov a,$46 0d3a: d5 2e 02 mov $022e+x,a 0d3d: e8 00 mov a,#$00 0d3f: 6f ret -0d40: d8 3b mov $3b,x + +0d40: d8 3b mov $3b,x ; play sound (instrument) 0d42: 2d push a 0d43: e4 cf mov a,$cf 0d45: d0 08 bne $0d4f @@ -689,13 +730,13 @@ 0d6a: ae pop a 0d6b: 8d 02 mov y,#$02 0d6d: 3f b2 0e call $0eb2 -0d70: da 0f movw $0f,ya +0d70: da 0f movw $0f,ya ;get current voice and instrument 0d72: f8 3b mov x,$3b -0d74: f5 f5 07 mov a,$07f5+x +0d74: f5 f5 07 mov a,$07f5+x ;get channel bit mask ID 0d77: c4 56 mov $56,a -0d79: 48 ff eor a,#$ff +0d79: 48 ff eor a,#$ff ;and store inversion 0d7b: c4 57 mov $57,a -0d7d: 8d 00 mov y,#$00 +0d7d: 8d 00 mov y,#$00 ;get mode flags 0d7f: f7 0f mov a,($0f)+y 0d81: 2d push a 0d82: e5 05 02 mov a,$0205 @@ -710,27 +751,28 @@ 0d91: ae pop a 0d92: d4 5b mov $5b+x,a 0d94: c4 3c mov $3c,a -0d96: 28 20 and a,#$20 -0d98: f0 05 beq $0d9f -0d9a: 09 56 58 or ($58),($56) +0d96: 28 20 and a,#$20 ; is pitch modulation enabled? ($20 = pm) +0d98: f0 05 beq $0d9f ; if not... +0d9a: 09 56 58 or ($58),($56) ; turn pitch mod on 0d9d: 2f 03 bra $0da2 -0d9f: 29 57 58 and ($58),($57) +0d9f: 29 57 58 and ($58),($57) ; turn pitch mod off + 0da2: 8f 2d f2 mov $f2,#$2d 0da5: fa 58 f3 mov ($f3),($58) 0da8: e4 cf mov a,$cf 0daa: d0 3e bne $0dea -0dac: e4 3c mov a,$3c -0dae: 28 10 and a,#$10 -0db0: f0 2f beq $0de1 -0db2: 8d 05 mov y,#$05 +0dac: e4 3c mov a,$3c ; retrieve the saved flag +0dae: 28 10 and a,#$10 ; is echo enabled? ($10 = echo) +0db0: f0 2f beq $0de1 ; if not... +0db2: 8d 05 mov y,#$05 ; get echo byte from sound 0db4: f7 0f mov a,($0f)+y 0db6: 8d 0c mov y,#$0c 0db8: 3f b2 0e call $0eb2 0dbb: 8d 00 mov y,#$00 -0dbd: f6 05 08 mov a,$0805+y -0dc0: c4 f2 mov $f2,a -0dc2: f7 18 mov a,($18)+y -0dc4: ad 01 cmp y,#$01 +0dbd: f6 05 08 mov a,$0805+y ; get the echo register values to "poke" +0dc0: c4 f2 mov $f2,a ; (from the table) +0dc2: f7 18 mov a,($18)+y ; now get info to feed to the registers +0dc4: ad 01 cmp y,#$01 ; (from the echo environment) 0dc6: f0 04 beq $0dcc 0dc8: ad 02 cmp y,#$02 0dca: d0 09 bne $0dd5 @@ -740,23 +782,24 @@ 0dd3: e4 1e mov a,$1e 0dd5: c4 f3 mov $f3,a 0dd7: fc inc y -0dd8: ad 0c cmp y,#$0c +0dd8: ad 0c cmp y,#$0c ; repeat for every byte of the array 0dda: 90 e1 bcc $0dbd 0ddc: 09 56 59 or ($59),($56) 0ddf: 2f 03 bra $0de4 -0de1: 29 57 59 and ($59),($57) +0de1: 29 57 59 and ($59),($57) ; send the echo unit 0de4: 8f 4d f2 mov $f2,#$4d 0de7: fa 59 f3 mov ($f3),($59) 0dea: e4 3c mov a,$3c 0dec: 28 01 and a,#$01 0dee: 0d push psw 0def: 8d 01 mov y,#$01 -0df1: f7 0f mov a,($0f)+y +0df1: f7 0f mov a,($0f)+y ; now get the amplitude 0df3: 8e pop psw 0df4: d0 08 bne $0dfe 0df6: f8 3b mov x,$3b 0df8: d5 36 02 mov $0236+x,a 0dfb: 5f 14 0e jmp $0e14 + 0dfe: 8d 04 mov y,#$04 0e00: 3f b2 0e call $0eb2 0e03: f8 3b mov x,$3b @@ -794,6 +837,7 @@ 0e49: f8 3b mov x,$3b 0e4b: d5 76 02 mov $0276+x,a 0e4e: 5f 7e 0e jmp $0e7e + 0e51: 8d 08 mov y,#$08 0e53: 3f b2 0e call $0eb2 0e56: f8 3b mov x,$3b @@ -811,6 +855,7 @@ 0e71: d0 05 bne $0e78 0e73: e8 ff mov a,#$ff 0e75: 5f 7a 0e jmp $0e7a + 0e78: e8 00 mov a,#$00 0e7a: 8d 15 mov y,#$15 0e7c: d7 15 mov ($15)+y,a @@ -824,6 +869,7 @@ 0e8a: f8 3b mov x,$3b 0e8c: d5 7e 02 mov $027e+x,a 0e8f: 5f a8 0e jmp $0ea8 + 0e92: 8d 0a mov y,#$0a 0e94: 3f b2 0e call $0eb2 0e97: f8 3b mov x,$3b @@ -837,7 +883,8 @@ 0eab: 09 56 48 or ($48),($56) 0eae: 8f 00 cf mov $cf,#$00 0eb1: 6f ret -0eb2: 8f 00 0e mov $0e,#$00 + +0eb2: 8f 00 0e mov $0e,#$00 ; load current song/sfx/etc. address into stack 0eb5: 1c asl a 0eb6: 2b 0e rol $0e 0eb8: 60 clrc @@ -854,6 +901,7 @@ 0ece: c4 18 mov $18,a 0ed0: eb 19 mov y,$19 0ed2: 6f ret + 0ed3: cd 3e mov x,#$3e 0ed5: 8d 0f mov y,#$0f 0ed7: 3f 27 0f call $0f27 @@ -884,6 +932,7 @@ 0f09: c4 4f mov $4f,a 0f0b: 8f 00 1e mov $1e,#$00 0f0e: 6f ret + 0f0f: e5 e1 19 mov a,$19e1 0f12: 8f 6d f2 mov $f2,#$6d 0f15: c4 f3 mov $f3,a @@ -896,6 +945,7 @@ 0f22: ab 01 inc $01 0f24: d0 f8 bne $0f1e 0f26: 6f ret + 0f27: d8 00 mov $00,x 0f29: cb 01 mov $01,y 0f2b: 8d 00 mov y,#$00 @@ -910,7 +960,45 @@ 0f3b: d0 f0 bne $0f2d 0f3d: 6f ret -0f3e: db $6c,$3f,$3d,$00,$4d,$00,$7d,$00,$6d,$ff,$5d,$1a,$5c,$00,$2d,$00,$05,$00,$15,$00,$25,$00,$35,$00,$45,$00,$55,$00,$65,$00,$75,$00,$07,$00,$17,$00,$27,$00,$37,$00,$47,$00,$57,$00,$67,$00,$77,$00,$7c,$00,$2c,$00,$3c,$00,$0c,$00,$1c,$00,$04,$00,$14,$00,$24,$00,$34,$00,$44,$00,$54,$00,$64,$00,$74,$00,$ff +; pre-defined DSP flags +0f3e: db $6c,$3f ; clear flags +0f40: db $3d,$00 ; turn off noise generator (NON) +0f42: db $4d,$00 ; turn off echo (EON) +0f44: db $7d,$00 ; turn off echo delay time (EDL) +0f46: db $6d,$ff ; pointer to echo memory (ESA) +0f48: db $5d,$1a ; set source directory offset +0f4a: db $5c,$00 ; set key off (KOFF) +0f4c: db $2d,$00 ; disable pitch modulation (PMON) +0f4e: db $05,$00 ; set ASDR (1) (channel 1) +0f50: db $15,$00 ; set ASDR (1) (channel 2) +0f52: db $25,$00 ; set ASDR (1) (channel 3) +0f54: db $35,$00 ; set ASDR (1) (channel 4) +0f56: db $45,$00 ; set ASDR (1) (channel 5) +0f58: db $55,$00 ; set ASDR (1) (channel 6) +0f5a: db $65,$00 ; set ASDR (1) (channel 7) +0f5c: db $75,$00 ; set ASDR (1) (channel 8) +0f5e: db $07,$00 ; set GAIN (channel 1) +0f60: db $17,$00 ; set GAIN (channel 2) +0f62: db $27,$00 ; set GAIN (channel 3) +0f64: db $37,$00 ; set GAIN (channel 4) +0f66: db $47,$00 ; set GAIN (channel 5) +0f68: db $57,$00 ; set GAIN (channel 6) +0f6a: db $67,$00 ; set GAIN (channel 7) +0f6c: db $77,$00 ; set GAIN (channel 8) +0f6e: db $7c,$00 ; end of sample flag +0f70: db $2c,$00 ; turn off EVOLL +0f72: db $3c,$00 ; turn off EVOLR +0f74: db $0c,$00 ; turn off MVOLL +0f76: db $1c,$00 ; turn off MVOLR +0f78: db $04,$00 ; set source number (channel 1) +0f7a: db $14,$00 ; set source number (channel 2) +0f7c: db $24,$00 ; set source number (channel 3) +0f7e: db $34,$00 ; set source number (channel 4) +0f80: db $44,$00 ; set source number (channel 5) +0f82: db $54,$00 ; set source number (channel 6) +0f84: db $64,$00 ; set source number (channel 7) +0f86: db $74,$00 ; set source number (channel 8) +0f88: db $ff 0f89: da 2f movw $2f,ya 0f8b: 8d 07 mov y,#$07 @@ -995,6 +1083,7 @@ 101d: d7 15 mov ($15)+y,a 101f: c4 28 mov $28,a 1021: 5f d2 10 jmp $10d2 + 1024: 8d 14 mov y,#$14 1026: f7 15 mov a,($15)+y 1028: f0 39 beq $1063 @@ -1014,6 +1103,7 @@ 1043: 78 02 29 cmp $29,#$02 1046: 90 03 bcc $104b 1048: 5f d2 10 jmp $10d2 + 104b: 8d 0c mov y,#$0c 104d: f7 15 mov a,($15)+y 104f: bc inc a @@ -1034,6 +1124,7 @@ 1069: f7 15 mov a,($15)+y 106b: ee pop y 106c: 6f ret + 106d: 8d 0c mov y,#$0c 106f: d7 15 mov ($15)+y,a 1071: 8d 06 mov y,#$06 @@ -1076,6 +1167,7 @@ 10b4: 68 ff cmp a,#$ff 10b6: f0 03 beq $10bb 10b8: 5f cb 10 jmp $10cb + 10bb: 8d 0c mov y,#$0c 10bd: f7 15 mov a,($15)+y 10bf: 8d 01 mov y,#$01 @@ -1099,6 +1191,7 @@ 10e4: 1d dec x 10e5: 10 f8 bpl $10df 10e7: 5f 52 11 jmp $1152 + 10ea: 3f 64 11 call $1164 10ed: 8d 06 mov y,#$06 10ef: f7 15 mov a,($15)+y @@ -1162,8 +1255,10 @@ 115f: d7 15 mov ($15)+y,a 1161: ba 24 movw ya,$24 1163: 6f ret + 1164: 8d 0a mov y,#$0a 1166: 5f 6b 11 jmp $116b + 1169: 8d 08 mov y,#$08 116b: f7 15 mov a,($15)+y 116d: c4 1a mov $1a,a @@ -1171,6 +1266,7 @@ 1170: f7 15 mov a,($15)+y 1172: c4 1b mov $1b,a 1174: 6f ret + 1175: 2d push a 1176: 3f 69 11 call $1169 1179: 8d 06 mov y,#$06 @@ -1187,12 +1283,14 @@ 118b: e4 1b mov a,$1b 118d: d7 15 mov ($15)+y,a 118f: 6f ret + 1190: c8 00 cmp x,#$00 1192: d0 05 bne $1199 1194: e8 ff mov a,#$ff 1196: fd mov y,a 1197: 5d mov x,a 1198: 6f ret + 1199: cb 2c mov $2c,y 119b: 3e 2c cmp x,$2c 119d: f0 02 beq $11a1 @@ -1214,9 +1312,11 @@ 11b6: 9e div ya,x 11b7: f8 2d mov x,$2d 11b9: 6f ret + 11ba: 9e div ya,x 11bb: cd 00 mov x,#$00 11bd: 6f ret + 11be: f5 86 02 mov a,$0286+x 11c1: 8d 04 mov y,#$04 11c3: cf mul ya @@ -1240,20 +1340,22 @@ 11e3: f7 31 mov a,($31)+y 11e5: c4 53 mov $53,a 11e7: 6f ret + 11e8: 60 clrc -11e9: 88 a0 adc a,#$a0 +11e9: 88 a0 adc a,#$a0 ; add offset to input frequency (1440) 11eb: 5d mov x,a 11ec: dd mov a,y 11ed: 88 05 adc a,#$05 11ef: fd mov y,a 11f0: 7d mov a,x -11f1: ad 0a cmp y,#$0a -11f3: 90 06 bcc $11fb -11f5: d0 0a bne $1201 +11f1: ad 0a cmp y,#$0a ; check if it is in within positive range +11f3: 90 06 bcc $11fb ; in range +11f5: d0 0a bne $1201 ; out of range 11f7: 68 50 cmp a,#$50 -11f9: b0 06 bcs $1201 +11f9: b0 06 bcs $1201 ; out of range 11fb: 8f ff 54 mov $54,#$ff 11fe: 5f 17 12 jmp $1217 + 1201: ad 80 cmp y,#$80 1203: 90 0f bcc $1214 1205: 8f 00 54 mov $54,#$00 @@ -1265,13 +1367,14 @@ 120f: fd mov y,a 1210: 7d mov a,x 1211: 5f 17 12 jmp $1217 + 1214: 8f 0a 54 mov $54,#$0a 1217: cd f0 mov x,#$f0 1219: 9e div ya,x 121a: 78 ff 54 cmp $54,#$ff 121d: d0 02 bne $1221 121f: c4 54 mov $54,a -1221: f6 3c 12 mov a,$123c+y +1221: f6 3c 12 mov a,$123c+y ;get pitch value (from table) 1224: c4 2f mov $2f,a 1226: f6 2c 13 mov a,$132c+y 1229: c4 30 mov $30,a @@ -1286,9 +1389,16 @@ 1239: ba 2f movw ya,$2f 123b: 6f ret +; pitch table (low byte) 123c: db $00,$18,$2f,$47,$5f,$77,$8f,$a7,$bf,$d8,$f0,$08,$21,$39,$52,$6b,$83,$9c,$b5,$ce,$e7,$00,$19,$33,$4c,$65,$7f,$98,$b2,$cc,$e5,$ff,$19,$33,$4d,$67,$82,$9c,$b6,$d1,$eb,$06,$20,$3b,$56,$71,$8c,$a7,$c2,$dd,$f9,$14,$2f,$4b,$67,$82,$9e,$ba,$d6,$f2,$0e,$2a,$46,$63,$7f,$9c,$b8,$d5,$f2,$0f,$2b,$48,$66,$83,$a0,$bd,$db,$f8,$16,$34,$51,$6f,$8d,$ab,$c9,$e7,$06,$24,$43,$61,$80,$9e,$bd,$dc,$fb,$1a,$39,$59,$78,$97,$b7,$d7,$f6,$16,$36,$56,$76,$96,$b7,$d7,$f7,$18,$39,$59,$7a,$9b,$bc,$dd,$ff,$20,$41,$63,$84,$a6,$c8,$ea,$0c,$2e,$50,$72,$95,$b7,$da,$fc,$1f,$42,$65,$88,$ab,$cf,$f2,$16,$39,$5d,$81,$a5,$c9,$ed,$11,$35,$5a,$7e,$a3,$c8,$ed,$12,$37,$5c,$81,$a6,$cc,$f2,$17,$3d,$63,$89,$af,$d6,$fc,$22,$49,$70,$97,$be,$e5,$0c,$33,$5a,$82,$aa,$d1,$f9,$21,$49,$71,$9a,$c2,$eb,$13,$3c,$65,$8e,$b7,$e0,$0a,$33,$5d,$87,$b0,$da,$04,$2f,$59,$84,$ae,$d9,$04,$2f,$5a,$85,$b0,$dc,$07,$33,$5f,$8b,$b7,$e3,$0f,$3c,$68,$95,$c2,$ef,$1c,$49,$77,$a4,$d2,$00,$2e,$5c,$8a,$b8,$e7,$15,$44,$73,$a2,$d1 + +; pitch table (high byte) 132c: db $20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$20,$21,$21,$21,$21,$21,$21,$21,$21,$21,$21,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$22,$23,$23,$23,$23,$23,$23,$23,$23,$23,$24,$24,$24,$24,$24,$24,$24,$24,$24,$24,$25,$25,$25,$25,$25,$25,$25,$25,$25,$26,$26,$26,$26,$26,$26,$26,$26,$26,$27,$27,$27,$27,$27,$27,$27,$27,$27,$28,$28,$28,$28,$28,$28,$28,$28,$29,$29,$29,$29,$29,$29,$29,$29,$29,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2a,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2b,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2c,$2d,$2d,$2d,$2d,$2d,$2d,$2d,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2e,$2f,$2f,$2f,$2f,$2f,$2f,$2f,$30,$30,$30,$30,$30,$30,$30,$31,$31,$31,$31,$31,$31,$31,$32,$32,$32,$32,$32,$32,$32,$33,$33,$33,$33,$33,$33,$33,$34,$34,$34,$34,$34,$34,$35,$35,$35,$35,$35,$35,$35,$36,$36,$36,$36,$36,$36,$37,$37,$37,$37,$37,$37,$38,$38,$38,$38,$38,$38,$39,$39,$39,$39,$39,$39,$3a,$3a,$3a,$3a,$3a,$3a,$3b,$3b,$3b,$3b,$3b,$3b,$3c,$3c,$3c,$3c,$3c,$3c,$3d,$3d,$3d,$3d,$3d,$3e,$3e,$3e,$3e,$3e,$3e,$3f,$3f,$3f,$3f,$3f + +; note interval frequencies (low byte) 141c: db $30,$20,$ac,$10,$24,$38,$4c,$60,$74,$88,$9c,$b0,$c4,$d8,$ec,$00,$14,$28,$3c,$50,$64,$78,$8c,$a0,$b4,$c8,$dc,$f0,$54,$e0,$d0,$c0 + +; note interval frequencies (high byte) 143c: db $fd,$fe,$fe,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$01,$02,$03 145c: e4 64 mov a,$64 @@ -1308,11 +1418,13 @@ 1479: f4 68 mov a,$68+x 147b: 5d mov x,a 147c: 1f d8 18 jmp ($18d8+x) + 147f: 8b 66 dec $66 1481: 8b 66 dec $66 1483: 8b 65 dec $65 1485: 10 ed bpl $1474 1487: 6f ret + 1488: f8 65 mov x,$65 148a: 9b 9b dec $9b+x 148c: d0 f1 bne $147f @@ -1324,6 +1436,7 @@ 1499: e8 04 mov a,#$04 149b: d4 68 mov $68+x,a 149d: 5f a0 14 jmp $14a0 + 14a0: f8 65 mov x,$65 14a2: f4 82 mov a,$82+x 14a4: 68 19 cmp a,#$19 @@ -1346,21 +1459,23 @@ 14c6: 74 73 cmp a,$73+x 14c8: d0 03 bne $14cd 14ca: 5f 32 17 jmp $1732 + 14cd: 3f f2 15 call $15f2 -14d0: fd mov y,a -14d1: 28 20 and a,#$20 +14d0: fd mov y,a ; get the current note/command +14d1: 28 20 and a,#$20 14d3: c4 67 mov $67,a 14d5: f8 65 mov x,$65 -14d7: ad 80 cmp y,#$80 +14d7: ad 80 cmp y,#$80 ; is it a note? 14d9: 90 3d bcc $1518 -14db: ad f0 cmp y,#$f0 +14db: ad f0 cmp y,#$f0 ; is it a special meaning flag? 14dd: 90 08 bcc $14e7 -14df: dd mov a,y +14df: dd mov a,y ; then it must be a command... 14e0: 28 0f and a,#$0f 14e2: 1c asl a 14e3: 5d mov x,a -14e4: 1f 2f 18 jmp ($182f+x) -14e7: f5 67 05 mov a,$0567+x +14e4: 1f 2f 18 jmp ($182f+x) ; jump to command number position + +14e7: f5 67 05 mov a,$0567+x ; pitch bend 14ea: f0 4c beq $1538 14ec: dd mov a,y 14ed: 28 08 and a,#$08 @@ -1388,10 +1503,10 @@ 1512: a8 00 sbc a,#$00 1514: d4 bf mov $bf+x,a 1516: 2f 20 bra $1538 -1518: f5 67 05 mov a,$0567+x +1518: f5 67 05 mov a,$0567+x ; play the note (check first) 151b: f0 1b beq $1538 151d: dd mov a,y -151e: 28 1f and a,#$1f +151e: 28 1f and a,#$1f ; get the actual note value 1520: fd mov y,a 1521: f8 66 mov x,$66 1523: f4 ae mov a,$ae+x @@ -1410,6 +1525,7 @@ 153f: f8 65 mov x,$65 1541: f4 68 mov a,$68+x 1543: 5f 74 14 jmp $1474 + 1546: f8 65 mov x,$65 1548: d4 a3 mov $a3+x,a 154a: fd mov y,a @@ -1432,6 +1548,7 @@ 156f: 75 2e 02 cmp a,$022e+x 1572: b0 05 bcs $1579 1574: 5f ec 15 jmp $15ec + 1577: e8 40 mov a,#$40 1579: d5 2e 02 mov $022e+x,a 157c: e8 01 mov a,#$01 @@ -1488,22 +1605,28 @@ 15e9: 3f 40 0d call $0d40 15ec: 8f 00 cf mov $cf,#$00 15ef: 5f 7f 14 jmp $147f + 15f2: f8 66 mov x,$66 15f4: e7 72 mov a,($72+x) -15f6: bb 72 inc $72+x +15f6: bb 72 inc $72+x ; update melody (sequence) position pointer 15f8: d0 02 bne $15fc 15fa: bb 73 inc $73+x 15fc: 6f ret + +; vcmd f0 - end of sequence 15fd: f8 65 mov x,$65 15ff: e8 00 mov a,#$00 1601: d4 68 mov $68+x,a 1603: 8b 64 dec $64 1605: 5f 7f 14 jmp $147f + +; vcmd f1 - delta expression 1608: f8 65 mov x,$65 160a: f5 57 05 mov a,$0557+x 160d: 3f 2b 16 call $162b 1610: d5 57 05 mov $0557+x,a 1613: 5f a0 14 jmp $14a0 + 1616: 6d push y 1617: 4d push x 1618: ee pop y @@ -1521,7 +1644,8 @@ 1628: fd mov y,a 1629: 7d mov a,x 162a: 6f ret -162b: 4d push x + +162b: 4d push x ; scale volume - get 2 bytes 162c: fd mov y,a 162d: 6d push y 162e: 3f f2 15 call $15f2 @@ -1543,10 +1667,14 @@ 1648: e8 7f mov a,#$7f 164a: ce pop x 164b: 6f ret + +; vcmd f2 - absolute expression 164c: 3f f2 15 call $15f2 164f: f8 65 mov x,$65 1651: d5 57 05 mov $0557+x,a 1654: 5f a0 14 jmp $14a0 + +; vcmd f3 - mute 1657: f8 65 mov x,$65 1659: f5 6f 05 mov a,$056f+x 165c: 30 15 bmi $1673 @@ -1559,6 +1687,8 @@ 166b: f6 d5 07 mov a,$07d5+y 166e: c4 f2 mov $f2,a 1670: 8f 9f f3 mov $f3,#$9f + +; vcmd f4 - rest 1673: 3f f2 15 call $15f2 1676: f8 65 mov x,$65 1678: d4 a3 mov $a3+x,a @@ -1566,11 +1696,13 @@ 167d: d4 9b mov $9b+x,a 167f: 3f 16 18 call $1816 1682: 5f 7f 14 jmp $147f -1685: 3f f2 15 call $15f2 + +; vcmd f5 - set sound/instrument +1685: 3f f2 15 call $15f2 ; get 1 more byte = read sound number 1688: f8 65 mov x,$65 -168a: d5 5f 05 mov $055f+x,a +168a: d5 5f 05 mov $055f+x,a ; move it onto the stack 168d: f4 82 mov a,$82+x -168f: 68 19 cmp a,#$19 +168f: 68 19 cmp a,#$19 ; $19 = phrase stack max value? 1691: f0 32 beq $16c5 1693: 60 clrc 1694: 94 8a adc a,$8a+x @@ -1598,36 +1730,38 @@ 16c0: f8 65 mov x,$65 16c2: d5 5f 05 mov $055f+x,a 16c5: 5f a0 14 jmp $14a0 + +; vcmd f6 - play phrase 16c8: f8 65 mov x,$65 -16ca: f4 82 mov a,$82+x +16ca: f4 82 mov a,$82+x ; push entry onto stack 16cc: 80 setc 16cd: a8 05 sbc a,#$05 16cf: d4 82 mov $82+x,a -16d1: 60 clrc +16d1: 60 clrc ; set to current player 16d2: 94 8a adc a,$8a+x 16d4: fd mov y,a 16d5: cb 02 mov $02,y 16d7: f8 66 mov x,$66 16d9: f4 72 mov a,$72+x -16db: d6 3b 06 mov $063b+y,a +16db: d6 3b 06 mov $063b+y,a ; LSB of pointer 16de: f4 73 mov a,$73+x -16e0: d6 3c 06 mov $063c+y,a +16e0: d6 3c 06 mov $063c+y,a ; MSB of pointer 16e3: e8 00 mov a,#$00 -16e5: d6 38 06 mov $0638+y,a -16e8: 3f f2 15 call $15f2 +16e5: d6 38 06 mov $0638+y,a ; number of loops +16e8: 3f f2 15 call $15f2 ; start point low byte 16eb: 2d push a -16ec: 3f f4 15 call $15f4 +16ec: 3f f4 15 call $15f4 ; start point high byte 16ef: 2d push a -16f0: 3f f4 15 call $15f4 -16f3: 3f f4 15 call $15f4 -16f6: 3f f4 15 call $15f4 -16f9: 3f f4 15 call $15f4 +16f0: 3f f4 15 call $15f4 ; end point low byte +16f3: 3f f4 15 call $15f4 ; end point high byte +16f6: 3f f4 15 call $15f4 ; number of loops +16f9: 3f f4 15 call $15f4 ; frequency offset LSB low byte 16fc: fd mov y,a -16fd: 3f f4 15 call $15f4 +16fd: 3f f4 15 call $15f4 ; frequency offset LSB high byte 1700: 2d push a 1701: dd mov a,y 1702: 60 clrc -1703: 95 77 05 adc a,$0577+x +1703: 95 77 05 adc a,$0577+x ; adjust frequency 1706: d5 77 05 mov $0577+x,a 1709: ae pop a 170a: 95 78 05 adc a,$0578+x @@ -1636,9 +1770,9 @@ 1712: f5 57 05 mov a,$0557+x 1715: eb 02 mov y,$02 1717: d6 3a 06 mov $063a+y,a -171a: 3f 2b 16 call $162b +171a: 3f 2b 16 call $162b ; scale the volume (read next 2 bytes) 171d: d5 57 05 mov $0557+x,a -1720: eb 02 mov y,$02 +1720: eb 02 mov y,$02 ; initialize instrument pointer 1722: e8 00 mov a,#$00 1724: d6 39 06 mov $0639+y,a 1727: f8 66 mov x,$66 @@ -1647,6 +1781,7 @@ 172c: ae pop a 172d: d4 72 mov $72+x,a 172f: 5f a0 14 jmp $14a0 + 1732: eb 02 mov y,$02 1734: f6 38 06 mov a,$0638+y 1737: bc inc a @@ -1664,6 +1799,7 @@ 1750: f7 00 mov a,($00)+y 1752: d4 73 mov $73+x,a 1754: 5f cd 14 jmp $14cd + 1757: f5 77 05 mov a,$0577+x 175a: 80 setc 175b: 8d 05 mov y,#$05 @@ -1699,6 +1835,8 @@ 1799: 88 05 adc a,#$05 179b: d4 82 mov $82+x,a 179d: 5f a0 14 jmp $14a0 + +; vcmd f7-f8 - set detune 17a0: 28 02 and a,#$02 17a2: c4 67 mov $67,a 17a4: 3f f2 15 call $15f2 @@ -1709,6 +1847,8 @@ 17b0: d4 be mov $be+x,a 17b2: d4 bf mov $bf+x,a 17b4: 5f 38 15 jmp $1538 + +; vcmd f9 - go to loop 17b7: eb 65 mov y,$65 17b9: fc inc y 17ba: f7 70 mov a,($70)+y @@ -1726,6 +1866,8 @@ 17d3: d5 4f 05 mov $054f+x,a 17d6: d5 57 05 mov $0557+x,a 17d9: 5f a0 14 jmp $14a0 + +; vcmd fa - set tempo 17dc: 3f f2 15 call $15f2 17df: c5 00 02 mov $0200,a 17e2: 3f f2 15 call $15f2 @@ -1733,6 +1875,8 @@ 17e8: 3f f2 15 call $15f2 17eb: c5 03 02 mov $0203,a 17ee: 5f a0 14 jmp $14a0 + +; vcmd fb - panning 17f1: e8 00 mov a,#$00 17f3: fd mov y,a 17f4: da 3d movw $3d,ya @@ -1749,11 +1893,15 @@ 1809: 68 ff cmp a,#$ff 180b: f0 ec beq $17f9 180d: 5f a0 14 jmp $14a0 + +; vcmd fc - set no note retrigger? 1810: 8f 01 cf mov $cf,#$01 1813: 5f a0 14 jmp $14a0 + 1816: e8 02 mov a,#$02 1818: d4 68 mov $68+x,a 181a: 6f ret + 181b: 78 80 ad cmp $ad,#$80 181e: 90 08 bcc $1828 1820: 60 clrc @@ -1761,12 +1909,26 @@ 1823: 10 09 bpl $182e 1825: e8 00 mov a,#$00 1827: 6f ret + 1828: 84 ad adc a,$ad 182a: 10 02 bpl $182e 182c: e8 7f mov a,#$7f 182e: 6f ret -182f: dw $15fd,$1608,$164c,$1657,$1673,$1685,$16c8,$17a0,$17a0,$17b7,$17dc,$17f1,$1810 +; vcmd table (f0-fc) +182f: dw $15fd ; f0 - end of melody +1831: dw $1608 ; f1 - delta expression +1833: dw $164c ; f2 - absolute expression +1835: dw $1657 ; f3 - mute +1837: dw $1673 ; f4 - rest +1839: dw $1685 ; f5 - set sound/instrument +183b: dw $16c8 ; f6 - play phrase +183d: dw $17a0 ; f7 - set detune +183f: dw $17a0 ; f8 - set detune +1841: dw $17b7 ; f9 - go to loop +1843: dw $17dc ; fa - set tempo +1845: dw $17f1 ; fb - panning +1847: dw $1810 ; fc - set no note retrigger? 1849: e4 03 mov a,$03 184b: 1c asl a @@ -1779,6 +1941,7 @@ 1855: 2b 03 rol $03 1857: e4 05 mov a,$05 1859: 6f ret + 185a: 8f 00 ce mov $ce,#$00 185d: 8f 00 cf mov $cf,#$00 1860: 8d 1a mov y,#$1a @@ -1838,11 +2001,14 @@ 18d5: 90 a0 bcc $1877 18d7: 6f ret -18d8: dw $147f,$1488,$14a0 +18d8: dw $147f +18da: dw $1488 +18dc: dw $14a0 18de: ba 21 movw ya,$21 18e0: da 0a movw $0a,ya 18e2: 6f ret + 18e3: eb 21 mov y,$21 18e5: fa 1f f6 mov ($f6),($1f) 18e8: 00 nop @@ -1869,6 +2035,7 @@ 190a: 8f b1 f1 mov $f1,#$b1 190d: fa 1f f6 mov ($f6),($1f) 1910: 6f ret + 1911: eb 21 mov y,$21 1913: fa 1f f6 mov ($f6),($1f) 1916: e4 f6 mov a,$f6 @@ -1902,6 +2069,26 @@ 1950: da 0a movw $0a,ya 1952: 3a 0a incw $0a 1954: 6f ret + 1955: 6f ret -1956: dw $0bc2,$0c01,$0c09,$0000,$0000,$0000,$078b,$0c89,$0be7,$0be1,$0bde,$0bd8,$0c3e,$0c49,$18de,$18e3,$1911,$0c93,$0c9d,$1955 \ No newline at end of file +1956: dw $0bc2 +1958: dw $0c01 +195a: dw $0c09 +195c: dw $0000 +195e: dw $0000 +1960: dw $0000 +1962: dw $078b +1964: dw $0c89 +1966: dw $0be7 +1968: dw $0be1 +196a: dw $0bde +196c: dw $0bd8 +196e: dw $0c3e +1970: dw $0c49 +1972: dw $18de +1974: dw $18e3 +1976: dw $1911 +1978: dw $0c93 +197a: dw $0c9d +197c: dw $1955 \ No newline at end of file diff --git a/snes/Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin b/snes/Sculptured Software/Super Star Wars - Return of the Jedi ($0700).bin new file mode 100644 index 0000000000000000000000000000000000000000..59b0b0dac8ecc3325ef0ea82fe69dc580ba6c7e2 GIT binary patch literal 6100 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 Date: Sat, 4 Oct 2025 20:52:43 -0700 Subject: [PATCH 022/116] Rename snes/Chunsoft/Fushigi no Dungeon - Fuurai no Shiren ($05b0).bin to snes/Chunsoft/Later Takenori Yamamori/Fushigi no Dungeon - Fuurai no Shiren ($05b0).bin --- ...ushigi no Dungeon - Fuurai no Shiren ($05b0).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/Chunsoft/{ => Later Takenori Yamamori}/Fushigi no Dungeon - Fuurai no Shiren ($05b0).bin (100%) diff --git a/snes/Chunsoft/Fushigi no Dungeon - Fuurai no Shiren ($05b0).bin b/snes/Chunsoft/Later Takenori Yamamori/Fushigi no Dungeon - Fuurai no Shiren ($05b0).bin similarity index 100% rename from snes/Chunsoft/Fushigi no Dungeon - Fuurai no Shiren ($05b0).bin rename to snes/Chunsoft/Later Takenori Yamamori/Fushigi no Dungeon - Fuurai no Shiren ($05b0).bin From 9402bebdf75f674cdb1988c98534c443e0fe0340 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:53:08 -0700 Subject: [PATCH 023/116] Rename snes/Chunsoft/Fushigi no Dungeon - Fuurai no Shiren.s to snes/Chunsoft/Later Takenori Yamamori/Fushigi no Dungeon - Fuurai no Shiren.s --- .../Fushigi no Dungeon - Fuurai no Shiren.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename snes/Chunsoft/{ => Later Takenori Yamamori}/Fushigi no Dungeon - Fuurai no Shiren.s (99%) diff --git a/snes/Chunsoft/Fushigi no Dungeon - Fuurai no Shiren.s b/snes/Chunsoft/Later Takenori Yamamori/Fushigi no Dungeon - Fuurai no Shiren.s similarity index 99% rename from snes/Chunsoft/Fushigi no Dungeon - Fuurai no Shiren.s rename to snes/Chunsoft/Later Takenori Yamamori/Fushigi no Dungeon - Fuurai no Shiren.s index 92b7f3fa..d15d79aa 100644 --- a/snes/Chunsoft/Fushigi no Dungeon - Fuurai no Shiren.s +++ b/snes/Chunsoft/Later Takenori Yamamori/Fushigi no Dungeon - Fuurai no Shiren.s @@ -980,4 +980,4 @@ SPC_0c94: .db $44,$44,$44,$44,$C3,$CC,$CC,$CC .db $CC,$CC,$CC,$CC,$CC,$C2,$77,$66 .db $55,$44,$33,$22,$11,$00,$C3,$FF - .db $EE,$DD,$CC,$BB,$AA,$99,$00 \ No newline at end of file + .db $EE,$DD,$CC,$BB,$AA,$99,$00 From 1bc0e6b5ff6529b9576dc12d09703314fdddfd8a Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:54:18 -0700 Subject: [PATCH 024/116] Add files via upload Added Super Bases Loaded 3 disassembly. Appears to use same VCMDs as Dragon Ball Z: Hyper Dimension. --- ...es Loaded 3 - License to Steal ($0800).bin | Bin 0 -> 4357 bytes .../Super Bases Loaded 3 - License to Steal.s | 2110 +++++++++++++++++ 2 files changed, 2110 insertions(+) create mode 100644 snes/NSPC/Tose/Super Bases Loaded 3 - License to Steal ($0800).bin create mode 100644 snes/NSPC/Tose/Super Bases Loaded 3 - License to Steal.s diff --git a/snes/NSPC/Tose/Super Bases Loaded 3 - License to Steal ($0800).bin b/snes/NSPC/Tose/Super Bases Loaded 3 - License to Steal ($0800).bin new file mode 100644 index 0000000000000000000000000000000000000000..ea84ea04b171d963bb315f1a5bf13d540ebfc8fb GIT binary patch literal 4357 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 literal 0 HcmV?d00001 diff --git a/snes/NSPC/Tose/Super Bases Loaded 3 - License to Steal.s b/snes/NSPC/Tose/Super Bases Loaded 3 - License to Steal.s new file mode 100644 index 00000000..a1a8dd55 --- /dev/null +++ b/snes/NSPC/Tose/Super Bases Loaded 3 - License to Steal.s @@ -0,0 +1,2110 @@ +0800: 20 clrp +0801: cd 7f mov x,#$7f +0803: bd mov sp,x +0804: e8 00 mov a,#$00 +0806: cd ef mov x,#$ef +0808: d4 00 mov $00+x,a +080a: 1d dec x +080b: c8 ff cmp x,#$ff +080d: d0 f9 bne $0808 +080f: e8 00 mov a,#$00 +0811: cd 00 mov x,#$00 +0813: d5 00 01 mov $0100+x,a +0816: d5 00 02 mov $0200+x,a +0819: d5 00 03 mov $0300+x,a +081c: d5 00 04 mov $0400+x,a +081f: d5 00 05 mov $0500+x,a +0822: d5 00 06 mov $0600+x,a +0825: d5 00 07 mov $0700+x,a +0828: 1d dec x +0829: d0 e8 bne $0813 +082b: e8 4f mov a,#$4f +082d: c4 42 mov $42,a +082f: e8 00 mov a,#$00 +0831: c5 f4 00 mov $00f4,a +0834: c5 f5 00 mov $00f5,a +0837: c5 f6 00 mov $00f6,a +083a: c5 f7 00 mov $00f7,a +083d: e8 30 mov a,#$30 +083f: c5 f1 00 mov $00f1,a +0842: e8 10 mov a,#$10 +0844: c5 fa 00 mov $00fa,a +0847: e8 01 mov a,#$01 +0849: c5 f1 00 mov $00f1,a +084c: c4 18 mov $18,a +084e: 8d 6c mov y,#$6c +0850: e8 a0 mov a,#$a0 +0852: 3f 4f 0f call $0f4f +0855: e8 20 mov a,#$20 +0857: 3f 4f 0f call $0f4f +085a: 3f b3 0f call $0fb3 +085d: 8d 5c mov y,#$5c +085f: e8 ff mov a,#$ff +0861: 3f 4f 0f call $0f4f +0864: 8d 3d mov y,#$3d +0866: e8 00 mov a,#$00 +0868: 3f 4f 0f call $0f4f +086b: e8 00 mov a,#$00 +086d: 8d 2d mov y,#$2d +086f: 3f 4f 0f call $0f4f +0872: 8d 5d mov y,#$5d +0874: e8 1b mov a,#$1b +0876: c4 20 mov $20,a +0878: 3f 4f 0f call $0f4f +087b: 8f 00 21 mov $21,#$00 +087e: 8f 1c 22 mov $22,#$1c +0881: 8f 00 23 mov $23,#$00 +0884: 8f 1e 24 mov $24,#$1e +0887: 8f 00 25 mov $25,#$00 +088a: 8f 1f 26 mov $26,#$1f +088d: 3f fb 13 call $13fb +0890: 8f ff 5d mov $5d,#$ff +0893: e5 fd 00 mov a,$00fd +0896: d0 05 bne $089d +0898: 3f 91 16 call $1691 +089b: 2f f6 bra $0893 +089d: c4 1a mov $1a,a +089f: e4 54 mov a,$54 +08a1: f0 34 beq $08d7 +08a3: 80 setc +08a4: a4 1a sbc a,$1a +08a6: c4 54 mov $54,a +08a8: f0 05 beq $08af +08aa: b0 2b bcs $08d7 +08ac: 8f 00 54 mov $54,#$00 +08af: 8d 6c mov y,#$6c +08b1: 3f 56 0f call $0f56 +08b4: 28 df and a,#$df +08b6: 3f 4f 0f call $0f4f +08b9: 8d 0d mov y,#$0d +08bb: e4 5a mov a,$5a +08bd: 3f 4f 0f call $0f4f +08c0: 8d 4d mov y,#$4d +08c2: e4 3b mov a,$3b +08c4: 48 ff eor a,#$ff +08c6: 24 5c and a,$5c +08c8: 3f 4f 0f call $0f4f +08cb: 8d 7d mov y,#$7d +08cd: 3f 56 0f call $0f56 +08d0: 1c asl a +08d1: 1c asl a +08d2: 1c asl a +08d3: 1c asl a +08d4: bc inc a +08d5: c4 55 mov $55,a +08d7: e4 55 mov a,$55 +08d9: f0 1a beq $08f5 +08db: 80 setc +08dc: a4 1a sbc a,$1a +08de: c4 55 mov $55,a +08e0: f0 05 beq $08e7 +08e2: b0 11 bcs $08f5 +08e4: 8f 00 55 mov $55,#$00 +08e7: 8d 2c mov y,#$2c +08e9: e4 57 mov a,$57 +08eb: 3f 4f 0f call $0f4f +08ee: 8d 3c mov y,#$3c +08f0: e4 57 mov a,$57 +08f2: 3f 4f 0f call $0f4f +08f5: e8 00 mov a,#$00 +08f7: c4 27 mov $27,a +08f9: c4 28 mov $28,a +08fb: c4 2c mov $2c,a +08fd: c4 2d mov $2d,a +08ff: c4 34 mov $34,a +0901: c4 35 mov $35,a +0903: c4 36 mov $36,a +0905: c4 37 mov $37,a +0907: c4 38 mov $38,a +0909: c4 39 mov $39,a +090b: c4 4b mov $4b,a +090d: c4 4a mov $4a,a +090f: e4 46 mov a,$46 +0911: c4 47 mov $47,a +0913: e5 80 01 mov a,$0180 +0916: f0 06 beq $091e +0918: 8c 80 01 dec $0180 +091b: 3f fc 14 call $14fc +091e: cd 00 mov x,#$00 +0920: 0b 34 asl $34 +0922: 2b 35 rol $35 +0924: 0b 36 asl $36 +0926: 2b 37 rol $37 +0928: 0b 38 asl $38 +092a: 2b 39 rol $39 +092c: 8f 00 2e mov $2e,#$00 +092f: 8f 00 2f mov $2f,#$00 +0932: 8f 00 30 mov $30,#$00 +0935: 8f 00 31 mov $31,#$00 +0938: c8 08 cmp x,#$08 +093a: b0 0c bcs $0948 +093c: e4 47 mov a,$47 +093e: d5 00 03 mov $0300+x,a +0941: f5 08 02 mov a,$0208+x +0944: f0 02 beq $0948 +0946: d4 62 mov $62+x,a +0948: f5 00 02 mov a,$0200+x +094b: f0 44 beq $0991 +094d: 68 03 cmp a,#$03 +094f: d0 09 bne $095a +0951: e8 01 mov a,#$01 +0953: c4 31 mov $31,a +0955: d5 00 02 mov $0200+x,a +0958: 2f 37 bra $0991 +095a: f5 00 02 mov a,$0200+x +095d: 68 02 cmp a,#$02 +095f: d0 1a bne $097b +0961: 8f 01 31 mov $31,#$01 +0964: e8 00 mov a,#$00 +0966: d5 00 02 mov $0200+x,a +0969: c8 08 cmp x,#$08 +096b: 90 24 bcc $0991 +096d: f5 d5 0e mov a,$0ed5+x +0970: 48 ff eor a,#$ff +0972: 24 3b and a,$3b +0974: c4 3b mov $3b,a +0976: 3f 06 11 call $1106 +0979: 2f 16 bra $0991 +097b: c8 08 cmp x,#$08 +097d: b0 04 bcs $0983 +097f: e4 49 mov a,$49 +0981: d0 0e bne $0991 +0983: c8 08 cmp x,#$08 +0985: 90 04 bcc $098b +0987: e4 3a mov a,$3a +0989: d0 06 bne $0991 +098b: 3f b3 09 call $09b3 +098e: 3f 9b 0d call $0d9b +0991: 3f 7a 0e call $0e7a +0994: ab 27 inc $27 +0996: e4 28 mov a,$28 +0998: 60 clrc +0999: 88 10 adc a,#$10 +099b: 28 7f and a,#$7f +099d: c4 28 mov $28,a +099f: 3d inc x +09a0: c8 10 cmp x,#$10 +09a2: b0 03 bcs $09a7 +09a4: 5f 20 09 jmp $0920 + +09a7: 8f 00 3a mov $3a,#$00 +09aa: 3f ae 0d call $0dae +09ad: 3f 0f 0d call $0d0f +09b0: 5f 98 08 jmp $0898 + +09b3: f5 00 03 mov a,$0300+x +09b6: eb 1a mov y,$1a +09b8: cf mul ya +09b9: da 1b movw $1b,ya +09bb: f4 72 mov a,$72+x +09bd: 60 clrc +09be: 84 1b adc a,$1b +09c0: d4 72 mov $72+x,a +09c2: e8 00 mov a,#$00 +09c4: 84 1c adc a,$1c +09c6: f0 13 beq $09db +09c8: c4 1f mov $1f,a +09ca: 3f df 09 call $09df +09cd: 3f bb 0b call $0bbb +09d0: f4 92 mov a,$92+x +09d2: f0 0a beq $09de +09d4: e4 1f mov a,$1f +09d6: f0 03 beq $09db +09d8: 3f 4a 0c call $0c4a +09db: 3f eb 0c call $0ceb +09de: 6f ret + +09df: f4 82 mov a,$82+x +09e1: f0 2b beq $0a0e +09e3: 80 setc +09e4: a4 1f sbc a,$1f +09e6: d4 82 mov $82+x,a +09e8: f0 24 beq $0a0e +09ea: 90 22 bcc $0a0e +09ec: f5 e0 02 mov a,$02e0+x +09ef: d0 1c bne $0a0d +09f1: f5 f0 02 mov a,$02f0+x +09f4: d0 17 bne $0a0d +09f6: f4 92 mov a,$92+x +09f8: f0 11 beq $0a0b +09fa: 80 setc +09fb: a4 1f sbc a,$1f +09fd: f0 02 beq $0a01 +09ff: b0 0a bcs $0a0b +0a01: e8 c9 mov a,#$c9 +0a03: d5 60 03 mov $0360+x,a +0a06: 8f 01 31 mov $31,#$01 +0a09: e8 00 mov a,#$00 +0a0b: d4 92 mov $92+x,a +0a0d: 6f ret + +0a0e: 8f 00 1f mov $1f,#$00 +0a11: c8 08 cmp x,#$08 +0a13: b0 09 bcs $0a1e +0a15: f5 08 02 mov a,$0208+x +0a18: d0 04 bne $0a1e +0a1a: e8 00 mov a,#$00 +0a1c: d4 62 mov $62+x,a +0a1e: f5 20 02 mov a,$0220+x +0a21: c4 29 mov $29,a +0a23: f5 30 02 mov a,$0230+x +0a26: c4 2a mov $2a,a + +0a28: 3f 5d 0f call $0f5d +0a2b: c4 19 mov $19,a +0a2d: 68 00 cmp a,#$00 +0a2f: f0 0d beq $0a3e ; end repeat/return +0a31: 68 80 cmp a,#$80 +0a33: 90 37 bcc $0a6c ; note params +0a35: 68 e0 cmp a,#$e0 +0a37: 90 58 bcc $0a91 ; note +0a39: 3f 16 11 call $1116 ; dispatch vcmd +0a3c: 2f ea bra $0a28 + +; vcmd 00 - end repeat/return +0a3e: f5 c0 02 mov a,$02c0+x +0a41: d0 13 bne $0a56 +0a43: c8 08 cmp x,#$08 +0a45: b0 06 bcs $0a4d +0a47: 8f 01 3a mov $3a,#$01 +0a4a: 5f 6b 15 jmp $156b + +0a4d: e8 02 mov a,#$02 +0a4f: d5 00 02 mov $0200+x,a +0a52: 8f 01 31 mov $31,#$01 +0a55: 6f ret + +0a56: bc inc a +0a57: f0 09 beq $0a62 +0a59: f5 c0 02 mov a,$02c0+x +0a5c: 9c dec a +0a5d: d5 c0 02 mov $02c0+x,a +0a60: f0 05 beq $0a67 +0a62: 3f 51 13 call $1351 +0a65: 2f c1 bra $0a28 +0a67: 3f 28 13 call $1328 +0a6a: 2f bc bra $0a28 + +; vcmds 01-7f - note params +0a6c: d5 20 03 mov $0320+x,a +0a6f: 3f 5d 0f call $0f5d +0a72: c4 19 mov $19,a +0a74: 68 80 cmp a,#$80 +0a76: b0 bd bcs $0a35 +0a78: 2d push a +0a79: 28 0f and a,#$0f +0a7b: fd mov y,a +0a7c: f6 37 0f mov a,$0f37+y +0a7f: d5 40 03 mov $0340+x,a ; set per-note vol from low nybble +0a82: ae pop a +0a83: 5c lsr a +0a84: 5c lsr a +0a85: 5c lsr a +0a86: 5c lsr a +0a87: fd mov y,a +0a88: f6 47 0f mov a,$0f47+y +0a8b: d5 30 03 mov $0330+x,a ; set dur% from high nybble +0a8e: 5f 28 0a jmp $0a28 + +0a91: 68 ca cmp a,#$ca +0a93: 90 0f bcc $0aa4 +; vcmds ca-df - percussion note +0a95: d5 60 03 mov $0360+x,a +0a98: a8 ca sbc a,#$ca +0a9a: 60 clrc +0a9b: 85 40 00 adc a,$0040 +0a9e: 3f 75 11 call $1175 +0aa1: 5f 51 0b jmp $0b51 + +0aa4: 2d push a +0aa5: f5 c0 03 mov a,$03c0+x +0aa8: 3f 75 11 call $1175 +0aab: ae pop a +0aac: 68 c8 cmp a,#$c8 +0aae: d0 03 bne $0ab3 ; not a tie +; vcmd c8 - tie +0ab0: 5f 44 0b jmp $0b44 + +0ab3: 68 c9 cmp a,#$c9 +0ab5: d0 1c bne $0ad3 +; vcmd c9 - rest +0ab7: f5 e0 02 mov a,$02e0+x +0aba: f0 07 beq $0ac3 +0abc: e8 c8 mov a,#$c8 +0abe: c4 19 mov $19,a +0ac0: 5f 44 0b jmp $0b44 + + +0ac3: e8 c9 mov a,#$c9 +0ac5: d5 60 03 mov $0360+x,a +0ac8: 8f 01 31 mov $31,#$01 +0acb: e8 00 mov a,#$00 +0acd: d5 f0 02 mov $02f0+x,a +0ad0: 5f 81 0b jmp $0b81 + +; vcmds 80-c7 - note (opcode in A) +0ad3: d5 60 03 mov $0360+x,a +0ad6: d5 80 03 mov $0380+x,a +0ad9: e8 00 mov a,#$00 +0adb: d5 50 03 mov $0350+x,a +0ade: d5 70 03 mov $0370+x,a +0ae1: f5 f0 04 mov a,$04f0+x +0ae4: f0 32 beq $0b18 +0ae6: f5 00 05 mov a,$0500+x +0ae9: d4 a2 mov $a2+x,a +0aeb: f5 10 05 mov a,$0510+x +0aee: d4 b2 mov $b2+x,a +0af0: c4 00 mov $00,a +0af2: f5 f0 04 mov a,$04f0+x +0af5: 9c dec a +0af6: d0 0c bne $0b04 +0af8: f5 60 03 mov a,$0360+x +0afb: 60 clrc +0afc: 95 20 05 adc a,$0520+x +0aff: 3f 93 14 call $1493 +0b02: 2f 18 bra $0b1c +0b04: f5 60 03 mov a,$0360+x +0b07: 2d push a +0b08: 60 clrc +0b09: 95 20 05 adc a,$0520+x +0b0c: d5 60 03 mov $0360+x,a +0b0f: d5 80 03 mov $0380+x,a +0b12: ae pop a +0b13: 3f 93 14 call $1493 +0b16: 2f 04 bra $0b1c +0b18: d4 a2 mov $a2+x,a +0b1a: d4 b2 mov $b2+x,a +0b1c: f5 a0 05 mov a,$05a0+x +0b1f: f0 0d beq $0b2e +0b21: e8 00 mov a,#$00 +0b23: d5 b0 05 mov $05b0+x,a +0b26: d5 80 05 mov $0580+x,a +0b29: d5 70 05 mov $0570+x,a +0b2c: 2f 0b bra $0b39 +0b2e: d5 70 05 mov $0570+x,a +0b31: f5 90 05 mov a,$0590+x +0b34: d5 80 05 mov $0580+x,a +0b37: e8 00 mov a,#$00 +0b39: d4 d2 mov $d2+x,a +0b3b: d5 50 05 mov $0550+x,a +0b3e: d5 e0 05 mov $05e0+x,a +0b41: d5 f0 05 mov $05f0+x,a +0b44: 8d 00 mov y,#$00 +0b46: f7 29 mov a,($29)+y +0b48: 68 f9 cmp a,#$f9 +0b4a: d0 05 bne $0b51 +0b4c: 3a 29 incw $29 +0b4e: 3f 84 14 call $1484 +0b51: e8 00 mov a,#$00 +0b53: d5 e0 02 mov $02e0+x,a +0b56: 8d 00 mov y,#$00 +0b58: f7 29 mov a,($29)+y +0b5a: f0 25 beq $0b81 +0b5c: 10 1a bpl $0b78 +0b5e: 68 c8 cmp a,#$c8 +0b60: 90 1f bcc $0b81 +0b62: f0 18 beq $0b7c +0b64: 68 e0 cmp a,#$e0 +0b66: 90 19 bcc $0b81 +0b68: 80 setc +0b69: a8 e0 sbc a,#$e0 +0b6b: cb 00 mov $00,y +0b6d: fd mov y,a +0b6e: f6 17 0f mov a,$0f17+y +0b71: 60 clrc +0b72: 84 00 adc a,$00 +0b74: fd mov y,a +0b75: 5f 58 0b jmp $0b58 + +0b78: fc inc y +0b79: 5f 58 0b jmp $0b58 + +0b7c: e8 01 mov a,#$01 +0b7e: d5 e0 02 mov $02e0+x,a +0b81: f5 20 03 mov a,$0320+x +0b84: d4 82 mov $82+x,a +0b86: fd mov y,a +0b87: f5 30 03 mov a,$0330+x +0b8a: cf mul ya +0b8b: dd mov a,y +0b8c: d0 01 bne $0b8f +0b8e: bc inc a +0b8f: d4 92 mov $92+x,a +0b91: e4 19 mov a,$19 +0b93: 68 c9 cmp a,#$c9 +0b95: f0 19 beq $0bb0 +0b97: 68 c8 cmp a,#$c8 +0b99: f0 15 beq $0bb0 +0b9b: f5 f0 02 mov a,$02f0+x +0b9e: f0 07 beq $0ba7 +0ba0: 30 08 bmi $0baa +0ba2: e8 ff mov a,#$ff +0ba4: d5 f0 02 mov $02f0+x,a +0ba7: 8f 01 30 mov $30,#$01 +0baa: 8f 01 2e mov $2e,#$01 +0bad: 8f 01 2f mov $2f,#$01 +0bb0: e4 29 mov a,$29 +0bb2: d5 20 02 mov $0220+x,a +0bb5: e4 2a mov a,$2a +0bb7: d5 30 02 mov $0230+x,a +0bba: 6f ret + +0bbb: f4 c2 mov a,$c2+x +0bbd: f0 27 beq $0be6 +0bbf: 8f 01 2e mov $2e,#$01 +0bc2: 9b c2 dec $c2+x +0bc4: d0 0d bne $0bd3 +0bc6: e8 00 mov a,#$00 +0bc8: d5 30 04 mov $0430+x,a +0bcb: f5 c0 04 mov a,$04c0+x +0bce: d5 40 04 mov $0440+x,a +0bd1: 2f 13 bra $0be6 +0bd3: f5 d0 04 mov a,$04d0+x +0bd6: 60 clrc +0bd7: 95 30 04 adc a,$0430+x +0bda: d5 30 04 mov $0430+x,a +0bdd: f5 e0 04 mov a,$04e0+x +0be0: 95 40 04 adc a,$0440+x +0be3: d5 40 04 mov $0440+x,a +0be6: f5 00 06 mov a,$0600+x +0be9: f0 27 beq $0c12 +0beb: 8f 01 2e mov $2e,#$01 +0bee: 9c dec a +0bef: d5 00 06 mov $0600+x,a +0bf2: d0 0b bne $0bff +0bf4: d5 70 04 mov $0470+x,a +0bf7: f5 10 06 mov a,$0610+x +0bfa: d5 80 04 mov $0480+x,a +0bfd: 2f 13 bra $0c12 +0bff: f5 20 06 mov a,$0620+x +0c02: 60 clrc +0c03: 95 70 04 adc a,$0470+x +0c06: d5 70 04 mov $0470+x,a +0c09: f5 30 06 mov a,$0630+x +0c0c: 95 80 04 adc a,$0480+x +0c0f: d5 80 04 mov $0480+x,a +0c12: f5 40 06 mov a,$0640+x +0c15: f0 32 beq $0c49 +0c17: 9c dec a +0c18: d5 40 06 mov $0640+x,a +0c1b: d0 12 bne $0c2f +0c1d: d5 10 03 mov $0310+x,a +0c20: f5 50 06 mov a,$0650+x +0c23: d5 00 03 mov $0300+x,a +0c26: c8 08 cmp x,#$08 +0c28: b0 1f bcs $0c49 +0c2a: c5 46 00 mov $0046,a +0c2d: 2f 1a bra $0c49 +0c2f: f5 60 06 mov a,$0660+x +0c32: 60 clrc +0c33: 95 10 03 adc a,$0310+x +0c36: d5 10 03 mov $0310+x,a +0c39: f5 70 06 mov a,$0670+x +0c3c: 95 00 03 adc a,$0300+x +0c3f: d5 00 03 mov $0300+x,a +0c42: c8 08 cmp x,#$08 +0c44: b0 03 bcs $0c49 +0c46: c5 46 00 mov $0046,a +0c49: 6f ret + +0c4a: f4 a2 mov a,$a2+x +0c4c: f0 04 beq $0c52 +0c4e: 9b a2 dec $a2+x +0c50: 2f 2b bra $0c7d +0c52: f4 b2 mov a,$b2+x +0c54: f0 27 beq $0c7d +0c56: 8f 01 2f mov $2f,#$01 +0c59: 9b b2 dec $b2+x +0c5b: d0 0d bne $0c6a +0c5d: f5 90 04 mov a,$0490+x +0c60: d5 60 03 mov $0360+x,a +0c63: e8 00 mov a,#$00 +0c65: d5 50 03 mov $0350+x,a +0c68: 2f 13 bra $0c7d +0c6a: f5 a0 04 mov a,$04a0+x +0c6d: 60 clrc +0c6e: 95 70 03 adc a,$0370+x +0c71: d5 70 03 mov $0370+x,a +0c74: f5 b0 04 mov a,$04b0+x +0c77: 95 80 03 adc a,$0380+x +0c7a: d5 80 03 mov $0380+x,a +0c7d: f5 30 05 mov a,$0530+x +0c80: f0 68 beq $0cea +0c82: f5 50 05 mov a,$0550+x +0c85: 75 40 05 cmp a,$0540+x +0c88: b0 06 bcs $0c90 +0c8a: bc inc a +0c8b: d5 50 05 mov $0550+x,a +0c8e: 2f 5a bra $0cea +0c90: f5 b0 05 mov a,$05b0+x +0c93: 75 a0 05 cmp a,$05a0+x +0c96: b0 17 bcs $0caf +0c98: bc inc a +0c99: d5 b0 05 mov $05b0+x,a +0c9c: f5 c0 05 mov a,$05c0+x +0c9f: 60 clrc +0ca0: 95 70 05 adc a,$0570+x +0ca3: d5 70 05 mov $0570+x,a +0ca6: f5 d0 05 mov a,$05d0+x +0ca9: 95 80 05 adc a,$0580+x +0cac: d5 80 05 mov $0580+x,a +0caf: f4 d2 mov a,$d2+x +0cb1: 60 clrc +0cb2: 95 60 05 adc a,$0560+x +0cb5: d4 d2 mov $d2+x,a +0cb7: f5 30 05 mov a,$0530+x +0cba: 68 01 cmp a,#$01 +0cbc: d0 16 bne $0cd4 +0cbe: f4 d2 mov a,$d2+x +0cc0: 1c asl a +0cc1: 1c asl a +0cc2: 90 02 bcc $0cc6 +0cc4: 48 ff eor a,#$ff +0cc6: fd mov y,a +0cc7: f5 80 05 mov a,$0580+x +0cca: cf mul ya +0ccb: dd mov a,y +0ccc: d5 e0 05 mov $05e0+x,a +0ccf: 8f 01 2f mov $2f,#$01 +0cd2: 2f 16 bra $0cea +0cd4: f4 d2 mov a,$d2+x +0cd6: 1c asl a +0cd7: 90 02 bcc $0cdb +0cd9: 48 ff eor a,#$ff +0cdb: fd mov y,a +0cdc: f5 80 05 mov a,$0580+x +0cdf: cf mul ya +0ce0: dd mov a,y +0ce1: 48 ff eor a,#$ff +0ce3: bc inc a +0ce4: d5 f0 05 mov $05f0+x,a +0ce7: 8f 01 2e mov $2e,#$01 +0cea: 6f ret + +0ceb: f4 a2 mov a,$a2+x +0ced: d0 1f bne $0d0e +0cef: f4 b2 mov a,$b2+x +0cf1: f0 1b beq $0d0e +0cf3: 8f 01 2f mov $2f,#$01 +0cf6: f5 b0 04 mov a,$04b0+x +0cf9: fd mov y,a +0cfa: f5 a0 04 mov a,$04a0+x +0cfd: 3f 8b 0f call $0f8b +0d00: 60 clrc +0d01: 95 70 03 adc a,$0370+x +0d04: d5 50 03 mov $0350+x,a +0d07: dd mov a,y +0d08: 95 80 03 adc a,$0380+x +0d0b: d5 60 03 mov $0360+x,a +0d0e: 6f ret + +0d0f: e8 20 mov a,#$20 +0d11: eb 1a mov y,$1a +0d13: cf mul ya +0d14: da 00 movw $00,ya +0d16: e4 1d mov a,$1d +0d18: 60 clrc +0d19: 84 00 adc a,$00 +0d1b: c4 1d mov $1d,a +0d1d: e8 00 mov a,#$00 +0d1f: 84 01 adc a,$01 +0d21: f0 0a beq $0d2d +0d23: e4 49 mov a,$49 +0d25: d0 06 bne $0d2d +0d27: 3f 2e 0d call $0d2e +0d2a: 3f 64 0d call $0d64 +0d2d: 6f ret + +0d2e: e4 5e mov a,$5e +0d30: f0 18 beq $0d4a +0d32: e4 54 mov a,$54 +0d34: 04 55 or a,$55 +0d36: d0 02 bne $0d3a +0d38: ab 55 inc $55 +0d3a: 8b 5e dec $5e +0d3c: d0 06 bne $0d44 +0d3e: eb 5f mov y,$5f +0d40: da 56 movw $56,ya +0d42: 2f 06 bra $0d4a +0d44: ba 60 movw ya,$60 +0d46: 7a 56 addw ya,$56 +0d48: da 56 movw $56,ya +0d4a: e4 4c mov a,$4c +0d4c: f0 15 beq $0d63 +0d4e: 8f ff 33 mov $33,#$ff +0d51: 8b 4c dec $4c +0d53: d0 08 bne $0d5d +0d55: e8 00 mov a,#$00 +0d57: eb 4d mov y,$4d +0d59: da 41 movw $41,ya +0d5b: 2f 06 bra $0d63 +0d5d: ba 4e movw ya,$4e +0d5f: 7a 41 addw ya,$41 +0d61: da 41 movw $41,ya +0d63: 6f ret + +0d64: eb 51 mov y,$51 +0d66: f0 15 beq $0d7d +0d68: 8f ff 33 mov $33,#$ff +0d6b: dc dec y +0d6c: d0 10 bne $0d7e +0d6e: e4 50 mov a,$50 +0d70: 60 clrc +0d71: 88 01 adc a,#$01 +0d73: c4 50 mov $50,a +0d75: 90 06 bcc $0d7d +0d77: 8f 00 50 mov $50,#$00 +0d7a: 8f 00 51 mov $51,#$00 +0d7d: 6f ret + +0d7e: e4 50 mov a,$50 +0d80: 80 setc +0d81: a8 01 sbc a,#$01 +0d83: c4 50 mov $50,a +0d85: f0 02 beq $0d89 +0d87: b0 11 bcs $0d9a +0d89: 8f 01 50 mov $50,#$01 +0d8c: 8f 00 51 mov $51,#$00 +0d8f: e8 80 mov a,#$80 +0d91: c5 10 02 mov $0210,a +0d94: dc dec y +0d95: d0 03 bne $0d9a +0d97: 3f 01 18 call $1801 +0d9a: 6f ret + +0d9b: f5 c0 06 mov a,$06c0+x +0d9e: f0 0d beq $0dad +0da0: fb 62 mov y,$62+x +0da2: d0 09 bne $0dad +0da4: 28 1f and a,#$1f +0da6: c4 4b mov $4b,a +0da8: f5 d5 0e mov a,$0ed5+x +0dab: c4 4a mov $4a,a +0dad: 6f ret + +0dae: e4 2d mov a,$2d +0db0: 8d 5c mov y,#$5c +0db2: 3f 4f 0f call $0f4f +0db5: e4 4a mov a,$4a +0db7: 8d 3d mov y,#$3d +0db9: 3f 4f 0f call $0f4f +0dbc: e4 4b mov a,$4b +0dbe: f0 0c beq $0dcc +0dc0: 8d 6c mov y,#$6c +0dc2: 3f 56 0f call $0f56 +0dc5: 28 e0 and a,#$e0 +0dc7: 04 4b or a,$4b +0dc9: 3f 4f 0f call $0f4f +0dcc: cd 00 mov x,#$00 +0dce: d8 28 mov $28,x +0dd0: 0b 36 asl $36 +0dd2: 2b 37 rol $37 +0dd4: 90 5a bcc $0e30 +0dd6: f5 60 03 mov a,$0360+x +0dd9: 68 ca cmp a,#$ca +0ddb: 90 07 bcc $0de4 +0ddd: 8f 00 0c mov $0c,#$00 +0de0: e8 a4 mov a,#$a4 +0de2: 2f 36 bra $0e1a +0de4: f5 50 03 mov a,$0350+x +0de7: c4 0c mov $0c,a +0de9: f5 60 03 mov a,$0360+x +0dec: c4 0d mov $0d,a +0dee: 8d 00 mov y,#$00 +0df0: f5 90 03 mov a,$0390+x +0df3: 7a 0c addw ya,$0c +0df5: da 0c movw $0c,ya +0df7: 8d 00 mov y,#$00 +0df9: f4 d2 mov a,$d2+x +0dfb: 30 07 bmi $0e04 +0dfd: f5 e0 05 mov a,$05e0+x +0e00: 7a 0c addw ya,$0c +0e02: 2f 09 bra $0e0d +0e04: f5 e0 05 mov a,$05e0+x +0e07: da 00 movw $00,ya +0e09: ba 0c movw ya,$0c +0e0b: 9a 00 subw ya,$00 +0e0d: c4 0c mov $0c,a +0e0f: dd mov a,y +0e10: c8 08 cmp x,#$08 +0e12: b0 02 bcs $0e16 +0e14: 84 43 adc a,$43 +0e16: 60 clrc +0e17: 95 50 04 adc a,$0450+x +0e1a: c4 0d mov $0d,a +0e1c: 3f bf 0f call $0fbf +0e1f: eb 28 mov y,$28 +0e21: fc inc y +0e22: fc inc y +0e23: f5 a0 03 mov a,$03a0+x +0e26: 3f 4f 0f call $0f4f +0e29: fc inc y +0e2a: f5 b0 03 mov a,$03b0+x +0e2d: 3f 4f 0f call $0f4f +0e30: 0b 34 asl $34 +0e32: 2b 35 rol $35 +0e34: 90 03 bcc $0e39 +0e36: 3f 37 10 call $1037 +0e39: 0b 38 asl $38 +0e3b: 2b 39 rol $39 +0e3d: 90 22 bcc $0e61 +0e3f: e4 28 mov a,$28 +0e41: fd mov y,a +0e42: fc inc y +0e43: fc inc y +0e44: fc inc y +0e45: fc inc y +0e46: f5 d0 03 mov a,$03d0+x +0e49: 3f 4f 0f call $0f4f +0e4c: fc inc y +0e4d: f5 e0 03 mov a,$03e0+x +0e50: 3f 4f 0f call $0f4f +0e53: fc inc y +0e54: f5 f0 03 mov a,$03f0+x +0e57: 3f 4f 0f call $0f4f +0e5a: fc inc y +0e5b: f5 00 04 mov a,$0400+x +0e5e: 3f 4f 0f call $0f4f +0e61: e4 28 mov a,$28 +0e63: 60 clrc +0e64: 88 10 adc a,#$10 +0e66: 28 7f and a,#$7f +0e68: c4 28 mov $28,a +0e6a: 3d inc x +0e6b: c8 10 cmp x,#$10 +0e6d: b0 03 bcs $0e72 +0e6f: 5f d0 0d jmp $0dd0 + +0e72: e4 2c mov a,$2c +0e74: 8d 4c mov y,#$4c +0e76: 3f 4f 0f call $0f4f +0e79: 6f ret + +0e7a: c8 08 cmp x,#$08 +0e7c: b0 0f bcs $0e8d +0e7e: f5 d5 0e mov a,$0ed5+x +0e81: 24 32 and a,$32 +0e83: f0 08 beq $0e8d +0e85: 48 ff eor a,#$ff +0e87: 24 32 and a,$32 +0e89: c4 32 mov $32,a +0e8b: 2f 04 bra $0e91 +0e8d: e4 31 mov a,$31 +0e8f: f0 0b beq $0e9c +0e91: f4 62 mov a,$62+x +0e93: d0 07 bne $0e9c +0e95: f5 d5 0e mov a,$0ed5+x +0e98: 04 2d or a,$2d +0e9a: c4 2d mov $2d,a +0e9c: c8 08 cmp x,#$08 +0e9e: b0 0f bcs $0eaf +0ea0: f5 d5 0e mov a,$0ed5+x +0ea3: 24 33 and a,$33 +0ea5: f0 08 beq $0eaf +0ea7: 48 ff eor a,#$ff +0ea9: 24 33 and a,$33 +0eab: c4 33 mov $33,a +0ead: 2f 04 bra $0eb3 +0eaf: e4 2e mov a,$2e +0eb1: f0 06 beq $0eb9 +0eb3: f4 62 mov a,$62+x +0eb5: d0 02 bne $0eb9 +0eb7: 02 34 set0 $34 +0eb9: e4 2f mov a,$2f +0ebb: f0 06 beq $0ec3 +0ebd: f4 62 mov a,$62+x +0ebf: d0 02 bne $0ec3 +0ec1: 02 36 set0 $36 +0ec3: e4 30 mov a,$30 +0ec5: f0 0d beq $0ed4 +0ec7: f4 62 mov a,$62+x +0ec9: d0 09 bne $0ed4 +0ecb: 02 38 set0 $38 +0ecd: f5 d5 0e mov a,$0ed5+x +0ed0: 04 2c or a,$2c +0ed2: c4 2c mov $2c,a +0ed4: 6f ret + +0ed5: db $01,$02,$04,$08,$10,$20,$40,$80 +0edd: db $01,$02,$04,$08,$10,$20,$40,$80 + +; pitch table +0ee5: dw $085f +0ee7: dw $08de +0ee9: dw $0965 +0eeb: dw $09f4 +0eed: dw $0a8c +0eef: dw $0b2c +0ef1: dw $0bd6 +0ef3: dw $0c8b +0ef5: dw $0d4a +0ef7: dw $0e14 +0ef9: dw $0eea +0efb: dw $0fcd +0efd: dw $10be + +0eff: db $7f,$00,$87,$00,$8f,$00,$98,$00,$a0,$00,$aa,$00,$b5,$00,$bf,$00,$ca,$00,$d6,$00,$e3,$00,$f1,$00 + +; vcmd length table (includes opcode itself, unlike normal N-SPC) +0f17: db $02,$02,$03,$04,$01,$02,$03,$02 ; e0-e7 +0f1f: db $03,$02,$02,$04,$01,$02,$03,$04 ; e8-ef +0f27: db $02,$04,$04,$01,$02,$04,$01,$04 ; f0-f7 +0f2f: db $04,$04,$02,$01,$02,$03,$04,$01 ; f8-ff + +; per-note velocity values +0f37: db $10,$20,$30,$40,$50,$60,$70,$80 +0f3f: db $90,$a0,$b0,$c0,$d0,$e0,$f0,$ff + +0f47: db $32,$65,$7f,$98,$b2,$cb,$e5,$fc + +0f4f: cc f2 00 mov $00f2,y +0f52: c5 f3 00 mov $00f3,a +0f55: 6f ret + +0f56: cc f2 00 mov $00f2,y +0f59: e5 f3 00 mov a,$00f3 +0f5c: 6f ret + +0f5d: 8d 00 mov y,#$00 +0f5f: f7 29 mov a,($29)+y +0f61: 3a 29 incw $29 +0f63: 6f ret + +0f64: c4 01 mov $01,a +0f66: 7e 01 cmp y,$01 +0f68: 90 11 bcc $0f7b +0f6a: f8 00 mov x,$00 +0f6c: dd mov a,y +0f6d: 80 setc +0f6e: a4 01 sbc a,$01 +0f70: 8d 00 mov y,#$00 +0f72: 9e div ya,x +0f73: 2d push a +0f74: e8 00 mov a,#$00 +0f76: 9e div ya,x +0f77: ee pop y +0f78: f8 27 mov x,$27 +0f7a: 6f ret + +0f7b: dd mov a,y +0f7c: eb 01 mov y,$01 +0f7e: c4 01 mov $01,a +0f80: 3f 6a 0f call $0f6a +0f83: da 00 movw $00,ya +0f85: e8 00 mov a,#$00 +0f87: fd mov y,a +0f88: 9a 00 subw ya,$00 +0f8a: 6f ret + +0f8b: ad 80 cmp y,#$80 +0f8d: b0 12 bcs $0fa1 +0f8f: cb 01 mov $01,y +0f91: fb 72 mov y,$72+x +0f93: cf mul ya +0f94: cb 00 mov $00,y +0f96: e4 01 mov a,$01 +0f98: 8f 00 01 mov $01,#$00 +0f9b: fb 72 mov y,$72+x +0f9d: cf mul ya +0f9e: 7a 00 addw ya,$00 +0fa0: 6f ret + +0fa1: da 00 movw $00,ya +0fa3: e8 00 mov a,#$00 +0fa5: fd mov y,a +0fa6: 9a 00 subw ya,$00 +0fa8: 3f 8f 0f call $0f8f +0fab: da 00 movw $00,ya +0fad: e8 00 mov a,#$00 +0faf: fd mov y,a +0fb0: 9a 00 subw ya,$00 +0fb2: 6f ret + +0fb3: e8 5f mov a,#$5f +0fb5: 8d 0c mov y,#$0c +0fb7: 3f 4f 0f call $0f4f +0fba: 8d 1c mov y,#$1c +0fbc: 5f 4f 0f jmp $0f4f + +0fbf: f5 60 04 mov a,$0460+x +0fc2: f0 06 beq $0fca +0fc4: ba 0c movw ya,$0c +0fc6: 7a 44 addw ya,$44 +0fc8: da 0c movw $0c,ya +0fca: 4d push x +0fcb: e4 0d mov a,$0d +0fcd: 28 7f and a,#$7f +0fcf: 1c asl a +0fd0: 8d 00 mov y,#$00 +0fd2: cd 18 mov x,#$18 +0fd4: 9e div ya,x +0fd5: 5d mov x,a +0fd6: f6 e5 0e mov a,$0ee5+y +0fd9: c4 00 mov $00,a +0fdb: f6 e6 0e mov a,$0ee6+y +0fde: c4 01 mov $01,a +0fe0: f6 00 0f mov a,$0f00+y +0fe3: c4 05 mov $05,a +0fe5: f6 ff 0e mov a,$0eff+y +0fe8: c4 04 mov $04,a +0fea: eb 0c mov y,$0c +0fec: cf mul ya +0fed: da 06 movw $06,ya +0fef: e4 05 mov a,$05 +0ff1: eb 0c mov y,$0c +0ff3: cf mul ya +0ff4: da 04 movw $04,ya +0ff6: e4 07 mov a,$07 +0ff8: 8d 00 mov y,#$00 +0ffa: 7a 04 addw ya,$04 +0ffc: 7a 00 addw ya,$00 +0ffe: da 00 movw $00,ya +1000: c8 05 cmp x,#$05 +1002: b0 07 bcs $100b +1004: 4b 01 lsr $01 +1006: 6b 00 ror $00 +1008: 3d inc x +1009: 2f f5 bra $1000 +100b: ce pop x +100c: f5 10 04 mov a,$0410+x +100f: eb 01 mov y,$01 +1011: cf mul ya +1012: da 02 movw $02,ya +1014: f5 20 04 mov a,$0420+x +1017: eb 00 mov y,$00 +1019: cf mul ya +101a: 7a 02 addw ya,$02 +101c: da 02 movw $02,ya +101e: f5 10 04 mov a,$0410+x +1021: eb 00 mov y,$00 +1023: cf mul ya +1024: 6d push y +1025: f5 20 04 mov a,$0420+x +1028: eb 01 mov y,$01 +102a: cf mul ya +102b: fd mov y,a +102c: ae pop a +102d: 7a 02 addw ya,$02 +102f: d5 a0 03 mov $03a0+x,a +1032: dd mov a,y +1033: d5 b0 03 mov $03b0+x,a +1036: 6f ret + +1037: f5 40 04 mov a,$0440+x +103a: fd mov y,a +103b: f5 80 06 mov a,$0680+x +103e: f0 01 beq $1041 +1040: cf mul ya +1041: c8 08 cmp x,#$08 +1043: b0 0d bcs $1052 +1045: e8 4f mov a,#$4f +1047: cf mul ya +1048: e4 42 mov a,$42 +104a: cf mul ya +104b: e4 50 mov a,$50 +104d: f0 06 beq $1055 +104f: cf mul ya +1050: 2f 03 bra $1055 +1052: e8 ff mov a,#$ff +1054: cf mul ya +1055: f5 40 03 mov a,$0340+x +1058: bc inc a +1059: f0 01 beq $105c +105b: cf mul ya +105c: f5 f0 05 mov a,$05f0+x +105f: f0 01 beq $1062 +1061: cf mul ya +1062: dd mov a,y +1063: 5c lsr a +1064: fd mov y,a +1065: cb 00 mov $00,y +1067: cb 02 mov $02,y +1069: cb 03 mov $03,y +106b: f5 80 04 mov a,$0480+x +106e: c4 04 mov $04,a +1070: e4 48 mov a,$48 +1072: d0 1e bne $1092 +1074: eb 04 mov y,$04 +1076: ad 0a cmp y,#$0a +1078: b0 08 bcs $1082 +107a: f6 9f 10 mov a,$109f+y +107d: eb 00 mov y,$00 +107f: cf mul ya +1080: cb 02 mov $02,y +1082: e4 04 mov a,$04 +1084: 80 setc +1085: a8 0b sbc a,#$0b +1087: 90 09 bcc $1092 +1089: fd mov y,a +108a: f6 a9 10 mov a,$10a9+y +108d: eb 00 mov y,$00 +108f: cf mul ya +1090: cb 03 mov $03,y +1092: eb 28 mov y,$28 +1094: e4 02 mov a,$02 +1096: 3f 4f 0f call $0f4f +1099: fc inc y +109a: e4 03 mov a,$03 +109c: 5f 4f 0f jmp $0f4f + +109f: 00 nop +10a0: 19 or (x),(y) +10a1: 32 4b clr1 $4b +10a3: 64 7d cmp a,$7d +10a5: 96 af c8 adc a,$c8af+y +10a8: e1 tcall 14 +10a9: e1 tcall 14 +10aa: c8 af cmp x,#$af +10ac: 96 7d 64 adc a,$647d+y +10af: 4b 32 lsr $32 +10b1: 19 or (x),(y) +10b2: 00 nop +10b3: c4 00 mov $00,a +10b5: 8d 7d mov y,#$7d +10b7: cc f2 00 mov $00f2,y +10ba: e5 f3 00 mov a,$00f3 +10bd: 28 0f and a,#$0f +10bf: 64 00 cmp a,$00 +10c1: f0 05 beq $10c8 +10c3: 1c asl a +10c4: 1c asl a +10c5: 1c asl a +10c6: c4 54 mov $54,a +10c8: e8 00 mov a,#$00 +10ca: c4 55 mov $55,a +10cc: ab 54 inc $54 +10ce: 8d 04 mov y,#$04 +10d0: cd 00 mov x,#$00 +10d2: f6 01 11 mov a,$1101+y +10d5: c5 f2 00 mov $00f2,a +10d8: c9 f3 00 mov $00f3,x +10db: fe f5 dbnz y,$10d2 +10dd: 8d 6c mov y,#$6c +10df: 3f 56 0f call $0f56 +10e2: 08 20 or a,#$20 +10e4: 3f 4f 0f call $0f4f +10e7: 8d 7d mov y,#$7d +10e9: e4 00 mov a,$00 +10eb: 3f 4f 0f call $0f4f +10ee: 1c asl a +10ef: 1c asl a +10f0: 1c asl a +10f1: 48 ff eor a,#$ff +10f3: 80 setc +10f4: 88 ff adc a,#$ff +10f6: 8d 6d mov y,#$6d +10f8: 3f 4f 0f call $0f4f +10fb: 64 5d cmp a,$5d +10fd: b0 02 bcs $1101 +10ff: c4 5d mov $5d,a +1101: 6f ret + +1102: 2c 3c 0d rol $0d3c +1105: 4d push x +1106: e4 54 mov a,$54 +1108: d0 0b bne $1115 +110a: 8d 4d mov y,#$4d +110c: e4 3b mov a,$3b +110e: 48 ff eor a,#$ff +1110: 24 5c and a,$5c +1112: 3f 4f 0f call $0f4f +1115: 6f ret + +1116: 28 1f and a,#$1f +1118: 1c asl a +1119: fd mov y,a +111a: f6 24 11 mov a,$1124+y +111b: 24 11 and a,$11 +111d: 2d push a +111e: f6 23 11 mov a,$1123+y +1121: 2d push a +1122: 6f ret + +; vcmd dispatch table +1124: dw $1163 ; e0 - set instrument +1126: dw $11cf ; e1 - pan +1128: dw $11de ; e2 - pan fade +112a: dw $11fb ; e3 - vibrato on +112c: dw $1218 ; e4 - vibrato off +112e: dw $121e ; e5 - master volume +1130: dw $122d ; e6 - master volume fade +1132: dw $1242 ; e7 - tempo +1134: dw $1258 ; e8 - tempo fade +1136: dw $1275 ; e9 - global transpose +1138: dw $127b ; ea - per-voice transpose +113a: dw $1282 ; eb - tremolo on +113c: dw $129f ; ec - tremolo off +113e: dw $12a5 ; ed - volume +1140: dw $12b3 ; ee - volume fade +1142: dw $12cf ; ef - call subroutine +1144: dw $137d ; f0 - vibrato fade +1146: dw $1396 ; f1 - pitch envelope (release) +1148: dw $13ae ; f2 - pitch envelope (attack) +114a: dw $13c6 ; f3 - pitch envelope off +114c: dw $13d0 ; f4 - tuning +114e: dw $13d7 ; f5 - echo vbits/volume +1150: dw $13fb ; f6 - disable echo +1152: dw $1413 ; f7 - set echo params +1154: dw $146c ; f8 - echo volume fade +1156: dw $1486 ; f9 - pitch slide +1158: dw $14a5 ; fa - set perc base +115a: dw $14ac ; fb +115c: dw $14b2 ; fc - set noise +115e: dw $14b9 ; fd +1160: dw $14c6 ; fe - set multiple channel parameters +1162: dw $14de ; ff - nop + +; vcmd e0 - set instrument +1163: 3f 5d 0f call $0f5d +1166: d5 c0 03 mov $03c0+x,a +1169: e8 00 mov a,#$00 +116b: d5 c0 06 mov $06c0+x,a +116e: d5 d0 06 mov $06d0+x,a +1171: d5 f0 06 mov $06f0+x,a +1174: 6f ret + +1175: d5 90 06 mov $0690+x,a +1178: 8d 06 mov y,#$06 +117a: cf mul ya +117b: 7a 21 addw ya,$21 +117d: da 00 movw $00,ya +117f: 8d 00 mov y,#$00 +1181: f5 f0 06 mov a,$06f0+x +1184: d0 05 bne $118b +1186: f7 00 mov a,($00)+y +1188: d5 d0 03 mov $03d0+x,a +118b: fc inc y +118c: f5 d0 06 mov a,$06d0+x +118f: f0 0d beq $119e +1191: d5 e0 03 mov $03e0+x,a +1194: fc inc y +1195: f5 e0 06 mov a,$06e0+x +1198: d5 f0 03 mov $03f0+x,a +119b: fc inc y +119c: 2f 0c bra $11aa +119e: f7 00 mov a,($00)+y +11a0: d5 e0 03 mov $03e0+x,a +11a3: fc inc y +11a4: f7 00 mov a,($00)+y +11a6: d5 f0 03 mov $03f0+x,a +11a9: fc inc y +11aa: f7 00 mov a,($00)+y +11ac: d5 00 04 mov $0400+x,a +11af: fc inc y +11b0: f5 c0 06 mov a,$06c0+x +11b3: f0 09 beq $11be +11b5: e8 00 mov a,#$00 +11b7: d5 20 04 mov $0420+x,a +11ba: d5 10 04 mov $0410+x,a +11bd: 6f ret + +11be: f5 f0 06 mov a,$06f0+x +11c1: d0 0b bne $11ce +11c3: f7 00 mov a,($00)+y +11c5: d5 20 04 mov $0420+x,a +11c8: fc inc y +11c9: f7 00 mov a,($00)+y +11cb: d5 10 04 mov $0410+x,a +11ce: 6f ret + +; vcmd e1 - pan +11cf: 3f 5d 0f call $0f5d +11d2: d5 80 04 mov $0480+x,a +11d5: e8 00 mov a,#$00 +11d7: d5 70 04 mov $0470+x,a +11da: d5 00 06 mov $0600+x,a +11dd: 6f ret + +; vcmd e2 - pan fade +11de: 3f 5d 0f call $0f5d +11e1: d5 00 06 mov $0600+x,a +11e4: c4 00 mov $00,a +11e6: 3f 5d 0f call $0f5d +11e9: d5 10 06 mov $0610+x,a +11ec: fd mov y,a +11ed: f5 80 04 mov a,$0480+x +11f0: 3f 64 0f call $0f64 +11f3: d5 20 06 mov $0620+x,a +11f6: dd mov a,y +11f7: d5 30 06 mov $0630+x,a +11fa: 6f ret + +; vcmd e3 - vibrato on +11fb: 3f 5d 0f call $0f5d +11fe: d5 40 05 mov $0540+x,a +1201: 3f 5d 0f call $0f5d +1204: d5 60 05 mov $0560+x,a +1207: 3f 5d 0f call $0f5d +120a: d5 90 05 mov $0590+x,a +120d: e8 01 mov a,#$01 +120f: d5 30 05 mov $0530+x,a +1212: e8 00 mov a,#$00 +1214: d5 a0 05 mov $05a0+x,a +1217: 6f ret + +; vcmd e4 - vibrato off +1218: e8 00 mov a,#$00 +121a: d5 30 05 mov $0530+x,a +121d: 6f ret + +; vcmd e5 - master volume +121e: 3f 5d 0f call $0f5d +1221: c4 42 mov $42,a +1223: 8f 00 41 mov $41,#$00 +1226: 8f 00 4c mov $4c,#$00 +1229: 8f ff 33 mov $33,#$ff +122c: 6f ret + +; vcmd e6 - master volume fade +122d: 3f 5d 0f call $0f5d +1230: c4 4c mov $4c,a +1232: c4 00 mov $00,a +1234: 3f 5d 0f call $0f5d +1237: c4 4d mov $4d,a +1239: fd mov y,a +123a: e4 42 mov a,$42 +123c: 3f 64 0f call $0f64 +123f: da 4e movw $4e,ya +1241: 6f ret + +; vcmd e7 - tempo +1242: e8 00 mov a,#$00 +1244: d5 10 03 mov $0310+x,a +1247: d5 40 06 mov $0640+x,a +124a: 3f 5d 0f call $0f5d +124d: d5 00 03 mov $0300+x,a +1250: c8 08 cmp x,#$08 +1252: b0 03 bcs $1257 +1254: c5 46 00 mov $0046,a +1257: 6f ret + +; vcmd e8 - tempo fade +1258: 3f 5d 0f call $0f5d +125b: d5 40 06 mov $0640+x,a +125e: c4 00 mov $00,a +1260: 3f 5d 0f call $0f5d +1263: d5 50 06 mov $0650+x,a +1266: fd mov y,a +1267: f5 00 03 mov a,$0300+x +126a: 3f 64 0f call $0f64 +126d: d5 60 06 mov $0660+x,a +1270: dd mov a,y +1271: d5 70 06 mov $0670+x,a +1274: 6f ret + +; vcmd e9 - global transpose +1275: 3f 5d 0f call $0f5d +1278: c4 43 mov $43,a +127a: 6f ret + +; vcmd ea - per-voice transpose +127b: 3f 5d 0f call $0f5d +127e: d5 50 04 mov $0450+x,a +1281: 6f ret + +; vcmd eb - tremolo on +1282: 3f 5d 0f call $0f5d +1285: d5 40 05 mov $0540+x,a +1288: 3f 5d 0f call $0f5d +128b: d5 60 05 mov $0560+x,a +128e: 3f 5d 0f call $0f5d +1291: d5 90 05 mov $0590+x,a +1294: e8 02 mov a,#$02 +1296: d5 30 05 mov $0530+x,a +1299: e8 00 mov a,#$00 +129b: d5 a0 05 mov $05a0+x,a +129e: 6f ret + +; vcmd ec - tremolo off +129f: e8 00 mov a,#$00 +12a1: d5 30 05 mov $0530+x,a +12a4: 6f ret + +; vcmd ed - volume +12a5: 3f 5d 0f call $0f5d +12a8: d5 40 04 mov $0440+x,a +12ab: e8 00 mov a,#$00 +12ad: d4 c2 mov $c2+x,a +12af: d5 30 04 mov $0430+x,a +12b2: 6f ret + +; vcmd ee - volume fade +12b3: 3f 5d 0f call $0f5d +12b6: d4 c2 mov $c2+x,a +12b8: c4 00 mov $00,a +12ba: 3f 5d 0f call $0f5d +12bd: d5 c0 04 mov $04c0+x,a +12c0: fd mov y,a +12c1: f5 40 04 mov a,$0440+x +12c4: 3f 64 0f call $0f64 +12c7: d5 d0 04 mov $04d0+x,a +12ca: dd mov a,y +12cb: d5 e0 04 mov $04e0+x,a +12ce: 6f ret + +; vcmd ef - call subroutine +12cf: 3f 5d 0f call $0f5d +12d2: c4 00 mov $00,a +12d4: 3f 5d 0f call $0f5d +12d7: c4 01 mov $01,a +12d9: 3f 5d 0f call $0f5d +12dc: c4 02 mov $02,a +12de: f5 c0 02 mov a,$02c0+x +12e1: d0 21 bne $1304 +12e3: e4 02 mov a,$02 +12e5: d5 c0 02 mov $02c0+x,a +12e8: e4 00 mov a,$00 +12ea: d5 60 02 mov $0260+x,a +12ed: d5 20 02 mov $0220+x,a +12f0: e4 01 mov a,$01 +12f2: d5 70 02 mov $0270+x,a +12f5: d5 30 02 mov $0230+x,a +12f8: e4 29 mov a,$29 +12fa: d5 40 02 mov $0240+x,a +12fd: e4 2a mov a,$2a +12ff: d5 50 02 mov $0250+x,a +1302: 2f 6e bra $1372 +1304: d5 d0 02 mov $02d0+x,a +1307: e4 02 mov a,$02 +1309: d5 c0 02 mov $02c0+x,a +130c: e4 00 mov a,$00 +130e: d5 80 02 mov $0280+x,a +1311: d5 20 02 mov $0220+x,a +1314: e4 01 mov a,$01 +1316: d5 90 02 mov $0290+x,a +1319: d5 30 02 mov $0230+x,a +131c: e4 29 mov a,$29 +131e: d5 a0 02 mov $02a0+x,a +1321: e4 2a mov a,$2a +1323: d5 b0 02 mov $02b0+x,a +1326: 2f 4a bra $1372 +1328: f5 d0 02 mov a,$02d0+x +132b: d0 0e bne $133b +132d: f5 40 02 mov a,$0240+x +1330: d5 20 02 mov $0220+x,a +1333: f5 50 02 mov a,$0250+x +1336: d5 30 02 mov $0230+x,a +1339: 2f 37 bra $1372 +133b: d5 c0 02 mov $02c0+x,a +133e: e8 00 mov a,#$00 +1340: d5 d0 02 mov $02d0+x,a +1343: f5 a0 02 mov a,$02a0+x +1346: d5 20 02 mov $0220+x,a +1349: f5 b0 02 mov a,$02b0+x +134c: d5 30 02 mov $0230+x,a +134f: 2f 21 bra $1372 +1351: f5 d0 02 mov a,$02d0+x +1354: d0 0e bne $1364 +1356: f5 60 02 mov a,$0260+x +1359: d5 20 02 mov $0220+x,a +135c: f5 70 02 mov a,$0270+x +135f: d5 30 02 mov $0230+x,a +1362: 2f 0e bra $1372 +1364: f5 80 02 mov a,$0280+x +1367: d5 20 02 mov $0220+x,a +136a: f5 90 02 mov a,$0290+x +136d: d5 30 02 mov $0230+x,a +1370: 2f 00 bra $1372 +1372: f5 20 02 mov a,$0220+x +1375: c4 29 mov $29,a +1377: f5 30 02 mov a,$0230+x +137a: c4 2a mov $2a,a +137c: 6f ret + +137d: 3f 5d 0f call $0f5d +1380: d5 a0 05 mov $05a0+x,a +1383: c4 00 mov $00,a +1385: f5 90 05 mov a,$0590+x +1388: fd mov y,a +1389: e8 00 mov a,#$00 +138b: 3f 64 0f call $0f64 +138e: d5 c0 05 mov $05c0+x,a +1391: dd mov a,y +1392: d5 d0 05 mov $05d0+x,a +1395: 6f ret + +; vcmd f1 - pitch envelope (release) +1396: e8 01 mov a,#$01 +1398: d5 f0 04 mov $04f0+x,a +139b: 3f 5d 0f call $0f5d +139e: d5 00 05 mov $0500+x,a +13a1: 3f 5d 0f call $0f5d +13a4: d5 10 05 mov $0510+x,a +13a7: 3f 5d 0f call $0f5d +13aa: d5 20 05 mov $0520+x,a +13ad: 6f ret + +; vcmd f2 - pitch envelope (attack) +13ae: e8 02 mov a,#$02 +13b0: d5 f0 04 mov $04f0+x,a +13b3: 3f 5d 0f call $0f5d +13b6: d5 00 05 mov $0500+x,a +13b9: 3f 5d 0f call $0f5d +13bc: d5 10 05 mov $0510+x,a +13bf: 3f 5d 0f call $0f5d +13c2: d5 20 05 mov $0520+x,a +13c5: 6f ret + +; vcmd f3 - pitch envelope off +13c6: e8 00 mov a,#$00 +13c8: d5 f0 04 mov $04f0+x,a +13cb: d4 a2 mov $a2+x,a +13cd: d4 b2 mov $b2+x,a +13cf: 6f ret + +; vcmd f4 - tuning +13d0: 3f 5d 0f call $0f5d +13d3: d5 90 03 mov $0390+x,a +13d6: 6f ret + +; vcmd f5 - echo vbits/volume +13d7: 3f 5d 0f call $0f5d +13da: c4 5c mov $5c,a +13dc: 3f 5d 0f call $0f5d +13df: c4 57 mov $57,a +13e1: 8f 00 56 mov $56,#$00 +13e4: 8f 00 5e mov $5e,#$00 +13e7: 3f 5d 0f call $0f5d +13ea: c4 58 mov $58,a +13ec: 3f 06 11 call $1106 +13ef: 78 ff 5d cmp $5d,#$ff +13f2: f0 06 beq $13fa +13f4: e4 55 mov a,$55 +13f6: d0 02 bne $13fa +13f8: ab 55 inc $55 +13fa: 6f ret + +; vcmd f6 - disable echo +13fb: e8 00 mov a,#$00 +13fd: c4 5c mov $5c,a +13ff: c4 57 mov $57,a +1401: c4 58 mov $58,a +1403: c4 5e mov $5e,a +1405: c4 59 mov $59,a +1407: 3f b3 10 call $10b3 +140a: e8 00 mov a,#$00 +140c: c4 54 mov $54,a +140e: c4 55 mov $55,a +1410: f8 27 mov x,$27 +1412: 6f ret + +; vcmd f7 - set echo params +1413: 3f 5d 0f call $0f5d +1416: c4 59 mov $59,a +1418: 3f b3 10 call $10b3 +141b: f8 27 mov x,$27 +141d: 3f 5d 0f call $0f5d +1420: c4 5a mov $5a,a +1422: 3f 5d 0f call $0f5d +1425: c4 5b mov $5b,a +1427: 68 05 cmp a,#$05 +1429: 90 02 bcc $142d +142b: e8 00 mov a,#$00 +142d: 8d 08 mov y,#$08 +142f: cf mul ya +1430: 5d mov x,a +1431: 8d 0f mov y,#$0f +1433: f5 44 14 mov a,$1444+x +1436: 3f 4f 0f call $0f4f +1439: 3d inc x +143a: dd mov a,y +143b: 60 clrc +143c: 88 10 adc a,#$10 +143e: fd mov y,a +143f: 10 f2 bpl $1433 +1441: f8 27 mov x,$27 +1443: 6f ret + +1444: db $7f,$00,$00,$00,$00,$00,$00,$00 +144c: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +1454: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +145c: db $34,$33,$00,$d9,$e5,$01,$fc,$eb +1464: db $02,$00,$ee,$4b,$ee,$00,$02,$00 + +; vcmd f8 - echo volume fade +146c: 3f 5d 0f call $0f5d +146f: c4 5e mov $5e,a +1471: c4 00 mov $00,a +1473: 3f 5d 0f call $0f5d +1476: c4 5f mov $5f,a +1478: fd mov y,a +1479: e4 57 mov a,$57 +147b: 3f 64 0f call $0f64 +147e: da 60 movw $60,ya +1480: 3f 5d 0f call $0f5d +1483: 6f ret + +; vcmd f9 - pitch slide +1484: 3f 5d 0f call $0f5d +1487: d4 a2 mov $a2+x,a +1489: 3f 5d 0f call $0f5d +148c: d4 b2 mov $b2+x,a +148e: c4 00 mov $00,a +1490: 3f 5d 0f call $0f5d +1493: d5 90 04 mov $0490+x,a +1496: fd mov y,a +1497: f5 60 03 mov a,$0360+x +149a: 3f 64 0f call $0f64 +149d: d5 a0 04 mov $04a0+x,a +14a0: dd mov a,y +14a1: d5 b0 04 mov $04b0+x,a +14a4: 6f ret + +; vcmd fa - set perc base +14a5: 3f 5d 0f call $0f5d +14a8: c5 40 00 mov $0040,a +14ab: 6f ret + +; vcmd fb +14ac: e8 01 mov a,#$01 +14ae: d5 f0 02 mov $02f0+x,a +14b1: 6f ret + +; vcmd fc - set noise +14b2: 3f 5d 0f call $0f5d +14b5: d5 c0 06 mov $06c0+x,a +14b8: 6f ret + +; vcmd fd +14b9: 3f 5d 0f call $0f5d +14bc: d5 d0 06 mov $06d0+x,a +14bf: 3f 5d 0f call $0f5d +14c2: d5 e0 06 mov $06e0+x,a +14c5: 6f ret + +; vcmd fe - set multiple channel parameters +14c6: e8 01 mov a,#$01 +14c8: d5 f0 06 mov $06f0+x,a +14cb: 3f 5d 0f call $0f5d +14ce: d5 d0 03 mov $03d0+x,a +14d1: 3f 5d 0f call $0f5d +14d4: d5 20 04 mov $0420+x,a +14d7: 3f 5d 0f call $0f5d +14da: d5 10 04 mov $0410+x,a +14dd: 6f ret + +; vcmd ff - nop +14de: 60 clrc +14df: 6f ret + +; play song in A +14e0: 9c dec a +14e1: 1c asl a +14e2: fd mov y,a +14e3: f7 23 mov a,($23)+y +14e5: c4 3c mov $3c,a +14e7: fc inc y +14e8: f7 23 mov a,($23)+y +14ea: c4 3d mov $3d,a +14ec: 8f 00 3e mov $3e,#$00 +14ef: 8f 00 3f mov $3f,#$00 +14f2: cd 00 mov x,#$00 +14f4: 3f f7 15 call $15f7 +14f7: 3d inc x +14f8: c8 08 cmp x,#$08 +14fa: 90 f8 bcc $14f4 +; process next section list word +14fc: 8d 00 mov y,#$00 +14fe: f7 3c mov a,($3c)+y +1500: c4 00 mov $00,a +1502: 3a 3c incw $3c +1504: f7 3c mov a,($3c)+y +1506: c4 01 mov $01,a +1508: 3a 3c incw $3c ; read a word from section list ptr +150a: 68 00 cmp a,#$00 +150c: d0 28 bne $1536 ; >= $0100, load that section ($00/1) +150e: e4 00 mov a,$00 +1510: f0 47 beq $1559 ; == $0000, song end +1512: 68 ff cmp a,#$ff +1514: f0 10 beq $1526 ; infinite loop ($00ff xxxx) +1516: eb 3e mov y,$3e ; == $00xx, repeat section (slightly different from usual N-SPC) +1518: f0 0a beq $1524 ; start new repeat if repeat count has not been set +151a: 8b 3e dec $3e +151c: d0 08 bne $1526 +151e: 3a 3c incw $3c +1520: 3a 3c incw $3c +1522: 2f d8 bra $14fc +1524: c4 3e mov $3e,a ; set section repeat count +1526: 8d 00 mov y,#$00 +1528: f7 3c mov a,($3c)+y +152a: 2d push a +152b: 3a 3c incw $3c +152d: f7 3c mov a,($3c)+y +152f: c4 3d mov $3d,a +1531: ae pop a +1532: c4 3c mov $3c,a ; repeat from $3c/d (used for backjump) +1534: 2f c6 bra $14fc +; load section $00/1, set vcmd ptr for each channels +1536: cd 00 mov x,#$00 +1538: 8d 00 mov y,#$00 +153a: e8 02 mov a,#$02 +153c: d5 00 02 mov $0200+x,a ; inactivate channel +153f: f7 00 mov a,($00)+y +1541: c4 02 mov $02,a +1543: fc inc y +1544: f7 00 mov a,($00)+y +1546: c4 03 mov $03,a ; read vcmd ptr to $02/3 +1548: fc inc y +1549: 04 02 or a,$02 +154b: f0 03 beq $1550 +154d: 3f d8 15 call $15d8 ; start channel unless it is zero +1550: 3d inc x +1551: c8 08 cmp x,#$08 +1553: 90 e5 bcc $153a +1555: 8f 01 3f mov $3f,#$01 +1558: 6f ret + +; song end +1559: cd 00 mov x,#$00 +155b: e8 02 mov a,#$02 +155d: d5 00 02 mov $0200+x,a +1560: e8 00 mov a,#$00 +1562: d5 10 02 mov $0210+x,a +1565: 3d inc x +1566: c8 08 cmp x,#$08 +1568: d0 f1 bne $155b +156a: 6f ret + +156b: 3f fc 14 call $14fc +156e: e5 10 02 mov a,$0210 +1571: f0 05 beq $1578 +1573: cd 00 mov x,#$00 +1575: 5f 1e 0a jmp $0a1e + +1578: 6f ret + +1579: 28 7f and a,#$7f +157b: 9c dec a +157c: 1c asl a +157d: fd mov y,a +157e: f7 25 mov a,($25)+y +1580: c4 00 mov $00,a +1582: fc inc y +1583: f7 25 mov a,($25)+y +1585: c4 01 mov $01,a +1587: cd 0f mov x,#$0f +1589: 8d 00 mov y,#$00 +158b: f7 00 mov a,($00)+y +158d: c4 02 mov $02,a +158f: fc inc y +1590: f7 00 mov a,($00)+y +1592: c4 03 mov $03,a +1594: d0 08 bne $159e +1596: e4 02 mov a,$02 +1598: f0 1d beq $15b7 +159a: 68 ff cmp a,#$ff +159c: f0 1f beq $15bd +159e: e4 11 mov a,$11 +15a0: 28 3f and a,#$3f +15a2: d5 10 02 mov $0210+x,a +15a5: 3f d8 15 call $15d8 +15a8: e8 03 mov a,#$03 +15aa: d5 00 02 mov $0200+x,a +15ad: e4 3b mov a,$3b +15af: 15 d5 0e or a,$0ed5+x +15b2: c4 3b mov $3b,a +15b4: 3f c1 15 call $15c1 +15b7: fc inc y +15b8: 1d dec x +15b9: c8 08 cmp x,#$08 +15bb: b0 ce bcs $158b +15bd: 3f 06 11 call $1106 +15c0: 6f ret + +15c1: e4 11 mov a,$11 +15c3: 68 c0 cmp a,#$c0 +15c5: b0 05 bcs $15cc +15c7: 68 40 cmp a,#$40 +15c9: b0 07 bcs $15d2 +15cb: 6f ret + +15cc: e4 13 mov a,$13 +15ce: d5 80 04 mov $0480+x,a +15d1: 6f ret + +15d2: e8 01 mov a,#$01 +15d4: d5 60 04 mov $0460+x,a +15d7: 6f ret + +15d8: e8 01 mov a,#$01 +15da: d5 00 02 mov $0200+x,a +15dd: e4 02 mov a,$02 +15df: d5 20 02 mov $0220+x,a +15e2: e4 03 mov a,$03 +15e4: d5 30 02 mov $0230+x,a +15e7: c8 08 cmp x,#$08 +15e9: b0 2c bcs $1617 +15eb: e4 3f mov a,$3f +15ed: f0 03 beq $15f2 +15ef: 5f 84 16 jmp $1684 + +15f2: e8 03 mov a,#$03 +15f4: d5 00 02 mov $0200+x,a +15f7: 8f 00 49 mov $49,#$00 +15fa: 8f 00 43 mov $43,#$00 +15fd: 8f 00 51 mov $51,#$00 +1600: 8f ff 42 mov $42,#$ff +1603: 8f 00 50 mov $50,#$00 +1606: e4 10 mov a,$10 +1608: d5 10 02 mov $0210+x,a +160b: e8 20 mov a,#$20 +160d: c4 46 mov $46,a +160f: 8f 00 5e mov $5e,#$00 +1612: e8 00 mov a,#$00 +1614: c5 80 01 mov $0180,a +1617: e8 20 mov a,#$20 +1619: d5 00 03 mov $0300+x,a +161c: e8 06 mov a,#$06 +161e: d5 20 03 mov $0320+x,a +1621: e5 4e 0f mov a,$0f4e +1624: d5 30 03 mov $0330+x,a +1627: e5 46 0f mov a,$0f46 +162a: d5 40 03 mov $0340+x,a +162d: d5 40 04 mov $0440+x,a +1630: e8 00 mov a,#$00 +1632: d5 10 03 mov $0310+x,a +1635: d5 50 03 mov $0350+x,a +1638: d5 60 03 mov $0360+x,a +163b: d5 90 03 mov $0390+x,a +163e: d5 c0 03 mov $03c0+x,a +1641: d5 d0 03 mov $03d0+x,a +1644: d5 30 04 mov $0430+x,a +1647: d5 50 04 mov $0450+x,a +164a: d5 60 04 mov $0460+x,a +164d: d5 70 04 mov $0470+x,a +1650: d5 e0 02 mov $02e0+x,a +1653: d5 f0 02 mov $02f0+x,a +1656: d5 f0 04 mov $04f0+x,a +1659: d5 30 05 mov $0530+x,a +165c: d5 a0 05 mov $05a0+x,a +165f: d5 c2 00 mov $00c2+x,a +1662: d5 00 06 mov $0600+x,a +1665: d5 40 06 mov $0640+x,a +1668: d5 a0 06 mov $06a0+x,a +166b: d5 b0 06 mov $06b0+x,a +166e: d5 c0 06 mov $06c0+x,a +1671: d5 d0 06 mov $06d0+x,a +1674: d5 f0 06 mov $06f0+x,a +1677: d4 a2 mov $a2+x,a +1679: d4 b2 mov $b2+x,a +167b: d4 92 mov $92+x,a +167d: d4 62 mov $62+x,a +167f: e8 0a mov a,#$0a +1681: d5 80 04 mov $0480+x,a +1684: e8 00 mov a,#$00 +1686: d4 72 mov $72+x,a +1688: d4 82 mov $82+x,a +168a: d5 c0 02 mov $02c0+x,a +168d: d5 d0 02 mov $02d0+x,a +1690: 6f ret + +1691: e5 f4 00 mov a,$00f4 +1694: 05 f5 00 or a,$00f5 +1697: f0 5b beq $16f4 +1699: e8 01 mov a,#$01 +169b: c5 f7 00 mov $00f7,a +169e: 00 nop +169f: 00 nop +16a0: e4 18 mov a,$18 +16a2: 08 10 or a,#$10 +16a4: e9 f6 00 mov x,$00f6 +16a7: ec f7 00 mov y,$00f7 +16aa: d8 12 mov $12,x +16ac: cb 13 mov $13,y +16ae: e9 f4 00 mov x,$00f4 +16b1: 1e f4 00 cmp x,$00f4 +16b4: d0 f8 bne $16ae +16b6: ec f5 00 mov y,$00f5 +16b9: 5e f5 00 cmp y,$00f5 +16bc: d0 f8 bne $16b6 +16be: d8 10 mov $10,x +16c0: cb 11 mov $11,y +16c2: c5 f1 00 mov $00f1,a +16c5: e8 00 mov a,#$00 +16c7: c5 f7 00 mov $00f7,a +16ca: e4 14 mov a,$14 +16cc: c4 00 mov $00,a +16ce: e4 10 mov a,$10 +16d0: f0 11 beq $16e3 +16d2: c4 14 mov $14,a +16d4: 68 80 cmp a,#$80 +16d6: b0 2d bcs $1705 +16d8: 68 40 cmp a,#$40 +16da: b0 55 bcs $1731 +16dc: 68 20 cmp a,#$20 +16de: b0 56 bcs $1736 +16e0: 3f e0 14 call $14e0 +16e3: e4 11 mov a,$11 +16e5: f0 09 beq $16f0 +16e7: c4 15 mov $15,a +16e9: 68 ff cmp a,#$ff +16eb: f0 03 beq $16f0 +16ed: 3f 5f 17 call $175f +16f0: 3f f4 16 call $16f4 +16f3: 6f ret + +16f4: e5 10 02 mov a,$0210 +16f7: c5 f4 00 mov $00f4,a +16fa: e4 15 mov a,$15 +16fc: c5 f5 00 mov $00f5,a +16ff: e4 14 mov a,$14 +1701: c5 f6 00 mov $00f6,a +1704: 6f ret + +1705: 68 fd cmp a,#$fd +1707: f0 3d beq $1746 +1709: 68 fe cmp a,#$fe +170b: f0 2e beq $173b +170d: 68 ff cmp a,#$ff +170f: d0 1b bne $172c +1711: c5 f6 00 mov $00f6,a +1714: 3f 6c 18 call $186c +1717: e8 01 mov a,#$01 +1719: c5 f7 00 mov $00f7,a +171c: 00 nop +171d: 00 nop +171e: e4 18 mov a,$18 +1720: 08 10 or a,#$10 +1722: c5 f1 00 mov $00f1,a +1725: e8 00 mov a,#$00 +1727: c5 f7 00 mov $00f7,a +172a: 2f c7 bra $16f3 +172c: 3f c0 17 call $17c0 +172f: 2f b2 bra $16e3 +1731: 3f ba 17 call $17ba +1734: 2f ad bra $16e3 +1736: 3f b2 17 call $17b2 +1739: 2f a8 bra $16e3 +173b: c5 f6 00 mov $00f6,a +173e: e8 80 mov a,#$80 +1740: c5 f1 00 mov $00f1,a +1743: 5f c0 ff jmp $ffc0 + +1746: c5 f6 00 mov $00f6,a +1749: e4 13 mov a,$13 +174b: c4 01 mov $01,a +174d: 8d 00 mov y,#$00 +174f: cb 00 mov $00,y +1751: dd mov a,y +1752: d7 00 mov ($00)+y,a +1754: fc inc y +1755: d0 fb bne $1752 +1757: ab 01 inc $01 +1759: 78 ff 01 cmp $01,#$ff +175c: 90 f4 bcc $1752 +175e: 6f ret + +175f: 68 c0 cmp a,#$c0 +1761: b0 18 bcs $177b +1763: 68 80 cmp a,#$80 +1765: f0 08 beq $176f +1767: b0 0c bcs $1775 +1769: 3f 79 15 call $1579 +176c: 5f f0 16 jmp $16f0 + +176f: 3f 81 17 call $1781 +1772: 5f f0 16 jmp $16f0 + +1775: 3f 93 17 call $1793 +1778: 5f f0 16 jmp $16f0 + +177b: 3f 79 15 call $1579 +177e: 5f f0 16 jmp $16f0 + +1781: cd 08 mov x,#$08 +1783: f5 00 02 mov a,$0200+x +1786: f0 05 beq $178d +1788: e8 02 mov a,#$02 +178a: d5 00 02 mov $0200+x,a +178d: 3d inc x +178e: c8 10 cmp x,#$10 +1790: 90 f1 bcc $1783 +1792: 6f ret + +1793: e4 11 mov a,$11 +1795: 28 7f and a,#$7f +1797: c4 00 mov $00,a +1799: cd 08 mov x,#$08 +179b: f5 00 02 mov a,$0200+x +179e: f0 0c beq $17ac +17a0: f5 10 02 mov a,$0210+x +17a3: 64 00 cmp a,$00 +17a5: d0 05 bne $17ac +17a7: e8 02 mov a,#$02 +17a9: d5 00 02 mov $0200+x,a +17ac: 3d inc x +17ad: c8 10 cmp x,#$10 +17af: 90 ea bcc $179b +17b1: 6f ret + +17b2: 28 1f and a,#$1f +17b4: 3f e0 14 call $14e0 +17b7: 5f 20 18 jmp $1820 + +17ba: 80 setc +17bb: a8 40 sbc a,#$40 +17bd: c4 46 mov $46,a +17bf: 6f ret + +17c0: 28 7f and a,#$7f +17c2: 1c asl a +17c3: fd mov y,a +17c4: f6 ce 17 mov a,$17ce+y +17c7: 2d push a +17c8: f6 cd 17 mov a,$17cd+y +17cb: 2d push a +17cc: 6f ret + +17cd: dw $fd,$17,$01,$18,$08,$18,$12,$18,$19,$18,$20,$18,$30,$18,$34,$18,$38,$18,$3d,$18,$3e,$18,$49,$18,$54,$18,$5f,$18,$6a,$18,$6b,$18,$6b,$18,$af,$18,$b5,$18,$d3,$18,$de,$18,$f0,$18,$f7,$18,$fa,$18 + +17fd: 3f 59 15 call $1559 +1800: 6f ret + +1801: 8f 01 49 mov $49,#$01 +1804: 8f ff 32 mov $32,#$ff +1807: 6f ret + +1808: 8f 00 49 mov $49,#$00 +180b: 8f 00 51 mov $51,#$00 +180e: 8f 00 50 mov $50,#$00 +1811: 6f ret + +1812: 8f 02 51 mov $51,#$02 +1815: 8f ff 50 mov $50,#$ff +1818: 6f ret + +1819: 8f 03 51 mov $51,#$03 +181c: 8f ff 50 mov $50,#$ff +181f: 6f ret + +1820: e5 11 02 mov a,$0211 +1823: c5 10 02 mov $0210,a +1826: 8f 01 51 mov $51,#$01 +1829: 8f 00 49 mov $49,#$00 +182c: 8f 01 50 mov $50,#$01 +182f: 6f ret + +1830: 8f 00 48 mov $48,#$00 +1833: 6f ret + +1834: 8f 01 48 mov $48,#$01 +1837: 6f ret + +1838: ba 12 movw ya,$12 +183a: da 44 movw $44,ya +183c: 6f ret + +183d: 6f ret + +183e: e5 13 00 mov a,$0013 +1841: c4 20 mov $20,a +1843: 8d 5d mov y,#$5d +1845: 3f 4f 0f call $0f4f +1848: 6f ret + +1849: e5 12 00 mov a,$0012 +184c: c4 21 mov $21,a +184e: e5 13 00 mov a,$0013 +1851: c4 22 mov $22,a +1853: 6f ret + +1854: e5 12 00 mov a,$0012 +1857: c4 23 mov $23,a +1859: e5 13 00 mov a,$0013 +185c: c4 24 mov $24,a +185e: 6f ret + +185f: e5 12 00 mov a,$0012 +1862: c4 25 mov $25,a +1864: e5 13 00 mov a,$0013 +1867: c4 26 mov $26,a +1869: 6f ret + +186a: 6f ret + +186b: 6f ret + +186c: 3f fb 13 call $13fb +186f: 8f aa f4 mov $f4,#$aa +1872: 8f bb f5 mov $f5,#$bb +1875: e8 cc mov a,#$cc +1877: 64 f4 cmp a,$f4 +1879: d0 fc bne $1877 +187b: 2f 1b bra $1898 +187d: eb f4 mov y,$f4 +187f: d0 fc bne $187d +1881: 7e f4 cmp y,$f4 +1883: d0 0d bne $1892 +1885: e4 f5 mov a,$f5 +1887: cb f4 mov $f4,y +1889: d7 00 mov ($00)+y,a +188b: fc inc y +188c: d0 f3 bne $1881 +188e: ab 01 inc $01 +1890: 2f ef bra $1881 +1892: 10 ed bpl $1881 +1894: 7e f4 cmp y,$f4 +1896: 10 e9 bpl $1881 +1898: 8d 00 mov y,#$00 +189a: dc dec y +189b: d0 fd bne $189a +189d: e4 f6 mov a,$f6 +189f: c4 00 mov $00,a +18a1: e4 f7 mov a,$f7 +18a3: c4 01 mov $01,a +18a5: eb f4 mov y,$f4 +18a7: e4 f5 mov a,$f5 +18a9: cb f4 mov $f4,y +18ab: d0 d0 bne $187d +18ad: 6f ret + +18ae: 6f ret + +18af: e8 01 mov a,#$01 +18b1: c5 80 01 mov $0180,a +18b4: 6f ret + +18b5: e4 12 mov a,$12 +18b7: 68 10 cmp a,#$10 +18b9: 90 0c bcc $18c7 +18bb: e8 00 mov a,#$00 +18bd: 5d mov x,a +18be: d5 80 06 mov $0680+x,a +18c1: 3d inc x +18c2: c8 10 cmp x,#$10 +18c4: 90 f8 bcc $18be +18c6: 6f ret + +18c7: 28 0f and a,#$0f +18c9: 5d mov x,a +18ca: f5 80 06 mov a,$0680+x +18cd: 48 01 eor a,#$01 +18cf: d5 80 06 mov $0680+x,a +18d2: 6f ret + +18d3: e4 12 mov a,$12 +18d5: c4 5c mov $5c,a +18d7: e4 13 mov a,$13 +18d9: c4 57 mov $57,a +18db: 5f e1 13 jmp $13e1 + +18de: e4 12 mov a,$12 +18e0: 28 0f and a,#$0f +18e2: c4 59 mov $59,a +18e4: 3f b3 10 call $10b3 +18e7: e4 13 mov a,$13 +18e9: c4 5a mov $5a,a +18eb: e4 5b mov a,$5b +18ed: 5f 27 14 jmp $1427 + +18f0: e4 12 mov a,$12 +18f2: c4 5b mov $5b,a +18f4: 5f 27 14 jmp $1427 + +18f7: 5f fb 13 jmp $13fb + +18fa: e4 12 mov a,$12 +18fc: c5 50 04 mov $0450,a +18ff: e4 13 mov a,$13 +1901: c5 90 03 mov $0390,a +1904: 6f ret From c70fd544f57e82c77c4e3958076018b1d484044c Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:55:09 -0700 Subject: [PATCH 025/116] Add files via upload Added Martin Walker. --- snes/Rise of the Robots ($0600).bin | Bin 0 -> 3209 bytes snes/Rise of the Robots.s | 1585 ++++++++++++++++++++++ snes/Super James Pond (NTSC) ($0500).bin | Bin 0 -> 2470 bytes snes/Super James Pond (NTSC).s | 1232 +++++++++++++++++ snes/TimeSlip ($0600).bin | Bin 0 -> 3014 bytes snes/TimeSlip.s | 1470 ++++++++++++++++++++ 6 files changed, 4287 insertions(+) create mode 100644 snes/Rise of the Robots ($0600).bin create mode 100644 snes/Rise of the Robots.s create mode 100644 snes/Super James Pond (NTSC) ($0500).bin create mode 100644 snes/Super James Pond (NTSC).s create mode 100644 snes/TimeSlip ($0600).bin create mode 100644 snes/TimeSlip.s diff --git a/snes/Rise of the Robots ($0600).bin b/snes/Rise of the Robots ($0600).bin new file mode 100644 index 0000000000000000000000000000000000000000..2cd9287e961a219f8375536fc78defbc31ccd5d0 GIT binary patch literal 3209 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 Date: Sat, 4 Oct 2025 20:55:38 -0700 Subject: [PATCH 026/116] Rename snes/Rise of the Robots ($0600).bin to snes/Martin Walker/Rise of the Robots ($0600).bin --- .../Rise of the Robots ($0600).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => Martin Walker}/Rise of the Robots ($0600).bin (100%) diff --git a/snes/Rise of the Robots ($0600).bin b/snes/Martin Walker/Rise of the Robots ($0600).bin similarity index 100% rename from snes/Rise of the Robots ($0600).bin rename to snes/Martin Walker/Rise of the Robots ($0600).bin From 6eebfdea647b7eb70f084ec1c4a3f0e4929ccec7 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:55:56 -0700 Subject: [PATCH 027/116] Update and rename snes/Rise of the Robots.s to snes/Martin Walker/Rise of the Robots.s --- snes/{ => Martin Walker}/Rise of the Robots.s | 1 + 1 file changed, 1 insertion(+) rename snes/{ => Martin Walker}/Rise of the Robots.s (96%) diff --git a/snes/Rise of the Robots.s b/snes/Martin Walker/Rise of the Robots.s similarity index 96% rename from snes/Rise of the Robots.s rename to snes/Martin Walker/Rise of the Robots.s index c17275ae..6250c4bd 100644 --- a/snes/Rise of the Robots.s +++ b/snes/Martin Walker/Rise of the Robots.s @@ -1583,3 +1583,4 @@ 1285: dc dec y 1286: d0 f9 bne $1281 1288: 6f ret + From d658f703346daedf3e5eb34b06872e056e09398d Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:56:17 -0700 Subject: [PATCH 028/116] Rename snes/TimeSlip ($0600).bin to snes/Martin Walker/TimeSlip ($0600).bin --- snes/{ => Martin Walker}/TimeSlip ($0600).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => Martin Walker}/TimeSlip ($0600).bin (100%) diff --git a/snes/TimeSlip ($0600).bin b/snes/Martin Walker/TimeSlip ($0600).bin similarity index 100% rename from snes/TimeSlip ($0600).bin rename to snes/Martin Walker/TimeSlip ($0600).bin From 0b8d17be35bc8fa40059b59623a1c98b81d2e685 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:56:36 -0700 Subject: [PATCH 029/116] Update and rename snes/TimeSlip.s to snes/Martin Walker/TimeSlip.s --- snes/{ => Martin Walker}/TimeSlip.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename snes/{ => Martin Walker}/TimeSlip.s (96%) diff --git a/snes/TimeSlip.s b/snes/Martin Walker/TimeSlip.s similarity index 96% rename from snes/TimeSlip.s rename to snes/Martin Walker/TimeSlip.s index c6500cdf..988e0084 100644 --- a/snes/TimeSlip.s +++ b/snes/Martin Walker/TimeSlip.s @@ -1467,4 +1467,4 @@ 11c0: 7e f4 cmp y,$f4 11c2: d0 fc bne $11c0 11c4: fc inc y -11c5: 6f ret \ No newline at end of file +11c5: 6f ret From 689912212768ddc701b10eda79eb64588f71f815 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:56:55 -0700 Subject: [PATCH 030/116] Rename snes/Super James Pond (NTSC) ($0500).bin to snes/Martin Walker/Super James Pond (NTSC) ($0500).bin --- .../Super James Pond (NTSC) ($0500).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => Martin Walker}/Super James Pond (NTSC) ($0500).bin (100%) diff --git a/snes/Super James Pond (NTSC) ($0500).bin b/snes/Martin Walker/Super James Pond (NTSC) ($0500).bin similarity index 100% rename from snes/Super James Pond (NTSC) ($0500).bin rename to snes/Martin Walker/Super James Pond (NTSC) ($0500).bin From 0b739a90065625367883657c81a683e334d96b01 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:57:15 -0700 Subject: [PATCH 031/116] Update and rename snes/Super James Pond (NTSC).s to snes/Martin Walker/Super James Pond (NTSC).s --- snes/{ => Martin Walker}/Super James Pond (NTSC).s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename snes/{ => Martin Walker}/Super James Pond (NTSC).s (96%) diff --git a/snes/Super James Pond (NTSC).s b/snes/Martin Walker/Super James Pond (NTSC).s similarity index 96% rename from snes/Super James Pond (NTSC).s rename to snes/Martin Walker/Super James Pond (NTSC).s index 9ec18ffe..aa7cc2a0 100644 --- a/snes/Super James Pond (NTSC).s +++ b/snes/Martin Walker/Super James Pond (NTSC).s @@ -1229,4 +1229,4 @@ 0e7b: d5 71 02 mov $0271+x,a 0e7e: 6f ret -0e7f: db $7f,$00,$00,$00,$00,$00,$00,$00,$58,$bf,$db,$f0,$fe,$07,$0c,$0c,$0c,$21,$2b,$2b,$13,$fe,$f3,$f9,$34,$33,$00,$d9,$e5,$01,$fc,$eb \ No newline at end of file +0e7f: db $7f,$00,$00,$00,$00,$00,$00,$00,$58,$bf,$db,$f0,$fe,$07,$0c,$0c,$0c,$21,$2b,$2b,$13,$fe,$f3,$f9,$34,$33,$00,$d9,$e5,$01,$fc,$eb From b386be3ac726b51f91b876ed00b5311a33b18910 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:57:51 -0700 Subject: [PATCH 032/116] Add files via upload --- snes/Theme Park ($0300).bin | Bin 0 -> 3123 bytes snes/Theme Park.s | 1556 +++++++++++++++++++++++++++++++++++ 2 files changed, 1556 insertions(+) create mode 100644 snes/Theme Park ($0300).bin create mode 100644 snes/Theme Park.s diff --git a/snes/Theme Park ($0300).bin b/snes/Theme Park ($0300).bin new file mode 100644 index 0000000000000000000000000000000000000000..fcd7906a4a155078b99ee90c7646c474c67d2e56 GIT binary patch literal 3123 zcmcgueQZfm58$`-P(?_T7 z3qc)isg^Z+yKI%Z{DH)>XI2i<3MW9I|t5 z2g=a?nl#(*eB68PIrp6VyXQGZo|z?E3#4b3K!FU-616~%m1LMBAJ1nG=U@V&mzT}Y zvMv<+qvGvsItSOz2BP93feoaqm56Nw1_^8?%j=XS7dc9o=N>og+&*JIx6@d#<_4ZL zXN>iRtuJPmqnE+FJ$)L?Ipvy9jief$;+3FNo<%KAA8XL$l$TtY0m#=Gn~Ac8un!aH zAka>{rHw@>%@_{Ctdh?u2L$;HhO`QXt-Qc1ZkM$xA5;ztR%f15zU8nsBYWB*zpT9M zlz*ZqPWea5`%ZZnqg379zWf#qoTB+*2#1f|p0ca&4U?xJ+CM6dabPOAOFK`ClA zl+@x*ss6^w=sMJnaxZc(ap$><+$UUtyT!Tq2)~wZ;S>B8{&D^lei#1+zuj@2pW(7D zUFbgUjnDOCwtOjmblUuSiNGiun?9W6ZDV@i$iLT_dX;3Wy01mo<&uoI}dPadn zkZ4wWzG~=H=dalu80}WaJ*A^!W_6SeX$s{$sZ`DgBhdO7k5IDpbK|IPqw01YkPR^T zHTENu+lnSXzIA;2(3?!to6u}E@y%vVqZ8AomrZ_j>*#$`AC+8JN|)=RWi#SAkrvI^ zM7lym3}bxKRYOF2^reGRhp~*ANb25JtPPQfLF-uBi6PUOglfsdtyoMeG2DhMYFet* ziUHzQ8@k`L*cw`Fqt2<%`Vr7S08(;0dCq z`75(zxlly2}s>jZlvBRFH--MAE`Jc;tf{*M-&rq5Qq>bLjZx# z5?Do6KSa{)B#rH+lUxrGe^_};$U)XMu^&61MsJ52&VdeCbo2Ij*tE4l+(c+#IbUnc zs$)!O48nHEC{#q*n$hn1LI2t)Bv|Zk&$*Rjf<`(e5@;Y$opto+ye(lf-0LnP*FpWc zG%2At0+SM9*7k{|aU-U~kS(2xmF8Z(JEsS1$%vu3(WrZEDeoF!%~o84er#zNtxJ=` zjVLtgz9B1iMk-p3XC$$u?E9|QlHI8X?QZBkTf(d*-H)6>?#;0)JJVgZB(8d5`P_rs zll>2*qC0Kr#H3_a(`C2_eK~CDWJ^GIPD*kblUQoWo8nD$#@f=*shAkdf$ZzWkIrIQ zL^hYk$n0AA%V;aEEyopXNga+QTH`oI*I)|MnX*|MdctWs>ZQ}vj+H;i$YE4;%mUAo z$AXru53N03t;4PAWYU&O@I)KRaXd)9q)?C3jm;=QUk)4Q5oteKE9aKFn#|N(VMCbPBMSS1vFPR)Dn^JaM*uO6`K)d)R-ZY;mG+T{9VFNN9)nBg8)6IF;gL?E^B<`9A?SoH`S z7p|;F{Pa#&#K*-O7Kcz*9GOS1Q`D1C^}-#j0A)_aW*zSF{<(AyzT=tu}VSBSO; zL`^7;)$*Ett6ujY(#q!+!je06k1fdpUV;#vnThudBDAo|2s5i%aHQ-I1z<7RGGuy^ z6(uUWR-|ZI&;^8h5g(mJqD4vvXa)zb>c06}|D=>GmY7DNy-@3qm%+Uv=?pHS7e1!u(L1WKRSWj2@zjdb`mG;n(>yv5~iK8 zy`{bX-&D<-JGfr^#}edk!{Xd}YhiKyyjFS((}vBChgbdwH1kd7Ct9FER(AJk>GK!f zdDpmj>Aj&xW1_&bi~>91OYkJ@fqn2*=!1SZ1mA@3LK=REFN!hv6}$$&g+IU_VG=C( z7c4`7X3NnZGm3jKqF{RoNHWarS-o4%^1{a>uz#9Pr)zG5!MY zc6`P0s^gC1Y3EzcnCr(b5WXiY3O}f-cAs|d@f1C;d!P61@Ye-EEQs?#XSk($f6Xsz zKU>wmCRg|U$Yu#*A2)uw&fmPZ<;=z%@mcv#9e;V4-!{+xrh(RMHpdB8C9hl2r zP~mHE7@mV&(7XK1Rv*M62|bWv2i0Q`NH-wB71)jWYMANy^aXea-US0L!X literal 0 HcmV?d00001 diff --git a/snes/Theme Park.s b/snes/Theme Park.s new file mode 100644 index 00000000..902b0abd --- /dev/null +++ b/snes/Theme Park.s @@ -0,0 +1,1556 @@ +0300: 20 clrp ; clear sound ram +0301: 8f 6c f2 mov $f2,#$6c ; dsp envelope +0304: 8f 38 f3 mov $f3,#$38 +0307: 8f 4d f2 mov $f2,#$4d ; disable echo +030a: 8f 00 f3 mov $f3,#$00 +030d: 8f 6d f2 mov $f2,#$6d ; echo buffer +0310: 8f 60 f3 mov $f3,#$60 +0313: 8f 7d f2 mov $f2,#$7d ; echo delay +0316: 8f 00 f3 mov $f3,#$00 +0319: 8f 00 f4 mov $f4,#$00 ; port 0 +031c: 8f e7 f5 mov $f5,#$e7 ; port 1 +031f: cd 70 mov x,#$70 +0321: e8 00 mov a,#$00 +0323: d4 00 mov $00+x,a +0325: 1d dec x +0326: c8 ff cmp x,#$ff +0328: d0 f9 bne $0323 +032a: cd 07 mov x,#$07 +032c: e8 00 mov a,#$00 +032e: d4 65 mov $65+x,a +0330: 1d dec x +0331: 10 fb bpl $032e +0333: cd 7f mov x,#$7f +0335: e8 00 mov a,#$00 +0337: d5 bb 0f mov $0fbb+x,a +033a: 1d dec x +033b: 10 fa bpl $0337 +033d: 8f 00 29 mov $29,#$00 +0340: 8f 3b 2b mov $2b,#$3b +0343: 8f 10 2c mov $2c,#$10 +0346: 8f 00 6d mov $6d,#$00 +0349: 8f 00 34 mov $34,#$00 +034c: 8f ff 23 mov $23,#$ff +034f: 3f fd 07 call $07fd +0352: 8f 7c f2 mov $f2,#$7c +0355: 8f 00 f3 mov $f3,#$00 +0358: e8 46 mov a,#$46 +035a: c4 f7 mov $f7,a +035c: e8 55 mov a,#$55 +035e: c4 f5 mov $f5,a +0360: e8 43 mov a,#$43 +0362: c4 f6 mov $f6,a +0364: e4 f4 mov a,$f4 +0366: 68 4b cmp a,#$4b +0368: d0 ee bne $0358 +036a: c4 27 mov $27,a +036c: c4 f7 mov $f7,a +036e: 8d fa mov y,#$fa +0370: cd ff mov x,#$ff +0372: 1d dec x +0373: c8 00 cmp x,#$00 +0375: d0 fb bne $0372 +0377: dc dec y +0378: ad 00 cmp y,#$00 +037a: d0 f4 bne $0370 + +037c: 3f d5 0d call $0dd5 +037f: 60 clrc +0380: 1c asl a +0381: 5d mov x,a +0382: 1f 54 04 jmp ($0454+x) + +0385: 3f 11 06 call $0611 +0388: 2f f2 bra $037c + +038a: 3f d5 0d call $0dd5 +038d: 2d push a +038e: 3f d5 0d call $0dd5 +0391: 2d push a +0392: e4 6d mov a,$6d +0394: d0 03 bne $0399 +0396: 3f 8a 07 call $078a +0399: ae pop a +039a: 68 00 cmp a,#$00 +039c: f0 1a beq $03b8 +039e: c4 34 mov $34,a +03a0: 8f 3f 36 mov $36,#$3f +03a3: 8f 02 35 mov $35,#$02 +03a6: 8f 00 32 mov $32,#$00 +03a9: 8f 00 31 mov $31,#$00 +03ac: 8f 0c f2 mov $f2,#$0c +03af: 8f 00 f3 mov $f3,#$00 +03b2: 8f 1c f2 mov $f2,#$1c +03b5: 8f 00 f3 mov $f3,#$00 +03b8: ae pop a +03b9: c4 05 mov $05,a +03bb: 8f 01 17 mov $17,#$01 +03be: 2f bc bra $037c + +03c0: 3f 63 08 call $0863 +03c3: 2f b7 bra $037c + +03c5: 8f 7c f2 mov $f2,#$7c +03c8: e4 f3 mov a,$f3 +03ca: c4 f7 mov $f7,a +03cc: 3f 7e 04 call $047e +03cf: 3f 0a 07 call $070a +03d2: e4 17 mov a,$17 +03d4: f0 11 beq $03e7 +03d6: 3f 70 08 call $0870 +03d9: e4 33 mov a,$33 +03db: f0 03 beq $03e0 +03dd: 3f 75 05 call $0575 +03e0: e4 34 mov a,$34 +03e2: f0 03 beq $03e7 +03e4: 3f 59 05 call $0559 +03e7: 2f 93 bra $037c + +03e9: 3f 93 06 call $0693 +03ec: 2f 8e bra $037c + +03ee: 3f 3f 06 call $063f +03f1: 2f 89 bra $037c + +03f3: 3f d3 06 call $06d3 +03f6: 2f 84 bra $037c + +03f8: e4 6d mov a,$6d +03fa: d0 09 bne $0405 + +03fc: 8f 00 29 mov $29,#$00 +03ff: 8f 3b 2b mov $2b,#$3b +0402: 8f 10 2c mov $2c,#$10 +0405: 2f b9 bra $03c0 + +0407: 3f d5 0d call $0dd5 +040a: 2d push a +040b: 5d mov x,a +040c: e8 00 mov a,#$00 +040e: d4 65 mov $65+x,a +0410: ae pop a +0411: 48 ff eor a,#$ff +0413: 60 clrc +0414: 88 08 adc a,#$08 +0416: 3f 33 0d call $0d33 +0419: 5f 7c 03 jmp $037c + +041c: 3f 62 07 call $0762 +041f: 5f 7c 03 jmp $037c + +0422: 3f 6d 07 call $076d +0425: 5f 7c 03 jmp $037c + +0428: 3f d5 0d call $0dd5 +042b: c4 33 mov $33,a +042d: 5f 7c 03 jmp $037c + +0430: 3f 9e 05 call $059e +0433: 5f 7c 03 jmp $037c + +0436: 3f d5 0d call $0dd5 +0439: c4 15 mov $15,a +043b: 3f d5 0d call $0dd5 +043e: c4 16 mov $16,a +0440: 3f 8a 07 call $078a +0443: 5f 7c 03 jmp $037c + +0446: 3f b6 05 call $05b6 +0449: 5f 7c 03 jmp $037c + +044c: 3f d5 0d call $0dd5 +044f: c4 23 mov $23,a +0451: 5f 7c 03 jmp $037c + +0454: dw $037c +0456: dw $0385 +0458: dw $038a +045a: dw $03c0 +045c: dw $03c5 +045e: dw $03e9 +0460: dw $03f3 +0462: dw $03f8 +0464: dw $0407 +0466: dw $041c +0468: dw $0422 +046a: dw $0428 +046c: dw $0430 +046e: dw $0436 +0470: dw $0446 +0472: dw $0496 +0474: dw $044c +0476: dw $04b6 +0478: dw $053a +047a: dw $04d6 +047c: dw $03ee + +047e: cd 07 mov x,#$07 +0480: 8d 08 mov y,#$08 +0482: 3c rol a +0483: 90 0c bcc $0491 +0485: 2d push a +0486: f4 65 mov a,$65+x +0488: 68 00 cmp a,#$00 +048a: f0 04 beq $0490 +048c: e8 00 mov a,#$00 +048e: d4 65 mov $65+x,a +0490: ae pop a +0491: 1d dec x +0492: dc dec y +0493: d0 ed bne $0482 +0495: 6f ret + +0496: 3f d5 0d call $0dd5 +0499: 2d push a +049a: 48 ff eor a,#$ff +049c: 60 clrc +049d: 88 08 adc a,#$08 +049f: 5d mov x,a +04a0: e8 01 mov a,#$01 +04a2: d4 5b mov $5b+x,a +04a4: ae pop a +04a5: 1c asl a +04a6: 1c asl a +04a7: 5d mov x,a +04a8: 8d 04 mov y,#$04 +04aa: 3f d5 0d call $0dd5 +04ad: d4 3b mov $3b+x,a +04af: 3d inc x +04b0: dc dec y +04b1: d0 f7 bne $04aa +04b3: 5f 7c 03 jmp $037c + +04b6: 3f d5 0d call $0dd5 +04b9: c4 12 mov $12,a +04bb: 3f d5 0d call $0dd5 +04be: c4 13 mov $13,a +04c0: 04 12 or a,$12 +04c2: f0 0d beq $04d1 +04c4: 60 clrc +04c5: e4 12 mov a,$12 +04c7: 88 3b adc a,#$3b +04c9: c4 6e mov $6e,a +04cb: e4 13 mov a,$13 +04cd: 88 10 adc a,#$10 +04cf: c4 6f mov $6f,a +04d1: c4 6d mov $6d,a +04d3: 5f 7c 03 jmp $037c + +04d6: 3f d5 0d call $0dd5 +04d9: c4 25 mov $25,a +04db: 3f d5 0d call $0dd5 +04de: c4 26 mov $26,a +04e0: 60 clrc +04e1: e4 6e mov a,$6e +04e3: c4 12 mov $12,a +04e5: c4 10 mov $10,a +04e7: 84 25 adc a,$25 +04e9: c4 2b mov $2b,a +04eb: e4 6f mov a,$6f +04ed: c4 13 mov $13,a +04ef: c4 11 mov $11,a +04f1: 84 26 adc a,$26 +04f3: c4 2c mov $2c,a +04f5: 3f e4 0d call $0de4 +04f8: 8d 00 mov y,#$00 +04fa: f7 10 mov a,($10)+y +04fc: 5d mov x,a +04fd: c4 29 mov $29,a +04ff: c4 2a mov $2a,a +0501: 60 clrc +0502: e4 10 mov a,$10 +0504: 88 01 adc a,#$01 +0506: c4 10 mov $10,a +0508: e4 11 mov a,$11 +050a: 88 00 adc a,#$00 +050c: c4 11 mov $11,a +050e: 8d 00 mov y,#$00 +0510: 8f 00 12 mov $12,#$00 +0513: 8f 02 13 mov $13,#$02 +0516: 60 clrc +0517: f7 10 mov a,($10)+y +0519: 84 10 adc a,$10 +051b: d7 12 mov ($12)+y,a +051d: fc inc y +051e: f7 10 mov a,($10)+y +0520: 84 11 adc a,$11 +0522: d7 12 mov ($12)+y,a +0524: fc inc y +0525: 60 clrc +0526: f7 10 mov a,($10)+y +0528: 84 10 adc a,$10 +052a: d7 12 mov ($12)+y,a +052c: fc inc y +052d: f7 10 mov a,($10)+y +052f: 84 11 adc a,$11 +0531: d7 12 mov ($12)+y,a +0533: fc inc y +0534: 1d dec x +0535: d0 df bne $0516 +0537: 5f 7c 03 jmp $037c + +053a: 3f d5 0d call $0dd5 +053d: c4 25 mov $25,a +053f: 3f d5 0d call $0dd5 +0542: c4 26 mov $26,a +0544: e8 3b mov a,#$3b +0546: c4 12 mov $12,a +0548: c4 15 mov $15,a +054a: e8 10 mov a,#$10 +054c: c4 13 mov $13,a +054e: c4 16 mov $16,a +0550: 3f e4 0d call $0de4 +0553: 3f 8a 07 call $078a +0556: 5f 7c 03 jmp $037c + +0559: ab 31 inc $31 +055b: ab 31 inc $31 +055d: ab 32 inc $32 +055f: ab 32 inc $32 +0561: 8b 36 dec $36 +0563: 10 03 bpl $0568 +0565: 8f 00 34 mov $34,#$00 +0568: e4 31 mov a,$31 +056a: 8f 0c f2 mov $f2,#$0c +056d: c4 f3 mov $f3,a +056f: 8f 1c f2 mov $f2,#$1c +0572: c4 f3 mov $f3,a +0574: 6f ret + +0575: e4 31 mov a,$31 +0577: f0 09 beq $0582 +0579: 80 setc +057a: a4 33 sbc a,$33 +057c: b0 02 bcs $0580 +057e: e8 00 mov a,#$00 +0580: c4 31 mov $31,a +0582: e4 32 mov a,$32 +0584: f0 09 beq $058f +0586: 80 setc +0587: a4 33 sbc a,$33 +0589: b0 02 bcs $058d +058b: e8 00 mov a,#$00 +058d: c4 32 mov $32,a +058f: e4 31 mov a,$31 +0591: 8f 0c f2 mov $f2,#$0c +0594: c4 f3 mov $f3,a +0596: e4 32 mov a,$32 +0598: 8f 1c f2 mov $f2,#$1c +059b: c4 f3 mov $f3,a +059d: 6f ret + +059e: 3f d5 0d call $0dd5 +05a1: c4 12 mov $12,a +05a3: 3f d5 0d call $0dd5 +05a6: c4 13 mov $13,a +05a8: 3f d5 0d call $0dd5 +05ab: c4 25 mov $25,a +05ad: 3f d5 0d call $0dd5 +05b0: c4 26 mov $26,a +05b2: 3f e4 0d call $0de4 +05b5: 6f ret + +05b6: 3f d5 0d call $0dd5 +05b9: c4 37 mov $37,a +05bb: 3f d5 0d call $0dd5 +05be: c4 38 mov $38,a +05c0: 3f d5 0d call $0dd5 +05c3: c4 25 mov $25,a +05c5: 3f d5 0d call $0dd5 +05c8: c4 26 mov $26,a +05ca: 3f d5 0d call $0dd5 +05cd: c4 39 mov $39,a +05cf: 3f d5 0d call $0dd5 +05d2: c4 3a mov $3a,a +05d4: 8d 00 mov y,#$00 +05d6: 3f d5 0d call $0dd5 +05d9: 68 01 cmp a,#$01 +05db: f0 19 beq $05f6 +05dd: f7 37 mov a,($37)+y +05df: d7 39 mov ($39)+y,a +05e1: fc inc y +05e2: d0 04 bne $05e8 +05e4: ab 38 inc $38 +05e6: ab 3a inc $3a +05e8: 80 setc +05e9: b8 01 25 sbc $25,#$01 +05ec: b8 00 26 sbc $26,#$00 +05ef: e4 25 mov a,$25 +05f1: 04 26 or a,$26 +05f3: d0 e8 bne $05dd +05f5: 6f ret + +05f6: f7 37 mov a,($37)+y +05f8: d7 39 mov ($39)+y,a +05fa: dc dec y +05fb: ad ff cmp y,#$ff +05fd: d0 04 bne $0603 +05ff: 8b 38 dec $38 +0601: 8b 3a dec $3a +0603: 80 setc +0604: b8 01 25 sbc $25,#$01 +0607: b8 00 26 sbc $26,#$00 +060a: e4 25 mov a,$25 +060c: 04 26 or a,$26 +060e: d0 e6 bne $05f6 +0610: 6f ret + +0611: 3f d5 0d call $0dd5 +0614: c4 25 mov $25,a +0616: 3f d5 0d call $0dd5 +0619: c4 26 mov $26,a +061b: 60 clrc +061c: e8 3b mov a,#$3b +061e: 84 25 adc a,$25 +0620: c4 2b mov $2b,a +0622: c4 2d mov $2d,a +0624: e8 10 mov a,#$10 +0626: 84 26 adc a,$26 +0628: c4 2c mov $2c,a +062a: c4 2e mov $2e,a +062c: 8f 3b 12 mov $12,#$3b +062f: 8f 10 13 mov $13,#$10 +0632: 3f e4 0d call $0de4 +0635: 8f 3b 15 mov $15,#$3b +0638: 8f 10 16 mov $16,#$10 +063b: 3f 8a 07 call $078a +063e: 6f ret + +063f: 3f d5 0d call $0dd5 +0642: 2d push a +0643: 60 clrc +0644: 84 29 adc a,$29 +0646: c4 2a mov $2a,a +0648: ae pop a +0649: 1c asl a +064a: 5d mov x,a +064b: 3f d5 0d call $0dd5 +064e: c4 25 mov $25,a +0650: 3f d5 0d call $0dd5 +0653: c4 26 mov $26,a +0655: e4 29 mov a,$29 +0657: 1c asl a +0658: 1c asl a +0659: c4 12 mov $12,a +065b: 8f 02 13 mov $13,#$02 +065e: 8d 00 mov y,#$00 +0660: 3f d5 0d call $0dd5 +0663: c4 2f mov $2f,a +0665: 3f d5 0d call $0dd5 +0668: c4 30 mov $30,a +066a: 60 clrc +066b: e4 2f mov a,$2f +066d: 84 2b adc a,$2b +066f: d7 12 mov ($12)+y,a +0671: fc inc y +0672: e4 30 mov a,$30 +0674: 84 2c adc a,$2c +0676: d7 12 mov ($12)+y,a +0678: fc inc y +0679: 1d dec x +067a: d0 e4 bne $0660 +067c: 60 clrc +067d: e4 2b mov a,$2b +067f: 84 25 adc a,$25 +0681: c4 2d mov $2d,a +0683: e4 2c mov a,$2c +0685: 84 26 adc a,$26 +0687: c4 2e mov $2e,a +0689: fa 2b 12 mov ($12),($2b) +068c: fa 2c 13 mov ($13),($2c) +068f: 3f e4 0d call $0de4 +0692: 6f ret + +0693: 3f d5 0d call $0dd5 +0696: 1c asl a +0697: 5d mov x,a +0698: 3f d5 0d call $0dd5 +069b: c4 25 mov $25,a +069d: 3f d5 0d call $0dd5 +06a0: c4 26 mov $26,a +06a2: e4 2a mov a,$2a +06a4: 1c asl a +06a5: 1c asl a +06a6: c4 12 mov $12,a +06a8: 8f 02 13 mov $13,#$02 +06ab: 8d 00 mov y,#$00 +06ad: 3f d5 0d call $0dd5 +06b0: c4 2f mov $2f,a +06b2: 3f d5 0d call $0dd5 +06b5: c4 30 mov $30,a +06b7: 60 clrc +06b8: e4 2f mov a,$2f +06ba: 84 2d adc a,$2d +06bc: d7 12 mov ($12)+y,a +06be: fc inc y +06bf: e4 30 mov a,$30 +06c1: 84 2e adc a,$2e +06c3: d7 12 mov ($12)+y,a +06c5: fc inc y +06c6: 1d dec x +06c7: d0 e4 bne $06ad +06c9: fa 2d 12 mov ($12),($2d) +06cc: fa 2e 13 mov ($13),($2e) +06cf: 3f e4 0d call $0de4 +06d2: 6f ret + +06d3: 3f d5 0d call $0dd5 +06d6: 9f xcn a +06d7: fd mov y,a +06d8: 3f d5 0d call $0dd5 +06db: 76 bb 0f cmp a,$0fbb+y +06de: 30 1a bmi $06fa +06e0: d6 bb 0f mov $0fbb+y,a +06e3: fc inc y +06e4: cd 04 mov x,#$04 +06e6: 3f d5 0d call $0dd5 +06e9: d6 bb 0f mov $0fbb+y,a +06ec: fc inc y +06ed: 1d dec x +06ee: d0 f6 bne $06e6 +06f0: 3f d5 0d call $0dd5 +06f3: 60 clrc +06f4: 84 29 adc a,$29 +06f6: d6 bb 0f mov $0fbb+y,a +06f9: 6f ret + +06fa: 3f d5 0d call $0dd5 +06fd: 3f d5 0d call $0dd5 +0700: 3f d5 0d call $0dd5 +0703: 3f d5 0d call $0dd5 +0706: 3f d5 0d call $0dd5 +0709: 6f ret + +070a: 8f 80 20 mov $20,#$80 +070d: 8d 70 mov y,#$70 +070f: f6 bb 0f mov a,$0fbb+y +0712: 68 00 cmp a,#$00 +0714: f0 3c beq $0752 +0716: 6d push y +0717: 2d push a +0718: dd mov a,y +0719: 9f xcn a +071a: 5d mov x,a +071b: ae pop a +071c: 74 65 cmp a,$65+x +071e: 30 3f bmi $075f +0720: d4 65 mov $65+x,a +0722: e8 00 mov a,#$00 +0724: d6 bb 0f mov $0fbb+y,a +0727: 8f 5c f2 mov $f2,#$5c +072a: fa 20 f3 mov ($f3),($20) +072d: cd 05 mov x,#$05 +072f: f6 bc 0f mov a,$0fbc+y +0732: cb f2 mov $f2,y +0734: c4 f3 mov $f3,a +0736: fc inc y +0737: 1d dec x +0738: d0 f5 bne $072f +073a: cb f2 mov $f2,y +073c: 8f ff f3 mov $f3,#$ff +073f: fc inc y +0740: cb f2 mov $f2,y +0742: 8f e0 f3 mov $f3,#$e0 +0745: 8f 4c f2 mov $f2,#$4c +0748: fa 20 f3 mov ($f3),($20) +074b: 8f 5c f2 mov $f2,#$5c +074e: 8f 00 f3 mov $f3,#$00 +0751: ee pop y +0752: 60 clrc +0753: 6b 20 ror $20 +0755: dd mov a,y +0756: 9f xcn a +0757: 9c dec a +0758: 30 04 bmi $075e +075a: 9f xcn a +075b: fd mov y,a +075c: 2f b1 bra $070f +075e: 6f ret + +075f: ee pop y +0760: 2f f0 bra $0752 +0762: 3f d5 0d call $0dd5 +0765: 60 clrc +0766: 1c asl a +0767: 1c asl a +0768: 1c asl a +0769: 1c asl a +076a: 5d mov x,a +076b: 2f 0d bra $077a +076d: 3f d5 0d call $0dd5 +0770: 60 clrc +0771: 1c asl a +0772: 1c asl a +0773: 1c asl a +0774: 1c asl a +0775: 5d mov x,a +0776: 3d inc x +0777: 3d inc x +0778: 2f 00 bra $077a +077a: 3f d5 0d call $0dd5 +077d: d8 f2 mov $f2,x +077f: c4 f3 mov $f3,a +0781: 3d inc x +0782: 3f d5 0d call $0dd5 +0785: d8 f2 mov $f2,x +0787: c4 f3 mov $f3,a +0789: 6f ret + +078a: 8d 13 mov y,#$13 +078c: cd 0b mov x,#$0b +078e: f7 15 mov a,($15)+y +0790: d4 06 mov $06+x,a +0792: 1d dec x +0793: dc dec y +0794: 10 f8 bpl $078e +0796: ba 15 movw ya,$15 +0798: 7a 06 addw ya,$06 +079a: da 06 movw $06,ya +079c: ba 15 movw ya,$15 +079e: 7a 08 addw ya,$08 +07a0: da 08 movw $08,ya +07a2: ba 15 movw ya,$15 +07a4: 7a 0a addw ya,$0a +07a6: da 0a movw $0a,ya +07a8: ba 15 movw ya,$15 +07aa: 7a 0c addw ya,$0c +07ac: da 0c movw $0c,ya +07ae: ba 15 movw ya,$15 +07b0: 7a 0e addw ya,$0e +07b2: da 0e movw $0e,ya +07b4: ba 15 movw ya,$15 +07b6: 7a 10 addw ya,$10 +07b8: da 10 movw $10,ya +07ba: e4 6d mov a,$6d +07bc: d0 3f bne $07fd +07be: 8d 00 mov y,#$00 +07c0: f7 10 mov a,($10)+y +07c2: 5d mov x,a +07c3: c4 29 mov $29,a +07c5: c4 2a mov $2a,a +07c7: 60 clrc +07c8: e4 10 mov a,$10 +07ca: 88 01 adc a,#$01 +07cc: c4 10 mov $10,a +07ce: e4 11 mov a,$11 +07d0: 88 00 adc a,#$00 +07d2: c4 11 mov $11,a +07d4: 8d 00 mov y,#$00 +07d6: 8f 00 12 mov $12,#$00 +07d9: 8f 02 13 mov $13,#$02 +07dc: 60 clrc +07dd: f7 10 mov a,($10)+y +07df: 84 10 adc a,$10 +07e1: d7 12 mov ($12)+y,a +07e3: fc inc y +07e4: f7 10 mov a,($10)+y +07e6: 84 11 adc a,$11 +07e8: d7 12 mov ($12)+y,a +07ea: fc inc y +07eb: 60 clrc +07ec: f7 10 mov a,($10)+y +07ee: 84 10 adc a,$10 +07f0: d7 12 mov ($12)+y,a +07f2: fc inc y +07f3: f7 10 mov a,($10)+y +07f5: 84 11 adc a,$11 +07f7: d7 12 mov ($12)+y,a +07f9: fc inc y +07fa: 1d dec x +07fb: d0 df bne $07dc +07fd: 8f 00 05 mov $05,#$00 +0800: 8f 00 1c mov $1c,#$00 +0803: 8f 06 01 mov $01,#$06 +0806: 8f 00 00 mov $00,#$00 +0809: 8f 00 02 mov $02,#$00 +080c: 8f 00 17 mov $17,#$00 +080f: 8f 18 24 mov $24,#$18 +0812: 8f 7f 31 mov $31,#$7f +0815: 8f 7f 32 mov $32,#$7f +0818: 8f 00 33 mov $33,#$00 +081b: 8f d6 12 mov $12,#$d6 +081e: 8f 0e 13 mov $13,#$0e +0821: 3f 42 08 call $0842 +0824: e8 00 mov a,#$00 +0826: cd 07 mov x,#$07 +0828: d4 5b mov $5b+x,a +082a: 1d dec x +082b: 10 fb bpl $0828 +082d: 6f ret + +082e: 8f 00 12 mov $12,#$00 +0831: 8f 60 13 mov $13,#$60 +0834: e8 00 mov a,#$00 +0836: 8d 00 mov y,#$00 +0838: d7 12 mov ($12)+y,a +083a: fc inc y +083b: d0 fb bne $0838 +083d: ab 13 inc $13 +083f: d0 f7 bne $0838 +0841: 6f ret + +0842: 6d push y +0843: 8d 00 mov y,#$00 +0845: f7 12 mov a,($12)+y +0847: 68 ff cmp a,#$ff +0849: f0 16 beq $0861 +084b: c4 f2 mov $f2,a +084d: 60 clrc +084e: 98 01 12 adc $12,#$01 +0851: 98 00 13 adc $13,#$00 +0854: f7 12 mov a,($12)+y +0856: c4 f3 mov $f3,a +0858: 60 clrc +0859: 98 01 12 adc $12,#$01 +085c: 98 00 13 adc $13,#$00 +085f: 2f e4 bra $0845 +0861: ee pop y +0862: 6f ret + +0863: 8f d6 12 mov $12,#$d6 +0866: 8f 0e 13 mov $13,#$0e +0869: 3f 42 08 call $0842 +086c: 8f 00 17 mov $17,#$00 +086f: 6f ret + +0870: 8b 00 dec $00 +0872: 30 02 bmi $0876 +0874: d0 03 bne $0879 +0876: 3f 71 0a call $0a71 +0879: 3f 7d 08 call $087d +087c: 6f ret + +087d: 8f 33 1e mov $1e,#$33 +0880: 8f 0f 1f mov $1f,#$0f +0883: 8f 00 14 mov $14,#$00 +0886: cd 05 mov x,#$05 +0888: 4d push x +0889: 8d 04 mov y,#$04 +088b: f7 1e mov a,($1e)+y +088d: 1c asl a +088e: 5d mov x,a +088f: 1f 51 0a jmp ($0a51+x) + +0892: fc inc y ; effect 01 - portamento up +0893: f7 1e mov a,($1e)+y +0895: 1c asl a +0896: 8d 00 mov y,#$00 +0898: 60 clrc +0899: 97 1e adc a,($1e)+y +089b: d7 1e mov ($1e)+y,a +089d: fc inc y +089e: f7 1e mov a,($1e)+y +08a0: 88 00 adc a,#$00 +08a2: d7 1e mov ($1e)+y,a +08a4: 8f 01 22 mov $22,#$01 +08a7: 5f 10 0a jmp $0a10 + +08aa: fc inc y ; effect 02 - portamento down +08ab: f7 1e mov a,($1e)+y +08ad: 1c asl a +08ae: c4 20 mov $20,a +08b0: 8d 00 mov y,#$00 +08b2: 80 setc +08b3: f7 1e mov a,($1e)+y +08b5: a4 20 sbc a,$20 +08b7: d7 1e mov ($1e)+y,a +08b9: fc inc y +08ba: f7 1e mov a,($1e)+y +08bc: a8 00 sbc a,#$00 +08be: d7 1e mov ($1e)+y,a +08c0: 8f 01 22 mov $22,#$01 +08c3: 5f 10 0a jmp $0a10 + +08c6: 8d 0f mov y,#$0f ; effect 03 - portamento to note +08c8: f7 1e mov a,($1e)+y +08ca: c4 20 mov $20,a +08cc: fc inc y +08cd: f7 1e mov a,($1e)+y +08cf: c4 21 mov $21,a +08d1: 8d 0c mov y,#$0c +08d3: f7 1e mov a,($1e)+y +08d5: f0 07 beq $08de +08d7: 68 02 cmp a,#$02 +08d9: d0 2b bne $0906 +08db: 5f 10 0a jmp $0a10 + +08de: 8d 00 mov y,#$00 +08e0: 60 clrc +08e1: f7 1e mov a,($1e)+y +08e3: 84 20 adc a,$20 +08e5: d7 1e mov ($1e)+y,a +08e7: c4 20 mov $20,a +08e9: fc inc y +08ea: f7 1e mov a,($1e)+y +08ec: 84 21 adc a,$21 +08ee: d7 1e mov ($1e)+y,a +08f0: c4 21 mov $21,a +08f2: 8d 0d mov y,#$0d +08f4: 80 setc +08f5: e4 20 mov a,$20 +08f7: b7 1e sbc a,($1e)+y +08f9: fc inc y +08fa: e4 21 mov a,$21 +08fc: b7 1e sbc a,($1e)+y +08fe: 10 28 bpl $0928 +0900: 8f 01 22 mov $22,#$01 +0903: 5f 10 0a jmp $0a10 + +0906: 8d 00 mov y,#$00 +0908: 80 setc +0909: f7 1e mov a,($1e)+y +090b: a4 20 sbc a,$20 +090d: d7 1e mov ($1e)+y,a +090f: c4 20 mov $20,a +0911: fc inc y +0912: f7 1e mov a,($1e)+y +0914: a4 21 sbc a,$21 +0916: d7 1e mov ($1e)+y,a +0918: c4 21 mov $21,a +091a: 8d 0d mov y,#$0d +091c: 80 setc +091d: e4 20 mov a,$20 +091f: b7 1e sbc a,($1e)+y +0921: fc inc y +0922: e4 21 mov a,$21 +0924: b7 1e sbc a,($1e)+y +0926: 10 d8 bpl $0900 +0928: 8d 0d mov y,#$0d +092a: f7 1e mov a,($1e)+y +092c: 8d 00 mov y,#$00 +092e: d7 1e mov ($1e)+y,a +0930: 8d 0e mov y,#$0e +0932: f7 1e mov a,($1e)+y +0934: 8d 01 mov y,#$01 +0936: d7 1e mov ($1e)+y,a +0938: 8d 0c mov y,#$0c +093a: e8 02 mov a,#$02 +093c: d7 1e mov ($1e)+y,a +093e: 8f 01 22 mov $22,#$01 +0941: 5f 10 0a jmp $0a10 + +0944: 8d 07 mov y,#$07 ; effect 04 - vibrato +0946: f7 1e mov a,($1e)+y +0948: 10 17 bpl $0961 +094a: 48 ff eor a,#$ff +094c: bc inc a +094d: c4 20 mov $20,a +094f: 8d 00 mov y,#$00 +0951: 80 setc +0952: f7 1e mov a,($1e)+y +0954: a4 20 sbc a,$20 +0956: d7 1e mov ($1e)+y,a +0958: fc inc y +0959: f7 1e mov a,($1e)+y +095b: a8 00 sbc a,#$00 +095d: d7 1e mov ($1e)+y,a +095f: 2f 0e bra $096f +0961: 8d 00 mov y,#$00 +0963: 60 clrc +0964: 97 1e adc a,($1e)+y +0966: d7 1e mov ($1e)+y,a +0968: fc inc y +0969: f7 1e mov a,($1e)+y +096b: 88 00 adc a,#$00 +096d: d7 1e mov ($1e)+y,a +096f: 8f 01 22 mov $22,#$01 +0972: 8d 06 mov y,#$06 +0974: f7 1e mov a,($1e)+y +0976: 9c dec a +0977: d7 1e mov ($1e)+y,a +0979: d0 14 bne $098f +097b: 8d 07 mov y,#$07 +097d: f7 1e mov a,($1e)+y +097f: 48 ff eor a,#$ff +0981: bc inc a +0982: d7 1e mov ($1e)+y,a +0984: 8d 05 mov y,#$05 +0986: f7 1e mov a,($1e)+y +0988: 9f xcn a +0989: 28 0f and a,#$0f +098b: 8d 06 mov y,#$06 +098d: d7 1e mov ($1e)+y,a +098f: 2f 7f bra $0a10 + +0991: fc inc y ; effect 06 - vibrato with volume slide +0992: f7 1e mov a,($1e)+y +0994: fd mov y,a +0995: 28 f0 and a,#$f0 +0997: d0 10 bne $09a9 +0999: dd mov a,y +099a: c4 20 mov $20,a +099c: 8d 02 mov y,#$02 +099e: f7 1e mov a,($1e)+y +09a0: 80 setc +09a1: a4 20 sbc a,$20 +09a3: 10 11 bpl $09b6 +09a5: e8 00 mov a,#$00 +09a7: 2f 0d bra $09b6 +09a9: 5c lsr a +09aa: 5c lsr a +09ab: 5c lsr a +09ac: 5c lsr a +09ad: 8d 02 mov y,#$02 +09af: 60 clrc +09b0: 97 1e adc a,($1e)+y +09b2: 10 02 bpl $09b6 +09b4: e8 7f mov a,#$7f +09b6: d7 1e mov ($1e)+y,a +09b8: 8f 02 22 mov $22,#$02 +09bb: 2f 53 bra $0a10 + +09bd: fc inc y ; effect 08 - panning +09be: f7 1e mov a,($1e)+y +09c0: 10 22 bpl $09e4 +09c2: 48 ff eor a,#$ff +09c4: bc inc a +09c5: c4 20 mov $20,a +09c7: 8d 08 mov y,#$08 +09c9: f7 1e mov a,($1e)+y +09cb: 60 clrc +09cc: 84 20 adc a,$20 +09ce: 30 2b bmi $09fb +09d0: 2d push a +09d1: fc inc y +09d2: f7 1e mov a,($1e)+y +09d4: 80 setc +09d5: a4 20 sbc a,$20 +09d7: 10 21 bpl $09fa +09d9: d7 1e mov ($1e)+y,a +09db: dc dec y +09dc: ae pop a +09dd: d7 1e mov ($1e)+y,a +09df: 8f 02 22 mov $22,#$02 +09e2: 2f 2c bra $0a10 +09e4: c4 20 mov $20,a +09e6: 8d 08 mov y,#$08 +09e8: f7 1e mov a,($1e)+y +09ea: 80 setc +09eb: a4 20 sbc a,$20 +09ed: 10 0c bpl $09fb +09ef: 2d push a +09f0: fc inc y +09f1: f7 1e mov a,($1e)+y +09f3: 60 clrc +09f4: 84 20 adc a,$20 +09f6: 30 02 bmi $09fa +09f8: 2f df bra $09d9 +09fa: ae pop a +09fb: 2f 13 bra $0a10 + +09fd: fc inc y ; effect 0c - set volume +09fe: f7 1e mov a,($1e)+y +0a00: 8d 02 mov y,#$02 +0a02: d7 1e mov ($1e)+y,a +0a04: e8 00 mov a,#$00 +0a06: 8d 04 mov y,#$04 +0a08: d7 1e mov ($1e)+y,a +0a0a: fc inc y +0a0b: d7 1e mov ($1e)+y,a +0a0d: 8f 02 22 mov $22,#$02 +0a10: 6b 22 ror $22 +0a12: 90 14 bcc $0a28 +0a14: 8d 00 mov y,#$00 +0a16: f8 14 mov x,$14 +0a18: 3d inc x +0a19: 3d inc x +0a1a: f7 1e mov a,($1e)+y +0a1c: d8 f2 mov $f2,x +0a1e: c4 f3 mov $f3,a +0a20: 3d inc x +0a21: fc inc y +0a22: f7 1e mov a,($1e)+y +0a24: d8 f2 mov $f2,x +0a26: c4 f3 mov $f3,a +0a28: 6b 22 ror $22 +0a2a: 90 11 bcc $0a3d +0a2c: 8d 08 mov y,#$08 +0a2e: f7 1e mov a,($1e)+y +0a30: 5d mov x,a +0a31: fc inc y +0a32: f7 1e mov a,($1e)+y +0a34: 2d push a +0a35: 8d 02 mov y,#$02 +0a37: f7 1e mov a,($1e)+y +0a39: ee pop y +0a3a: 3f 11 0d call $0d11 + +0a3d: e8 11 mov a,#$11 ; effect 0f - set speed +0a3f: 8d 00 mov y,#$00 +0a41: 7a 1e addw ya,$1e +0a43: da 1e movw $1e,ya +0a45: 60 clrc +0a46: 98 10 14 adc $14,#$10 +0a49: ce pop x +0a4a: 1d dec x +0a4b: 30 03 bmi $0a50 +0a4d: 5f 88 08 jmp $0888 +0a50: 6f ret + +; effect table (00-0f) - secondary +; (effects are based on ProTracker format) +0a51: dw $0a3d ; 00 - (same as 0f) +0a53: dw $0892 ; 01 - portamento up +0a55: dw $08aa ; 02 - portamento down +0a57: dw $08c6 ; 03 - portamento to note +0a59: dw $0944 ; 04 - vibrato +0a5b: dw $0a3d ; 05 - (same as 0f) +0a5d: dw $0991 ; 06 - vibrato with volume slide +0a5f: dw $0a3d ; 07 - (same as 0f) +0a61: dw $09bd ; 08 - set panning +0a63: dw $0a3d ; 09 - (same as 0f) +0a65: dw $0991 ; 0a - volume slide +0a67: dw $0a3d ; 0b - (same as 0f - see primary table) +0a69: dw $09fd ; 0c - set volume +0a6b: dw $0a3d ; 0d - (same as 0f) +0a6d: dw $0a3d ; 0e - (same as 0f - see primary table) +0a6f: dw $0a3d ; 0f - set speed + +0a71: e4 23 mov a,$23 +0a73: c4 28 mov $28,a +0a75: 8b 02 dec $02 +0a77: 10 25 bpl $0a9e +0a79: 8f 00 1c mov $1c,#$00 +0a7c: eb 05 mov y,$05 +0a7e: f7 06 mov a,($06)+y +0a80: 68 ff cmp a,#$ff +0a82: d0 04 bne $0a88 +0a84: 8d 00 mov y,#$00 +0a86: f7 06 mov a,($06)+y +0a88: fc inc y +0a89: cb 05 mov $05,y +0a8b: 1c asl a +0a8c: fd mov y,a +0a8d: 60 clrc +0a8e: f7 08 mov a,($08)+y +0a90: 84 08 adc a,$08 +0a92: c4 03 mov $03,a +0a94: fc inc y +0a95: f7 08 mov a,($08)+y +0a97: 84 09 adc a,$09 +0a99: c4 04 mov $04,a +0a9b: 8f 3f 02 mov $02,#$3f +0a9e: fa 01 00 mov ($00),($01) +0aa1: 8f 33 1e mov $1e,#$33 +0aa4: 8f 0f 1f mov $1f,#$0f +0aa7: 8f 00 14 mov $14,#$00 +0aaa: 8f 3b 63 mov $63,#$3b +0aad: 8f 00 64 mov $64,#$00 +0ab0: cd 08 mov x,#$08 +0ab2: 4d push x +0ab3: e4 1c mov a,$1c ; check skip ahead value +0ab5: f0 10 beq $0ac7 ; if not 0, then decrease +0ab7: 8b 1c dec $1c ; otherwise, then proceed and decrement it +0ab9: 8f 00 18 mov $18,#$00 +0abc: 8f 00 19 mov $19,#$00 +0abf: 8f 00 1a mov $1a,#$00 +0ac2: 8f 00 1b mov $1b,#$00 +0ac5: 2f 29 bra $0af0 +0ac7: 8d 00 mov y,#$00 +0ac9: f7 03 mov a,($03)+y +0acb: 68 ff cmp a,#$ff ; check for end of row +0acd: d0 0e bne $0add +0acf: fc inc y +0ad0: f7 03 mov a,($03)+y ; if so, then get skip ahead value +0ad2: c4 1c mov $1c,a +0ad4: 60 clrc +0ad5: 98 02 03 adc $03,#$02 +0ad8: 98 00 04 adc $04,#$00 +0adb: 2f da bra $0ab7 +0add: 8d 03 mov y,#$03 ; otherwise, load the remaining 3 bytes +0adf: cd 03 mov x,#$03 +0ae1: f7 03 mov a,($03)+y +0ae3: d4 18 mov $18+x,a +0ae5: dc dec y +0ae6: 1d dec x +0ae7: 10 f8 bpl $0ae1 +0ae9: 60 clrc +0aea: 98 04 03 adc $03,#$04 ; advance the current pointer +0aed: 98 00 04 adc $04,#$00 +0af0: 60 clrc +0af1: 0b 28 asl $28 ; number of channels to go? +0af3: 90 68 bcc $0b5d +0af5: ce pop x +0af6: 4d push x +0af7: 1d dec x +0af8: f4 5b mov a,$5b+x +0afa: f0 10 beq $0b0c +0afc: e8 00 mov a,#$00 +0afe: d4 5b mov $5b+x,a +0b00: 8d 03 mov y,#$03 +0b02: cd 03 mov x,#$03 +0b04: f7 63 mov a,($63)+y +0b06: d4 18 mov $18+x,a +0b08: dc dec y +0b09: 1d dec x +0b0a: 10 f8 bpl $0b04 +0b0c: e4 19 mov a,$19 +0b0e: d0 08 bne $0b18 +0b10: e4 18 mov a,$18 +0b12: f0 1e beq $0b32 +0b14: 8d 0a mov y,#$0a +0b16: f7 1e mov a,($1e)+y +0b18: fd mov y,a +0b19: e4 1a mov a,$1a +0b1b: 68 03 cmp a,#$03 +0b1d: f0 0a beq $0b29 +0b1f: e4 18 mov a,$18 +0b21: f0 06 beq $0b29 +0b23: ae pop a +0b24: 2d push a +0b25: 9c dec a +0b26: 3f 33 0d call $0d33 +0b29: dd mov a,y +0b2a: 8d 0a mov y,#$0a +0b2c: d7 1e mov ($1e)+y,a +0b2e: 9c dec a +0b2f: 3f 50 0c call $0c50 +0b32: e4 18 mov a,$18 +0b34: f0 19 beq $0b4f +0b36: 60 clrc +0b37: 84 24 adc a,$24 +0b39: 9c dec a +0b3a: 3f d8 0c call $0cd8 +0b3d: e4 1a mov a,$1a +0b3f: 68 03 cmp a,#$03 +0b41: f0 0c beq $0b4f +0b43: ae pop a +0b44: 2d push a +0b45: 9c dec a +0b46: 3f 25 0d call $0d25 +0b49: 8f 5c f2 mov $f2,#$5c ; disable key off +0b4c: 8f 00 f3 mov $f3,#$00 +0b4f: 8d 04 mov y,#$04 +0b51: e4 1a mov a,$1a +0b53: d7 1e mov ($1e)+y,a +0b55: fc inc y +0b56: e4 1b mov a,$1b +0b58: d7 1e mov ($1e)+y,a +0b5a: 3f 77 0b call $0b77 +0b5d: ce pop x +0b5e: 60 clrc +0b5f: 98 11 1e adc $1e,#$11 +0b62: 98 00 1f adc $1f,#$00 +0b65: 60 clrc +0b66: 98 04 63 adc $63,#$04 +0b69: 98 00 64 adc $64,#$00 +0b6c: 60 clrc +0b6d: 98 10 14 adc $14,#$10 +0b70: 1d dec x +0b71: f0 03 beq $0b76 +0b73: 5f b2 0a jmp $0ab2 +0b76: 6f ret + +0b77: e4 1a mov a,$1a +0b79: 1c asl a +0b7a: 5d mov x,a +0b7b: 1f 30 0c jmp ($0c30+x) + +; effect 03 +0b7e: 8d 0f mov y,#$0f +0b80: e4 1b mov a,$1b +0b82: 60 clrc +0b83: 1c asl a +0b84: d7 1e mov ($1e)+y,a +0b86: e8 00 mov a,#$00 +0b88: 3c rol a +0b89: fc inc y +0b8a: d7 1e mov ($1e)+y,a +0b8c: e4 18 mov a,$18 +0b8e: d0 03 bne $0b93 +0b90: 5f 2f 0c jmp $0c2f + +0b93: 8d 0d mov y,#$0d +0b95: f7 1e mov a,($1e)+y +0b97: c4 20 mov $20,a +0b99: fc inc y +0b9a: f7 1e mov a,($1e)+y +0b9c: c4 21 mov $21,a +0b9e: 8d 00 mov y,#$00 +0ba0: 80 setc +0ba1: e4 20 mov a,$20 +0ba3: b7 1e sbc a,($1e)+y +0ba5: fc inc y +0ba6: e4 21 mov a,$21 +0ba8: b7 1e sbc a,($1e)+y +0baa: 30 09 bmi $0bb5 +0bac: 8d 0c mov y,#$0c +0bae: e8 00 mov a,#$00 +0bb0: d7 1e mov ($1e)+y,a +0bb2: 5f 2f 0c jmp $0c2f + +0bb5: 8d 0c mov y,#$0c +0bb7: e8 01 mov a,#$01 +0bb9: d7 1e mov ($1e)+y,a +0bbb: 5f 2f 0c jmp $0c2f + +; effect 04 - set vibrato +0bbe: e4 1b mov a,$1b +0bc0: 28 0f and a,#$0f +0bc2: 8d 07 mov y,#$07 +0bc4: d7 1e mov ($1e)+y,a +0bc6: e4 1b mov a,$1b +0bc8: 9f xcn a +0bc9: 28 0f and a,#$0f +0bcb: 5c lsr a +0bcc: dc dec y +0bcd: d7 1e mov ($1e)+y,a +0bcf: 5f 2f 0c jmp $0c2f + +; effect 09 +0bd2: e4 1b mov a,$1b +0bd4: cd 00 mov x,#$00 +0bd6: 3f 41 0d call $0d41 +0bd9: 2f 54 bra $0c2f + +; effect 0d - pattern break +0bdb: 8f 00 02 mov $02,#$00 +0bde: 2f 4f bra $0c2f + +; effect 0b - jump to song position +0be0: e4 1b mov a,$1b +0be2: c4 05 mov $05,a +0be4: 2f f5 bra $0bdb + +; effect 0e +0be6: e4 1b mov a,$1b +0be8: 28 f0 and a,#$f0 +0bea: d0 43 bne $0c2f +0bec: e4 1b mov a,$1b +0bee: 1c asl a +0bef: c4 20 mov $20,a +0bf1: 1c asl a +0bf2: 60 clrc +0bf3: 84 20 adc a,$20 +0bf5: fd mov y,a +0bf6: f7 0e mov a,($0e)+y +0bf8: 8f 7d f2 mov $f2,#$7d +0bfb: c4 f3 mov $f3,a +0bfd: fc inc y +0bfe: f7 0e mov a,($0e)+y +0c00: 8f 0d f2 mov $f2,#$0d +0c03: c4 f3 mov $f3,a +0c05: fc inc y +0c06: f7 0e mov a,($0e)+y +0c08: 8f 4d f2 mov $f2,#$4d +0c0b: c4 f3 mov $f3,a +0c0d: fc inc y +0c0e: f7 0e mov a,($0e)+y +0c10: 8f 2c f2 mov $f2,#$2c +0c13: c4 f3 mov $f3,a +0c15: fc inc y +0c16: f7 0e mov a,($0e)+y +0c18: 8f 3c f2 mov $f2,#$3c +0c1b: c4 f3 mov $f3,a +0c1d: fc inc y +0c1e: f7 0e mov a,($0e)+y +0c20: cd 01 mov x,#$01 +0c22: 3f 41 0d call $0d41 +0c25: 2f 08 bra $0c2f + +; effect 0f - set speed +0c27: e4 1b mov a,$1b ; set the current amount of ticks (tempo) +0c29: c4 01 mov $01,a ; current tempo +0c2b: c4 00 mov $00,a ; number of ticks left +0c2d: 2f 00 bra $0c2f + +; effect 00 - nop +0c2f: 6f ret + +; effect table (00-0f) - primary +; (effects are based on ProTracker format) +0c30: dw $0c2f ; 00 - nop +0c32: dw $0c2f ; 01 - nop (see secondary table) +0c34: dw $0c2f ; 02 - nop (see secondary table) +0c36: dw $0b7e ; 03 - portamento to note +0c38: dw $0bbe ; 04 - set vibrato +0c3a: dw $0c2f ; 05 - nop +0c3c: dw $0c2f ; 06 - nop (see secondary table) +0c3e: dw $0c2f ; 07 - nop +0c40: dw $0c2f ; 08 - nop (see secondary table) +0c42: dw $0bd2 ; 09 +0c44: dw $0c2f ; 0a - nop (see secondary table) +0c46: dw $0be0 ; 0b - jump to song position +0c48: dw $0c2f ; 0c - nop (see secondary table) +0c4a: dw $0bdb ; 0d - pattern break +0c4c: dw $0be6 ; 0e +0x4e: dw $0c27 ; 0f - set speed + +0c50: c4 12 mov $12,a +0c52: e8 00 mov a,#$00 +0c54: c4 13 mov $13,a +0c56: 0b 12 asl $12 +0c58: ba 12 movw ya,$12 +0c5a: 0b 12 asl $12 +0c5c: 7a 12 addw ya,$12 +0c5e: 7a 0a addw ya,$0a +0c60: da 12 movw $12,ya +0c62: 8d 00 mov y,#$00 +0c64: f7 12 mov a,($12)+y +0c66: 5d mov x,a +0c67: fc inc y +0c68: f7 12 mov a,($12)+y +0c6a: 2d push a +0c6b: e4 1a mov a,$1a +0c6d: 68 0c cmp a,#$0c +0c6f: d0 0e bne $0c7f +0c71: e4 1b mov a,$1b +0c73: 8d 0b mov y,#$0b +0c75: d7 1e mov ($1e)+y,a +0c77: 8f 00 1a mov $1a,#$00 +0c7a: 8f 00 1b mov $1b,#$00 +0c7d: 2f 12 bra $0c91 +0c7f: e4 19 mov a,$19 +0c81: d0 06 bne $0c89 +0c83: 8d 0b mov y,#$0b +0c85: f7 1e mov a,($1e)+y +0c87: 2f 08 bra $0c91 +0c89: 8d 05 mov y,#$05 +0c8b: f7 12 mov a,($12)+y +0c8d: 8d 0b mov y,#$0b +0c8f: d7 1e mov ($1e)+y,a +0c91: ee pop y +0c92: 2d push a +0c93: 4d push x +0c94: 6d push y +0c95: 3f 11 0d call $0d11 +0c98: e4 18 mov a,$18 +0c9a: f0 2d beq $0cc9 +0c9c: 8d 02 mov y,#$02 +0c9e: e4 14 mov a,$14 +0ca0: 08 05 or a,#$05 +0ca2: 5d mov x,a +0ca3: f7 12 mov a,($12)+y +0ca5: d8 f2 mov $f2,x +0ca7: c4 f3 mov $f3,a +0ca9: fc inc y +0caa: 3d inc x +0cab: 28 80 and a,#$80 +0cad: d0 0b bne $0cba +0caf: 3d inc x +0cb0: f7 12 mov a,($12)+y +0cb2: d8 f2 mov $f2,x +0cb4: c4 f3 mov $f3,a +0cb6: fc inc y +0cb7: 1d dec x +0cb8: 2f 07 bra $0cc1 +0cba: f7 12 mov a,($12)+y +0cbc: d8 f2 mov $f2,x +0cbe: c4 f3 mov $f3,a +0cc0: fc inc y +0cc1: 1d dec x +0cc2: 1d dec x +0cc3: f7 12 mov a,($12)+y +0cc5: d8 f2 mov $f2,x +0cc7: c4 f3 mov $f3,a +0cc9: 8d 08 mov y,#$08 +0ccb: ae pop a +0ccc: d7 1e mov ($1e)+y,a +0cce: fc inc y +0ccf: ae pop a +0cd0: d7 1e mov ($1e)+y,a +0cd2: 8d 02 mov y,#$02 +0cd4: ae pop a +0cd5: d7 1e mov ($1e)+y,a +0cd7: 6f ret + +0cd8: 1c asl a ; get note frequency +0cd9: fd mov y,a +0cda: e4 1a mov a,$1a +0cdc: 68 03 cmp a,#$03 +0cde: d0 11 bne $0cf1 +0ce0: 6d push y +0ce1: ce pop x +0ce2: 8d 0d mov y,#$0d +0ce4: f5 16 0e mov a,$0e16+x +0ce7: d7 1e mov ($1e)+y,a +0ce9: 3d inc x +0cea: fc inc y +0ceb: f5 16 0e mov a,$0e16+x +0cee: d7 1e mov ($1e)+y,a +0cf0: 6f ret + +0cf1: f8 14 mov x,$14 +0cf3: 3d inc x +0cf4: 3d inc x +0cf5: f6 16 0e mov a,$0e16+y +0cf8: 2d push a +0cf9: d8 f2 mov $f2,x +0cfb: c4 f3 mov $f3,a +0cfd: 3d inc x +0cfe: fc inc y +0cff: f6 16 0e mov a,$0e16+y +0d02: 2d push a +0d03: d8 f2 mov $f2,x +0d05: c4 f3 mov $f3,a +0d07: 8d 01 mov y,#$01 +0d09: ae pop a +0d0a: d7 1e mov ($1e)+y,a +0d0c: dc dec y +0d0d: ae pop a +0d0e: d7 1e mov ($1e)+y,a +0d10: 6f ret + +0d11: 2d push a +0d12: 4d push x +0d13: cf mul ya +0d14: f8 14 mov x,$14 +0d16: 3d inc x +0d17: d8 f2 mov $f2,x +0d19: cb f3 mov $f3,y +0d1b: ee pop y +0d1c: ae pop a +0d1d: cf mul ya +0d1e: f8 14 mov x,$14 +0d20: d8 f2 mov $f2,x +0d22: cb f3 mov $f3,y +0d24: 6f ret + +0d25: 4d push x ; set key on +0d26: 2d push a +0d27: 5d mov x,a +0d28: f5 0e 0e mov a,$0e0e+x +0d2b: 8f 4c f2 mov $f2,#$4c +0d2e: c4 f3 mov $f3,a +0d30: ae pop a +0d31: ce pop x +0d32: 6f ret + +0d33: 4d push x ; set key off +0d34: 2d push a +0d35: 5d mov x,a +0d36: f5 0e 0e mov a,$0e0e+x +0d39: 8f 5c f2 mov $f2,#$5c +0d3c: c4 f3 mov $f3,a +0d3e: ae pop a +0d3f: ce pop x +0d40: 6f ret + +0d41: 1c asl a +0d42: 1c asl a +0d43: 1c asl a +0d44: fd mov y,a +0d45: c8 00 cmp x,#$00 +0d47: d0 08 bne $0d51 +0d49: 8f fe 12 mov $12,#$fe +0d4c: 8f 0d 13 mov $13,#$0d +0d4f: 2f 06 bra $0d57 +0d51: 8f 06 12 mov $12,#$06 +0d54: 8f 0e 13 mov $13,#$0e +0d57: 2d push a +0d58: 28 0f and a,#$0f +0d5a: fd mov y,a +0d5b: f7 12 mov a,($12)+y +0d5d: 5d mov x,a +0d5e: ae pop a +0d5f: f7 0c mov a,($0c)+y +0d61: d8 f2 mov $f2,x +0d63: c4 f3 mov $f3,a +0d65: fc inc y +0d66: 2d push a +0d67: 28 0f and a,#$0f +0d69: fd mov y,a +0d6a: f7 12 mov a,($12)+y +0d6c: 5d mov x,a +0d6d: ae pop a +0d6e: f7 0c mov a,($0c)+y +0d70: d8 f2 mov $f2,x +0d72: c4 f3 mov $f3,a +0d74: fc inc y +0d75: 2d push a +0d76: 28 0f and a,#$0f +0d78: fd mov y,a +0d79: f7 12 mov a,($12)+y +0d7b: 5d mov x,a +0d7c: ae pop a +0d7d: f7 0c mov a,($0c)+y +0d7f: d8 f2 mov $f2,x +0d81: c4 f3 mov $f3,a +0d83: fc inc y +0d84: 2d push a +0d85: 28 0f and a,#$0f +0d87: fd mov y,a +0d88: f7 12 mov a,($12)+y +0d8a: 5d mov x,a +0d8b: ae pop a +0d8c: f7 0c mov a,($0c)+y +0d8e: d8 f2 mov $f2,x +0d90: c4 f3 mov $f3,a +0d92: fc inc y +0d93: 2d push a +0d94: 28 0f and a,#$0f +0d96: fd mov y,a +0d97: f7 12 mov a,($12)+y +0d99: 5d mov x,a +0d9a: ae pop a +0d9b: f7 0c mov a,($0c)+y +0d9d: d8 f2 mov $f2,x +0d9f: c4 f3 mov $f3,a +0da1: fc inc y +0da2: 2d push a +0da3: 28 0f and a,#$0f +0da5: fd mov y,a +0da6: f7 12 mov a,($12)+y +0da8: 5d mov x,a +0da9: ae pop a +0daa: f7 0c mov a,($0c)+y +0dac: d8 f2 mov $f2,x +0dae: c4 f3 mov $f3,a +0db0: fc inc y +0db1: 2d push a +0db2: 28 0f and a,#$0f +0db4: fd mov y,a +0db5: f7 12 mov a,($12)+y +0db7: 5d mov x,a +0db8: ae pop a +0db9: f7 0c mov a,($0c)+y +0dbb: d8 f2 mov $f2,x +0dbd: c4 f3 mov $f3,a +0dbf: fc inc y +0dc0: 2d push a +0dc1: 28 0f and a,#$0f +0dc3: fd mov y,a +0dc4: f7 12 mov a,($12)+y +0dc6: 5d mov x,a +0dc7: ae pop a +0dc8: f7 0c mov a,($0c)+y +0dca: d8 f2 mov $f2,x +0dcc: c4 f3 mov $f3,a +0dce: fc inc y +0dcf: 6f ret + +0dd0: e4 f4 mov a,$f4 +0dd2: 64 27 cmp a,$27 +0dd4: 6f ret + +0dd5: ec fd 00 mov y,$00fd +0dd8: f0 fb beq $0dd5 +0dda: 00 nop +0ddb: fa f4 27 mov ($27),($f4) +0dde: e4 f6 mov a,$f6 +0de0: fa 27 f5 mov ($f5),($27) +0de3: 6f ret + +0de4: 8d 00 mov y,#$00 +0de6: 3f d5 0d call $0dd5 +0de9: d7 12 mov ($12)+y,a +0deb: fc inc y +0dec: d0 02 bne $0df0 +0dee: ab 13 inc $13 +0df0: 80 setc +0df1: b8 01 25 sbc $25,#$01 +0df4: b8 00 26 sbc $26,#$00 +0df7: e4 26 mov a,$26 +0df9: 04 25 or a,$25 +0dfb: d0 e9 bne $0de6 +0dfd: 6f ret + +0dfe: db $0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f,$c0,$c1,$c2,$c3,$c4,$c5,$c6,$c7 + +; channel/voice parameters for DSP +0e0e: db $80,$40,$20,$10,$08,$04,$02,$01 + +; note frequency table +0e16: dw $3f,$00,$43,$00,$47,$00,$4b,$00,$50,$00,$55,$00,$5a,$00,$5f,$00,$65,$00,$6b,$00,$72,$00,$78,$00,$7f,$00,$87,$00,$8f,$00,$98,$00,$a1,$00,$aa,$00,$b4,$00,$bf,$00,$ca,$00,$d7,$00,$e4,$00,$f1,$00,$ff,$00,$0f,$01,$1f,$01,$30,$01,$42,$01,$55,$01,$69,$01,$7f,$01,$96,$01,$ae,$01,$c8,$01,$e3,$01,$ff,$01,$1e,$02,$3e,$02,$60,$02,$85,$02,$ab,$02,$d3,$02,$fe,$02,$2c,$03,$5c,$03,$90,$03,$c6,$03,$00,$04,$3c,$04,$7d,$04,$c1,$04,$0a,$05,$56,$05,$a8,$05,$fe,$05,$59,$06,$b9,$06,$20,$07,$8c,$07,$00,$08,$79,$08,$fa,$08,$83,$09,$14,$0a,$ad,$0a,$50,$0b,$fc,$0b,$b2,$0c,$74,$0d,$41,$0e,$1a,$0f,$00,$10,$f3,$10,$f5,$11,$06,$13,$28,$14,$5b,$15,$a0,$16,$f9,$17,$65,$19,$e8,$1a,$82,$1c,$34,$1e,$00,$20,$e7,$21,$eb,$23,$0e,$26,$51,$28,$b7,$2a,$41,$2d,$f2,$2f,$cc,$32,$d1,$35,$04,$39,$68,$3c + +0ed6:,$00,$00,$01,$00,$10,$00,$11,$00,$20,$00,$21,$00,$30,$00,$31,$00,$40,$00,$41,$00,$50,$00,$51,$00,$60,$00,$61,$00,$70,$00,$71,$00,$4c,$00,$5c,$ff,$6c,$38,$0d,$00,$2d,$00,$3d,$00,$4d,$00,$5d,$02,$6d,$60,$7d,$00,$0f,$7f,$1f,$00,$2f,$00,$3f,$00,$4f,$00,$5f,$00,$6f,$00,$7f,$00,$c0,$7f,$c1,$00,$c2,$00,$c3,$00,$c4,$00,$c5,$00,$c6,$00,$c7,$00,$0c,$7f,$1c,$7f,$2c,$00,$3c,$00,$ff \ No newline at end of file From 575339df467508e18938672a339c02132ad76fef Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:58:18 -0700 Subject: [PATCH 033/116] Rename snes/Theme Park ($0300).bin to snes/Climax (Images Software)/Theme Park ($0300).bin --- .../Theme Park ($0300).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => Climax (Images Software)}/Theme Park ($0300).bin (100%) diff --git a/snes/Theme Park ($0300).bin b/snes/Climax (Images Software)/Theme Park ($0300).bin similarity index 100% rename from snes/Theme Park ($0300).bin rename to snes/Climax (Images Software)/Theme Park ($0300).bin From 1052d007719719553560f6f3fedffe2031eb27a4 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:58:38 -0700 Subject: [PATCH 034/116] Update and rename snes/Theme Park.s to snes/Climax (Images Software)/Theme Park.s --- snes/{ => Climax (Images Software)}/Theme Park.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/{ => Climax (Images Software)}/Theme Park.s (96%) diff --git a/snes/Theme Park.s b/snes/Climax (Images Software)/Theme Park.s similarity index 96% rename from snes/Theme Park.s rename to snes/Climax (Images Software)/Theme Park.s index 902b0abd..9a8d89e8 100644 --- a/snes/Theme Park.s +++ b/snes/Climax (Images Software)/Theme Park.s @@ -1553,4 +1553,5 @@ ; note frequency table 0e16: dw $3f,$00,$43,$00,$47,$00,$4b,$00,$50,$00,$55,$00,$5a,$00,$5f,$00,$65,$00,$6b,$00,$72,$00,$78,$00,$7f,$00,$87,$00,$8f,$00,$98,$00,$a1,$00,$aa,$00,$b4,$00,$bf,$00,$ca,$00,$d7,$00,$e4,$00,$f1,$00,$ff,$00,$0f,$01,$1f,$01,$30,$01,$42,$01,$55,$01,$69,$01,$7f,$01,$96,$01,$ae,$01,$c8,$01,$e3,$01,$ff,$01,$1e,$02,$3e,$02,$60,$02,$85,$02,$ab,$02,$d3,$02,$fe,$02,$2c,$03,$5c,$03,$90,$03,$c6,$03,$00,$04,$3c,$04,$7d,$04,$c1,$04,$0a,$05,$56,$05,$a8,$05,$fe,$05,$59,$06,$b9,$06,$20,$07,$8c,$07,$00,$08,$79,$08,$fa,$08,$83,$09,$14,$0a,$ad,$0a,$50,$0b,$fc,$0b,$b2,$0c,$74,$0d,$41,$0e,$1a,$0f,$00,$10,$f3,$10,$f5,$11,$06,$13,$28,$14,$5b,$15,$a0,$16,$f9,$17,$65,$19,$e8,$1a,$82,$1c,$34,$1e,$00,$20,$e7,$21,$eb,$23,$0e,$26,$51,$28,$b7,$2a,$41,$2d,$f2,$2f,$cc,$32,$d1,$35,$04,$39,$68,$3c -0ed6:,$00,$00,$01,$00,$10,$00,$11,$00,$20,$00,$21,$00,$30,$00,$31,$00,$40,$00,$41,$00,$50,$00,$51,$00,$60,$00,$61,$00,$70,$00,$71,$00,$4c,$00,$5c,$ff,$6c,$38,$0d,$00,$2d,$00,$3d,$00,$4d,$00,$5d,$02,$6d,$60,$7d,$00,$0f,$7f,$1f,$00,$2f,$00,$3f,$00,$4f,$00,$5f,$00,$6f,$00,$7f,$00,$c0,$7f,$c1,$00,$c2,$00,$c3,$00,$c4,$00,$c5,$00,$c6,$00,$c7,$00,$0c,$7f,$1c,$7f,$2c,$00,$3c,$00,$ff \ No newline at end of file + +0ed6:,$00,$00,$01,$00,$10,$00,$11,$00,$20,$00,$21,$00,$30,$00,$31,$00,$40,$00,$41,$00,$50,$00,$51,$00,$60,$00,$61,$00,$70,$00,$71,$00,$4c,$00,$5c,$ff,$6c,$38,$0d,$00,$2d,$00,$3d,$00,$4d,$00,$5d,$02,$6d,$60,$7d,$00,$0f,$7f,$1f,$00,$2f,$00,$3f,$00,$4f,$00,$5f,$00,$6f,$00,$7f,$00,$c0,$7f,$c1,$00,$c2,$00,$c3,$00,$c4,$00,$c5,$00,$c6,$00,$c7,$00,$0c,$7f,$1c,$7f,$2c,$00,$3c,$00,$ff From 1a88ea4ea1353ed410bffcf18efb75d31c19a125 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:59:14 -0700 Subject: [PATCH 035/116] Add files via upload --- ...ter - Kyuukyoku no Senshitachi ($0479).bin | Bin 0 -> 4695 bytes ...Battle Master - Kyuukyoku no Senshitachi.s | 1777 +++++++++++++++++ ...ter Cheetah - Too Cool to Fool ($0E36).bin | Bin 0 -> 3638 bytes snes/Chester Cheetah - Too Cool to Fool.s | 1682 ++++++++++++++++ snes/Power Moves ($0530).bin | Bin 0 -> 4100 bytes snes/Power Moves.s | 1746 ++++++++++++++++ 6 files changed, 5205 insertions(+) create mode 100644 snes/Battle Master - Kyuukyoku no Senshitachi ($0479).bin create mode 100644 snes/Battle Master - Kyuukyoku no Senshitachi.s create mode 100644 snes/Chester Cheetah - Too Cool to Fool ($0E36).bin create mode 100644 snes/Chester Cheetah - Too Cool to Fool.s create mode 100644 snes/Power Moves ($0530).bin create mode 100644 snes/Power Moves.s diff --git a/snes/Battle Master - Kyuukyoku no Senshitachi ($0479).bin b/snes/Battle Master - Kyuukyoku no Senshitachi ($0479).bin new file mode 100644 index 0000000000000000000000000000000000000000..df8575994ee844c4ed53ace35bb6b9b1ff432925 GIT binary patch literal 4695 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 literal 0 HcmV?d00001 diff --git a/snes/Chester Cheetah - Too Cool to Fool.s b/snes/Chester Cheetah - Too Cool to Fool.s new file mode 100644 index 00000000..26797e0c --- /dev/null +++ b/snes/Chester Cheetah - Too Cool to Fool.s @@ -0,0 +1,1682 @@ +0530: 20 clrp +0531: cd 7f mov x,#$7f +0533: bd mov sp,x +0534: e8 00 mov a,#$00 ; clear registers +0536: cd 00 mov x,#$00 +0538: 8d 00 mov y,#$00 +053a: 3f 93 07 call $0793 ; clear RAM +053d: 3f c4 07 call $07c4 +0540: 3f 4c 13 call $134c +0543: 3f b0 07 call $07b0 +0546: 8f ee f4 mov $f4,#$eeca ; set communication ports +0549: 78 ff f6 cmp $f6,#$ff +054c: d0 fb bne $0549 +054e: 8f 01 f1 mov $f1,#$01 +0551: 3f 54 13 call $1354 +0554: 90 57 bcc $05ad +0556: 5d mov x,a +0557: 28 f0 and a,#$f0 +0559: 68 10 cmp a,#$10 +055b: f0 2a beq $0587 +055d: 68 20 cmp a,#$20 +055f: f0 2e beq $058f +0561: 68 30 cmp a,#$30 +0563: f0 32 beq $0597 +0565: 68 40 cmp a,#$40 +0567: f0 33 beq $059c +0569: 68 50 cmp a,#$50 +056b: f0 2f beq $059c +056d: 68 60 cmp a,#$60 +056f: f0 2b beq $059c +0571: 68 70 cmp a,#$70 +0573: f0 27 beq $059c +0575: 68 80 cmp a,#$80 +0577: f0 23 beq $059c +0579: 68 90 cmp a,#$90 +057b: f0 1f beq $059c +057d: 68 a0 cmp a,#$a0 +057f: f0 1b beq $059c +0581: 68 f0 cmp a,#$f0 +0583: f0 20 beq $05a5 +0585: 2f 26 bra $05ad +0587: 7d mov a,x +0588: 28 0f and a,#$0f +058a: 3f 90 10 call $1090 +058d: 2f 1e bra $05ad +058f: 7d mov a,x +0590: 28 0f and a,#$0f +0592: 3f 55 11 call $1155 +0595: 2f 16 bra $05ad +0597: 3f c9 11 call $11c9 +059a: 2f 11 bra $05ad +059c: 7d mov a,x +059d: 80 setc +059e: a8 40 sbc a,#$40 +05a0: 3f 02 12 call $1202 +05a3: 2f 08 bra $05ad +05a5: 7d mov a,x +05a6: 28 0f and a,#$0f +05a8: 3f 9c 11 call $119c +05ab: 2f 00 bra $05ad +05ad: e8 00 mov a,#$00 +05af: f8 fd mov x,$fd +05b1: d0 02 bne $05b5 +05b3: 2f 9c bra $0551 +05b5: e8 00 mov a,#$00 +05b7: c4 33 mov $33,a +05b9: e4 30 mov a,$30 +05bb: c4 fa mov $fa,a +05bd: 3f df 08 call $08df +05c0: e4 33 mov a,$33 +05c2: 5d mov x,a +05c3: f4 00 mov a,$00+x +05c5: f0 5a beq $0621 +05c7: 28 0f and a,#$0f +05c9: 68 01 cmp a,#$01 +05cb: d0 54 bne $0621 +05cd: 7d mov a,x +05ce: 1c asl a +05cf: 5d mov x,a +05d0: f5 59 00 mov a,$0059+x +05d3: c4 40 mov $40,a +05d5: 3d inc x +05d6: f5 59 00 mov a,$0059+x +05d9: c4 41 mov $41,a +05db: 8d 04 mov y,#$04 +05dd: f7 40 mov a,($40)+y +05df: c4 44 mov $44,a +05e1: 8d 05 mov y,#$05 +05e3: f7 40 mov a,($40)+y +05e5: c4 45 mov $45,a +05e7: 8d 00 mov y,#$00 +05e9: f7 40 mov a,($40)+y +05eb: 68 00 cmp a,#$00 +05ed: f0 10 beq $05ff +05ef: 9c dec a +05f0: d7 40 mov ($40)+y,a +05f2: e4 44 mov a,$44 +05f4: 8d 04 mov y,#$04 +05f6: d7 40 mov ($40)+y,a +05f8: e4 45 mov a,$45 +05fa: fc inc y +05fb: d7 40 mov ($40)+y,a +05fd: 2f 22 bra $0621 +05ff: cd 00 mov x,#$00 +0601: e7 44 mov a,($44+x) +0603: 3a 44 incw $44 +0605: 68 80 cmp a,#$80 ; check if next byte is a vcmd +0607: 10 05 bpl $060e +0609: 3f 45 0d call $0d45 +060c: 2f d9 bra $05e7 +060e: 60 clrc ; dispatch current vcmd from table +060f: 28 7f and a,#$7f +0611: 1c asl a +0612: 5d mov x,a +0613: 3f 1e 06 call $061e +0616: f8 33 mov x,$33 +0618: f4 00 mov a,$00+x +061a: f0 05 beq $0621 +061c: 2f c9 bra $05e7 +061e: 1f 68 0a jmp ($0a68+x) + +0621: ab 33 inc $33 +0623: 78 08 33 cmp $33,#$08 +0626: d0 98 bne $05c0 +0628: e0 clrv +0629: e8 00 mov a,#$00 +062b: c4 33 mov $33,a +062d: e4 33 mov a,$33 +062f: 5d mov x,a +0630: f4 00 mov a,$00+x +0632: f0 4c beq $0680 +0634: 28 0f and a,#$0f +0636: 68 01 cmp a,#$01 +0638: d0 46 bne $0680 +063a: 7d mov a,x +063b: 1c asl a +063c: 5d mov x,a +063d: f5 59 00 mov a,$0059+x +0640: c4 40 mov $40,a +0642: 3d inc x +0643: f5 59 00 mov a,$0059+x +0646: c4 41 mov $41,a +0648: 8d 24 mov y,#$24 +064a: f7 40 mov a,($40)+y +064c: 28 30 and a,#$30 +064e: f0 30 beq $0680 +0650: 3f 05 07 call $0705 +0653: 90 28 bcc $067d +0655: 3f f4 06 call $06f4 +0658: 8d 24 mov y,#$24 +065a: f7 40 mov a,($40)+y +065c: 2d push a +065d: 28 08 and a,#$08 +065f: d0 1b bne $067c +0661: e8 00 mov a,#$00 +0663: 8d 00 mov y,#$00 +0665: 3f fd 06 call $06fd +0668: e8 01 mov a,#$01 +066a: 8d 00 mov y,#$00 +066c: 3f fd 06 call $06fd +066f: ae pop a +0670: 28 10 and a,#$10 +0672: d0 09 bne $067d +0674: 3f 0d 07 call $070d +0677: 3f b6 0d call $0db6 +067a: 2f 01 bra $067d +067c: ae pop a +067d: 3f ad 0d call $0dad +0680: ab 33 inc $33 +0682: 78 08 33 cmp $33,#$08 +0685: d0 a6 bne $062d +0687: e8 00 mov a,#$00 +0689: c4 33 mov $33,a +068b: e4 33 mov a,$33 +068d: 5d mov x,a +068e: f4 00 mov a,$00+x +0690: f0 58 beq $06ea +0692: 28 0f and a,#$0f +0694: 68 01 cmp a,#$01 +0696: d0 52 bne $06ea +0698: 7d mov a,x +0699: 1c asl a +069a: 5d mov x,a +069b: f5 59 00 mov a,$0059+x +069e: c4 40 mov $40,a +06a0: 3d inc x +06a1: f5 59 00 mov a,$0059+x +06a4: c4 41 mov $41,a +06a6: 3f 05 07 call $0705 +06a9: 90 3f bcc $06ea +06ab: e8 00 mov a,#$00 +06ad: c4 38 mov $38,a +06af: c4 39 mov $39,a +06b1: c4 3a mov $3a,a +06b3: 3f 6b 09 call $096b +06b6: 90 02 bcc $06ba +06b8: ab 3a inc $3a +06ba: 3f e5 09 call $09e5 +06bd: 90 08 bcc $06c7 +06bf: 8d 17 mov y,#$17 +06c1: f7 40 mov a,($40)+y +06c3: c4 38 mov $38,a +06c5: ab 3a inc $3a +06c7: e4 3a mov a,$3a +06c9: f0 1f beq $06ea +06cb: 3f f4 06 call $06f4 +06ce: 8d 0e mov y,#$0e +06d0: f7 40 mov a,($40)+y +06d2: c4 36 mov $36,a +06d4: 8d 0f mov y,#$0f +06d6: f7 40 mov a,($40)+y +06d8: c4 37 mov $37,a +06da: 60 clrc +06db: e4 36 mov a,$36 +06dd: 84 38 adc a,$38 +06df: c4 36 mov $36,a +06e1: e4 37 mov a,$37 +06e3: 84 39 adc a,$39 +06e5: c4 37 mov $37,a +06e7: 3f 84 07 call $0784 +06ea: ab 33 inc $33 +06ec: 78 08 33 cmp $33,#$08 +06ef: d0 9a bne $068b +06f1: 5f 51 05 jmp $0551 + +06f4: e4 34 mov a,$34 +06f6: 1c asl a +06f7: 1c asl a +06f8: 1c asl a +06f9: 1c asl a +06fa: c4 49 mov $49,a +06fc: 6f ret + +06fd: 60 clrc +06fe: 84 49 adc a,$49 +0700: c4 f2 mov $f2,a +0702: cb f3 mov $f3,y +0704: 6f ret + +0705: f8 33 mov x,$33 +0707: f4 10 mov a,$10+x +0709: c4 34 mov $34,a +070b: 80 setc +070c: 6f ret + +070d: 8d 0e mov y,#$0e +070f: f7 40 mov a,($40)+y +0711: c4 36 mov $36,a +0713: 8d 0f mov y,#$0f +0715: f7 40 mov a,($40)+y +0717: c4 37 mov $37,a +0719: 3f 84 07 call $0784 +071c: 8d 20 mov y,#$20 +071e: f7 40 mov a,($40)+y +0720: fd mov y,a +0721: e8 04 mov a,#$04 +0723: 3f fd 06 call $06fd +0726: 8d 21 mov y,#$21 +0728: f7 40 mov a,($40)+y +072a: fd mov y,a +072b: e8 05 mov a,#$05 +072d: 3f fd 06 call $06fd +0730: 8d 22 mov y,#$22 +0732: f7 40 mov a,($40)+y +0734: fd mov y,a +0735: e8 06 mov a,#$06 +0737: 3f fd 06 call $06fd +073a: 8d 23 mov y,#$23 +073c: f7 40 mov a,($40)+y +073e: fd mov y,a +073f: e8 07 mov a,#$07 +0741: 3f fd 06 call $06fd +0744: 8d 09 mov y,#$09 +0746: f7 40 mov a,($40)+y +0748: c4 36 mov $36,a +074a: 3f 4e 07 call $074e +074d: 6f ret + +074e: 8d 27 mov y,#$27 +0750: f7 40 mov a,($40)+y +0752: 28 0f and a,#$0f +0754: 1c asl a +0755: 1c asl a +0756: 1c asl a +0757: 1c asl a +0758: c4 38 mov $38,a +075a: 8d 0a mov y,#$0a +075c: f7 40 mov a,($40)+y +075e: c4 3a mov $3a,a +0760: eb 38 mov y,$38 +0762: cf mul ya +0763: e4 3a mov a,$3a +0765: cb 38 mov $38,y +0767: 80 setc +0768: a4 38 sbc a,$38 +076a: c4 38 mov $38,a +076c: 3f 32 09 call $0932 +076f: fd mov y,a +0770: e8 00 mov a,#$00 +0772: 3f fd 06 call $06fd +0775: e4 3a mov a,$3a +0777: 80 setc +0778: a4 38 sbc a,$38 +077a: 3f 32 09 call $0932 +077d: fd mov y,a +077e: e8 01 mov a,#$01 +0780: 3f fd 06 call $06fd +0783: 6f ret + +0784: eb 36 mov y,$36 +0786: e8 02 mov a,#$02 +0788: 3f fd 06 call $06fd +078b: eb 37 mov y,$37 +078d: e8 03 mov a,#$03 +078f: 3f fd 06 call $06fd +0792: 6f ret + +0793: e8 00 mov a,#$00 +0795: 5d mov x,a +0796: af mov (x)+,a +0797: c8 59 cmp x,#$59 +0799: d0 fb bne $0796 +079b: e8 00 mov a,#$00 +079d: c5 20 04 mov $0420,a +07a0: c5 21 04 mov $0421,a +07a3: c5 22 04 mov $0422,a +07a6: c5 23 04 mov $0423,a +07a9: c5 24 04 mov $0424,a +07ac: c5 25 04 mov $0425,a +07af: 6f ret + +07b0: 8f 30 f1 mov $f1,#$30 +07b3: e8 00 mov a,#$00 +07b5: c4 f1 mov $f1,a +07b7: e8 00 mov a,#$00 +07b9: c4 fa mov $fa,a +07bb: c4 fb mov $fb,a +07bd: c4 fc mov $fc,a +07bf: e8 50 mov a,#$50 +07c1: c4 30 mov $30,a +07c3: 6f ret + +07c4: e8 6d mov a,#$6d +07c6: 8d f8 mov y,#$f8 +07c8: 3f 00 07 call $0700 +07cb: e8 3d mov a,#$3d +07cd: 8d 00 mov y,#$00 +07cf: 3f 00 07 call $0700 +07d2: e8 4d mov a,#$4d +07d4: 8d 00 mov y,#$00 +07d6: 3f 00 07 call $0700 +07d9: e8 7d mov a,#$7d +07db: 8d 00 mov y,#$00 +07dd: 3f 00 07 call $0700 +07e0: e8 0d mov a,#$0d +07e2: 8d 00 mov y,#$00 +07e4: 3f 00 07 call $0700 +07e7: e8 2d mov a,#$2d +07e9: 8d 00 mov y,#$00 +07eb: 3f 00 07 call $0700 +07ee: e8 6c mov a,#$6c +07f0: 8d 20 mov y,#$20 +07f2: 3f 00 07 call $0700 +07f5: e8 0c mov a,#$0c +07f7: 8d 70 mov y,#$70 +07f9: 3f 00 07 call $0700 +07fc: e8 1c mov a,#$1c +07fe: 8d 70 mov y,#$70 +0800: 3f 00 07 call $0700 +0803: e8 2c mov a,#$2c +0805: 8d 00 mov y,#$00 +0807: 3f 00 07 call $0700 +080a: e8 3c mov a,#$3c +080c: 8d 00 mov y,#$00 +080e: 3f 00 07 call $0700 +0811: e8 0f mov a,#$0f +0813: 8d 7f mov y,#$7f +0815: 3f 00 07 call $0700 +0818: e8 1f mov a,#$1f +081a: 8d 00 mov y,#$00 +081c: 3f 00 07 call $0700 +081f: e8 2f mov a,#$2f +0821: 8d 00 mov y,#$00 +0823: 3f 00 07 call $0700 +0826: e8 3f mov a,#$3f +0828: 8d 00 mov y,#$00 +082a: 3f 00 07 call $0700 +082d: e8 4f mov a,#$4f +082f: 8d 00 mov y,#$00 +0831: 3f 00 07 call $0700 +0834: e8 5f mov a,#$5f +0836: 8d 00 mov y,#$00 +0838: 3f 00 07 call $0700 +083b: e8 6f mov a,#$6f +083d: 8d 00 mov y,#$00 +083f: 3f 00 07 call $0700 +0842: e8 7f mov a,#$7f +0844: 8d 00 mov y,#$00 +0846: 3f 00 07 call $0700 +0849: 3f 6a 08 call $086a +084c: 00 nop +084d: 00 nop +084e: 00 nop +084f: 00 nop +0850: 00 nop +0851: 3f 62 08 call $0862 +0854: 00 nop +0855: 00 nop +0856: 00 nop +0857: 00 nop +0858: 00 nop +0859: 6f ret + +085a: e8 5c mov a,#$5c +085c: 8d ff mov y,#$ff +085e: 3f 00 07 call $0700 +0861: 6f ret + +0862: e8 4c mov a,#$4c +0864: 8d ff mov y,#$ff +0866: 3f 00 07 call $0700 +0869: 6f ret + +086a: e8 00 mov a,#$00 +086c: 8d 00 mov y,#$00 +086e: e8 00 mov a,#$00 +0870: 8d 00 mov y,#$00 +0872: 3f 00 07 call $0700 +0875: e8 01 mov a,#$01 +0877: 8d 00 mov y,#$00 +0879: 3f 00 07 call $0700 +087c: e8 10 mov a,#$10 +087e: 8d 00 mov y,#$00 +0880: 3f 00 07 call $0700 +0883: e8 11 mov a,#$11 +0885: 8d 00 mov y,#$00 +0887: 3f 00 07 call $0700 +088a: e8 20 mov a,#$20 +088c: 8d 00 mov y,#$00 +088e: 3f 00 07 call $0700 +0891: e8 21 mov a,#$21 +0893: 8d 00 mov y,#$00 +0895: 3f 00 07 call $0700 +0898: e8 30 mov a,#$30 +089a: 8d 00 mov y,#$00 +089c: 3f 00 07 call $0700 +089f: e8 31 mov a,#$31 +08a1: 8d 00 mov y,#$00 +08a3: 3f 00 07 call $0700 +08a6: e8 40 mov a,#$40 +08a8: 8d 00 mov y,#$00 +08aa: 3f 00 07 call $0700 +08ad: e8 41 mov a,#$41 +08af: 8d 00 mov y,#$00 +08b1: 3f 00 07 call $0700 +08b4: e8 50 mov a,#$50 +08b6: 8d 00 mov y,#$00 +08b8: 3f 00 07 call $0700 +08bb: e8 51 mov a,#$51 +08bd: 8d 00 mov y,#$00 +08bf: 3f 00 07 call $0700 +08c2: e8 60 mov a,#$60 +08c4: 8d 00 mov y,#$00 +08c6: 3f 00 07 call $0700 +08c9: e8 61 mov a,#$61 +08cb: 8d 00 mov y,#$00 +08cd: 3f 00 07 call $0700 +08d0: e8 70 mov a,#$70 +08d2: 8d 00 mov y,#$00 +08d4: 3f 00 07 call $0700 +08d7: e8 71 mov a,#$71 +08d9: 8d 00 mov y,#$00 +08db: 3f 00 07 call $0700 +08de: 6f ret + +08df: e5 20 04 mov a,$0420 +08e2: f0 4d beq $0931 +08e4: e5 21 04 mov a,$0421 +08e7: d0 23 bne $090c +08e9: e5 20 04 mov a,$0420 +08ec: 5c lsr a +08ed: 90 05 bcc $08f4 +08ef: e8 00 mov a,#$00 +08f1: 3f 55 11 call $1155 +08f4: 5c lsr a +08f5: 90 05 bcc $08fc +08f7: e8 01 mov a,#$01 +08f9: 3f 55 11 call $1155 +08fc: e8 00 mov a,#$00 +08fe: c5 20 04 mov $0420,a +0901: c5 21 04 mov $0421,a +0904: c5 22 04 mov $0422,a +0907: c5 23 04 mov $0423,a +090a: 2f 25 bra $0931 +090c: e5 26 04 mov a,$0426 +090f: bc inc a +0910: 28 0f and a,#$0f +0912: c5 26 04 mov $0426,a +0915: d0 1a bne $0931 +0917: e5 21 04 mov a,$0421 +091a: 9c dec a +091b: c5 21 04 mov $0421,a +091e: 60 clrc +091f: e5 24 04 mov a,$0424 +0922: 85 22 04 adc a,$0422 +0925: c5 24 04 mov $0424,a +0928: e5 25 04 mov a,$0425 +092b: 85 23 04 adc a,$0423 +092e: c5 25 04 mov $0425,a +0931: 6f ret + +0932: cd 00 mov x,#$00 +0934: 1e 20 04 cmp x,$0420 +0937: f0 2e beq $0967 +0939: f8 33 mov x,$33 +093b: c4 47 mov $47,a +093d: f4 00 mov a,$00+x +093f: 5c lsr a +0940: 5c lsr a +0941: 5c lsr a +0942: 5c lsr a +0943: c4 46 mov $46,a +0945: 25 20 04 and a,$0420 +0948: f0 0c beq $0956 +094a: e4 47 mov a,$47 +094c: 80 setc +094d: a5 25 04 sbc a,$0425 +0950: 10 15 bpl $0967 +0952: e8 00 mov a,#$00 +0954: 2f 11 bra $0967 +0956: e4 46 mov a,$46 +0958: 25 20 04 and a,$0420 +095b: f0 0b beq $0968 +095d: e4 47 mov a,$47 +095f: 80 setc +0960: a5 25 04 sbc a,$0425 +0963: 10 02 bpl $0967 +0965: e8 00 mov a,#$00 +0967: 6f ret + +0968: e4 47 mov a,$47 +096a: 6f ret + +096b: 8d 24 mov y,#$24 +096d: f7 40 mov a,($40)+y +096f: 28 04 and a,#$04 +0971: d0 02 bne $0975 +0973: 60 clrc +0974: 6f ret + +0975: 8d 13 mov y,#$13 +0977: f7 40 mov a,($40)+y +0979: f0 68 beq $09e3 +097b: 8d 12 mov y,#$12 +097d: f7 40 mov a,($40)+y +097f: f0 30 beq $09b1 +0981: 9c dec a +0982: 8d 12 mov y,#$12 +0984: d7 40 mov ($40)+y,a +0986: 8d 0e mov y,#$0e +0988: f7 40 mov a,($40)+y +098a: c4 38 mov $38,a +098c: 8d 0f mov y,#$0f +098e: f7 40 mov a,($40)+y +0990: c4 39 mov $39,a +0992: 8d 14 mov y,#$14 +0994: f7 40 mov a,($40)+y +0996: c4 3a mov $3a,a +0998: 8d 15 mov y,#$15 +099a: f7 40 mov a,($40)+y +099c: c4 3b mov $3b,a +099e: 60 clrc +099f: ba 38 movw ya,$38 +09a1: 7a 3a addw ya,$3a +09a3: da 38 movw $38,ya +09a5: 8d 0e mov y,#$0e +09a7: d7 40 mov ($40)+y,a +09a9: e4 39 mov a,$39 +09ab: 8d 0f mov y,#$0f +09ad: d7 40 mov ($40)+y,a +09af: 2f 32 bra $09e3 +09b1: 8d 10 mov y,#$10 +09b3: f7 40 mov a,($40)+y +09b5: c4 38 mov $38,a +09b7: 8d 11 mov y,#$11 +09b9: f7 40 mov a,($40)+y +09bb: c4 39 mov $39,a +09bd: 8d 0e mov y,#$0e +09bf: f7 40 mov a,($40)+y +09c1: c4 3a mov $3a,a +09c3: 8d 0f mov y,#$0f +09c5: f7 40 mov a,($40)+y +09c7: c4 3b mov $3b,a +09c9: e4 38 mov a,$38 +09cb: 64 3a cmp a,$3a +09cd: d0 08 bne $09d7 +09cf: e4 39 mov a,$39 +09d1: 64 3b cmp a,$3b +09d3: d0 02 bne $09d7 +09d5: 60 clrc +09d6: 6f ret + +09d7: e4 38 mov a,$38 +09d9: 8d 0e mov y,#$0e +09db: d7 40 mov ($40)+y,a +09dd: e4 39 mov a,$39 +09df: 8d 0f mov y,#$0f +09e1: d7 40 mov ($40)+y,a +09e3: 80 setc +09e4: 6f ret + +09e5: 8d 24 mov y,#$24 +09e7: f7 40 mov a,($40)+y +09e9: 28 02 and a,#$02 +09eb: d0 02 bne $09ef +09ed: 60 clrc +09ee: 6f ret + +09ef: 8d 00 mov y,#$00 +09f1: 8d 1a mov y,#$1a +09f3: f7 40 mov a,($40)+y +09f5: f0 6f beq $0a66 +09f7: 8d 19 mov y,#$19 +09f9: f7 40 mov a,($40)+y +09fb: f0 07 beq $0a04 +09fd: 9c dec a +09fe: 8d 19 mov y,#$19 +0a00: d7 40 mov ($40)+y,a +0a02: 2f 62 bra $0a66 +0a04: 8d 17 mov y,#$17 +0a06: f7 40 mov a,($40)+y +0a08: c4 36 mov $36,a +0a0a: 8d 1b mov y,#$1b +0a0c: f7 40 mov a,($40)+y +0a0e: c4 38 mov $38,a +0a10: e8 00 mov a,#$00 +0a12: c4 37 mov $37,a +0a14: c4 39 mov $39,a +0a16: 8d 1f mov y,#$1f +0a18: f7 40 mov a,($40)+y +0a1a: 68 00 cmp a,#$00 +0a1c: d0 2b bne $0a49 +0a1e: 60 clrc +0a1f: ba 36 movw ya,$36 +0a21: 7a 38 addw ya,$38 +0a23: da 36 movw $36,ya +0a25: c4 37 mov $37,a +0a27: 8d 1d mov y,#$1d +0a29: f7 40 mov a,($40)+y +0a2b: c4 38 mov $38,a +0a2d: e4 36 mov a,$36 +0a2f: 64 38 cmp a,$38 +0a31: e4 37 mov a,$37 +0a33: a4 39 sbc a,$39 +0a35: 90 10 bcc $0a47 +0a37: e8 01 mov a,#$01 +0a39: 8d 1f mov y,#$1f +0a3b: d7 40 mov ($40)+y,a +0a3d: 8d 1d mov y,#$1d +0a3f: f7 40 mov a,($40)+y +0a41: c4 36 mov $36,a +0a43: e8 00 mov a,#$00 +0a45: c4 37 mov $37,a +0a47: 2f 17 bra $0a60 +0a49: 80 setc +0a4a: ba 36 movw ya,$36 +0a4c: 9a 38 subw ya,$38 +0a4e: da 36 movw $36,ya +0a50: e4 37 mov a,$37 +0a52: 10 f3 bpl $0a47 +0a54: e8 00 mov a,#$00 +0a56: 8d 1f mov y,#$1f +0a58: d7 40 mov ($40)+y,a +0a5a: e8 00 mov a,#$00 +0a5c: c4 36 mov $36,a +0a5e: c4 37 mov $37,a +0a60: e4 36 mov a,$36 +0a62: 8d 17 mov y,#$17 +0a64: d7 40 mov ($40)+y,a +0a66: 80 setc +0a67: 6f ret + +; vcmd table (80-95) +0a68: dw $0a94 ; 80 - set variables? +0a6a: dw $0ad0 ; 81 - (2 bytes) +0a6c: dw $0aab ; 82 - start of song loop +0a6e: dw $0b11 ; 83 - (7 bytes) +0a70: dw $0b66 ; 84 - set tempo +0a72: dw $0b78 ; 85 - set instrument +0a74: dw $0b82 ; 86 - (3 bytes) +0a76: dw $0ba3 ; 87 - (1 byte) +0a78: dw $0bac ; 88 - set ASDR bit 7 +0a7a: dw $0bb5 ; 89 - clear ASDR bits +0a7c: dw $0bbe ; 8a - set up vibrato parameters +0a7e: dw $0c08 ; 8b - set ASDR bit 6 +0a80: dw $0c11 ; 8c - set ASDR bits on +0a82: dw $0c1a ; 8d - (2 bytes) +0a84: dw $0cc7 ; 8e - nop +0a86: dw $0cc8 ; 8f - set ASDR bit 5 +0a88: dw $0cd1 ; 90 - clear ASDR bits +0a8a: dw $0cda ; 91 - restart channel +0a8c: dw $0ce6 ; 92 - repeat section +0a8e: dw $0d28 ; 93 - set ASDR bit 4 +0a90: dw $0d31 ; 94 - set panning +0a92: dw $0e67 ; 95 - stop channel + +0a94: cd 00 mov x,#$00 ; vcmd 80 - set variables? +0a96: e7 44 mov a,($44+x) +0a98: 3a 44 incw $44 +0a9a: c4 4b mov $4b,a +0a9c: c4 4d mov $4d,a +0a9e: e8 00 mov a,#$00 +0aa0: c4 4a mov $4a,a +0aa2: c4 4c mov $4c,a +0aa4: c4 4e mov $4e,a +0aa6: c4 4f mov $4f,a +0aa8: c4 50 mov $50,a +0aaa: 6f ret + +0aab: cd 00 mov x,#$00 ; vcmd 82 - start of song loop +0aad: e7 44 mov a,($44+x) +0aaf: 3a 44 incw $44 +0ab1: 8d 08 mov y,#$08 +0ab3: d7 40 mov ($40)+y,a +0ab5: 8d 0a mov y,#$0a +0ab7: d7 40 mov ($40)+y,a +0ab9: e8 00 mov a,#$00 +0abb: 8d 07 mov y,#$07 +0abd: d7 40 mov ($40)+y,a +0abf: 8d 09 mov y,#$09 +0ac1: d7 40 mov ($40)+y,a +0ac3: 8d 0b mov y,#$0b +0ac5: d7 40 mov ($40)+y,a +0ac7: 8d 0c mov y,#$0c +0ac9: d7 40 mov ($40)+y,a +0acb: 8d 0d mov y,#$0d +0acd: d7 40 mov ($40)+y,a +0acf: 6f ret + +0ad0: cd 00 mov x,#$00 ; vcmd 81 - (2 bytes) +0ad2: e7 44 mov a,($44+x) +0ad4: 3a 44 incw $44 +0ad6: c4 34 mov $34,a +0ad8: e7 44 mov a,($44+x) +0ada: 3a 44 incw $44 +0adc: c4 36 mov $36,a +0ade: e4 34 mov a,$34 +0ae0: c4 4d mov $4d,a +0ae2: e4 36 mov a,$36 +0ae4: c4 4e mov $4e,a +0ae6: e8 00 mov a,#$00 +0ae8: c4 4c mov $4c,a +0aea: e4 4a mov a,$4a +0aec: c4 34 mov $34,a +0aee: e4 4b mov a,$4b +0af0: c4 35 mov $35,a +0af2: e4 4c mov a,$4c +0af4: c4 36 mov $36,a +0af6: e4 4d mov a,$4d +0af8: c4 37 mov $37,a +0afa: 3f 9d 12 call $129d +0afd: e4 4e mov a,$4e +0aff: c4 37 mov $37,a +0b01: e8 00 mov a,#$00 +0b03: c4 36 mov $36,a +0b05: 3f a4 12 call $12a4 +0b08: e4 34 mov a,$34 +0b0a: c4 4f mov $4f,a +0b0c: e4 35 mov a,$35 +0b0e: c4 50 mov $50,a +0b10: 6f ret + +0b11: cd 00 mov x,#$00 ; vcmd 83 - (7 bytes) +0b13: e7 44 mov a,($44+x) +0b15: 3a 44 incw $44 +0b17: c4 34 mov $34,a +0b19: e7 44 mov a,($44+x) +0b1b: 3a 44 incw $44 +0b1d: c4 36 mov $36,a +0b1f: e4 34 mov a,$34 +0b21: 8d 0a mov y,#$0a +0b23: d7 40 mov ($40)+y,a +0b25: e4 36 mov a,$36 +0b27: 8d 0b mov y,#$0b +0b29: d7 40 mov ($40)+y,a +0b2b: e8 00 mov a,#$00 +0b2d: 8d 09 mov y,#$09 +0b2f: d7 40 mov ($40)+y,a +0b31: e7 44 mov a,($44+x) +0b33: 3a 44 incw $44 +0b35: c4 34 mov $34,a +0b37: e7 44 mov a,($44+x) +0b39: 3a 44 incw $44 +0b3b: c4 35 mov $35,a +0b3d: e7 44 mov a,($44+x) +0b3f: 3a 44 incw $44 +0b41: c4 36 mov $36,a +0b43: e7 44 mov a,($44+x) +0b45: 3a 44 incw $44 +0b47: c4 37 mov $37,a +0b49: 3f 9d 12 call $129d +0b4c: e7 44 mov a,($44+x) +0b4e: 3a 44 incw $44 +0b50: c4 37 mov $37,a +0b52: e8 00 mov a,#$00 +0b54: c4 36 mov $36,a +0b56: 3f a4 12 call $12a4 +0b59: e4 34 mov a,$34 +0b5b: 8d 0c mov y,#$0c +0b5d: d7 40 mov ($40)+y,a +0b5f: e4 35 mov a,$35 +0b61: 8d 0d mov y,#$0d +0b63: d7 40 mov ($40)+y,a +0b65: 6f ret + +0b66: cd 00 mov x,#$00 ; vcmd 84 - set tempo +0b68: e7 44 mov a,($44+x) +0b6a: 3a 44 incw $44 +0b6c: c4 34 mov $34,a +0b6e: 8d 06 mov y,#$06 +0b70: f7 40 mov a,($40)+y +0b72: c4 36 mov $36,a +0b74: 3f 60 0e call $0e60 +0b77: 6f ret + +0b78: cd 00 mov x,#$00 ; vcmd 85 - set instrument +0b7a: e7 44 mov a,($44+x) +0b7c: 3a 44 incw $44 +0b7e: 3f 01 13 call $1301 +0b81: 6f ret + +0b82: cd 00 mov x,#$00 ; vcmd 86 - (3 bytes) +0b84: e7 44 mov a,($44+x) +0b86: 3a 44 incw $44 +0b88: c4 34 mov $34,a +0b8a: e7 44 mov a,($44+x) +0b8c: 3a 44 incw $44 +0b8e: c4 36 mov $36,a +0b90: e7 44 mov a,($44+x) +0b92: 3a 44 incw $44 +0b94: c4 38 mov $38,a +0b96: e4 34 mov a,$34 +0b98: c4 54 mov $54,a +0b9a: e4 36 mov a,$36 +0b9c: c4 52 mov $52,a +0b9e: e4 36 mov a,$36 +0ba0: c4 53 mov $53,a +0ba2: 6f ret + +0ba3: cd 00 mov x,#$00 ; vcmd 87 - (1 byte) +0ba5: e7 44 mov a,($44+x) +0ba7: 3a 44 incw $44 +0ba9: c4 51 mov $51,a +0bab: 6f ret + +0bac: 8d 24 mov y,#$24 ; vcmd 88 - set ASDR bit 7 +0bae: f7 40 mov a,($40)+y +0bb0: 08 01 or a,#$01 +0bb2: d7 40 mov ($40)+y,a +0bb4: 6f ret + +0bb5: 8d 24 mov y,#$24 ; vcmd 89 - clear ASDR bits +0bb7: f7 40 mov a,($40)+y +0bb9: 28 fe and a,#$fe +0bbb: d7 40 mov ($40)+y,a +0bbd: 6f ret + +0bbe: cd 00 mov x,#$00 ; vcmd 8a - set up vibrato parameters +0bc0: e7 44 mov a,($44+x) +0bc2: 3a 44 incw $44 +0bc4: 8d 19 mov y,#$19 +0bc6: d7 40 mov ($40)+y,a +0bc8: 8d 1a mov y,#$1a +0bca: d7 40 mov ($40)+y,a +0bcc: e7 44 mov a,($44+x) +0bce: 3a 44 incw $44 +0bd0: 2d push a +0bd1: e7 44 mov a,($44+x) +0bd3: 3a 44 incw $44 +0bd5: 8d 1d mov y,#$1d +0bd7: d7 40 mov ($40)+y,a +0bd9: ce pop x +0bda: 8d 00 mov y,#$00 +0bdc: 9e div ya,x +0bdd: 8d 1b mov y,#$1b +0bdf: d7 40 mov ($40)+y,a +0be1: e8 00 mov a,#$00 +0be3: 8d 17 mov y,#$17 +0be5: d7 40 mov ($40)+y,a +0be7: 8d 1f mov y,#$1f +0be9: d7 40 mov ($40)+y,a +0beb: 6f ret + +0bec: 8d 24 mov y,#$24 +0bee: f7 40 mov a,($40)+y +0bf0: 28 02 and a,#$02 +0bf2: d0 01 bne $0bf5 +0bf4: 6f ret + +0bf5: 8d 1a mov y,#$1a +0bf7: f7 40 mov a,($40)+y +0bf9: 8d 19 mov y,#$19 +0bfb: d7 40 mov ($40)+y,a +0bfd: e8 00 mov a,#$00 +0bff: 8d 17 mov y,#$17 +0c01: d7 40 mov ($40)+y,a +0c03: 8d 1f mov y,#$1f +0c05: d7 40 mov ($40)+y,a +0c07: 6f ret + +0c08: 8d 24 mov y,#$24 ; vcmd 8b - set ASDR bit 6 +0c0a: f7 40 mov a,($40)+y +0c0c: 08 02 or a,#$02 +0c0e: d7 40 mov ($40)+y,a +0c10: 6f ret + +0c11: 8d 24 mov y,#$24 ; vcmd 8c - set ASDR bits on +0c13: f7 40 mov a,($40)+y +0c15: 28 fb and a,#$fb +0c17: d7 40 mov ($40)+y,a +0c19: 6f ret + +0c1a: cd 00 mov x,#$00 ; vcmd 8d - (2 bytes) +0c1c: e7 44 mov a,($44+x) +0c1e: 3a 44 incw $44 +0c20: 8d 12 mov y,#$12 +0c22: d7 40 mov ($40)+y,a +0c24: 8d 13 mov y,#$13 +0c26: d7 40 mov ($40)+y,a +0c28: e7 44 mov a,($44+x) +0c2a: 3a 44 incw $44 +0c2c: 8d 16 mov y,#$16 +0c2e: d7 40 mov ($40)+y,a +0c30: 6f ret + +0c31: 2d push a +0c32: 8d 24 mov y,#$24 +0c34: f7 40 mov a,($40)+y +0c36: 28 04 and a,#$04 +0c38: ae pop a +0c39: d0 01 bne $0c3c +0c3b: 6f ret + +0c3c: c4 36 mov $36,a +0c3e: 8d 16 mov y,#$16 +0c40: f7 40 mov a,($40)+y +0c42: 60 clrc +0c43: 84 36 adc a,$36 +0c45: 10 02 bpl $0c49 +0c47: e8 01 mov a,#$01 +0c49: 68 55 cmp a,#$55 +0c4b: 90 02 bcc $0c4f +0c4d: e8 55 mov a,#$55 +0c4f: 9c dec a +0c50: c4 37 mov $37,a +0c52: e8 00 mov a,#$00 +0c54: c4 36 mov $36,a +0c56: 8d 28 mov y,#$28 +0c58: f7 40 mov a,($40)+y +0c5a: c4 38 mov $38,a +0c5c: 8d 29 mov y,#$29 +0c5e: f7 40 mov a,($40)+y +0c60: c4 39 mov $39,a +0c62: 3f d6 0d call $0dd6 +0c65: e4 3a mov a,$3a +0c67: 8d 10 mov y,#$10 +0c69: d7 40 mov ($40)+y,a +0c6b: e4 3b mov a,$3b +0c6d: 8d 11 mov y,#$11 +0c6f: d7 40 mov ($40)+y,a +0c71: 8d 0e mov y,#$0e +0c73: f7 40 mov a,($40)+y +0c75: c4 38 mov $38,a +0c77: 8d 0f mov y,#$0f +0c79: f7 40 mov a,($40)+y +0c7b: c4 39 mov $39,a +0c7d: e4 3b mov a,$3b +0c7f: 64 39 cmp a,$39 +0c81: b0 13 bcs $0c96 +0c83: 80 setc +0c84: e4 38 mov a,$38 +0c86: a4 3a sbc a,$3a +0c88: c4 38 mov $38,a +0c8a: e4 39 mov a,$39 +0c8c: a4 3b sbc a,$3b +0c8e: c4 39 mov $39,a +0c90: e8 ff mov a,#$ff +0c92: c4 3b mov $3b,a +0c94: 2f 11 bra $0ca7 +0c96: 80 setc +0c97: e4 3a mov a,$3a +0c99: a4 38 sbc a,$38 +0c9b: c4 38 mov $38,a +0c9d: e4 3b mov a,$3b +0c9f: a4 39 sbc a,$39 +0ca1: c4 39 mov $39,a +0ca3: e8 00 mov a,#$00 +0ca5: c4 3b mov $3b,a +0ca7: 8d 13 mov y,#$13 +0ca9: f7 40 mov a,($40)+y +0cab: 8d 12 mov y,#$12 +0cad: d7 40 mov ($40)+y,a +0caf: 5d mov x,a +0cb0: e4 38 mov a,$38 +0cb2: eb 39 mov y,$39 +0cb4: 9e div ya,x +0cb5: f8 3b mov x,$3b +0cb7: 10 03 bpl $0cbc +0cb9: 48 ff eor a,#$ff +0cbb: bc inc a +0cbc: 8d 14 mov y,#$14 +0cbe: d7 40 mov ($40)+y,a +0cc0: e4 3b mov a,$3b +0cc2: 8d 15 mov y,#$15 +0cc4: d7 40 mov ($40)+y,a +0cc6: 6f ret + +0cc7: 6f ret ; vcmd 8e - nop + +0cc8: 8d 24 mov y,#$24 ; vcmd 8f - set ASDR bit 5 +0cca: f7 40 mov a,($40)+y +0ccc: 08 04 or a,#$04 +0cce: d7 40 mov ($40)+y,a +0cd0: 6f ret + +0cd1: 8d 24 mov y,#$24 ; vcmd 90 - clear ASDR bits +0cd3: f7 40 mov a,($40)+y +0cd5: 28 fb and a,#$fb +0cd7: d7 40 mov ($40)+y,a +0cd9: 6f ret + +0cda: 8d 02 mov y,#$02 ; vcmd 91 - restart channel +0cdc: f7 40 mov a,($40)+y +0cde: c4 44 mov $44,a +0ce0: fc inc y +0ce1: f7 40 mov a,($40)+y +0ce3: c4 45 mov $45,a +0ce5: 6f ret + +0ce6: cd 00 mov x,#$00 ; vcmd 92 - repeat section +0ce8: e7 44 mov a,($44+x) +0cea: 3a 44 incw $44 +0cec: fd mov y,a +0ced: 68 ff cmp a,#$ff +0cef: f0 1a beq $0d0b +0cf1: e7 44 mov a,($44+x) +0cf3: 68 ff cmp a,#$ff +0cf5: f0 06 beq $0cfd +0cf7: 68 00 cmp a,#$00 +0cf9: f0 05 beq $0d00 +0cfb: 2f 12 bra $0d0f +0cfd: dd mov a,y +0cfe: 2f 0f bra $0d0f +0d00: e8 ff mov a,#$ff +0d02: c7 44 mov ($44+x),a +0d04: 3a 44 incw $44 +0d06: 3a 44 incw $44 +0d08: 3a 44 incw $44 +0d0a: 6f ret + +0d0b: 3a 44 incw $44 +0d0d: 2f 05 bra $0d14 +0d0f: 9c dec a +0d10: c7 44 mov ($44+x),a +0d12: 3a 44 incw $44 +0d14: e7 44 mov a,($44+x) +0d16: 3a 44 incw $44 +0d18: c4 34 mov $34,a +0d1a: e7 44 mov a,($44+x) +0d1c: 3a 44 incw $44 +0d1e: c4 35 mov $35,a +0d20: ba 44 movw ya,$44 +0d22: 9a 34 subw ya,$34 +0d24: e0 clrv +0d25: da 44 movw $44,ya +0d27: 6f ret + +0d28: 8d 24 mov y,#$24 ; vcmd 93 - set ASDR bit 4 +0d2a: f7 40 mov a,($40)+y +0d2c: 08 08 or a,#$08 +0d2e: d7 40 mov ($40)+y,a +0d30: 6f ret + +0d31: cd 00 mov x,#$00 ; vcmd 94 - set panning +0d33: e7 44 mov a,($44+x) +0d35: 3a 44 incw $44 +0d37: 8d 27 mov y,#$27 +0d39: d7 40 mov ($40)+y,a +0d3b: 6f ret + +0d3c: 8d 24 mov y,#$24 +0d3e: f7 40 mov a,($40)+y +0d40: 28 f7 and a,#$f7 +0d42: d7 40 mov ($40)+y,a +0d44: 6f ret + +0d45: cd 00 mov x,#$00 +0d47: 2d push a +0d48: 8d 25 mov y,#$25 +0d4a: f7 40 mov a,($40)+y +0d4c: 8d 26 mov y,#$26 +0d4e: d7 40 mov ($40)+y,a +0d50: e7 44 mov a,($44+x) +0d52: 3a 44 incw $44 +0d54: 8d 00 mov y,#$00 +0d56: d7 40 mov ($40)+y,a +0d58: ae pop a +0d59: 8d 25 mov y,#$25 +0d5b: d7 40 mov ($40)+y,a +0d5d: 9c dec a +0d5e: 30 36 bmi $0d96 +0d60: c4 37 mov $37,a +0d62: e8 00 mov a,#$00 +0d64: c4 36 mov $36,a +0d66: 8d 28 mov y,#$28 +0d68: f7 40 mov a,($40)+y +0d6a: c4 38 mov $38,a +0d6c: 8d 29 mov y,#$29 +0d6e: f7 40 mov a,($40)+y +0d70: c4 39 mov $39,a +0d72: 3f d6 0d call $0dd6 +0d75: e4 3a mov a,$3a +0d77: 8d 0e mov y,#$0e +0d79: d7 40 mov ($40)+y,a +0d7b: e4 3b mov a,$3b +0d7d: 8d 0f mov y,#$0f +0d7f: d7 40 mov ($40)+y,a +0d81: 8d 24 mov y,#$24 +0d83: f7 40 mov a,($40)+y +0d85: 28 0f and a,#$0f +0d87: 08 20 or a,#$20 +0d89: d7 40 mov ($40)+y,a +0d8b: 8d 25 mov y,#$25 +0d8d: f7 40 mov a,($40)+y +0d8f: 3f 31 0c call $0c31 +0d92: 3f ec 0b call $0bec +0d95: 6f ret + +0d96: e8 00 mov a,#$00 +0d98: 8d 0e mov y,#$0e +0d9a: d7 40 mov ($40)+y,a +0d9c: 8d 0f mov y,#$0f +0d9e: d7 40 mov ($40)+y,a +0da0: 8d 24 mov y,#$24 +0da2: f7 40 mov a,($40)+y +0da4: 28 0f and a,#$0f +0da6: 08 10 or a,#$10 +0da8: d7 40 mov ($40)+y,a +0daa: 5f 8b 0d jmp $0d8b + +0dad: 8d 24 mov y,#$24 +0daf: f7 40 mov a,($40)+y +0db1: 28 c7 and a,#$c7 +0db3: d7 40 mov ($40)+y,a +0db5: 6f ret + +0db6: f8 34 mov x,$34 +0db8: f5 ce 0d mov a,$0dce+x +0dbb: fd mov y,a +0dbc: e8 4c mov a,#$4c +0dbe: 3f 00 07 call $0700 +0dc1: 6f ret + +0dc2: f8 34 mov x,$34 +0dc4: f5 ce 0d mov a,$0dce+x +0dc7: fd mov y,a +0dc8: e8 5c mov a,#$5c +0dca: 3f 00 07 call $0700 +0dcd: 6f ret + +0dce: db $01,$02,$04,$08,$10,$20,$40,$80 + +0dd6: 8d 00 mov y,#$00 +0dd8: e4 37 mov a,$37 +0dda: 80 setc +0ddb: a8 34 sbc a,#$34 +0ddd: b0 09 bcs $0de8 +0ddf: e4 37 mov a,$37 +0de1: 80 setc +0de2: a8 13 sbc a,#$13 +0de4: b0 06 bcs $0dec +0de6: dc dec y +0de7: 1c asl a +0de8: 7a 36 addw ya,$36 +0dea: da 36 movw $36,ya +0dec: e4 37 mov a,$37 +0dee: 1c asl a +0def: 8d 00 mov y,#$00 +0df1: cd 18 mov x,#$18 +0df3: 9e div ya,x +0df4: 5d mov x,a +0df5: f6 47 0e mov a,$0e47+y +0df8: c4 3b mov $3b,a +0dfa: f6 46 0e mov a,$0e46+y +0dfd: c4 3a mov $3a,a +0dff: f6 49 0e mov a,$0e49+y +0e02: 2d push a +0e03: f6 48 0e mov a,$0e48+y +0e06: ee pop y +0e07: 9a 3a subw ya,$3a +0e09: eb 36 mov y,$36 +0e0b: cf mul ya +0e0c: dd mov a,y +0e0d: 8d 00 mov y,#$00 +0e0f: 7a 3a addw ya,$3a +0e11: cb 3b mov $3b,y +0e13: 1c asl a +0e14: 2b 3b rol $3b +0e16: c4 3a mov $3a,a +0e18: 2f 04 bra $0e1e +0e1a: 4b 3b lsr $3b +0e1c: 7c ror a +0e1d: 3d inc x +0e1e: c8 06 cmp x,#$06 +0e20: d0 f8 bne $0e1a +0e22: c4 3a mov $3a,a +0e24: e4 38 mov a,$38 +0e26: eb 3b mov y,$3b +0e28: cf mul ya +0e29: da 3c movw $3c,ya +0e2b: e4 38 mov a,$38 +0e2d: eb 3a mov y,$3a +0e2f: cf mul ya +0e30: 6d push y +0e31: e4 39 mov a,$39 +0e33: eb 3a mov y,$3a +0e35: cf mul ya +0e36: 7a 3c addw ya,$3c +0e38: da 3c movw $3c,ya +0e3a: e4 39 mov a,$39 +0e3c: eb 3b mov y,$3b +0e3e: cf mul ya +0e3f: fd mov y,a +0e40: ae pop a +0e41: 7a 3c addw ya,$3c +0e43: da 3a movw $3a,ya +0e45: 6f ret + +0e46: dw $085f +0e48: dw $08de +0e4a: dw $0965 +0e4c: dw $09f4 +0e4e: dw $0a8c +0e50: dw $0b2c +0e52: dw $0bd6 +0e54: dw $0c8b +0e56: dw $0d4a +0e58: dw $0e14 +0e5a: dw $0eea +0e5c: dw $0fcd +0e5e: dw $10be + +0e60: e4 34 mov a,$34 +0e62: f8 36 mov x,$36 +0e64: d4 30 mov $30+x,a +0e66: 6f ret + +0e67: eb 33 mov y,$33 ; vcmd 95 - stop channel +0e69: cd 00 mov x,#$00 +0e6b: d9 00 mov $00+y,x +0e6d: 6f ret + +0e6e: db $07,$18,$f2,$0e,$07,$15,$fd,$0e,$07,$15,$08,$0f,$07,$15,$19,$0f,$06,$17,$24,$0f,$07,$18,$3d,$0f,$07,$17,$48,$0f,$07,$14,$53,$0f,$07,$14,$5e,$0f,$07,$17,$69,$0f,$07,$14,$74,$0f,$07,$78,$7f,$0f,$06,$16,$8a,$0f,$06,$16,$95,$0f,$06,$16,$a0,$0f,$06,$16,$ab,$0f,$06,$16,$b6,$0f,$06,$17,$c1,$0f,$06,$16,$d4,$0f,$06,$16,$df,$0f,$06,$16,$ea,$0f,$06,$16,$f7,$0f,$06,$16,$02,$10,$06,$17,$0d,$10,$06,$16,$1e,$10,$06,$16,$29,$10,$06,$16,$42,$10,$06,$16,$4d,$10,$06,$16,$58,$10,$06,$16,$63,$10,$06,$16,$6e,$10,$06,$16,$79,$10,$06,$16,$84,$10,$85,$09,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$0a,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$0b,$94,$08,$82,$dc,$25,$0c,$25,$0c,$22,$0c,$22,$0c,$00,$02,$95,$85,$0c,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$05,$94,$08,$82,$78,$20,$0c,$20,$0c,$20,$0c,$20,$0c,$20,$0c,$20,$0c,$20,$0c,$20,$0c,$00,$02,$95,$85,$0e,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$0f,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$10,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$11,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$12,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$13,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$14,$94,$08,$82,$dc,$25,$60,$00,$02,$95,$85,$15,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$16,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$11,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$18,$94,$08,$82,$78,$25,$30,$00,$02,$95,$85,$19,$94,$08,$82,$78,$25,$30,$00,$02,$95,$85,$1a,$94,$08,$82,$dc,$20,$12,$82,$78,$1f,$12,$1f,$12,$1e,$12,$00,$02,$95,$85,$1b,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$1c,$94,$08,$82,$46,$25,$30,$00,$02,$95,$85,$1d,$94,$08,$82,$78,$25,$18,$25,$18,$00,$02,$95,$85,$1e,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$1f,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$20,$94,$08,$82,$dc,$25,$18,$25,$18,$25,$18,$25,$18,$00,$02,$95,$85,$21,$94,$08,$82,$78,$25,$30,$00,$02,$95,$85,$22,$94,$08,$82,$78,$25,$0c,$25,$0c,$25,$0c,$25,$0c,$25,$0c,$25,$0c,$25,$0c,$25,$0c,$00,$02,$95,$85,$23,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$24,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$25,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$26,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$27,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$28,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$85,$29,$94,$08,$82,$dc,$25,$30,$00,$02,$95,$6f + +1090: e8 15 mov a,#$15 ; load song +1092: fd mov y,a +1093: e8 00 mov a,#$00 +1095: da 3e movw $3e,ya +1097: da 40 movw $40,ya +1099: cd 00 mov x,#$00 +109b: e7 3e mov a,($3e+x) +109d: 3a 3e incw $3e +109f: c4 36 mov $36,a +10a1: d0 01 bne $10a4 +10a3: 6f ret + +10a4: 1c asl a +10a5: 60 clrc +10a6: 88 01 adc a,#$01 +10a8: 8d 00 mov y,#$00 +10aa: 7a 40 addw ya,$40 +10ac: da 40 movw $40,ya +10ae: e8 00 mov a,#$00 +10b0: c4 34 mov $34,a +10b2: e4 34 mov a,$34 +10b4: 1c asl a +10b5: 5d mov x,a +10b6: f4 59 mov a,$59+x +10b8: c4 42 mov $42,a +10ba: 3d inc x +10bb: f4 59 mov a,$59+x +10bd: c4 43 mov $43,a +10bf: eb 34 mov y,$34 +10c1: cd 10 mov x,#$10 +10c3: d9 00 mov $00+y,x +10c5: cd 0a mov x,#$0a +10c7: d9 20 mov $20+y,x +10c9: f8 34 mov x,$34 +10cb: d9 10 mov $10+y,x +10cd: cd 00 mov x,#$00 +10cf: e7 3e mov a,($3e+x) +10d1: 2d push a +10d2: 3a 3e incw $3e +10d4: e7 3e mov a,($3e+x) +10d6: fd mov y,a +10d7: 3a 3e incw $3e +10d9: ae pop a +10da: 7a 40 addw ya,$40 +10dc: da 44 movw $44,ya +10de: e8 00 mov a,#$00 +10e0: 8d 00 mov y,#$00 +10e2: d7 42 mov ($42)+y,a +10e4: fc inc y +10e5: d7 42 mov ($42)+y,a +10e7: fc inc y +10e8: e4 44 mov a,$44 +10ea: d7 42 mov ($42)+y,a +10ec: fc inc y +10ed: e4 45 mov a,$45 +10ef: d7 42 mov ($42)+y,a +10f1: fc inc y +10f2: e4 44 mov a,$44 +10f4: d7 42 mov ($42)+y,a +10f6: fc inc y +10f7: e4 45 mov a,$45 +10f9: d7 42 mov ($42)+y,a +10fb: fc inc y +10fc: e8 00 mov a,#$00 +10fe: d7 42 mov ($42)+y,a +1100: fc inc y +1101: e8 00 mov a,#$00 +1103: d7 42 mov ($42)+y,a +1105: fc inc y +1106: ad 28 cmp y,#$28 +1108: d0 f9 bne $1103 +110a: ab 34 inc $34 +110c: e4 36 mov a,$36 +110e: 64 34 cmp a,$34 +1110: d0 a0 bne $10b2 +1112: e8 08 mov a,#$08 +1114: 64 34 cmp a,$34 +1116: f0 1b beq $1133 +1118: f8 34 mov x,$34 +111a: e5 98 11 mov a,$1198 +111d: 74 00 cmp a,$00+x +111f: d0 0a bne $112b +1121: eb 34 mov y,$34 +1123: cd 00 mov x,#$00 +1125: d9 00 mov $00+y,x +1127: d9 20 mov $20+y,x +1129: d9 10 mov $10+y,x +112b: ab 34 inc $34 +112d: e8 08 mov a,#$08 +112f: 64 34 cmp a,$34 +1131: d0 e5 bne $1118 +1133: cd 00 mov x,#$00 +1135: f5 98 11 mov a,$1198+x +1138: cd 00 mov x,#$00 +113a: 8d 08 mov y,#$08 +113c: 74 00 cmp a,$00+x +113e: d0 08 bne $1148 +1140: 2d push a +1141: f4 00 mov a,$00+x +1143: 08 01 or a,#$01 +1145: d4 00 mov $00+x,a +1147: ae pop a +1148: 3d inc x +1149: fe f1 dbnz y,$113c +114b: e8 50 mov a,#$50 +114d: c4 30 mov $30,a +114f: e8 00 mov a,#$00 +1151: c5 20 04 mov $0420,a +1154: 6f ret + +1155: 5d mov x,a +1156: f5 98 11 mov a,$1198+x +1159: 08 01 or a,#$01 +115b: cd 00 mov x,#$00 +115d: 8d 08 mov y,#$08 +115f: 74 00 cmp a,$00+x +1161: d0 31 bne $1194 +1163: 2d push a +1164: 4d push x +1165: 6d push y +1166: d8 33 mov $33,x +1168: 7d mov a,x +1169: 1c asl a +116a: 5d mov x,a +116b: f5 59 00 mov a,$0059+x +116e: c4 40 mov $40,a +1170: 3d inc x +1171: f5 59 00 mov a,$0059+x +1174: c4 41 mov $41,a +1176: 3f 05 07 call $0705 +1179: 90 11 bcc $118c +117b: 3f f4 06 call $06f4 +117e: e8 00 mov a,#$00 +1180: 8d 00 mov y,#$00 +1182: 3f fd 06 call $06fd +1185: e8 01 mov a,#$01 +1187: 8d 00 mov y,#$00 +1189: 3f fd 06 call $06fd +118c: ee pop y +118d: ce pop x +118e: e8 00 mov a,#$00 +1190: d5 00 00 mov $0000+x,a +1193: ae pop a +1194: 3d inc x +1195: fe c8 dbnz y,$115f +1197: 6f ret + +1198: 10 20 bpl $11ba +119a: 6f ret + +119b: 6f ret + +119c: cd 00 mov x,#$00 +119e: 1e 20 04 cmp x,$0420 +11a1: f0 01 beq $11a4 +11a3: 6f ret + +11a4: c5 20 04 mov $0420,a +11a7: cc 21 04 mov $0421,y +11aa: dd mov a,y +11ab: 5d mov x,a +11ac: e8 7f mov a,#$7f +11ae: 8d 00 mov y,#$00 +11b0: 9e div ya,x +11b1: c5 23 04 mov $0423,a +11b4: cb 34 mov $34,y +11b6: dd mov a,y +11b7: 60 clrc +11b8: 84 34 adc a,$34 +11ba: 60 clrc +11bb: 84 34 adc a,$34 +11bd: c5 22 04 mov $0422,a +11c0: e8 00 mov a,#$00 +11c2: c5 24 04 mov $0424,a +11c5: c5 25 04 mov $0425,a +11c8: 6f ret + +11c9: e8 00 mov a,#$00 +11cb: 3f 55 11 call $1155 +11ce: 8f aa f4 mov $f4,#$aa +11d1: 8f bb f5 mov $f5,#$bb +11d4: 78 cc f4 cmp $f4,#$cc +11d7: d0 fb bne $11d4 +11d9: 2f 19 bra $11f4 +11db: eb f4 mov y,$f4 +11dd: d0 fc bne $11db +11df: 7e f4 cmp y,$f4 +11e1: d0 0b bne $11ee +11e3: e4 f5 mov a,$f5 +11e5: cb f4 mov $f4,y +11e7: d7 3e mov ($3e)+y,a +11e9: fc inc y +11ea: d0 f3 bne $11df +11ec: ab 3f inc $3f +11ee: 10 ef bpl $11df +11f0: 7e f4 cmp y,$f4 +11f2: 10 eb bpl $11df +11f4: ba f6 movw ya,$f6 +11f6: da 3e movw $3e,ya +11f8: ba f4 movw ya,$f4 +11fa: c4 f4 mov $f4,a +11fc: dd mov a,y +11fd: 5d mov x,a +11fe: d0 db bne $11db +1200: 6f ret + +1201: 6f ret + +1202: c4 3e mov $3e,a +1204: e8 00 mov a,#$00 +1206: c4 3f mov $3f,a +1208: 8d 00 mov y,#$00 +120a: 7a 3e addw ya,$3e +120c: 7a 3e addw ya,$3e +120e: 7a 3e addw ya,$3e +1210: 7a 3e addw ya,$3e +1212: da 3e movw $3e,ya +1214: e8 0e mov a,#$0e +1216: fd mov y,a +1217: e8 6e mov a,#$6e +1219: 7a 3e addw ya,$3e +121b: cd 00 mov x,#$00 +121d: da 3e movw $3e,ya +121f: e7 3e mov a,($3e+x) +1221: c4 36 mov $36,a +1223: c4 34 mov $34,a +1225: 3a 3e incw $3e +1227: e7 3e mov a,($3e+x) +1229: c4 37 mov $37,a +122b: 3a 3e incw $3e +122d: ba 3e movw ya,$3e +122f: da 40 movw $40,ya +1231: f8 34 mov x,$34 +1233: e8 00 mov a,#$00 +1235: 74 00 cmp a,$00+x +1237: f0 07 beq $1240 +1239: e4 37 mov a,$37 +123b: 74 20 cmp a,$20+x +123d: 10 01 bpl $1240 +123f: 6f ret + +1240: e4 37 mov a,$37 +1242: d4 20 mov $20+x,a +1244: e4 36 mov a,$36 +1246: d4 10 mov $10+x,a +1248: e8 21 mov a,#$21 +124a: d4 00 mov $00+x,a +124c: e4 34 mov a,$34 +124e: 1c asl a +124f: 5d mov x,a +1250: f4 59 mov a,$59+x +1252: c4 42 mov $42,a +1254: 3d inc x +1255: f4 59 mov a,$59+x +1257: c4 43 mov $43,a +1259: cd 00 mov x,#$00 +125b: e7 3e mov a,($3e+x) +125d: 2d push a +125e: 3a 3e incw $3e +1260: e7 3e mov a,($3e+x) +1262: fd mov y,a +1263: 3a 3e incw $3e +1265: ae pop a +1266: da 44 movw $44,ya +1268: e8 00 mov a,#$00 +126a: 8d 00 mov y,#$00 +126c: d7 42 mov ($42)+y,a +126e: fc inc y +126f: d7 42 mov ($42)+y,a +1271: fc inc y +1272: e4 44 mov a,$44 +1274: d7 42 mov ($42)+y,a +1276: fc inc y +1277: e4 45 mov a,$45 +1279: d7 42 mov ($42)+y,a +127b: fc inc y +127c: e4 44 mov a,$44 +127e: d7 42 mov ($42)+y,a +1280: fc inc y +1281: e4 45 mov a,$45 +1283: d7 42 mov ($42)+y,a +1285: fc inc y +1286: e8 01 mov a,#$01 +1288: d7 42 mov ($42)+y,a +128a: fc inc y +128b: e8 00 mov a,#$00 +128d: d7 42 mov ($42)+y,a +128f: fc inc y +1290: ad 28 cmp y,#$28 +1292: d0 f9 bne $128d +1294: 6f ret + +1295: 6f ret + +1296: e4 34 mov a,$34 +1298: eb 35 mov y,$35 +129a: 7a 36 addw ya,$36 +129c: 6f ret + +129d: e4 34 mov a,$34 +129f: eb 35 mov y,$35 +12a1: 9a 36 subw ya,$36 +12a3: 6f ret + +12a4: e4 35 mov a,$35 +12a6: 0d push psw +12a7: 10 0d bpl $12b6 +12a9: e8 00 mov a,#$00 +12ab: 80 setc +12ac: a4 34 sbc a,$34 +12ae: c4 34 mov $34,a +12b0: e8 00 mov a,#$00 +12b2: a4 35 sbc a,$35 +12b4: c4 35 mov $35,a +12b6: 3f ca 12 call $12ca +12b9: 8e pop psw +12ba: 10 0d bpl $12c9 +12bc: e8 00 mov a,#$00 +12be: 80 setc +12bf: a4 34 sbc a,$34 +12c1: c4 34 mov $34,a +12c3: e8 00 mov a,#$00 +12c5: a4 35 sbc a,$35 +12c7: c4 35 mov $35,a +12c9: 6f ret + +12ca: 4d push x +12cb: 6d push y +12cc: cd 10 mov x,#$10 +12ce: e8 00 mov a,#$00 +12d0: c4 38 mov $38,a +12d2: c4 39 mov $39,a +12d4: 2b 34 rol $34 +12d6: 2b 35 rol $35 +12d8: 2b 38 rol $38 +12da: 2b 39 rol $39 +12dc: e4 38 mov a,$38 +12de: 80 setc +12df: a4 36 sbc a,$36 +12e1: fd mov y,a +12e2: e4 39 mov a,$39 +12e4: a4 37 sbc a,$37 +12e6: 90 04 bcc $12ec +12e8: eb 38 mov y,$38 +12ea: e4 39 mov a,$39 +12ec: 2b 34 rol $34 +12ee: 2b 35 rol $35 +12f0: 1d dec x +12f1: d0 e5 bne $12d8 +12f3: ee pop y +12f4: ce pop x +12f5: 6f ret + +12f6: e4 34 mov a,$34 +12f8: eb 35 mov y,$35 +12fa: a8 80 sbc a,#$80 +12fc: 90 01 bcc $12ff +12fe: fc inc y +12ff: dd mov a,y +1300: 6f ret + +1301: 1c asl a +1302: c4 46 mov $46,a +1304: 1c asl a +1305: 60 clrc +1306: 84 46 adc a,$46 +1308: c4 46 mov $46,a +130a: e8 00 mov a,#$00 +130c: c4 47 mov $47,a +130e: e8 04 mov a,#$04 +1310: fd mov y,a +1311: e8 30 mov a,#$30 +1313: 7a 46 addw ya,$46 +1315: da 46 movw $46,ya +1317: 8d 00 mov y,#$00 +1319: cd 00 mov x,#$00 +131b: e7 46 mov a,($46+x) +131d: 3a 46 incw $46 +131f: 8d 20 mov y,#$20 +1321: d7 40 mov ($40)+y,a +1323: e7 46 mov a,($46+x) +1325: 3a 46 incw $46 +1327: 8d 21 mov y,#$21 +1329: d7 40 mov ($40)+y,a +132b: e7 46 mov a,($46+x) +132d: 3a 46 incw $46 +132f: 8d 22 mov y,#$22 +1331: d7 40 mov ($40)+y,a +1333: e7 46 mov a,($46+x) +1335: 3a 46 incw $46 +1337: 8d 23 mov y,#$23 +1339: d7 40 mov ($40)+y,a +133b: e7 46 mov a,($46+x) +133d: 3a 46 incw $46 +133f: 8d 29 mov y,#$29 +1341: d7 40 mov ($40)+y,a +1343: e7 46 mov a,($46+x) +1345: 3a 46 incw $46 +1347: 8d 28 mov y,#$28 +1349: d7 40 mov ($40)+y,a +134b: 6f ret + +134c: e8 5d mov a,#$5d +134e: 8d 2a mov y,#$2a +1350: 3f 00 07 call $0700 +1353: 6f ret + +1354: 60 clrc +1355: e4 f4 mov a,$f4 +1357: 64 f4 cmp a,$f4 +1359: d0 0a bne $1365 +135b: 80 setc +135c: 68 00 cmp a,#$00 +135e: f0 05 beq $1365 +1360: eb f5 mov y,$f5 +1362: 8f f1 f1 mov $f1,#$f1 +1365: 6f ret + diff --git a/snes/Power Moves ($0530).bin b/snes/Power Moves ($0530).bin new file mode 100644 index 0000000000000000000000000000000000000000..219ef49772e9c9f64d9ac8f9c8382b3087f20099 GIT binary patch literal 4100 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 literal 0 HcmV?d00001 diff --git a/snes/Power Moves.s b/snes/Power Moves.s new file mode 100644 index 00000000..50b2c782 --- /dev/null +++ b/snes/Power Moves.s @@ -0,0 +1,1746 @@ +0530: 20 clrp +0531: cd 7f mov x,#$7f +0533: bd mov sp,x +0534: e8 00 mov a,#$00 ; clear registers +0536: cd 00 mov x,#$00 +0538: 8d 00 mov y,#$00 +053a: 3f fa 07 call $07fa ; clear RAM +053d: 3f 2b 08 call $082b +0540: 3f 1a 15 call $151a +0543: 3f 17 08 call $0817 +0546: 8f ee f4 mov $f4,#$ee ; set communication ports +0549: 78 ff f6 cmp $f6,#$ff +054c: d0 fb bne $0549 +054e: 8f 03 f1 mov $f1,#$03 +0551: 3f 22 15 call $1522 +0554: 90 57 bcc $05ad +0556: 5d mov x,a +0557: 28 f0 and a,#$f0 +0559: 68 10 cmp a,#$10 +055b: f0 2a beq $0587 +055d: 68 20 cmp a,#$20 +055f: f0 2e beq $058f +0561: 68 30 cmp a,#$30 +0563: f0 32 beq $0597 +0565: 68 40 cmp a,#$40 +0567: f0 33 beq $059c +0569: 68 50 cmp a,#$50 +056b: f0 2f beq $059c +056d: 68 60 cmp a,#$60 +056f: f0 2b beq $059c +0571: 68 70 cmp a,#$70 +0573: f0 27 beq $059c +0575: 68 80 cmp a,#$80 +0577: f0 23 beq $059c +0579: 68 90 cmp a,#$90 +057b: f0 1f beq $059c +057d: 68 a0 cmp a,#$a0 +057f: f0 1b beq $059c +0581: 68 f0 cmp a,#$f0 +0583: f0 20 beq $05a5 +0585: 2f 26 bra $05ad +0587: 7d mov a,x +0588: 28 0f and a,#$0f +058a: 3f 51 12 call $1251 +058d: 2f 1e bra $05ad +058f: 7d mov a,x +0590: 28 0f and a,#$0f +0592: 3f 16 13 call $1316 +0595: 2f 16 bra $05ad +0597: 3f 8a 13 call $138a +059a: 2f 11 bra $05ad +059c: 7d mov a,x +059d: 80 setc +059e: a8 40 sbc a,#$40 +05a0: 3f c3 13 call $13c3 +05a3: 2f 08 bra $05ad +05a5: 7d mov a,x +05a6: 28 0f and a,#$0f +05a8: 3f 5d 13 call $135d +05ab: 2f 00 bra $05ad +05ad: e8 00 mov a,#$00 +05af: f8 fd mov x,$fd +05b1: f0 02 beq $05b5 +05b3: 08 01 or a,#$01 +05b5: f8 fe mov x,$fe +05b7: f0 02 beq $05bb +05b9: 08 02 or a,#$02 +05bb: 68 00 cmp a,#$00 +05bd: f0 92 beq $0551 +05bf: c4 58 mov $58,a +05c1: e8 00 mov a,#$00 +05c3: c4 33 mov $33,a +05c5: e4 58 mov a,$58 +05c7: 28 01 and a,#$01 +05c9: f0 04 beq $05cf +05cb: e4 30 mov a,$30 +05cd: c4 fa mov $fa,a +05cf: e4 58 mov a,$58 +05d1: 28 02 and a,#$02 +05d3: f0 04 beq $05d9 +05d5: e4 31 mov a,$31 +05d7: c4 fb mov $fb,a +05d9: 3f 46 09 call $0946 +05dc: e4 33 mov a,$33 +05de: 5d mov x,a +05df: f4 00 mov a,$00+x +05e1: f0 63 beq $0646 +05e3: 28 0f and a,#$0f +05e5: 68 01 cmp a,#$01 +05e7: d0 5d bne $0646 +05e9: 7d mov a,x +05ea: 1c asl a +05eb: 5d mov x,a +05ec: f5 59 00 mov a,$0059+x +05ef: c4 40 mov $40,a +05f1: 3d inc x +05f2: f5 59 00 mov a,$0059+x +05f5: c4 41 mov $41,a +05f7: 8d 06 mov y,#$06 +05f9: f7 40 mov a,($40)+y +05fb: bc inc a +05fc: 24 58 and a,$58 +05fe: f0 46 beq $0646 +0600: 8d 04 mov y,#$04 +0602: f7 40 mov a,($40)+y +0604: c4 44 mov $44,a +0606: 8d 05 mov y,#$05 +0608: f7 40 mov a,($40)+y +060a: c4 45 mov $45,a +060c: 8d 00 mov y,#$00 +060e: f7 40 mov a,($40)+y +0610: 68 00 cmp a,#$00 +0612: f0 10 beq $0624 +0614: 9c dec a +0615: d7 40 mov ($40)+y,a +0617: e4 44 mov a,$44 +0619: 8d 04 mov y,#$04 +061b: d7 40 mov ($40)+y,a +061d: e4 45 mov a,$45 +061f: fc inc y +0620: d7 40 mov ($40)+y,a +0622: 2f 22 bra $0646 +0624: cd 00 mov x,#$00 +0626: e7 44 mov a,($44+x) +0628: 3a 44 incw $44 +062a: 68 80 cmp a,#$80 ; check if next byte is a vcmd +062c: 10 05 bpl $0633 +062e: 3f ac 0d call $0dac +0631: 2f d9 bra $060c +0633: 60 clrc ; dispatch current vcmd from table +0634: 28 7f and a,#$7f +0636: 1c asl a +0637: 5d mov x,a +0638: 3f 43 06 call $0643 +063b: f8 33 mov x,$33 +063d: f4 00 mov a,$00+x +063f: f0 05 beq $0646 +0641: 2f c9 bra $060c +0643: 1f cf 0a jmp ($0acf+x) + +0646: ab 33 inc $33 +0648: 78 10 33 cmp $33,#$10 +064b: d0 8f bne $05dc +064d: e0 clrv +064e: e8 00 mov a,#$00 +0650: c4 33 mov $33,a +0652: e4 33 mov a,$33 +0654: 5d mov x,a +0655: f4 00 mov a,$00+x +0657: f0 55 beq $06ae +0659: 28 0f and a,#$0f +065b: 68 01 cmp a,#$01 +065d: d0 4f bne $06ae +065f: 7d mov a,x +0660: 1c asl a +0661: 5d mov x,a +0662: f5 59 00 mov a,$0059+x +0665: c4 40 mov $40,a +0667: 3d inc x +0668: f5 59 00 mov a,$0059+x +066b: c4 41 mov $41,a +066d: 8d 06 mov y,#$06 +066f: f7 40 mov a,($40)+y +0671: bc inc a +0672: 24 58 and a,$58 +0674: f0 38 beq $06ae +0676: 8d 24 mov y,#$24 +0678: f7 40 mov a,($40)+y +067a: 28 30 and a,#$30 +067c: f0 30 beq $06ae +067e: 3f 3c 07 call $073c +0681: 90 28 bcc $06ab +0683: 3f 2b 07 call $072b +0686: 8d 24 mov y,#$24 +0688: f7 40 mov a,($40)+y +068a: 2d push a +068b: 28 08 and a,#$08 +068d: d0 1b bne $06aa +068f: e8 00 mov a,#$00 +0691: 8d 00 mov y,#$00 +0693: 3f 34 07 call $0734 +0696: e8 01 mov a,#$01 +0698: 8d 00 mov y,#$00 +069a: 3f 34 07 call $0734 +069d: ae pop a +069e: 28 10 and a,#$10 +06a0: d0 09 bne $06ab +06a2: 3f 74 07 call $0774 +06a5: 3f 1d 0e call $0e1d +06a8: 2f 01 bra $06ab +06aa: ae pop a +06ab: 3f 14 0e call $0e14 +06ae: ab 33 inc $33 +06b0: 78 10 33 cmp $33,#$10 +06b3: d0 9d bne $0652 +06b5: e8 00 mov a,#$00 +06b7: c4 33 mov $33,a +06b9: e4 33 mov a,$33 +06bb: 5d mov x,a +06bc: f4 00 mov a,$00+x +06be: f0 61 beq $0721 +06c0: 28 0f and a,#$0f +06c2: 68 01 cmp a,#$01 +06c4: d0 5b bne $0721 +06c6: 7d mov a,x +06c7: 1c asl a +06c8: 5d mov x,a +06c9: f5 59 00 mov a,$0059+x +06cc: c4 40 mov $40,a +06ce: 3d inc x +06cf: f5 59 00 mov a,$0059+x +06d2: c4 41 mov $41,a +06d4: 8d 06 mov y,#$06 +06d6: f7 40 mov a,($40)+y +06d8: bc inc a +06d9: 24 58 and a,$58 +06db: f0 44 beq $0721 +06dd: 3f 3c 07 call $073c +06e0: 90 3f bcc $0721 +06e2: e8 00 mov a,#$00 +06e4: c4 38 mov $38,a +06e6: c4 39 mov $39,a +06e8: c4 3a mov $3a,a +06ea: 3f d2 09 call $09d2 +06ed: 90 02 bcc $06f1 +06ef: ab 3a inc $3a +06f1: 3f 4c 0a call $0a4c +06f4: 90 08 bcc $06fe +06f6: 8d 17 mov y,#$17 +06f8: f7 40 mov a,($40)+y +06fa: c4 38 mov $38,a +06fc: ab 3a inc $3a +06fe: e4 3a mov a,$3a +0700: f0 1f beq $0721 +0702: 3f 2b 07 call $072b +0705: 8d 0e mov y,#$0e +0707: f7 40 mov a,($40)+y +0709: c4 36 mov $36,a +070b: 8d 0f mov y,#$0f +070d: f7 40 mov a,($40)+y +070f: c4 37 mov $37,a +0711: 60 clrc +0712: e4 36 mov a,$36 +0714: 84 38 adc a,$38 +0716: c4 36 mov $36,a +0718: e4 37 mov a,$37 +071a: 84 39 adc a,$39 +071c: c4 37 mov $37,a +071e: 3f eb 07 call $07eb +0721: ab 33 inc $33 +0723: 78 10 33 cmp $33,#$10 +0726: d0 91 bne $06b9 +0728: 5f 51 05 jmp $0551 + +072b: e4 34 mov a,$34 +072d: 1c asl a +072e: 1c asl a +072f: 1c asl a +0730: 1c asl a +0731: c4 49 mov $49,a +0733: 6f ret + +0734: 60 clrc +0735: 84 49 adc a,$49 +0737: c4 f2 mov $f2,a +0739: cb f3 mov $f3,y +073b: 6f ret + +073c: f8 33 mov x,$33 +073e: f4 10 mov a,$10+x +0740: fb 20 mov y,$20+x +0742: cd 00 mov x,#$00 +0744: 8f 10 3a mov $3a,#$10 +0747: 8f 00 38 mov $38,#$00 +074a: 3e 33 cmp x,$33 +074c: f0 16 beq $0764 +074e: 2d push a +074f: f4 00 mov a,$00+x +0751: ae pop a +0752: f0 10 beq $0764 +0754: 74 10 cmp a,$10+x +0756: d0 0c bne $0764 +0758: c4 34 mov $34,a +075a: dd mov a,y +075b: 74 20 cmp a,$20+x +075d: b0 03 bcs $0762 +075f: 8f 01 38 mov $38,#$01 +0762: e4 34 mov a,$34 +0764: 3d inc x +0765: 6e 3a e2 dbnz $3a,$074a +0768: c4 34 mov $34,a +076a: e8 00 mov a,#$00 +076c: 64 38 cmp a,$38 +076e: f0 02 beq $0772 +0770: 60 clrc +0771: 6f ret + +0772: 80 setc +0773: 6f ret + +0774: 8d 0e mov y,#$0e +0776: f7 40 mov a,($40)+y +0778: c4 36 mov $36,a +077a: 8d 0f mov y,#$0f +077c: f7 40 mov a,($40)+y +077e: c4 37 mov $37,a +0780: 3f eb 07 call $07eb +0783: 8d 20 mov y,#$20 +0785: f7 40 mov a,($40)+y +0787: fd mov y,a +0788: e8 04 mov a,#$04 +078a: 3f 34 07 call $0734 +078d: 8d 21 mov y,#$21 +078f: f7 40 mov a,($40)+y +0791: fd mov y,a +0792: e8 05 mov a,#$05 +0794: 3f 34 07 call $0734 +0797: 8d 22 mov y,#$22 +0799: f7 40 mov a,($40)+y +079b: fd mov y,a +079c: e8 06 mov a,#$06 +079e: 3f 34 07 call $0734 +07a1: 8d 23 mov y,#$23 +07a3: f7 40 mov a,($40)+y +07a5: fd mov y,a +07a6: e8 07 mov a,#$07 +07a8: 3f 34 07 call $0734 +07ab: 8d 09 mov y,#$09 +07ad: f7 40 mov a,($40)+y +07af: c4 36 mov $36,a +07b1: 3f b5 07 call $07b5 +07b4: 6f ret + +07b5: 8d 27 mov y,#$27 +07b7: f7 40 mov a,($40)+y +07b9: 28 0f and a,#$0f +07bb: 1c asl a +07bc: 1c asl a +07bd: 1c asl a +07be: 1c asl a +07bf: c4 38 mov $38,a +07c1: 8d 0a mov y,#$0a +07c3: f7 40 mov a,($40)+y +07c5: c4 3a mov $3a,a +07c7: eb 38 mov y,$38 +07c9: cf mul ya +07ca: e4 3a mov a,$3a +07cc: cb 38 mov $38,y +07ce: 80 setc +07cf: a4 38 sbc a,$38 +07d1: c4 38 mov $38,a +07d3: 3f 99 09 call $0999 +07d6: fd mov y,a +07d7: e8 00 mov a,#$00 +07d9: 3f 34 07 call $0734 +07dc: e4 3a mov a,$3a +07de: 80 setc +07df: a4 38 sbc a,$38 +07e1: 3f 99 09 call $0999 +07e4: fd mov y,a +07e5: e8 01 mov a,#$01 +07e7: 3f 34 07 call $0734 +07ea: 6f ret + +07eb: eb 36 mov y,$36 +07ed: e8 02 mov a,#$02 +07ef: 3f 34 07 call $0734 +07f2: eb 37 mov y,$37 +07f4: e8 03 mov a,#$03 +07f6: 3f 34 07 call $0734 +07f9: 6f ret + +07fa: e8 00 mov a,#$00 +07fc: 5d mov x,a +07fd: af mov (x)+,a +07fe: c8 59 cmp x,#$59 +0800: d0 fb bne $07fd +0802: e8 00 mov a,#$00 +0804: c5 20 04 mov $0420,a +0807: c5 21 04 mov $0421,a +080a: c5 22 04 mov $0422,a +080d: c5 23 04 mov $0423,a +0810: c5 24 04 mov $0424,a +0813: c5 25 04 mov $0425,a +0816: 6f ret + +0817: 8f 30 f1 mov $f1,#$30 +081a: e8 00 mov a,#$00 +081c: c4 f1 mov $f1,a +081e: e8 00 mov a,#$00 +0820: c4 fa mov $fa,a +0822: c4 fb mov $fb,a +0824: c4 fc mov $fc,a +0826: e8 50 mov a,#$50 +0828: c4 30 mov $30,a +082a: 6f ret + +082b: e8 6d mov a,#$6d +082d: 8d f8 mov y,#$f8 +082f: 3f 37 07 call $0737 +0832: e8 3d mov a,#$3d +0834: 8d 00 mov y,#$00 +0836: 3f 37 07 call $0737 +0839: e8 4d mov a,#$4d +083b: 8d 00 mov y,#$00 +083d: 3f 37 07 call $0737 +0840: e8 7d mov a,#$7d +0842: 8d 00 mov y,#$00 +0844: 3f 37 07 call $0737 +0847: e8 0d mov a,#$0d +0849: 8d 00 mov y,#$00 +084b: 3f 37 07 call $0737 +084e: e8 2d mov a,#$2d +0850: 8d 00 mov y,#$00 +0852: 3f 37 07 call $0737 +0855: e8 6c mov a,#$6c +0857: 8d 20 mov y,#$20 +0859: 3f 37 07 call $0737 +085c: e8 0c mov a,#$0c +085e: 8d 70 mov y,#$70 +0860: 3f 37 07 call $0737 +0863: e8 1c mov a,#$1c +0865: 8d 70 mov y,#$70 +0867: 3f 37 07 call $0737 +086a: e8 2c mov a,#$2c +086c: 8d 00 mov y,#$00 +086e: 3f 37 07 call $0737 +0871: e8 3c mov a,#$3c +0873: 8d 00 mov y,#$00 +0875: 3f 37 07 call $0737 +0878: e8 0f mov a,#$0f +087a: 8d 7f mov y,#$7f +087c: 3f 37 07 call $0737 +087f: e8 1f mov a,#$1f +0881: 8d 00 mov y,#$00 +0883: 3f 37 07 call $0737 +0886: e8 2f mov a,#$2f +0888: 8d 00 mov y,#$00 +088a: 3f 37 07 call $0737 +088d: e8 3f mov a,#$3f +088f: 8d 00 mov y,#$00 +0891: 3f 37 07 call $0737 +0894: e8 4f mov a,#$4f +0896: 8d 00 mov y,#$00 +0898: 3f 37 07 call $0737 +089b: e8 5f mov a,#$5f +089d: 8d 00 mov y,#$00 +089f: 3f 37 07 call $0737 +08a2: e8 6f mov a,#$6f +08a4: 8d 00 mov y,#$00 +08a6: 3f 37 07 call $0737 +08a9: e8 7f mov a,#$7f +08ab: 8d 00 mov y,#$00 +08ad: 3f 37 07 call $0737 +08b0: 3f d1 08 call $08d1 +08b3: 00 nop +08b4: 00 nop +08b5: 00 nop +08b6: 00 nop +08b7: 00 nop +08b8: 3f c9 08 call $08c9 +08bb: 00 nop +08bc: 00 nop +08bd: 00 nop +08be: 00 nop +08bf: 00 nop +08c0: 6f ret + +08c1: e8 5c mov a,#$5c +08c3: 8d ff mov y,#$ff +08c5: 3f 37 07 call $0737 +08c8: 6f ret + +08c9: e8 4c mov a,#$4c +08cb: 8d ff mov y,#$ff +08cd: 3f 37 07 call $0737 +08d0: 6f ret + +08d1: e8 00 mov a,#$00 +08d3: 8d 00 mov y,#$00 +08d5: e8 00 mov a,#$00 +08d7: 8d 00 mov y,#$00 +08d9: 3f 37 07 call $0737 +08dc: e8 01 mov a,#$01 +08de: 8d 00 mov y,#$00 +08e0: 3f 37 07 call $0737 +08e3: e8 10 mov a,#$10 +08e5: 8d 00 mov y,#$00 +08e7: 3f 37 07 call $0737 +08ea: e8 11 mov a,#$11 +08ec: 8d 00 mov y,#$00 +08ee: 3f 37 07 call $0737 +08f1: e8 20 mov a,#$20 +08f3: 8d 00 mov y,#$00 +08f5: 3f 37 07 call $0737 +08f8: e8 21 mov a,#$21 +08fa: 8d 00 mov y,#$00 +08fc: 3f 37 07 call $0737 +08ff: e8 30 mov a,#$30 +0901: 8d 00 mov y,#$00 +0903: 3f 37 07 call $0737 +0906: e8 31 mov a,#$31 +0908: 8d 00 mov y,#$00 +090a: 3f 37 07 call $0737 +090d: e8 40 mov a,#$40 +090f: 8d 00 mov y,#$00 +0911: 3f 37 07 call $0737 +0914: e8 41 mov a,#$41 +0916: 8d 00 mov y,#$00 +0918: 3f 37 07 call $0737 +091b: e8 50 mov a,#$50 +091d: 8d 00 mov y,#$00 +091f: 3f 37 07 call $0737 +0922: e8 51 mov a,#$51 +0924: 8d 00 mov y,#$00 +0926: 3f 37 07 call $0737 +0929: e8 60 mov a,#$60 +092b: 8d 00 mov y,#$00 +092d: 3f 37 07 call $0737 +0930: e8 61 mov a,#$61 +0932: 8d 00 mov y,#$00 +0934: 3f 37 07 call $0737 +0937: e8 70 mov a,#$70 +0939: 8d 00 mov y,#$00 +093b: 3f 37 07 call $0737 +093e: e8 71 mov a,#$71 +0940: 8d 00 mov y,#$00 +0942: 3f 37 07 call $0737 +0945: 6f ret + +0946: e5 20 04 mov a,$0420 +0949: f0 4d beq $0998 +094b: e5 21 04 mov a,$0421 +094e: d0 23 bne $0973 +0950: e5 20 04 mov a,$0420 +0953: 5c lsr a +0954: 90 05 bcc $095b +0956: e8 00 mov a,#$00 +0958: 3f 16 13 call $1316 +095b: 5c lsr a +095c: 90 05 bcc $0963 +095e: e8 01 mov a,#$01 +0960: 3f 16 13 call $1316 +0963: e8 00 mov a,#$00 +0965: c5 20 04 mov $0420,a +0968: c5 21 04 mov $0421,a +096b: c5 22 04 mov $0422,a +096e: c5 23 04 mov $0423,a +0971: 2f 25 bra $0998 +0973: e5 26 04 mov a,$0426 +0976: bc inc a +0977: 28 0f and a,#$0f +0979: c5 26 04 mov $0426,a +097c: d0 1a bne $0998 +097e: e5 21 04 mov a,$0421 +0981: 9c dec a +0982: c5 21 04 mov $0421,a +0985: 60 clrc +0986: e5 24 04 mov a,$0424 +0989: 85 22 04 adc a,$0422 +098c: c5 24 04 mov $0424,a +098f: e5 25 04 mov a,$0425 +0992: 85 23 04 adc a,$0423 +0995: c5 25 04 mov $0425,a +0998: 6f ret + +0999: cd 00 mov x,#$00 +099b: 1e 20 04 cmp x,$0420 +099e: f0 2e beq $09ce +09a0: f8 33 mov x,$33 +09a2: c4 47 mov $47,a +09a4: f4 00 mov a,$00+x +09a6: 5c lsr a +09a7: 5c lsr a +09a8: 5c lsr a +09a9: 5c lsr a +09aa: c4 46 mov $46,a +09ac: 25 20 04 and a,$0420 +09af: f0 0c beq $09bd +09b1: e4 47 mov a,$47 +09b3: 80 setc +09b4: a5 25 04 sbc a,$0425 +09b7: 10 15 bpl $09ce +09b9: e8 00 mov a,#$00 +09bb: 2f 11 bra $09ce +09bd: e4 46 mov a,$46 +09bf: 25 20 04 and a,$0420 +09c2: f0 0b beq $09cf +09c4: e4 47 mov a,$47 +09c6: 80 setc +09c7: a5 25 04 sbc a,$0425 +09ca: 10 02 bpl $09ce +09cc: e8 00 mov a,#$00 +09ce: 6f ret + +09cf: e4 47 mov a,$47 +09d1: 6f ret + +09d2: 8d 24 mov y,#$24 +09d4: f7 40 mov a,($40)+y +09d6: 28 04 and a,#$04 +09d8: d0 02 bne $09dc +09da: 60 clrc +09db: 6f ret + +09dc: 8d 13 mov y,#$13 +09de: f7 40 mov a,($40)+y +09e0: f0 68 beq $0a4a +09e2: 8d 12 mov y,#$12 +09e4: f7 40 mov a,($40)+y +09e6: f0 30 beq $0a18 +09e8: 9c dec a +09e9: 8d 12 mov y,#$12 +09eb: d7 40 mov ($40)+y,a +09ed: 8d 0e mov y,#$0e +09ef: f7 40 mov a,($40)+y +09f1: c4 38 mov $38,a +09f3: 8d 0f mov y,#$0f +09f5: f7 40 mov a,($40)+y +09f7: c4 39 mov $39,a +09f9: 8d 14 mov y,#$14 +09fb: f7 40 mov a,($40)+y +09fd: c4 3a mov $3a,a +09ff: 8d 15 mov y,#$15 +0a01: f7 40 mov a,($40)+y +0a03: c4 3b mov $3b,a +0a05: 60 clrc +0a06: ba 38 movw ya,$38 +0a08: 7a 3a addw ya,$3a +0a0a: da 38 movw $38,ya +0a0c: 8d 0e mov y,#$0e +0a0e: d7 40 mov ($40)+y,a +0a10: e4 39 mov a,$39 +0a12: 8d 0f mov y,#$0f +0a14: d7 40 mov ($40)+y,a +0a16: 2f 32 bra $0a4a +0a18: 8d 10 mov y,#$10 +0a1a: f7 40 mov a,($40)+y +0a1c: c4 38 mov $38,a +0a1e: 8d 11 mov y,#$11 +0a20: f7 40 mov a,($40)+y +0a22: c4 39 mov $39,a +0a24: 8d 0e mov y,#$0e +0a26: f7 40 mov a,($40)+y +0a28: c4 3a mov $3a,a +0a2a: 8d 0f mov y,#$0f +0a2c: f7 40 mov a,($40)+y +0a2e: c4 3b mov $3b,a +0a30: e4 38 mov a,$38 +0a32: 64 3a cmp a,$3a +0a34: d0 08 bne $0a3e +0a36: e4 39 mov a,$39 +0a38: 64 3b cmp a,$3b +0a3a: d0 02 bne $0a3e +0a3c: 60 clrc +0a3d: 6f ret + +0a3e: e4 38 mov a,$38 +0a40: 8d 0e mov y,#$0e +0a42: d7 40 mov ($40)+y,a +0a44: e4 39 mov a,$39 +0a46: 8d 0f mov y,#$0f +0a48: d7 40 mov ($40)+y,a +0a4a: 80 setc +0a4b: 6f ret + +0a4c: 8d 24 mov y,#$24 +0a4e: f7 40 mov a,($40)+y +0a50: 28 02 and a,#$02 +0a52: d0 02 bne $0a56 +0a54: 60 clrc +0a55: 6f ret + +0a56: 8d 00 mov y,#$00 +0a58: 8d 1a mov y,#$1a +0a5a: f7 40 mov a,($40)+y +0a5c: f0 6f beq $0acd +0a5e: 8d 19 mov y,#$19 +0a60: f7 40 mov a,($40)+y +0a62: f0 07 beq $0a6b +0a64: 9c dec a +0a65: 8d 19 mov y,#$19 +0a67: d7 40 mov ($40)+y,a +0a69: 2f 62 bra $0acd +0a6b: 8d 17 mov y,#$17 +0a6d: f7 40 mov a,($40)+y +0a6f: c4 36 mov $36,a +0a71: 8d 1b mov y,#$1b +0a73: f7 40 mov a,($40)+y +0a75: c4 38 mov $38,a +0a77: e8 00 mov a,#$00 +0a79: c4 37 mov $37,a +0a7b: c4 39 mov $39,a +0a7d: 8d 1f mov y,#$1f +0a7f: f7 40 mov a,($40)+y +0a81: 68 00 cmp a,#$00 +0a83: d0 2b bne $0ab0 +0a85: 60 clrc +0a86: ba 36 movw ya,$36 +0a88: 7a 38 addw ya,$38 +0a8a: da 36 movw $36,ya +0a8c: c4 37 mov $37,a +0a8e: 8d 1d mov y,#$1d +0a90: f7 40 mov a,($40)+y +0a92: c4 38 mov $38,a +0a94: e4 36 mov a,$36 +0a96: 64 38 cmp a,$38 +0a98: e4 37 mov a,$37 +0a9a: a4 39 sbc a,$39 +0a9c: 90 10 bcc $0aae +0a9e: e8 01 mov a,#$01 +0aa0: 8d 1f mov y,#$1f +0aa2: d7 40 mov ($40)+y,a +0aa4: 8d 1d mov y,#$1d +0aa6: f7 40 mov a,($40)+y +0aa8: c4 36 mov $36,a +0aaa: e8 00 mov a,#$00 +0aac: c4 37 mov $37,a +0aae: 2f 17 bra $0ac7 +0ab0: 80 setc +0ab1: ba 36 movw ya,$36 +0ab3: 9a 38 subw ya,$38 +0ab5: da 36 movw $36,ya +0ab7: e4 37 mov a,$37 +0ab9: 10 f3 bpl $0aae +0abb: e8 00 mov a,#$00 +0abd: 8d 1f mov y,#$1f +0abf: d7 40 mov ($40)+y,a +0ac1: e8 00 mov a,#$00 +0ac3: c4 36 mov $36,a +0ac5: c4 37 mov $37,a +0ac7: e4 36 mov a,$36 +0ac9: 8d 17 mov y,#$17 +0acb: d7 40 mov ($40)+y,a +0acd: 80 setc +0ace: 6f ret + +; vcmd table (80-95) +0acf: dw $0afb ; 80 - set variables? +0ad1: dw $0b37 ; 81 - (2 bytes) +0ad3: dw $0b12 ; 82 - start of song loop +0ad5: dw $0b78 ; 83 - (7 bytes) +0ad7: dw $0bcd ; 84 - set tempo +0ad9: dw $0bdf ; 85 - set instrument +0adb: dw $0be9 ; 86 - (3 bytes) +0add: dw $0c0a ; 87 - (1 byte) +0adf: dw $0c13 ; 88 - set ASDR bit 7 +0ae1: dw $0c1c ; 89 - clear ASDR bits +0ae3: dw $0c25 ; 8a - set up vibrato parameters +0ae5: dw $0c6f ; 8b - set ASDR bit 6 +0ae7: dw $0c78 ; 8c - set ASDR bits on +0ae9: dw $0c81 ; 8d - (2 bytes) +0aeb: dw $0d2e ; 8e - nop +0aed: dw $0d2f ; 8f - set ASDR bit 5 +0aef: dw $0d38 ; 90 - clear ASDR bits +0af1: dw $0d41 ; 91 - restart channel +0af3: dw $0d4d ; 92 - repeat section +0af5: dw $0d8f ; 93 - set ASDR bit 4 +0af7: dw $0d98 ; 94 - set panning +0af9: dw $0ece ; 95 - stop channel + + +0afb: cd 00 mov x,#$00 ; vcmd 80 - set variables? +0afd: e7 44 mov a,($44+x) +0aff: 3a 44 incw $44 +0b01: c4 4b mov $4b,a +0b03: c4 4d mov $4d,a +0b05: e8 00 mov a,#$00 +0b07: c4 4a mov $4a,a +0b09: c4 4c mov $4c,a +0b0b: c4 4e mov $4e,a +0b0d: c4 4f mov $4f,a +0b0f: c4 50 mov $50,a +0b11: 6f ret + +0b12: cd 00 mov x,#$00 ; vcmd 82 - start of song loop +0b14: e7 44 mov a,($44+x) +0b16: 3a 44 incw $44 +0b18: 8d 08 mov y,#$08 +0b1a: d7 40 mov ($40)+y,a +0b1c: 8d 0a mov y,#$0a +0b1e: d7 40 mov ($40)+y,a +0b20: e8 00 mov a,#$00 +0b22: 8d 07 mov y,#$07 +0b24: d7 40 mov ($40)+y,a +0b26: 8d 09 mov y,#$09 +0b28: d7 40 mov ($40)+y,a +0b2a: 8d 0b mov y,#$0b +0b2c: d7 40 mov ($40)+y,a +0b2e: 8d 0c mov y,#$0c +0b30: d7 40 mov ($40)+y,a +0b32: 8d 0d mov y,#$0d +0b34: d7 40 mov ($40)+y,a +0b36: 6f ret + +0b37: cd 00 mov x,#$00 ; vcmd 81 - (2 bytes) +0b39: e7 44 mov a,($44+x) +0b3b: 3a 44 incw $44 +0b3d: c4 34 mov $34,a +0b3f: e7 44 mov a,($44+x) +0b41: 3a 44 incw $44 +0b43: c4 36 mov $36,a +0b45: e4 34 mov a,$34 +0b47: c4 4d mov $4d,a +0b49: e4 36 mov a,$36 +0b4b: c4 4e mov $4e,a +0b4d: e8 00 mov a,#$00 +0b4f: c4 4c mov $4c,a +0b51: e4 4a mov a,$4a +0b53: c4 34 mov $34,a +0b55: e4 4b mov a,$4b +0b57: c4 35 mov $35,a +0b59: e4 4c mov a,$4c +0b5b: c4 36 mov $36,a +0b5d: e4 4d mov a,$4d +0b5f: c4 37 mov $37,a +0b61: 3f 6b 14 call $146b +0b64: e4 4e mov a,$4e +0b66: c4 37 mov $37,a +0b68: e8 00 mov a,#$00 +0b6a: c4 36 mov $36,a +0b6c: 3f 72 14 call $1472 +0b6f: e4 34 mov a,$34 +0b71: c4 4f mov $4f,a +0b73: e4 35 mov a,$35 +0b75: c4 50 mov $50,a +0b77: 6f ret + +0b78: cd 00 mov x,#$00 ; vcmd 83 - (7 bytes) +0b7a: e7 44 mov a,($44+x) +0b7c: 3a 44 incw $44 +0b7e: c4 34 mov $34,a +0b80: e7 44 mov a,($44+x) +0b82: 3a 44 incw $44 +0b84: c4 36 mov $36,a +0b86: e4 34 mov a,$34 +0b88: 8d 0a mov y,#$0a +0b8a: d7 40 mov ($40)+y,a +0b8c: e4 36 mov a,$36 +0b8e: 8d 0b mov y,#$0b +0b90: d7 40 mov ($40)+y,a +0b92: e8 00 mov a,#$00 +0b94: 8d 09 mov y,#$09 +0b96: d7 40 mov ($40)+y,a +0b98: e7 44 mov a,($44+x) +0b9a: 3a 44 incw $44 +0b9c: c4 34 mov $34,a +0b9e: e7 44 mov a,($44+x) +0ba0: 3a 44 incw $44 +0ba2: c4 35 mov $35,a +0ba4: e7 44 mov a,($44+x) +0ba6: 3a 44 incw $44 +0ba8: c4 36 mov $36,a +0baa: e7 44 mov a,($44+x) +0bac: 3a 44 incw $44 +0bae: c4 37 mov $37,a +0bb0: 3f 6b 14 call $146b +0bb3: e7 44 mov a,($44+x) +0bb5: 3a 44 incw $44 +0bb7: c4 37 mov $37,a +0bb9: e8 00 mov a,#$00 +0bbb: c4 36 mov $36,a +0bbd: 3f 72 14 call $1472 +0bc0: e4 34 mov a,$34 +0bc2: 8d 0c mov y,#$0c +0bc4: d7 40 mov ($40)+y,a +0bc6: e4 35 mov a,$35 +0bc8: 8d 0d mov y,#$0d +0bca: d7 40 mov ($40)+y,a +0bcc: 6f ret + +0bcd: cd 00 mov x,#$00 ; vcmd 84 - set tempo +0bcf: e7 44 mov a,($44+x) +0bd1: 3a 44 incw $44 +0bd3: c4 34 mov $34,a +0bd5: 8d 06 mov y,#$06 +0bd7: f7 40 mov a,($40)+y +0bd9: c4 36 mov $36,a +0bdb: 3f c7 0e call $0ec7 +0bde: 6f ret + +0bdf: cd 00 mov x,#$00 ; vcmd 85 - set instrument +0be1: e7 44 mov a,($44+x) +0be3: 3a 44 incw $44 +0be5: 3f cf 14 call $14cf +0be8: 6f ret + +0be9: cd 00 mov x,#$00 ; vcmd 86 - (3 bytes) +0beb: e7 44 mov a,($44+x) +0bed: 3a 44 incw $44 +0bef: c4 34 mov $34,a +0bf1: e7 44 mov a,($44+x) +0bf3: 3a 44 incw $44 +0bf5: c4 36 mov $36,a +0bf7: e7 44 mov a,($44+x) +0bf9: 3a 44 incw $44 +0bfb: c4 38 mov $38,a +0bfd: e4 34 mov a,$34 +0bff: c4 54 mov $54,a +0c01: e4 36 mov a,$36 +0c03: c4 52 mov $52,a +0c05: e4 36 mov a,$36 +0c07: c4 53 mov $53,a +0c09: 6f ret + +0c0a: cd 00 mov x,#$00 ; vcmd 87 - (1 byte) +0c0c: e7 44 mov a,($44+x) +0c0e: 3a 44 incw $44 +0c10: c4 51 mov $51,a +0c12: 6f ret + +0c13: 8d 24 mov y,#$24 ; vcmd 88 - set ASDR bit 7 +0c15: f7 40 mov a,($40)+y +0c17: 08 01 or a,#$01 +0c19: d7 40 mov ($40)+y,a +0c1b: 6f ret + +0c1c: 8d 24 mov y,#$24 ; vcmd 89 - clear ASDR bits +0c1e: f7 40 mov a,($40)+y +0c20: 28 fe and a,#$fe +0c22: d7 40 mov ($40)+y,a +0c24: 6f ret + +0c25: cd 00 mov x,#$00 ; vcmd 8a - set up vibrato parameters +0c27: e7 44 mov a,($44+x) +0c29: 3a 44 incw $44 +0c2b: 8d 19 mov y,#$19 +0c2d: d7 40 mov ($40)+y,a +0c2f: 8d 1a mov y,#$1a +0c31: d7 40 mov ($40)+y,a +0c33: e7 44 mov a,($44+x) +0c35: 3a 44 incw $44 +0c37: 2d push a +0c38: e7 44 mov a,($44+x) ; vibrato +0c3a: 3a 44 incw $44 +0c3c: 8d 1d mov y,#$1d +0c3e: d7 40 mov ($40)+y,a +0c40: ce pop x +0c41: 8d 00 mov y,#$00 +0c43: 9e div ya,x +0c44: 8d 1b mov y,#$1b +0c46: d7 40 mov ($40)+y,a +0c48: e8 00 mov a,#$00 +0c4a: 8d 17 mov y,#$17 +0c4c: d7 40 mov ($40)+y,a +0c4e: 8d 1f mov y,#$1f +0c50: d7 40 mov ($40)+y,a +0c52: 6f ret + +0c53: 8d 24 mov y,#$24 +0c55: f7 40 mov a,($40)+y +0c57: 28 02 and a,#$02 +0c59: d0 01 bne $0c5c +0c5b: 6f ret + +0c5c: 8d 1a mov y,#$1a +0c5e: f7 40 mov a,($40)+y +0c60: 8d 19 mov y,#$19 +0c62: d7 40 mov ($40)+y,a +0c64: e8 00 mov a,#$00 +0c66: 8d 17 mov y,#$17 +0c68: d7 40 mov ($40)+y,a +0c6a: 8d 1f mov y,#$1f +0c6c: d7 40 mov ($40)+y,a +0c6e: 6f ret + +0c6f: 8d 24 mov y,#$24 ; vcmd 8b - set ASDR bit 6 +0c71: f7 40 mov a,($40)+y +0c73: 08 02 or a,#$02 +0c75: d7 40 mov ($40)+y,a +0c77: 6f ret + +0c78: 8d 24 mov y,#$24 ; vcmd 8c - set ASDR bits on +0c7a: f7 40 mov a,($40)+y +0c7c: 28 fb and a,#$fb +0c7e: d7 40 mov ($40)+y,a +0c80: 6f ret + +0c81: cd 00 mov x,#$00 ; vcmd 8d - (2 bytes) +0c83: e7 44 mov a,($44+x) +0c85: 3a 44 incw $44 +0c87: 8d 12 mov y,#$12 +0c89: d7 40 mov ($40)+y,a +0c8b: 8d 13 mov y,#$13 +0c8d: d7 40 mov ($40)+y,a +0c8f: e7 44 mov a,($44+x) +0c91: 3a 44 incw $44 +0c93: 8d 16 mov y,#$16 +0c95: d7 40 mov ($40)+y,a +0c97: 6f ret + +0c98: 2d push a +0c99: 8d 24 mov y,#$24 +0c9b: f7 40 mov a,($40)+y +0c9d: 28 04 and a,#$04 +0c9f: ae pop a +0ca0: d0 01 bne $0ca3 +0ca2: 6f ret + +0ca3: c4 36 mov $36,a +0ca5: 8d 16 mov y,#$16 +0ca7: f7 40 mov a,($40)+y +0ca9: 60 clrc +0caa: 84 36 adc a,$36 +0cac: 10 02 bpl $0cb0 +0cae: e8 01 mov a,#$01 +0cb0: 68 55 cmp a,#$55 +0cb2: 90 02 bcc $0cb6 +0cb4: e8 55 mov a,#$55 +0cb6: 9c dec a +0cb7: c4 37 mov $37,a +0cb9: e8 00 mov a,#$00 +0cbb: c4 36 mov $36,a +0cbd: 8d 28 mov y,#$28 +0cbf: f7 40 mov a,($40)+y +0cc1: c4 38 mov $38,a +0cc3: 8d 29 mov y,#$29 +0cc5: f7 40 mov a,($40)+y +0cc7: c4 39 mov $39,a +0cc9: 3f 3d 0e call $0e3d +0ccc: e4 3a mov a,$3a +0cce: 8d 10 mov y,#$10 +0cd0: d7 40 mov ($40)+y,a +0cd2: e4 3b mov a,$3b +0cd4: 8d 11 mov y,#$11 +0cd6: d7 40 mov ($40)+y,a +0cd8: 8d 0e mov y,#$0e +0cda: f7 40 mov a,($40)+y +0cdc: c4 38 mov $38,a +0cde: 8d 0f mov y,#$0f +0ce0: f7 40 mov a,($40)+y +0ce2: c4 39 mov $39,a +0ce4: e4 3b mov a,$3b +0ce6: 64 39 cmp a,$39 +0ce8: b0 13 bcs $0cfd +0cea: 80 setc +0ceb: e4 38 mov a,$38 +0ced: a4 3a sbc a,$3a +0cef: c4 38 mov $38,a +0cf1: e4 39 mov a,$39 +0cf3: a4 3b sbc a,$3b +0cf5: c4 39 mov $39,a +0cf7: e8 ff mov a,#$ff +0cf9: c4 3b mov $3b,a +0cfb: 2f 11 bra $0d0e +0cfd: 80 setc +0cfe: e4 3a mov a,$3a +0d00: a4 38 sbc a,$38 +0d02: c4 38 mov $38,a +0d04: e4 3b mov a,$3b +0d06: a4 39 sbc a,$39 +0d08: c4 39 mov $39,a +0d0a: e8 00 mov a,#$00 +0d0c: c4 3b mov $3b,a +0d0e: 8d 13 mov y,#$13 +0d10: f7 40 mov a,($40)+y +0d12: 8d 12 mov y,#$12 +0d14: d7 40 mov ($40)+y,a +0d16: 5d mov x,a +0d17: e4 38 mov a,$38 +0d19: eb 39 mov y,$39 +0d1b: 9e div ya,x +0d1c: f8 3b mov x,$3b +0d1e: 10 03 bpl $0d23 +0d20: 48 ff eor a,#$ff +0d22: bc inc a +0d23: 8d 14 mov y,#$14 +0d25: d7 40 mov ($40)+y,a +0d27: e4 3b mov a,$3b +0d29: 8d 15 mov y,#$15 +0d2b: d7 40 mov ($40)+y,a +0d2d: 6f ret + +0d2e: 6f ret ; vcmd 8e - nop + +0d2f: 8d 24 mov y,#$24 ; vcmd 8f - set ASDR bit 5 +0d31: f7 40 mov a,($40)+y +0d33: 08 04 or a,#$04 +0d35: d7 40 mov ($40)+y,a +0d37: 6f ret + +0d38: 8d 24 mov y,#$24 ; vcmd 90 - clear ASDR bits +0d3a: f7 40 mov a,($40)+y +0d3c: 28 fb and a,#$fb +0d3e: d7 40 mov ($40)+y,a +0d40: 6f ret + +0d41: 8d 02 mov y,#$02 ; vcmd 91 - restart channel +0d43: f7 40 mov a,($40)+y +0d45: c4 44 mov $44,a +0d47: fc inc y +0d48: f7 40 mov a,($40)+y +0d4a: c4 45 mov $45,a +0d4c: 6f ret + +0d4d: cd 00 mov x,#$00 ; vcmd 92 - repeat section +0d4f: e7 44 mov a,($44+x) +0d51: 3a 44 incw $44 +0d53: fd mov y,a +0d54: 68 ff cmp a,#$ff +0d56: f0 1a beq $0d72 +0d58: e7 44 mov a,($44+x) +0d5a: 68 ff cmp a,#$ff +0d5c: f0 06 beq $0d64 +0d5e: 68 00 cmp a,#$00 +0d60: f0 05 beq $0d67 +0d62: 2f 12 bra $0d76 +0d64: dd mov a,y +0d65: 2f 0f bra $0d76 +0d67: e8 ff mov a,#$ff +0d69: c7 44 mov ($44+x),a +0d6b: 3a 44 incw $44 +0d6d: 3a 44 incw $44 +0d6f: 3a 44 incw $44 +0d71: 6f ret + +0d72: 3a 44 incw $44 +0d74: 2f 05 bra $0d7b +0d76: 9c dec a +0d77: c7 44 mov ($44+x),a +0d79: 3a 44 incw $44 +0d7b: e7 44 mov a,($44+x) +0d7d: 3a 44 incw $44 +0d7f: c4 34 mov $34,a +0d81: e7 44 mov a,($44+x) +0d83: 3a 44 incw $44 +0d85: c4 35 mov $35,a +0d87: ba 44 movw ya,$44 +0d89: 9a 34 subw ya,$34 +0d8b: e0 clrv +0d8c: da 44 movw $44,ya +0d8e: 6f ret + +0d8f: 8d 24 mov y,#$24 ; vcmd 93 - set ASDR bit 4 +0d91: f7 40 mov a,($40)+y +0d93: 08 08 or a,#$08 +0d95: d7 40 mov ($40)+y,a +0d97: 6f ret + +0d98: cd 00 mov x,#$00 ; vcmd 94 - set panning +0d9a: e7 44 mov a,($44+x) +0d9c: 3a 44 incw $44 +0d9e: 8d 27 mov y,#$27 +0da0: d7 40 mov ($40)+y,a +0da2: 6f ret + +0da3: 8d 24 mov y,#$24 +0da5: f7 40 mov a,($40)+y +0da7: 28 f7 and a,#$f7 +0da9: d7 40 mov ($40)+y,a +0dab: 6f ret + +0dac: cd 00 mov x,#$00 +0dae: 2d push a +0daf: 8d 25 mov y,#$25 +0db1: f7 40 mov a,($40)+y +0db3: 8d 26 mov y,#$26 +0db5: d7 40 mov ($40)+y,a +0db7: e7 44 mov a,($44+x) +0db9: 3a 44 incw $44 +0dbb: 8d 00 mov y,#$00 +0dbd: d7 40 mov ($40)+y,a +0dbf: ae pop a +0dc0: 8d 25 mov y,#$25 +0dc2: d7 40 mov ($40)+y,a +0dc4: 9c dec a +0dc5: 30 36 bmi $0dfd +0dc7: c4 37 mov $37,a +0dc9: e8 00 mov a,#$00 +0dcb: c4 36 mov $36,a +0dcd: 8d 28 mov y,#$28 +0dcf: f7 40 mov a,($40)+y +0dd1: c4 38 mov $38,a +0dd3: 8d 29 mov y,#$29 +0dd5: f7 40 mov a,($40)+y +0dd7: c4 39 mov $39,a +0dd9: 3f 3d 0e call $0e3d +0ddc: e4 3a mov a,$3a +0dde: 8d 0e mov y,#$0e +0de0: d7 40 mov ($40)+y,a +0de2: e4 3b mov a,$3b +0de4: 8d 0f mov y,#$0f +0de6: d7 40 mov ($40)+y,a +0de8: 8d 24 mov y,#$24 +0dea: f7 40 mov a,($40)+y +0dec: 28 0f and a,#$0f +0dee: 08 20 or a,#$20 +0df0: d7 40 mov ($40)+y,a +0df2: 8d 25 mov y,#$25 +0df4: f7 40 mov a,($40)+y +0df6: 3f 98 0c call $0c98 +0df9: 3f 53 0c call $0c53 +0dfc: 6f ret + +0dfd: e8 00 mov a,#$00 +0dff: 8d 0e mov y,#$0e +0e01: d7 40 mov ($40)+y,a +0e03: 8d 0f mov y,#$0f +0e05: d7 40 mov ($40)+y,a +0e07: 8d 24 mov y,#$24 +0e09: f7 40 mov a,($40)+y +0e0b: 28 0f and a,#$0f +0e0d: 08 10 or a,#$10 +0e0f: d7 40 mov ($40)+y,a +0e11: 5f f2 0d jmp $0df2 + +0e14: 8d 24 mov y,#$24 +0e16: f7 40 mov a,($40)+y +0e18: 28 c7 and a,#$c7 +0e1a: d7 40 mov ($40)+y,a +0e1c: 6f ret + +0e1d: f8 34 mov x,$34 +0e1f: f5 35 0e mov a,$0e35+x +0e22: fd mov y,a +0e23: e8 4c mov a,#$4c +0e25: 3f 37 07 call $0737 +0e28: 6f ret + +0e29: f8 34 mov x,$34 +0e2b: f5 35 0e mov a,$0e35+x +0e2e: fd mov y,a +0e2f: e8 5c mov a,#$5c +0e31: 3f 37 07 call $0737 +0e34: 6f ret + +0e35: db $01,$02,$04,$08,$10,$20,$40,$80 + +0e3d: 8d 00 mov y,#$00 +0e3f: e4 37 mov a,$37 +0e41: 80 setc +0e42: a8 34 sbc a,#$34 +0e44: b0 09 bcs $0e4f +0e46: e4 37 mov a,$37 +0e48: 80 setc +0e49: a8 13 sbc a,#$13 +0e4b: b0 06 bcs $0e53 +0e4d: dc dec y +0e4e: 1c asl a +0e4f: 7a 36 addw ya,$36 +0e51: da 36 movw $36,ya +0e53: e4 37 mov a,$37 +0e55: 1c asl a +0e56: 8d 00 mov y,#$00 +0e58: cd 18 mov x,#$18 +0e5a: 9e div ya,x +0e5b: 5d mov x,a +0e5c: f6 ae 0e mov a,$0eae+y +0e5f: c4 3b mov $3b,a +0e61: f6 ad 0e mov a,$0ead+y +0e64: c4 3a mov $3a,a +0e66: f6 b0 0e mov a,$0eb0+y +0e69: 2d push a +0e6a: f6 af 0e mov a,$0eaf+y +0e6d: ee pop y +0e6e: 9a 3a subw ya,$3a +0e70: eb 36 mov y,$36 +0e72: cf mul ya +0e73: dd mov a,y +0e74: 8d 00 mov y,#$00 +0e76: 7a 3a addw ya,$3a +0e78: cb 3b mov $3b,y +0e7a: 1c asl a +0e7b: 2b 3b rol $3b +0e7d: c4 3a mov $3a,a +0e7f: 2f 04 bra $0e85 +0e81: 4b 3b lsr $3b +0e83: 7c ror a +0e84: 3d inc x +0e85: c8 06 cmp x,#$06 +0e87: d0 f8 bne $0e81 +0e89: c4 3a mov $3a,a +0e8b: e4 38 mov a,$38 +0e8d: eb 3b mov y,$3b +0e8f: cf mul ya +0e90: da 3c movw $3c,ya +0e92: e4 38 mov a,$38 +0e94: eb 3a mov y,$3a +0e96: cf mul ya +0e97: 6d push y +0e98: e4 39 mov a,$39 +0e9a: eb 3a mov y,$3a +0e9c: cf mul ya +0e9d: 7a 3c addw ya,$3c +0e9f: da 3c movw $3c,ya +0ea1: e4 39 mov a,$39 +0ea3: eb 3b mov y,$3b +0ea5: cf mul ya +0ea6: fd mov y,a +0ea7: ae pop a +0ea8: 7a 3c addw ya,$3c +0eaa: da 3a movw $3a,ya +0eac: 6f ret + +0ead: dw $085f +0eaf: dw $08de +0eb1: dw $0965 +0eb3: dw $09f4 +0eb5: dw $0a8c +0eb7: dw $0b2c +0eb9: dw $0bd6 +0ebb: dw $0c8b +0ebd: dw $0d4a +0ebf: dw $0e14 +0ec1: dw $0eea + +0ec3: cd 0f mov x,#$0f +0ec5: be das a +0ec6: 10 e4 bpl $0eac +0ec8: 34 f8 and a,$f8+x +0eca: 36 d4 30 and a,$30d4+y +0ecd: 6f ret + +0ece: eb 33 mov y,$33 ; vcmd 95 - stop channel +0ed0: cd 00 mov x,#$00 +0ed2: d9 00 mov $00+y,x +0ed4: 6f ret + + +0ed5: db $06,$14,$1d,$10,$07,$14,$1d,$10,$06,$14,$2a,$10,$07,$14,$2a,$10,$06,$14,$37,$10,$07,$14,$37,$10,$06,$14,$44,$10,$07,$14,$44,$10,$06,$14,$51,$10,$07,$14,$51,$10,$06,$14,$5e,$10,$07,$14,$5e,$10,$06,$1e,$6b,$10,$07,$1e,$6b,$10,$06,$16,$78,$10,$07,$16,$78,$10,$06,$16,$85,$10,$07,$16,$85,$10,$06,$16,$92,$10,$07,$16,$92,$10,$06,$15,$9f,$10,$07,$15,$9f,$10,$06,$15,$ac,$10,$07,$15,$ac,$10,$06,$15,$b9,$10,$07,$15,$b9,$10,$06,$1e,$c6,$10,$07,$1e,$c6,$10,$06,$1e,$d7,$10,$07,$1e,$d7,$10,$06,$19,$fe,$10,$07,$19,$fe,$10,$06,$19,$0b,$11,$07,$19,$0b,$11,$06,$14,$18,$11,$07,$14,$18,$11,$06,$14,$25,$11,$07,$14,$25,$11,$06,$14,$32,$11,$07,$14,$32,$11,$06,$19,$3f,$11,$07,$19,$3f,$11,$06,$19,$4c,$11,$07,$19,$4c,$11,$06,$19,$59,$11,$07,$19,$59,$11,$06,$19,$66,$11,$07,$19,$66,$11,$06,$19,$73,$11,$07,$19,$73,$11,$06,$19,$80,$11,$07,$19,$80,$11,$06,$19,$8d,$11,$07,$19,$8d,$11,$06,$19,$9a,$11,$07,$19,$9a,$11,$06,$19,$a7,$11,$07,$19,$a7,$11,$06,$19,$b4,$11,$07,$19,$b4,$11,$06,$23,$c1,$11,$07,$23,$c1,$11,$06,$23,$ce,$11,$07,$1e,$ce,$11,$06,$1e,$db,$11,$07,$1e,$db,$11,$06,$14,$e8,$11,$07,$14,$e8,$11,$06,$14,$f5,$11,$07,$14,$f5,$11,$06,$14,$02,$12,$07,$14,$02,$12,$06,$23,$0f,$12,$07,$23,$0f,$12,$06,$23,$1c,$12,$07,$23,$1c,$12,$06,$23,$29,$12,$07,$23,$29,$12,$06,$23,$36,$12,$07,$23,$36,$12,$06,$14,$43,$12,$07,$14,$43,$12,$84,$4c,$85,$0d,$94,$08,$82,$7f,$20,$30,$00,$02,$95,$84,$4c,$85,$0d,$94,$08,$82,$7f,$24,$30,$00,$02,$95,$84,$4c,$85,$0d,$94,$08,$82,$7f,$2c,$30,$00,$02,$95,$84,$4c,$85,$0e,$94,$08,$82,$7f,$25,$30,$00,$02,$95,$84,$4c,$85,$0e,$94,$08,$82,$7f,$2a,$30,$00,$02,$95,$84,$4c,$85,$0e,$94,$08,$82,$7f,$30,$30,$00,$02,$95,$84,$4c,$85,$0f,$94,$08,$82,$f0,$22,$60,$00,$02,$95,$84,$4c,$85,$0f,$94,$08,$82,$f0,$25,$60,$00,$02,$95,$84,$4c,$85,$10,$94,$08,$82,$f0,$1e,$48,$00,$02,$95,$84,$4c,$85,$10,$94,$08,$82,$f0,$22,$48,$00,$02,$95,$84,$4c,$85,$10,$94,$08,$82,$f0,$27,$48,$00,$02,$95,$84,$4c,$85,$11,$94,$08,$82,$f0,$24,$48,$00,$02,$95,$84,$4c,$85,$11,$94,$08,$82,$f0,$27,$48,$00,$02,$95,$84,$4c,$85,$09,$94,$08,$82,$28,$29,$0c,$82,$0a,$29,$18,$00,$02,$95,$84,$64,$85,$05,$94,$08,$82,$3c,$27,$06,$29,$06,$2a,$06,$2c,$06,$82,$14,$27,$06,$29,$06,$2a,$06,$2c,$06,$82,$0a,$27,$06,$29,$06,$2a,$06,$2c,$06,$00,$02,$95,$84,$4c,$85,$13,$94,$08,$82,$f0,$25,$48,$00,$02,$95,$84,$4c,$85,$13,$94,$08,$82,$f0,$29,$48,$00,$02,$95,$84,$4c,$85,$12,$94,$08,$82,$f0,$22,$48,$00,$02,$95,$84,$4c,$85,$12,$94,$08,$82,$f0,$25,$48,$00,$02,$95,$84,$4c,$85,$12,$94,$08,$82,$f0,$25,$48,$00,$02,$95,$84,$4c,$85,$14,$94,$08,$82,$f0,$1d,$48,$00,$02,$95,$84,$4c,$85,$14,$94,$08,$82,$f0,$22,$48,$00,$02,$95,$84,$4c,$85,$15,$94,$08,$82,$f0,$22,$48,$00,$02,$95,$84,$4c,$85,$15,$94,$08,$82,$f0,$25,$48,$00,$02,$95,$84,$4c,$85,$15,$94,$08,$82,$f0,$29,$48,$00,$02,$95,$84,$4c,$85,$16,$94,$08,$82,$f0,$29,$78,$00,$02,$95,$84,$4c,$85,$17,$94,$08,$82,$f0,$24,$78,$00,$02,$95,$84,$4c,$85,$18,$94,$08,$82,$f0,$22,$48,$00,$02,$95,$84,$4c,$85,$18,$94,$08,$82,$f0,$25,$48,$00,$02,$95,$84,$4c,$85,$18,$94,$08,$82,$f0,$29,$48,$00,$02,$95,$84,$4c,$85,$19,$94,$08,$82,$f0,$22,$48,$00,$02,$95,$84,$4c,$85,$19,$94,$08,$82,$f0,$25,$48,$00,$02,$95,$84,$4c,$85,$19,$94,$08,$82,$f0,$29,$48,$00,$02,$95,$84,$4c,$85,$1a,$94,$08,$82,$f0,$25,$48,$00,$02,$95,$84,$4c,$85,$1b,$94,$08,$82,$f0,$25,$48,$00,$02,$95,$84,$4c,$85,$1c,$94,$08,$82,$f0,$25,$c0,$00,$02,$95,$84,$4c,$85,$1d,$94,$08,$82,$f0,$1e,$48,$00,$02,$95,$84,$4c,$85,$1d,$94,$08,$82,$f0,$22,$48,$00,$02,$95,$84,$4c,$85,$1d,$94,$08,$82,$f0,$25,$48,$00,$02,$95,$84,$4c,$85,$1d,$94,$08,$82,$f0,$2d,$48,$00,$02,$95,$84,$4c,$85,$00,$94,$08,$82,$7f,$3a,$30,$00,$02,$95,$6f + +1251: e8 15 mov a,#$15 ; load song +1253: fd mov y,a +1254: e8 80 mov a,#$80 +1256: da 3e movw $3e,ya +1258: da 40 movw $40,ya +125a: cd 00 mov x,#$00 +125c: e7 3e mov a,($3e+x) +125e: 3a 3e incw $3e +1260: c4 36 mov $36,a +1262: d0 01 bne $1265 +1264: 6f ret + +1265: 1c asl a +1266: 60 clrc +1267: 88 01 adc a,#$01 +1269: 8d 00 mov y,#$00 +126b: 7a 40 addw ya,$40 +126d: da 40 movw $40,ya +126f: e8 00 mov a,#$00 +1271: c4 34 mov $34,a +1273: e4 34 mov a,$34 +1275: 1c asl a +1276: 5d mov x,a +1277: f4 59 mov a,$59+x +1279: c4 42 mov $42,a +127b: 3d inc x +127c: f4 59 mov a,$59+x +127e: c4 43 mov $43,a +1280: eb 34 mov y,$34 +1282: cd 10 mov x,#$10 +1284: d9 00 mov $00+y,x +1286: cd 0a mov x,#$0a +1288: d9 20 mov $20+y,x +128a: f8 34 mov x,$34 +128c: d9 10 mov $10+y,x +128e: cd 00 mov x,#$00 +1290: e7 3e mov a,($3e+x) +1292: 2d push a +1293: 3a 3e incw $3e +1295: e7 3e mov a,($3e+x) +1297: fd mov y,a +1298: 3a 3e incw $3e +129a: ae pop a +129b: 7a 40 addw ya,$40 +129d: da 44 movw $44,ya +129f: e8 00 mov a,#$00 +12a1: 8d 00 mov y,#$00 +12a3: d7 42 mov ($42)+y,a +12a5: fc inc y +12a6: d7 42 mov ($42)+y,a +12a8: fc inc y +12a9: e4 44 mov a,$44 +12ab: d7 42 mov ($42)+y,a +12ad: fc inc y +12ae: e4 45 mov a,$45 +12b0: d7 42 mov ($42)+y,a +12b2: fc inc y +12b3: e4 44 mov a,$44 +12b5: d7 42 mov ($42)+y,a +12b7: fc inc y +12b8: e4 45 mov a,$45 +12ba: d7 42 mov ($42)+y,a +12bc: fc inc y +12bd: e8 00 mov a,#$00 +12bf: d7 42 mov ($42)+y,a +12c1: fc inc y +12c2: e8 00 mov a,#$00 +12c4: d7 42 mov ($42)+y,a +12c6: fc inc y +12c7: ad 28 cmp y,#$28 +12c9: d0 f9 bne $12c4 +12cb: ab 34 inc $34 +12cd: e4 36 mov a,$36 +12cf: 64 34 cmp a,$34 +12d1: d0 a0 bne $1273 +12d3: e8 10 mov a,#$10 +12d5: 64 34 cmp a,$34 +12d7: f0 1b beq $12f4 +12d9: f8 34 mov x,$34 +12db: e5 59 13 mov a,$1359 +12de: 74 00 cmp a,$00+x +12e0: d0 0a bne $12ec +12e2: eb 34 mov y,$34 +12e4: cd 00 mov x,#$00 +12e6: d9 00 mov $00+y,x +12e8: d9 20 mov $20+y,x +12ea: d9 10 mov $10+y,x +12ec: ab 34 inc $34 +12ee: e8 10 mov a,#$10 +12f0: 64 34 cmp a,$34 +12f2: d0 e5 bne $12d9 +12f4: cd 00 mov x,#$00 +12f6: f5 59 13 mov a,$1359+x +12f9: cd 00 mov x,#$00 +12fb: 8d 10 mov y,#$10 +12fd: 74 00 cmp a,$00+x +12ff: d0 08 bne $1309 +1301: 2d push a +1302: f4 00 mov a,$00+x +1304: 08 01 or a,#$01 +1306: d4 00 mov $00+x,a +1308: ae pop a +1309: 3d inc x +130a: fe f1 dbnz y,$12fd +130c: e8 50 mov a,#$50 +130e: c4 30 mov $30,a +1310: e8 00 mov a,#$00 +1312: c5 20 04 mov $0420,a +1315: 6f ret + +1316: 5d mov x,a +1317: f5 59 13 mov a,$1359+x +131a: 08 01 or a,#$01 +131c: cd 00 mov x,#$00 +131e: 8d 10 mov y,#$10 +1320: 74 00 cmp a,$00+x +1322: d0 31 bne $1355 +1324: 2d push a +1325: 4d push x +1326: 6d push y +1327: d8 33 mov $33,x +1329: 7d mov a,x +132a: 1c asl a +132b: 5d mov x,a +132c: f5 59 00 mov a,$0059+x +132f: c4 40 mov $40,a +1331: 3d inc x +1332: f5 59 00 mov a,$0059+x +1335: c4 41 mov $41,a +1337: 3f 3c 07 call $073c +133a: 90 11 bcc $134d +133c: 3f 2b 07 call $072b +133f: e8 00 mov a,#$00 +1341: 8d 00 mov y,#$00 +1343: 3f 34 07 call $0734 +1346: e8 01 mov a,#$01 +1348: 8d 00 mov y,#$00 +134a: 3f 34 07 call $0734 +134d: ee pop y +134e: ce pop x +134f: e8 00 mov a,#$00 +1351: d5 00 00 mov $0000+x,a +1354: ae pop a +1355: 3d inc x +1356: fe c8 dbnz y,$1320 +1358: 6f ret + +1359: 10 20 bpl $137b +135b: 6f ret + +135c: 6f ret + +135d: cd 00 mov x,#$00 +135f: 1e 20 04 cmp x,$0420 +1362: f0 01 beq $1365 +1364: 6f ret + +1365: c5 20 04 mov $0420,a +1368: cc 21 04 mov $0421,y +136b: dd mov a,y +136c: 5d mov x,a +136d: e8 7f mov a,#$7f +136f: 8d 00 mov y,#$00 +1371: 9e div ya,x +1372: c5 23 04 mov $0423,a +1375: cb 34 mov $34,y +1377: dd mov a,y +1378: 60 clrc +1379: 84 34 adc a,$34 +137b: 60 clrc +137c: 84 34 adc a,$34 +137e: c5 22 04 mov $0422,a +1381: e8 00 mov a,#$00 +1383: c5 24 04 mov $0424,a +1386: c5 25 04 mov $0425,a +1389: 6f ret + +138a: e8 00 mov a,#$00 +138c: 3f 16 13 call $1316 +138f: 8f aa f4 mov $f4,#$aa +1392: 8f bb f5 mov $f5,#$bb +1395: 78 cc f4 cmp $f4,#$cc +1398: d0 fb bne $1395 +139a: 2f 19 bra $13b5 +139c: eb f4 mov y,$f4 +139e: d0 fc bne $139c +13a0: 7e f4 cmp y,$f4 +13a2: d0 0b bne $13af +13a4: e4 f5 mov a,$f5 +13a6: cb f4 mov $f4,y +13a8: d7 3e mov ($3e)+y,a +13aa: fc inc y +13ab: d0 f3 bne $13a0 +13ad: ab 3f inc $3f +13af: 10 ef bpl $13a0 +13b1: 7e f4 cmp y,$f4 +13b3: 10 eb bpl $13a0 +13b5: ba f6 movw ya,$f6 +13b7: da 3e movw $3e,ya +13b9: ba f4 movw ya,$f4 +13bb: c4 f4 mov $f4,a +13bd: dd mov a,y +13be: 5d mov x,a +13bf: d0 db bne $139c +13c1: 6f ret + +13c2: 6f ret + +13c3: c4 3e mov $3e,a +13c5: e8 00 mov a,#$00 +13c7: c4 3f mov $3f,a +13c9: 8d 00 mov y,#$00 +13cb: 7a 3e addw ya,$3e +13cd: 7a 3e addw ya,$3e +13cf: 7a 3e addw ya,$3e +13d1: 7a 3e addw ya,$3e +13d3: da 3e movw $3e,ya +13d5: e8 0e mov a,#$0e +13d7: fd mov y,a +13d8: e8 d5 mov a,#$d5 +13da: 7a 3e addw ya,$3e +13dc: cd 00 mov x,#$00 +13de: da 3e movw $3e,ya +13e0: e7 3e mov a,($3e+x) +13e2: c4 36 mov $36,a +13e4: 60 clrc +13e5: 88 08 adc a,#$08 +13e7: c4 34 mov $34,a +13e9: 3a 3e incw $3e +13eb: e7 3e mov a,($3e+x) +13ed: c4 37 mov $37,a +13ef: 3a 3e incw $3e +13f1: ba 3e movw ya,$3e +13f3: da 40 movw $40,ya +13f5: f8 34 mov x,$34 +13f7: e8 00 mov a,#$00 +13f9: 74 00 cmp a,$00+x +13fb: f0 07 beq $1404 +13fd: e4 37 mov a,$37 +13ff: 74 20 cmp a,$20+x +1401: 10 01 bpl $1404 +1403: 6f ret + +1404: e4 37 mov a,$37 +1406: d4 20 mov $20+x,a +1408: e4 36 mov a,$36 +140a: d4 10 mov $10+x,a +140c: e8 21 mov a,#$21 +140e: d4 00 mov $00+x,a +1410: e4 34 mov a,$34 +1412: 1c asl a +1413: 5d mov x,a +1414: f4 59 mov a,$59+x +1416: c4 42 mov $42,a +1418: 3d inc x +1419: f4 59 mov a,$59+x +141b: c4 43 mov $43,a +141d: cd 00 mov x,#$00 +141f: e7 3e mov a,($3e+x) +1421: 2d push a +1422: 3a 3e incw $3e +1424: e7 3e mov a,($3e+x) +1426: fd mov y,a +1427: 3a 3e incw $3e +1429: ae pop a +142a: da 44 movw $44,ya +142c: e8 00 mov a,#$00 +142e: 8d 00 mov y,#$00 +1430: d7 42 mov ($42)+y,a +1432: fc inc y +1433: d7 42 mov ($42)+y,a +1435: fc inc y +1436: e4 44 mov a,$44 +1438: d7 42 mov ($42)+y,a +143a: fc inc y +143b: e4 45 mov a,$45 +143d: d7 42 mov ($42)+y,a +143f: fc inc y +1440: e4 44 mov a,$44 +1442: d7 42 mov ($42)+y,a +1444: fc inc y +1445: e4 45 mov a,$45 +1447: d7 42 mov ($42)+y,a +1449: fc inc y +144a: e8 01 mov a,#$01 +144c: d7 42 mov ($42)+y,a +144e: fc inc y +144f: e8 00 mov a,#$00 +1451: d7 42 mov ($42)+y,a +1453: fc inc y +1454: ad 28 cmp y,#$28 +1456: d0 f9 bne $1451 +1458: 8d 06 mov y,#$06 +145a: e8 01 mov a,#$01 +145c: d7 42 mov ($42)+y,a +145e: e8 32 mov a,#$32 +1460: c4 31 mov $31,a +1462: 6f ret + +1463: 6f ret + +1464: e4 34 mov a,$34 +1466: eb 35 mov y,$35 +1468: 7a 36 addw ya,$36 +146a: 6f ret + +146b: e4 34 mov a,$34 +146d: eb 35 mov y,$35 +146f: 9a 36 subw ya,$36 +1471: 6f ret + +1472: e4 35 mov a,$35 +1474: 0d push psw +1475: 10 0d bpl $1484 +1477: e8 00 mov a,#$00 +1479: 80 setc +147a: a4 34 sbc a,$34 +147c: c4 34 mov $34,a +147e: e8 00 mov a,#$00 +1480: a4 35 sbc a,$35 +1482: c4 35 mov $35,a +1484: 3f 98 14 call $1498 +1487: 8e pop psw +1488: 10 0d bpl $1497 +148a: e8 00 mov a,#$00 +148c: 80 setc +148d: a4 34 sbc a,$34 +148f: c4 34 mov $34,a +1491: e8 00 mov a,#$00 +1493: a4 35 sbc a,$35 +1495: c4 35 mov $35,a +1497: 6f ret + +1498: 4d push x +1499: 6d push y +149a: cd 10 mov x,#$10 +149c: e8 00 mov a,#$00 +149e: c4 38 mov $38,a +14a0: c4 39 mov $39,a +14a2: 2b 34 rol $34 +14a4: 2b 35 rol $35 +14a6: 2b 38 rol $38 +14a8: 2b 39 rol $39 +14aa: e4 38 mov a,$38 +14ac: 80 setc +14ad: a4 36 sbc a,$36 +14af: fd mov y,a +14b0: e4 39 mov a,$39 +14b2: a4 37 sbc a,$37 +14b4: 90 04 bcc $14ba +14b6: eb 38 mov y,$38 +14b8: e4 39 mov a,$39 +14ba: 2b 34 rol $34 +14bc: 2b 35 rol $35 +14be: 1d dec x +14bf: d0 e5 bne $14a6 +14c1: ee pop y +14c2: ce pop x +14c3: 6f ret + +14c4: e4 34 mov a,$34 +14c6: eb 35 mov y,$35 +14c8: a8 80 sbc a,#$80 +14ca: 90 01 bcc $14cd +14cc: fc inc y +14cd: dd mov a,y +14ce: 6f ret + +14cf: 1c asl a +14d0: c4 46 mov $46,a +14d2: 1c asl a +14d3: 60 clrc +14d4: 84 46 adc a,$46 +14d6: c4 46 mov $46,a +14d8: e8 00 mov a,#$00 +14da: c4 47 mov $47,a +14dc: e8 04 mov a,#$04 +14de: fd mov y,a +14df: e8 30 mov a,#$30 +14e1: 7a 46 addw ya,$46 +14e3: da 46 movw $46,ya +14e5: 8d 00 mov y,#$00 +14e7: cd 00 mov x,#$00 +14e9: e7 46 mov a,($46+x) +14eb: 3a 46 incw $46 +14ed: 8d 20 mov y,#$20 +14ef: d7 40 mov ($40)+y,a +14f1: e7 46 mov a,($46+x) +14f3: 3a 46 incw $46 +14f5: 8d 21 mov y,#$21 +14f7: d7 40 mov ($40)+y,a +14f9: e7 46 mov a,($46+x) +14fb: 3a 46 incw $46 +14fd: 8d 22 mov y,#$22 +14ff: d7 40 mov ($40)+y,a +1501: e7 46 mov a,($46+x) +1503: 3a 46 incw $46 +1505: 8d 23 mov y,#$23 +1507: d7 40 mov ($40)+y,a +1509: e7 46 mov a,($46+x) +150b: 3a 46 incw $46 +150d: 8d 29 mov y,#$29 +150f: d7 40 mov ($40)+y,a +1511: e7 46 mov a,($46+x) +1513: 3a 46 incw $46 +1515: 8d 28 mov y,#$28 +1517: d7 40 mov ($40)+y,a +1519: 6f ret + +151a: e8 5d mov a,#$5d +151c: 8d 20 mov y,#$20 +151e: 3f 37 07 call $0737 +1521: 6f ret + +1522: 60 clrc +1523: e4 f4 mov a,$f4 +1525: 64 f4 cmp a,$f4 +1527: d0 0a bne $1533 +1529: 80 setc +152a: 68 00 cmp a,#$00 +152c: f0 05 beq $1533 +152e: eb f5 mov y,$f5 +1530: 8f f3 f1 mov $f1,#$f3 +1533: 6f ret + From ab60448d077e47d3f7695759b00e5448719f7926 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:59:34 -0700 Subject: [PATCH 036/116] Rename snes/Power Moves ($0530).bin to snes/System Vision/Power Moves ($0530).bin --- snes/{ => System Vision}/Power Moves ($0530).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => System Vision}/Power Moves ($0530).bin (100%) diff --git a/snes/Power Moves ($0530).bin b/snes/System Vision/Power Moves ($0530).bin similarity index 100% rename from snes/Power Moves ($0530).bin rename to snes/System Vision/Power Moves ($0530).bin From 19fee6f006bc55254d2d2be7ff73ac0b3fda4d3e Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 20:59:56 -0700 Subject: [PATCH 037/116] Update and rename snes/Power Moves.s to snes/System Vision/Power Moves.s --- snes/{ => System Vision}/Power Moves.s | 1 + 1 file changed, 1 insertion(+) rename snes/{ => System Vision}/Power Moves.s (96%) diff --git a/snes/Power Moves.s b/snes/System Vision/Power Moves.s similarity index 96% rename from snes/Power Moves.s rename to snes/System Vision/Power Moves.s index 50b2c782..cc5c5452 100644 --- a/snes/Power Moves.s +++ b/snes/System Vision/Power Moves.s @@ -1744,3 +1744,4 @@ 1530: 8f f3 f1 mov $f1,#$f3 1533: 6f ret + From 60be53a52323320a942d8174f2a189e19bb9aec0 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 21:00:24 -0700 Subject: [PATCH 038/116] Rename snes/Chester Cheetah - Too Cool to Fool ($0E36).bin to snes/System Vision/Chester Cheetah - Too Cool to Fool ($0E36).bin --- .../Chester Cheetah - Too Cool to Fool ($0E36).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => System Vision}/Chester Cheetah - Too Cool to Fool ($0E36).bin (100%) diff --git a/snes/Chester Cheetah - Too Cool to Fool ($0E36).bin b/snes/System Vision/Chester Cheetah - Too Cool to Fool ($0E36).bin similarity index 100% rename from snes/Chester Cheetah - Too Cool to Fool ($0E36).bin rename to snes/System Vision/Chester Cheetah - Too Cool to Fool ($0E36).bin From 25195464a1cc77cee6f784f5cf4da0942512dfd5 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 21:00:41 -0700 Subject: [PATCH 039/116] Update and rename snes/Chester Cheetah - Too Cool to Fool.s to snes/System Vision/Chester Cheetah - Too Cool to Fool.s --- snes/{ => System Vision}/Chester Cheetah - Too Cool to Fool.s | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => System Vision}/Chester Cheetah - Too Cool to Fool.s (100%) diff --git a/snes/Chester Cheetah - Too Cool to Fool.s b/snes/System Vision/Chester Cheetah - Too Cool to Fool.s similarity index 100% rename from snes/Chester Cheetah - Too Cool to Fool.s rename to snes/System Vision/Chester Cheetah - Too Cool to Fool.s From 7d55d7d26cce91797d2e9ccde48878047acf14cf Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 21:00:59 -0700 Subject: [PATCH 040/116] Rename snes/Battle Master - Kyuukyoku no Senshitachi ($0479).bin to snes/System Vision/Battle Master - Kyuukyoku no Senshitachi ($0479).bin --- ...le Master - Kyuukyoku no Senshitachi ($0479).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => System Vision}/Battle Master - Kyuukyoku no Senshitachi ($0479).bin (100%) diff --git a/snes/Battle Master - Kyuukyoku no Senshitachi ($0479).bin b/snes/System Vision/Battle Master - Kyuukyoku no Senshitachi ($0479).bin similarity index 100% rename from snes/Battle Master - Kyuukyoku no Senshitachi ($0479).bin rename to snes/System Vision/Battle Master - Kyuukyoku no Senshitachi ($0479).bin From f355797f77b832e3c8f0787d9a88f00ae56ebdd2 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 4 Oct 2025 21:01:52 -0700 Subject: [PATCH 041/116] Update and rename snes/Battle Master - Kyuukyoku no Senshitachi.s to snes/System Vision/Battle Master - Kyuukyoku no Senshitachi.s --- .../Battle Master - Kyuukyoku no Senshitachi.s | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => System Vision}/Battle Master - Kyuukyoku no Senshitachi.s (100%) diff --git a/snes/Battle Master - Kyuukyoku no Senshitachi.s b/snes/System Vision/Battle Master - Kyuukyoku no Senshitachi.s similarity index 100% rename from snes/Battle Master - Kyuukyoku no Senshitachi.s rename to snes/System Vision/Battle Master - Kyuukyoku no Senshitachi.s From 1ab8562c2961a2ad9366c126ed575c7e1b12d725 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:36:28 -0800 Subject: [PATCH 042/116] Add files via upload --- .../Puzzle Bobble - Bust-A-Move ($1000).bin | Bin 0 -> 4598 bytes .../Nintendo/Puzzle Bobble - Bust-A-Move.s | 2358 +++++++++++++++++ 2 files changed, 2358 insertions(+) create mode 100644 snes/NSPC/Nintendo/Puzzle Bobble - Bust-A-Move ($1000).bin create mode 100644 snes/NSPC/Nintendo/Puzzle Bobble - Bust-A-Move.s diff --git a/snes/NSPC/Nintendo/Puzzle Bobble - Bust-A-Move ($1000).bin b/snes/NSPC/Nintendo/Puzzle Bobble - Bust-A-Move ($1000).bin new file mode 100644 index 0000000000000000000000000000000000000000..86e33a0d76e146f836da59049a5b285476e1aa1b GIT binary patch literal 4598 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 uAe|bwI$s Date: Sat, 17 Jan 2026 14:37:06 -0800 Subject: [PATCH 043/116] Rename Puzzle Bobble - Bust-A-Move ($1000).bin to Puzzle Bobble - Bust-A-Move ($1000).bin --- .../Puzzle Bobble - Bust-A-Move ($1000).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{Nintendo => Aisystem Tokyo}/Puzzle Bobble - Bust-A-Move ($1000).bin (100%) diff --git a/snes/NSPC/Nintendo/Puzzle Bobble - Bust-A-Move ($1000).bin b/snes/NSPC/Aisystem Tokyo/Puzzle Bobble - Bust-A-Move ($1000).bin similarity index 100% rename from snes/NSPC/Nintendo/Puzzle Bobble - Bust-A-Move ($1000).bin rename to snes/NSPC/Aisystem Tokyo/Puzzle Bobble - Bust-A-Move ($1000).bin From a95b410adfdda479fd17d7449e4e57469d39ed6e Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:37:32 -0800 Subject: [PATCH 044/116] Update and rename Puzzle Bobble - Bust-A-Move.s to Puzzle Bobble - Bust-A-Move.s --- .../{Nintendo => Aisystem Tokyo}/Puzzle Bobble - Bust-A-Move.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{Nintendo => Aisystem Tokyo}/Puzzle Bobble - Bust-A-Move.s (96%) diff --git a/snes/NSPC/Nintendo/Puzzle Bobble - Bust-A-Move.s b/snes/NSPC/Aisystem Tokyo/Puzzle Bobble - Bust-A-Move.s similarity index 96% rename from snes/NSPC/Nintendo/Puzzle Bobble - Bust-A-Move.s rename to snes/NSPC/Aisystem Tokyo/Puzzle Bobble - Bust-A-Move.s index 1d8f7085..c8c45b58 100644 --- a/snes/NSPC/Nintendo/Puzzle Bobble - Bust-A-Move.s +++ b/snes/NSPC/Aisystem Tokyo/Puzzle Bobble - Bust-A-Move.s @@ -2355,4 +2355,5 @@ 3300: db $32,$65,$7f,$98,$b2,$cb,$e5,$fc ; per-note velocity values 3308: db $19,$32,$4c,$65,$72,$7f,$8c,$98 -3310: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc \ No newline at end of file + +3310: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc From abf0c2b226cf5091b3d6116a9cf03ac46a9fc32d Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:38:01 -0800 Subject: [PATCH 045/116] Add files via upload --- snes/NSPC/King Arthur's World ($0360).bin | Bin 0 -> 3414 bytes snes/NSPC/King Arthur's World.s | 1828 ++++++++++++++++ snes/NSPC/Vortex ($02B5).bin | Bin 0 -> 4485 bytes snes/NSPC/Vortex.s | 2368 +++++++++++++++++++++ 4 files changed, 4196 insertions(+) create mode 100644 snes/NSPC/King Arthur's World ($0360).bin create mode 100644 snes/NSPC/King Arthur's World.s create mode 100644 snes/NSPC/Vortex ($02B5).bin create mode 100644 snes/NSPC/Vortex.s diff --git a/snes/NSPC/King Arthur's World ($0360).bin b/snes/NSPC/King Arthur's World ($0360).bin new file mode 100644 index 0000000000000000000000000000000000000000..565fb0f3abb7e6f40987b4b6c91ff6b10b3c3870 GIT binary patch literal 3414 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 I6u8~!KR2IDy8r+H literal 0 HcmV?d00001 diff --git a/snes/NSPC/Vortex.s b/snes/NSPC/Vortex.s new file mode 100644 index 00000000..79c36e5f --- /dev/null +++ b/snes/NSPC/Vortex.s @@ -0,0 +1,2368 @@ +02b5: 20 clrp +02b6: cd 2f mov x,#$2f +02b8: bd mov sp,x +02b9: e8 00 mov a,#$00 +02bb: 5d mov x,a +02bc: af mov (x)+,a +02bd: c8 f0 cmp x,#$f0 +02bf: d0 fb bne $02bc +02c1: 5d mov x,a +02c2: d5 00 01 mov $0100+x,a +02c5: c8 b0 cmp x,#$b0 +02c7: b0 03 bcs $02cc +02c9: d5 00 02 mov $0200+x,a +02cc: 3d inc x +02cd: d0 f3 bne $02c2 +02cf: fd mov y,a +02d0: da f4 movw $f4,ya +02d2: da f6 movw $f6,ya +02d4: bc inc a +02d5: 3f e7 0f call $0fe7 +02d8: a2 31 set5 $31 +02da: e8 15 mov a,#$15 +02dc: 8d 5d mov y,#$5d +02de: cb f2 mov $f2,y +02e0: c4 f3 mov $f3,a +02e2: 8f f0 f1 mov $f1,#$f0 +02e5: e8 10 mov a,#$10 +02e7: c4 fa mov $fa,a +02e9: c4 fb mov $fb,a +02eb: c4 3b mov $3b,a +02ed: 8f 03 f1 mov $f1,#$03 +02f0: 8f 02 f4 mov $f4,#$02 +02f3: 8f 00 f5 mov $f5,#$00 +02f6: e5 df 06 mov a,$06df +02f9: ec e0 06 mov y,$06e0 +02fc: da 06 movw $06,ya +02fe: 8f 02 2f mov $2f,#$02 +0301: 8d 0a mov y,#$0a +0303: ad 05 cmp y,#$05 +0305: f0 07 beq $030e +0307: b0 08 bcs $0311 +0309: 69 36 35 cmp ($35),($36) +030c: d0 0f bne $031d +030e: e3 35 0c bbs7 $35,$031d +0311: f6 8e 03 mov a,$038e+y +0314: c4 f2 mov $f2,a +0316: f6 98 03 mov a,$0398+y +0319: 5d mov x,a +031a: e6 mov a,(x) +031b: c4 f3 mov $f3,a +031d: fe e4 dbnz y,$0303 +031f: cb 29 mov $29,y +0321: cb 2a mov $2a,y +0323: eb fe mov y,$fe +0325: f0 fc beq $0323 +0327: e8 30 mov a,#$30 +0329: cf mul ya +032a: 60 clrc +032b: 84 58 adc a,$58 +032d: c4 58 mov $58,a +032f: 90 03 bcc $0334 +0331: 3f a3 03 call $03a3 +0334: eb fd mov y,$fd +0336: f0 fc beq $0334 +0338: 6d push y +0339: e8 40 mov a,#$40 +033b: cf mul ya +033c: 60 clrc +033d: 84 14 adc a,$14 +033f: c4 14 mov $14,a +0341: 90 18 bcc $035b +0343: ba f4 movw ya,$f4 +0345: 5a f4 cmpw ya,$f4 +0347: d0 fa bne $0343 +0349: 5a 00 cmpw ya,$00 +034b: f0 07 beq $0354 +034d: da 00 movw $00,ya +034f: da f4 movw $f4,ya +0351: 3f 69 04 call $0469 +0354: 69 36 35 cmp ($35),($36) +0357: f0 02 beq $035b +0359: ab 35 inc $35 +035b: ee pop y +035c: e4 3b mov a,$3b +035e: cf mul ya +035f: 60 clrc +0360: 84 39 adc a,$39 +0362: c4 39 mov $39,a +0364: 90 05 bcc $036b +0366: 3f cf 09 call $09cf +0369: 2f 96 bra $0301 +036b: e4 05 mov a,$05 +036d: f0 92 beq $0301 +036f: cd 00 mov x,#$00 +0371: 8f 01 2b mov $2b,#$01 +0374: f4 19 mov a,$19+x +0376: f0 03 beq $037b +0378: 3f 5d 13 call $135d +037b: 3d inc x +037c: 3d inc x +037d: 0b 2b asl $2b +037f: f4 19 mov a,$19+x +0381: f0 03 beq $0386 +0383: 3f 5d 13 call $135d +0386: 3d inc x +0387: 3d inc x +0388: 0b 2b asl $2b +038a: d0 e8 bne $0374 +038c: 5f 01 03 jmp $0301 + +038f: 2c 3c 0d rol $0d3c +0392: 4d push x +0393: 6c 4c 5c ror $5c4c +0396: 3d inc x +0397: 2d push a +0398: 5c lsr a +0399: 4a 4c 37 and1 c,$174c,1 +039c: 33 31 29 bbc1 $31,$03c8 +039f: 09 32 34 or ($34),($32) +03a2: 2a e4 13 or1 c,!($13e4,0) +03a5: f0 03 beq $03aa +03a7: 3f 18 07 call $0718 +03aa: eb 71 mov y,$71 +03ac: f0 75 beq $0423 +03ae: dc dec y +03af: 6d push y +03b0: f9 72 mov x,$72+y +03b2: d8 2b mov $2b,x +03b4: 7d mov a,x +03b5: f9 59 mov x,$59+y +03b7: 24 28 and a,$28 +03b9: d0 4f bne $040a +03bb: fb 62 mov y,$62+x +03bd: f0 57 beq $0416 +03bf: d8 2c mov $2c,x +03c1: 9b 7f dec $7f+x +03c3: d0 45 bne $040a +03c5: e7 61 mov a,($61+x) +03c7: bb 61 inc $61+x +03c9: d0 02 bne $03cd +03cb: bb 62 inc $62+x +03cd: fd mov y,a +03ce: d0 17 bne $03e7 +03d0: f4 8f mov a,$8f+x +03d2: f0 50 beq $0424 +03d4: 3f 78 0e call $0e78 +03d7: 9b 8f dec $8f+x +03d9: d0 ea bne $03c5 +03db: f5 60 01 mov a,$0160+x +03de: d4 61 mov $61+x,a +03e0: f5 61 01 mov a,$0161+x +03e3: d4 62 mov $62+x,a +03e5: 2f de bra $03c5 +03e7: 30 0c bmi $03f5 +03e9: d5 30 01 mov $0130+x,a +03ec: e7 61 mov a,($61+x) +03ee: bb 61 inc $61+x +03f0: d0 02 bne $03f4 +03f2: bb 62 inc $62+x +03f4: fd mov y,a +03f5: 68 ce cmp a,#$ce +03f7: 90 05 bcc $03fe +03f9: 3f 4d 04 call $044d +03fc: 2f c7 bra $03c5 +03fe: 3f 48 07 call $0748 +0401: f5 30 01 mov a,$0130+x +0404: d4 7f mov $7f+x,a +0406: d4 80 mov $80+x,a +0408: 2f 03 bra $040d +040a: 3f 3e 12 call $123e +040d: 3f 2b 10 call $102b +0410: 3f ea 10 call $10ea +0413: 3f dc 13 call $13dc +0416: e4 df mov a,$df +0418: 68 02 cmp a,#$02 +041a: d0 03 bne $041f +041c: 3f 15 06 call $0615 +041f: ae pop a +0420: fd mov y,a +0421: d0 8b bne $03ae +0423: 6f ret + +0424: e8 ff mov a,#$ff +0426: d5 71 02 mov $0271+x,a +0429: bc inc a +042a: d4 62 mov $62+x,a +042c: e4 df mov a,$df +042e: f0 e6 beq $0416 +0430: 3f fb 05 call $05fb +0433: 2f e1 bra $0416 + +; note dur%'s +0435: db $32,$65,$7f,$98,$b2,$cb,$e5,$fd +; per-note velocity values +043d: db $50,$64,$73,$84,$8e,$98,$a2,$ac +0445: db $b6,$c0,$ca,$d5,$e1,$e8,$f2,$ff + +044d: 1c asl a +044e: fd mov y,a +044f: f6 77 0a mov a,$0a77+y +0452: 2d push a +0453: f6 76 0a mov a,$0a76+y +0456: 2d push a +0457: dd mov a,y +0458: 5c lsr a +0459: fd mov y,a +045a: f6 0a 0b mov a,$0b0a+y +045d: f0 09 beq $0468 +045f: e7 61 mov a,($61+x) +0461: bb 61 inc $61+x +0463: d0 02 bne $0467 +0465: bb 62 inc $62+x +0467: fd mov y,a +0468: 6f ret + +0469: dd mov a,y +046a: 28 0e and a,#$0e +046c: 5d mov x,a +046d: dd mov a,y +046e: 28 e0 and a,#$e0 +0470: 9f xcn a +0471: c4 2c mov $2c,a +0473: 1f 77 04 jmp ($0477+x) + +0476: 6f ret + +0477: 59 eor (x),(y) +0478: 06 or a,(x) +0479: 87 04 adc a,($04+x) +047b: 98 04 b1 adc $b1,#$04 +047e: 05 d8 04 or a,$04d8 +0481: e0 clrv +0482: 04 a8 or a,$a8 +0484: 04 e5 or a,$e5 +0486: 05 fa 00 or a,$00fa +0489: 05 e8 ff or a,$ffe8 +048c: c4 04 mov $04,a +048e: e4 2c mov a,$2c +0490: 5c lsr a +0491: c4 e6 mov $e6,a +0493: e8 02 mov a,#$02 +0495: c4 2f mov $2f,a +0497: 6f ret + +0498: e4 00 mov a,$00 +049a: c4 e6 mov $e6,a +049c: e8 01 mov a,#$01 +049e: c4 7d mov $7d,a +04a0: e8 7e mov a,#$7e +04a2: c4 05 mov $05,a +04a4: 8f 02 2f mov $2f,#$02 +04a7: 6f ret + +04a8: e5 39 14 mov a,$1439 +04ab: 48 01 eor a,#$01 +04ad: c5 39 14 mov $1439,a +04b0: f0 1a beq $04cc +04b2: e4 4a mov a,$4a +04b4: 04 4c or a,$4c +04b6: f0 1f beq $04d7 +04b8: e4 4a mov a,$4a +04ba: 10 05 bpl $04c1 +04bc: 48 ff eor a,#$ff +04be: bc inc a +04bf: c4 4a mov $4a,a +04c1: e4 4c mov a,$4c +04c3: 10 0f bpl $04d4 +04c5: 48 ff eor a,#$ff +04c7: bc inc a +04c8: c4 4c mov $4c,a +04ca: 2f 08 bra $04d4 +04cc: e4 51 mov a,$51 +04ce: c4 4a mov $4a,a +04d0: e4 52 mov a,$52 +04d2: c4 4c mov $4c,a +04d4: 8f ff 46 mov $46,#$ff +04d7: 6f ret + +04d8: e4 00 mov a,$00 +04da: 60 clrc +04db: 84 7e adc a,$7e +04dd: c4 3b mov $3b,a +04df: 6f ret + +04e0: f8 2c mov x,$2c +04e2: f4 19 mov a,$19+x +04e4: c4 10 mov $10,a +04e6: c4 0d mov $0d,a +04e8: f0 0a beq $04f4 +04ea: c8 02 cmp x,#$02 +04ec: f0 03 beq $04f1 +04ee: 5f b0 05 jmp $05b0 + +04f1: 5f e1 06 jmp $06e1 + +04f4: e4 00 mov a,$00 +04f6: d3 00 34 bbc6 $00,$052d +04f9: 28 bf and a,#$bf +04fb: c4 0f mov $0f,a +04fd: cd 00 mov x,#$00 +04ff: 1d dec x +0500: f0 2b beq $052d +0502: ba f6 movw ya,$f6 +0504: 5a f6 cmpw ya,$f6 +0506: d0 fa bne $0502 +0508: 5a 02 cmpw ya,$02 +050a: f0 f3 beq $04ff +050c: da 02 movw $02,ya +050e: da f6 movw $f6,ya +0510: 48 ff eor a,#$ff +0512: c4 e3 mov $e3,a +0514: dd mov a,y +0515: 10 05 bpl $051c +0517: 48 ff eor a,#$ff +0519: bc inc a +051a: e2 0d set7 $0d +051c: cd 06 mov x,#$06 +051e: 8d 00 mov y,#$00 +0520: 9e div ya,x +0521: e3 0d 03 bbs7 $0d,$0527 +0524: 48 ff eor a,#$ff +0526: bc inc a +0527: c4 e2 mov $e2,a +0529: e4 0f mov a,$0f +052b: 2f 09 bra $0536 +052d: e8 ff mov a,#$ff +052f: c4 e3 mov $e3,a +0531: bc inc a +0532: c4 e2 mov $e2,a +0534: e4 00 mov a,$00 +0536: f8 2c mov x,$2c +0538: eb 2c mov y,$2c +053a: c8 0c cmp x,#$0c +053c: d0 04 bne $0542 +053e: c4 e4 mov $e4,a +0540: 2f 17 bra $0559 +0542: f5 71 02 mov a,$0271+x +0545: 30 12 bmi $0559 +0547: ab 10 inc $10 +0549: 1d dec x +054a: 1d dec x +054b: e4 e4 mov a,$e4 +054d: f0 0a beq $0559 +054f: 28 0f and a,#$0f +0551: 68 02 cmp a,#$02 +0553: f0 04 beq $0559 +0555: 8b 10 dec $10 +0557: 3d inc x +0558: 3d inc x +0559: e4 00 mov a,$00 +055b: 28 bf and a,#$bf +055d: 1c asl a +055e: b0 11 bcs $0571 +0560: 75 71 02 cmp a,$0271+x +0563: f0 15 beq $057a +0565: 90 13 bcc $057a +0567: e4 10 mov a,$10 +0569: f0 45 beq $05b0 +056b: 8b 10 dec $10 +056d: 3d inc x +056e: 3d inc x +056f: 2f e8 bra $0559 +0571: 2d push a +0572: e8 00 mov a,#$00 +0574: d5 71 02 mov $0271+x,a +0577: ae pop a +0578: 2f 03 bra $057d +057a: d5 71 02 mov $0271+x,a +057d: c4 0f mov $0f,a +057f: e4 e2 mov a,$e2 +0581: d5 90 02 mov $0290+x,a +0584: e4 e3 mov a,$e3 +0586: d5 91 02 mov $0291+x,a +0589: f6 a0 02 mov a,$02a0+y +058c: 60 clrc +058d: 84 0f adc a,$0f +058f: c4 0f mov $0f,a +0591: f6 a1 02 mov a,$02a1+y +0594: 84 09 adc a,$09 +0596: c4 10 mov $10,a +0598: 8d 00 mov y,#$00 +059a: f7 0f mov a,($0f)+y +059c: d4 61 mov $61+x,a +059e: fc inc y +059f: f7 0f mov a,($0f)+y +05a1: d4 62 mov $62+x,a +05a3: f5 bc 08 mov a,$08bc+x +05a6: 8d 5c mov y,#$5c +05a8: cb f2 mov $f2,y +05aa: c4 f3 mov $f3,a +05ac: 04 28 or a,$28 +05ae: c4 28 mov $28,a +05b0: 6f ret + +05b1: f8 2c mov x,$2c +05b3: f4 19 mov a,$19+x +05b5: d0 1d bne $05d4 +05b7: f5 bc 08 mov a,$08bc+x +05ba: 24 e8 and a,$e8 +05bc: f0 16 beq $05d4 +05be: f5 81 02 mov a,$0281+x +05c1: fd mov y,a +05c2: e8 00 mov a,#$00 +05c4: d4 d0 mov $d0+x,a +05c6: e4 00 mov a,$00 +05c8: 5c lsr a +05c9: 7b d0 ror $d0+x +05cb: 5c lsr a +05cc: 7b d0 ror $d0+x +05ce: d5 80 02 mov $0280+x,a +05d1: 3f 48 07 call $0748 +05d4: 6f ret + +05d5: e8 ff mov a,#$ff +05d7: c4 e3 mov $e3,a +05d9: bc inc a +05da: c4 e2 mov $e2,a +05dc: e8 0c mov a,#$0c +05de: cd 0e mov x,#$0e +05e0: 8d 0e mov y,#$0e +05e2: 5f 7a 05 jmp $057a + +05e5: 78 01 00 cmp $00,#$01 +05e8: f0 43 beq $062d +05ea: 8f 01 df mov $df,#$01 +05ed: 78 02 00 cmp $00,#$02 +05f0: f0 03 beq $05f5 +05f2: 8f 00 e7 mov $e7,#$00 +05f5: 8f 25 e7 mov $e7,#$25 +05f8: 5f d5 05 jmp $05d5 + +05fb: 8f 02 df mov $df,#$02 +05fe: 60 clrc +05ff: e4 4a mov a,$4a +0601: 10 01 bpl $0604 +0603: 80 setc +0604: 7c ror a +0605: c4 4a mov $4a,a +0607: 60 clrc +0608: e4 4c mov a,$4c +060a: 10 01 bpl $060d +060c: 80 setc +060d: 7c ror a +060e: c4 4c mov $4c,a +0610: e8 70 mov a,#$70 +0612: c4 30 mov $30,a +0614: 6f ret + +0615: 8b 30 dec $30 +0617: e4 30 mov a,$30 +0619: 8d 0c mov y,#$0c +061b: cb f2 mov $f2,y +061d: c4 f3 mov $f3,a +061f: 8d 1c mov y,#$1c +0621: cb f2 mov $f2,y +0623: c4 f3 mov $f3,a +0625: 64 e7 cmp a,$e7 +0627: d0 03 bne $062c +0629: 8f 00 df mov $df,#$00 +062c: 6f ret + +062d: 3f d5 05 call $05d5 +0630: e4 df mov a,$df +0632: 8f 00 df mov $df,#$00 +0635: 68 01 cmp a,#$01 +0637: f0 06 beq $063f +0639: 0b 4a asl $4a +063b: 0b 4c asl $4c +063d: e4 30 mov a,$30 +063f: bc inc a +0640: 8d 0c mov y,#$0c +0642: cb f2 mov $f2,y +0644: c4 f3 mov $f3,a +0646: 8d 1c mov y,#$1c +0648: cb f2 mov $f2,y +064a: c4 f3 mov $f3,a +064c: 68 70 cmp a,#$70 +064e: d0 ef bne $063f +0650: c4 30 mov $30,a +0652: 6f ret + +0653: cd 60 mov x,#$60 +0655: 1d dec x +0656: d0 fd bne $0655 +0658: 6f ret + +0659: fa 00 e0 mov ($e0),($00) +065c: 8f 01 2b mov $2b,#$01 +065f: cd 00 mov x,#$00 +0661: f4 62 mov a,$62+x +0663: d0 03 bne $0668 +0665: 09 2b e1 or ($e1),($2b) +0668: 3d inc x +0669: 3d inc x +066a: 0b 2b asl $2b +066c: d0 f3 bne $0661 +066e: e8 5c mov a,#$5c +0670: eb e1 mov y,$e1 +0672: da f2 movw $f2,ya +0674: 6f ret + +0675: 8f 6c f2 mov $f2,#$6c +0678: 8f 20 f3 mov $f3,#$20 +067b: 8f aa f4 mov $f4,#$aa +067e: 8f bb f5 mov $f5,#$bb +0681: e4 f4 mov a,$f4 +0683: 64 f4 cmp a,$f4 +0685: d0 fa bne $0681 +0687: 68 cc cmp a,#$cc +0689: d0 f6 bne $0681 +068b: 2f 1b bra $06a8 +068d: eb f4 mov y,$f4 +068f: d0 fc bne $068d +0691: 7e f4 cmp y,$f4 +0693: d0 0d bne $06a2 +0695: e4 f5 mov a,$f5 +0697: cb f4 mov $f4,y +0699: d7 7a mov ($7a)+y,a +069b: fc inc y +069c: d0 f3 bne $0691 +069e: ab 7b inc $7b +06a0: 2f ef bra $0691 +06a2: 10 ed bpl $0691 +06a4: 7e f4 cmp y,$f4 +06a6: 10 e9 bpl $0691 +06a8: ba f6 movw ya,$f6 +06aa: da 7a movw $7a,ya +06ac: ba f4 movw ya,$f4 +06ae: c4 f4 mov $f4,a +06b0: dd mov a,y +06b1: 5d mov x,a +06b2: d0 d9 bne $068d +06b4: ba f4 movw ya,$f4 +06b6: d0 fc bne $06b4 +06b8: da 00 movw $00,ya +06ba: da f4 movw $f4,ya +06bc: ba f6 movw ya,$f6 +06be: d0 fc bne $06bc +06c0: da 02 movw $02,ya +06c2: da f6 movw $f6,ya +06c4: e8 5c mov a,#$5c +06c6: 8d ff mov y,#$ff +06c8: da f2 movw $f2,ya +06ca: 8d 00 mov y,#$00 +06cc: e8 2c mov a,#$2c +06ce: da f2 movw $f2,ya +06d0: e8 3c mov a,#$3c +06d2: da f2 movw $f2,ya +06d4: ba 7a movw ya,$7a +06d6: c5 df 06 mov $06df,a +06d9: cc e0 06 mov $06e0,y +06dc: 5f b5 02 jmp $02b5 + +06df: cc 90 f5 mov $f590,y +06e2: bc inc a +06e3: 08 24 or a,#$24 +06e5: e9 f0 2f mov x,$2ff0 +06e8: c4 13 mov $13,a +06ea: 8d 5c mov y,#$5c +06ec: da f2 movw $f2,ya +06ee: e8 06 mov a,#$06 +06f0: 3f af 0b call $0baf +06f3: e8 6f mov a,#$6f +06f5: fd mov y,a +06f6: 3f 2b 0d call $0d2b +06f9: e8 7c mov a,#$7c +06fb: fd mov y,a +06fc: 3f 3d 0d call $0d3d +06ff: 8d 18 mov y,#$18 +0701: f5 ac 08 mov a,$08ac+x +0704: da f2 movw $f2,ya +0706: bc inc a +0707: da f2 movw $f2,ya +0709: e8 b9 mov a,#$b9 +070b: fd mov y,a +070c: 3f 48 07 call $0748 +070f: e4 13 mov a,$13 +0711: 8d 4c mov y,#$4c +0713: cb f2 mov $f2,y +0715: c4 f3 mov $f3,a +0717: 6f ret + +0718: 8f 18 f2 mov $f2,#$18 +071b: e4 f3 mov a,$f3 +071d: d0 28 bne $0747 +071f: cd 02 mov x,#$02 +0721: f5 81 02 mov a,$0281+x +0724: 68 c5 cmp a,#$c5 +0726: f0 19 beq $0741 +0728: 68 c0 cmp a,#$c0 +072a: f0 04 beq $0730 +072c: e8 c0 mov a,#$c0 +072e: 2f 02 bra $0732 +0730: e8 c5 mov a,#$c5 +0732: fd mov y,a +0733: 3f 48 07 call $0748 +0736: f5 bc 08 mov a,$08bc+x +0739: 8d 4c mov y,#$4c +073b: cb f2 mov $f2,y +073d: c4 f3 mov $f3,a +073f: 2f 06 bra $0747 +0741: fa 13 46 mov ($46),($13) +0744: 8f 00 13 mov $13,#$00 +0747: 6f ret + +; handle a note vcmd (80-df) +0748: ad c8 cmp y,#$c8 +074a: b0 fb bcs $0747 +074c: dd mov a,y +074d: d5 81 02 mov $0281+x,a +0750: 28 7f and a,#$7f +0752: 2f 13 bra $0767 +; vcmds 80-c7,c8,c9 - note/tie/rest +0754: ad c8 cmp y,#$c8 +0756: b0 ef bcs $0747 +0758: 09 2b e9 or ($e9),($2b) +075b: e4 13 mov a,$13 +075d: 24 2b and a,$2b +075f: d0 e6 bne $0747 +; vcmds 80-c7 - note (note number in Y) +0761: dd mov a,y +0762: 28 7f and a,#$7f +0764: 60 clrc +0765: 84 38 adc a,$38 +0767: 60 clrc +0768: 95 80 02 adc a,$0280+x +076b: d5 01 02 mov $0201+x,a +076e: f4 d0 mov a,$d0+x +0770: d5 00 02 mov $0200+x,a +0773: f5 60 02 mov a,$0260+x +0776: 5c lsr a +0777: e8 00 mov a,#$00 +0779: 7c ror a +077a: d5 41 02 mov $0241+x,a +077d: e8 00 mov a,#$00 +077f: d4 bf mov $bf+x,a +0781: d5 90 00 mov $0090+x,a +0784: e4 2b mov a,$2b +0786: 24 57 and a,$57 +0788: d0 03 bne $078d +078a: 09 2b 29 or ($29),($2b) +078d: 09 2b 46 or ($46),($2b) +0790: f5 21 02 mov a,$0221+x +0793: d4 af mov $af+x,a +0795: f0 67 beq $07fe +0797: f5 30 02 mov a,$0230+x +079a: d4 b0 mov $b0+x,a +079c: f5 31 02 mov a,$0231+x +079f: 68 01 cmp a,#$01 +07a1: f0 15 beq $07b8 +07a3: b0 1c bcs $07c1 +07a5: f5 01 02 mov a,$0201+x +07a8: 80 setc +07a9: b5 40 02 sbc a,$0240+x +07ac: d5 01 02 mov $0201+x,a +07af: f5 40 02 mov a,$0240+x +07b2: 60 clrc +07b3: 95 01 02 adc a,$0201+x +07b6: 2f 17 bra $07cf +07b8: f5 01 02 mov a,$0201+x +07bb: 80 setc +07bc: b5 40 02 sbc a,$0240+x +07bf: 2f 0e bra $07cf +07c1: f5 01 02 mov a,$0201+x +07c4: fd mov y,a +07c5: f5 40 02 mov a,$0240+x +07c8: d5 01 02 mov $0201+x,a +07cb: dd mov a,y +07cc: d5 40 02 mov $0240+x,a +07cf: 28 7f and a,#$7f +07d1: d5 20 02 mov $0220+x,a +07d4: 80 setc +07d5: b5 01 02 sbc a,$0201+x +07d8: fb af mov y,$af+x +07da: 6d push y +07db: ce pop x +07dc: ed notc +07dd: 6b 0d ror $0d +07df: 10 03 bpl $07e4 +07e1: 48 ff eor a,#$ff +07e3: bc inc a +07e4: 8d 00 mov y,#$00 +07e6: 9e div ya,x +07e7: 2d push a +07e8: e8 00 mov a,#$00 +07ea: 9e div ya,x +07eb: ee pop y +07ec: f8 2c mov x,$2c +07ee: f3 0d 06 bbc7 $0d,$07f7 +07f1: da 0f movw $0f,ya +07f3: ba 09 movw ya,$09 +07f5: 9a 0f subw ya,$0f +07f7: d5 10 02 mov $0210+x,a +07fa: dd mov a,y +07fb: d5 11 02 mov $0211+x,a +07fe: f5 01 02 mov a,$0201+x +0801: c4 0c mov $0c,a +0803: f5 00 02 mov a,$0200+x +0806: c4 0b mov $0b,a +0808: 8d 00 mov y,#$00 +080a: e4 0c mov a,$0c +080c: 80 setc +080d: a8 34 sbc a,#$34 +080f: b0 09 bcs $081a +0811: e4 0c mov a,$0c +0813: 80 setc +0814: a8 13 sbc a,#$13 +0816: b0 06 bcs $081e +0818: dc dec y +0819: 1c asl a +081a: 7a 0b addw ya,$0b +081c: da 0b movw $0b,ya +081e: 4d push x +081f: e4 0c mov a,$0c +0821: 1c asl a +0822: 8d 00 mov y,#$00 +0824: cd 18 mov x,#$18 +0826: 9e div ya,x +0827: 5d mov x,a +0828: f6 93 08 mov a,$0893+y +082b: c4 10 mov $10,a +082d: f6 92 08 mov a,$0892+y +0830: c4 0f mov $0f,a +0832: f6 95 08 mov a,$0895+y +0835: 2d push a +0836: f6 94 08 mov a,$0894+y +0839: ee pop y +083a: 9a 0f subw ya,$0f +083c: eb 0b mov y,$0b +083e: cf mul ya +083f: dd mov a,y +0840: 8d 00 mov y,#$00 +0842: 7a 0f addw ya,$0f +0844: cb 10 mov $10,y +0846: 1c asl a +0847: 2b 10 rol $10 +0849: c4 0f mov $0f,a +084b: 2f 04 bra $0851 +084d: 4b 10 lsr $10 +084f: 7c ror a +0850: 3d inc x +0851: c8 06 cmp x,#$06 +0853: d0 f8 bne $084d +0855: c4 0f mov $0f,a +0857: ce pop x +0858: f5 50 01 mov a,$0150+x +085b: eb 10 mov y,$10 +085d: cf mul ya +085e: da 11 movw $11,ya +0860: f5 50 01 mov a,$0150+x +0863: eb 0f mov y,$0f +0865: cf mul ya +0866: 6d push y +0867: f5 51 01 mov a,$0151+x +086a: eb 0f mov y,$0f +086c: cf mul ya +086d: 7a 11 addw ya,$11 +086f: da 11 movw $11,ya +0871: f5 51 01 mov a,$0151+x +0874: eb 10 mov y,$10 +0876: cf mul ya +0877: fd mov y,a +0878: ae pop a +0879: 7a 11 addw ya,$11 +087b: da 11 movw $11,ya +087d: e4 2b mov a,$2b +087f: 24 13 and a,$13 +0881: d0 0e bne $0891 +0883: f5 ac 08 mov a,$08ac+x +0886: 08 02 or a,#$02 +0888: eb 11 mov y,$11 +088a: da f2 movw $f2,ya +088c: bc inc a +088d: eb 12 mov y,$12 +088f: da f2 movw $f2,ya +0891: 6f ret + +; pitch table +0892: dw $085f +0894: dw $08de +0896: dw $0965 +0898: dw $09f4 +089a: dw $0a8c +089c: dw $0b2c +089e: dw $0bd6 +08a0: dw $0c8b +08a2: dw $0d4a +08a4: dw $0e14 +08a6: dw $0eea +08a8: dw $0fcd +08aa: dw $10be + +; channel value table +08ac: dw $0000 +08ae: dw $0010 +08b0: dw $0020 +08b2: dw $0030 +08b4: dw $0040 +08b6: dw $0050 +08b8: dw $0060 +08ba: dw $0070 +08bc: dw $0001 +08be: dw $0002 +08c0: dw $0004 +08c2: dw $0008 +08c4: dw $0010 +08c6: dw $0020 +08c8: dw $0040 +08ca: dw $0080 + +08cc: 8d 00 mov y,#$00 +08ce: cb 29 mov $29,y +08d0: cb e0 mov $e0,y +08d2: f7 15 mov a,($15)+y +08d4: 3a 15 incw $15 +08d6: 2d push a +08d7: f7 15 mov a,($15)+y +08d9: 3a 15 incw $15 +08db: fd mov y,a +08dc: ae pop a +08dd: 6f ret + +08de: 8f ff 04 mov $04,#$ff +08e1: 8b 2e dec $2e +08e3: 10 49 bpl $092e +08e5: e4 30 mov a,$30 +08e7: f0 48 beq $0931 +08e9: fa e6 2e mov ($2e),($e6) +08ec: 9c dec a +08ed: f0 01 beq $08f0 +08ef: 9c dec a +08f0: c4 30 mov $30,a +08f2: 8d 0c mov y,#$0c +08f4: cb f2 mov $f2,y +08f6: c4 f3 mov $f3,a +08f8: 8d 1c mov y,#$1c +08fa: cb f2 mov $f2,y +08fc: c4 f3 mov $f3,a +08fe: eb 4a mov y,$4a +0900: f0 14 beq $0916 +0902: 10 06 bpl $090a +0904: fc inc y +0905: f0 07 beq $090e +0907: fc inc y +0908: 2f 04 bra $090e +090a: dc dec y +090b: f0 01 beq $090e +090d: dc dec y +090e: cb 4a mov $4a,y +0910: cb 51 mov $51,y +0912: e8 2c mov a,#$2c +0914: da f2 movw $f2,ya +0916: eb 4c mov y,$4c +0918: f0 14 beq $092e +091a: 10 06 bpl $0922 +091c: fc inc y +091d: f0 07 beq $0926 +091f: fc inc y +0920: 2f 04 bra $0926 +0922: dc dec y +0923: f0 01 beq $0926 +0925: dc dec y +0926: cb 4c mov $4c,y +0928: cb 52 mov $52,y +092a: e8 3c mov a,#$3c +092c: da f2 movw $f2,ya +092e: 5f d5 09 jmp $09d5 + +0931: fa e6 2e mov ($2e),($e6) +0934: 8b 2f dec $2f +0936: d0 f6 bne $092e +0938: e4 7d mov a,$7d +093a: f0 03 beq $093f +093c: 5f 75 06 jmp $0675 + +; play song +093f: e4 05 mov a,$05 +0941: c4 04 mov $04,a +0943: 1c asl a +0944: f0 14 beq $095a +0946: 9c dec a +0947: fd mov y,a +0948: e8 00 mov a,#$00 +094a: c4 e4 mov $e4,a +094c: c4 2d mov $2d,a +094e: f7 06 mov a,($06)+y +0950: 2d push a +0951: dc dec y +0952: f7 06 mov a,($06)+y +0954: ee pop y +0955: da 15 movw $15,ya +0957: 8f 02 08 mov $08,#$02 +095a: e4 13 mov a,$13 +095c: 48 ff eor a,#$ff +095e: 0e 2a 00 tset1 $002a +0961: e8 00 mov a,#$00 +0963: 8d 00 mov y,#$00 +0965: 3f 62 0f call $0f62 +0968: 6f ret + +0969: e4 05 mov a,$05 +096b: 30 cb bmi $0938 +096d: 5f de 08 jmp $08de + +0970: cd 0e mov x,#$0e +0972: 8f 80 2b mov $2b,#$80 +0975: e8 0a mov a,#$0a +0977: 3f ff 0b call $0bff +097a: e8 00 mov a,#$00 +097c: d5 a1 01 mov $01a1+x,a +097f: d4 d0 mov $d0+x,a +0981: d5 80 02 mov $0280+x,a +0984: d4 af mov $af+x,a +0986: d5 21 02 mov $0221+x,a +0989: d5 30 02 mov $0230+x,a +098c: d5 31 02 mov $0231+x,a +098f: d5 c0 00 mov $00c0+x,a +0992: d4 62 mov $62+x,a +0994: 9c dec a +0995: d5 71 02 mov $0271+x,a +0998: 1d dec x +0999: 1d dec x +099a: 4b 2b lsr $2b +099c: d0 d7 bne $0975 +099e: e8 00 mov a,#$00 +09a0: 8d 07 mov y,#$07 +09a2: d6 72 00 mov $0072+y,a +09a5: dc dec y +09a6: 10 fa bpl $09a2 +09a8: c4 42 mov $42,a +09aa: c4 53 mov $53,a +09ac: c4 3c mov $3c,a +09ae: c4 38 mov $38,a +09b0: c4 17 mov $17,a +09b2: c4 56 mov $56,a +09b4: c4 57 mov $57,a +09b6: c4 71 mov $71,a +09b8: e8 70 mov a,#$70 +09ba: c4 30 mov $30,a +09bc: 8d 0c mov y,#$0c +09be: cb f2 mov $f2,y +09c0: c4 f3 mov $f3,a +09c2: 8d 1c mov y,#$1c +09c4: cb f2 mov $f2,y +09c6: c4 f3 mov $f3,a +09c8: 8f c0 41 mov $41,#$c0 +09cb: 8f 30 3b mov $3b,#$30 +09ce: 6f ret + +09cf: eb 04 mov y,$04 +09d1: 7e 05 cmp y,$05 +09d3: d0 94 bne $0969 +09d5: e4 e0 mov a,$e0 +09d7: d0 0f bne $09e8 +09d9: e4 04 mov a,$04 +09db: f0 f1 beq $09ce +09dd: e4 08 mov a,$08 +09df: f0 5f beq $0a40 +09e1: 6e 08 8c dbnz $08,$0970 +09e4: e8 00 mov a,#$00 +09e6: c4 2d mov $2d,a +09e8: 3f cc 08 call $08cc +09eb: d0 17 bne $0a04 +09ed: fd mov y,a +09ee: d0 03 bne $09f3 +09f0: 5f de 08 jmp $08de + +09f3: 8b 17 dec $17 +09f5: 10 02 bpl $09f9 +09f7: c4 17 mov $17,a +09f9: 3f cc 08 call $08cc +09fc: f8 17 mov x,$17 +09fe: f0 e8 beq $09e8 +0a00: da 15 movw $15,ya +0a02: 2f e4 bra $09e8 +0a04: da 11 movw $11,ya +0a06: 8d 0f mov y,#$0f +0a08: f7 11 mov a,($11)+y +0a0a: d6 18 00 mov $0018+y,a +0a0d: dc dec y +0a0e: 10 f8 bpl $0a08 +0a10: cd 00 mov x,#$00 +0a12: 8f 01 2b mov $2b,#$01 +0a15: f4 62 mov a,$62+x +0a17: d0 1f bne $0a38 +0a19: f4 19 mov a,$19+x +0a1b: f0 1b beq $0a38 +0a1d: e8 00 mov a,#$00 +0a1f: d4 8f mov $8f+x,a +0a21: d4 9f mov $9f+x,a +0a23: d4 a0 mov $a0+x,a +0a25: d4 cf mov $cf+x,a +0a27: d5 30 02 mov $0230+x,a +0a2a: d5 21 02 mov $0221+x,a +0a2d: bc inc a +0a2e: d4 7f mov $7f+x,a +0a30: e4 2b mov a,$2b +0a32: 4e 56 00 tclr1 $0056 +0a35: 4e 57 00 tclr1 $0057 +0a38: 3d inc x +0a39: 3d inc x +0a3a: 0b 2b asl $2b +0a3c: d0 d7 bne $0a15 +0a3e: e8 00 mov a,#$00 +0a40: cd 00 mov x,#$00 +0a42: 8f 01 2b mov $2b,#$01 +0a45: d8 2c mov $2c,x +0a47: f4 19 mov a,$19+x +0a49: f0 71 beq $0abc +0a4b: 9b 7f dec $7f+x +0a4d: d0 67 bne $0ab6 +0a4f: e7 18 mov a,($18+x) +0a51: bb 18 inc $18+x +0a53: d0 02 bne $0a57 +0a55: bb 19 inc $19+x +0a57: fd mov y,a +0a58: d0 17 bne $0a71 +0a5a: f4 8f mov a,$8f+x +0a5c: f0 8a beq $09e8 +0a5e: 3f 8e 0e call $0e8e +0a61: 9b 8f dec $8f+x +0a63: d0 ea bne $0a4f +0a65: f5 60 01 mov a,$0160+x +0a68: d4 18 mov $18+x,a +0a6a: f5 61 01 mov a,$0161+x +0a6d: d4 19 mov $19+x,a +0a6f: 2f de bra $0a4f +0a71: 30 25 bmi $0a98 +0a73: d5 30 01 mov $0130+x,a +0a76: e7 18 mov a,($18+x) +0a78: bb 18 inc $18+x +0a7a: d0 02 bne $0a7e +0a7c: bb 19 inc $19+x +0a7e: fd mov y,a +0a7f: 30 17 bmi $0a98 +0a81: 2d push a +0a82: 9f xcn a +0a83: 28 07 and a,#$07 +0a85: fd mov y,a +0a86: f6 35 04 mov a,$0435+y +0a89: d5 31 01 mov $0131+x,a +0a8c: ae pop a +0a8d: 28 0f and a,#$0f +0a8f: fd mov y,a +0a90: f6 3d 04 mov a,$043d+y +0a93: d5 40 01 mov $0140+x,a +0a96: 2f b7 bra $0a4f +0a98: 68 ce cmp a,#$ce +0a9a: 90 05 bcc $0aa1 +0a9c: 3f 7b 0b call $0b7b +0a9f: 2f ae bra $0a4f +0aa1: 3f 54 07 call $0754 +0aa4: f5 30 01 mov a,$0130+x +0aa7: d4 7f mov $7f+x,a +0aa9: fd mov y,a +0aaa: f5 31 01 mov a,$0131+x +0aad: cf mul ya +0aae: dd mov a,y +0aaf: d0 01 bne $0ab2 +0ab1: bc inc a +0ab2: d4 80 mov $80+x,a +0ab4: 2f 03 bra $0ab9 +0ab6: 3f 3e 12 call $123e +0ab9: 3f 57 10 call $1057 +0abc: 3d inc x +0abd: 3d inc x +0abe: 0b 2b asl $2b +0ac0: d0 83 bne $0a45 +0ac2: fa 56 57 mov ($57),($56) +0ac5: e4 3c mov a,$3c +0ac7: f0 0b beq $0ad4 +0ac9: ba 3e movw ya,$3e +0acb: 7a 3a addw ya,$3a +0acd: 6e 3c 02 dbnz $3c,$0ad2 +0ad0: ba 3c movw ya,$3c +0ad2: da 3a movw $3a,ya +0ad4: e4 53 mov a,$53 +0ad6: f0 15 beq $0aed +0ad8: ba 4d movw ya,$4d +0ada: 7a 49 addw ya,$49 +0adc: da 49 movw $49,ya +0ade: ba 4f movw ya,$4f +0ae0: 7a 4b addw ya,$4b +0ae2: 6e 53 06 dbnz $53,$0aeb +0ae5: ba 53 movw ya,$53 +0ae7: da 49 movw $49,ya +0ae9: eb 55 mov y,$55 +0aeb: da 4b movw $4b,ya +0aed: e4 42 mov a,$42 +0aef: f0 0e beq $0aff +0af1: ba 44 movw ya,$44 +0af3: 7a 40 addw ya,$40 +0af5: 6e 42 02 dbnz $42,$0afa +0af8: ba 42 movw ya,$42 +0afa: da 40 movw $40,ya +0afc: 8f ff 46 mov $46,#$ff +0aff: cd 00 mov x,#$00 +0b01: 8f 01 2b mov $2b,#$01 +0b04: f4 19 mov a,$19+x +0b06: f0 03 beq $0b0b +0b08: 3f 4c 11 call $114c +0b0b: 3d inc x +0b0c: 3d inc x +0b0d: 0b 2b asl $2b +0b0f: d0 f3 bne $0b04 +0b11: 6f ret + +; vcmd dispatch table +0b12: dw $0baf ; ce - set instrument +0b14: dw $0bff ; cf - pan +0b16: dw $0c33 ; d0 - pan fade +0b18: dw $0c79 ; d1 - vibrato on +0b1a: dw $0caf ; d2 - vibrato off +0b1c: dw $0cca ; d3 - master volume +0b1e: dw $0ccf ; d4 - master volume fade +0b20: dw $0cf6 ; d5 - tempo +0b22: dw $0cfd ; d6 - tempo fade +0b24: dw $0d24 ; d7 - global transpose +0b26: dw $0d27 ; d8 - per-voice transpose +0b28: dw $0d2b ; d9 - set channel ASDR +0b2a: dw $0d3d ; da - set channel ASDR envelope +0b2c: dw $0dbf ; db - volume +0b2e: dw $0de5 ; dc - volume fade +0b30: dw $0e32 ; dd - call subroutine +0b32: dw $0cba ; de - vibrato fade +0b34: dw $0d60 ; df - pitch envelope (release) +0b36: dw $0d64 ; e0 - pitch envelope (attack) +0b38: dw $0db8 ; e1 - pitch envelope off +0b3a: dw $0e2f ; e2 - tuning +0b3c: dw $0e99 ; e3 - echo vbits/volume +0b3e: dw $0f62 ; e4 - disable echo +0b40: dw $0f69 ; e5 - set echo params +0b42: dw $0ee9 ; e6 - echo volume fade +0b44: dw $1080 ; e7 - pitch slide +0b46: dw $1021 ; e8 +0b48: dw $0d4b ; e9 - set FIR +0b4a: dw $1021 ; ea +0b4c: dw $1025 ; eb +0b4e: dw $0fb9 ; ec +0b50: dw $0da4 ; ed +0b52: dw $0fb6 ; ee +0b54: dw $0dc8 ; ef +0b56: dw $0e2b ; f0 + +; vcmd lengths +0b58: db $01,$01,$02,$03,$00,$01,$02,$01 ; ce-d5 +0b60: db $02,$01,$01,$01,$01,$01,$02,$03 ; d6-dd +0b68: db $01,$03,$03,$00,$01,$03,$00,$03 ; de-e5 +0b70: db $03,$03,$01,$01,$00,$00,$00,$01 ; e6-ed +0b78: db $01,$01,$00 ; ee-f0 + +; dispatch vcmd +0b7b: 1c asl a +0b7c: fd mov y,a +0b7d: f6 77 0a mov a,$0a77+y +0b80: 2d push a +0b81: f6 76 0a mov a,$0a76+y +0b84: 2d push a +0b85: dd mov a,y +0b86: 5c lsr a +0b87: fd mov y,a +0b88: f6 0a 0b mov a,$0b0a+y +0b8b: f0 09 beq $0b96 +0b8d: e7 18 mov a,($18+x) +0b8f: bb 18 inc $18+x +0b91: d0 02 bne $0b95 +0b93: bb 19 inc $19+x +0b95: fd mov y,a +0b96: 6f ret + +0b97: f4 19 mov a,$19+x +0b99: f0 0a beq $0ba5 +0b9b: e7 18 mov a,($18+x) +0b9d: bb 18 inc $18+x +0b9f: d0 02 bne $0ba3 +0ba1: bb 19 inc $19+x +0ba3: fd mov y,a +0ba4: 6f ret + +0ba5: e7 61 mov a,($61+x) +0ba7: bb 61 inc $61+x +0ba9: d0 02 bne $0bad +0bab: bb 62 inc $62+x +0bad: fd mov y,a +0bae: 6f ret + +; vcmd ce - set instrument +0baf: 8d 06 mov y,#$06 +0bb1: cf mul ya +0bb2: da 0f movw $0f,ya +0bb4: 60 clrc +0bb5: 98 7b 0f adc $0f,#$7b +0bb8: 98 14 10 adc $10,#$14 +0bbb: e4 13 mov a,$13 +0bbd: 24 2b and a,$2b +0bbf: d0 3d bne $0bfe +0bc1: 4d push x +0bc2: f5 ac 08 mov a,$08ac+x +0bc5: 08 04 or a,#$04 +0bc7: 5d mov x,a +0bc8: 8d 00 mov y,#$00 +0bca: f7 0f mov a,($0f)+y +0bcc: 10 13 bpl $0be1 +0bce: 28 1f and a,#$1f +0bd0: 38 20 31 and $31,#$20 +0bd3: 0e 31 00 tset1 $0031 +0bd6: 09 2b 32 or ($32),($2b) +0bd9: 8d 04 mov y,#$04 +0bdb: f7 0f mov a,($0f)+y +0bdd: 8d 00 mov y,#$00 +0bdf: 2f 07 bra $0be8 +0be1: e4 2b mov a,$2b +0be3: 4e 32 00 tclr1 $0032 +0be6: f7 0f mov a,($0f)+y +0be8: d8 f2 mov $f2,x +0bea: c4 f3 mov $f3,a +0bec: 3d inc x +0bed: fc inc y +0bee: ad 04 cmp y,#$04 +0bf0: d0 f4 bne $0be6 +0bf2: ce pop x +0bf3: f7 0f mov a,($0f)+y +0bf5: d5 51 01 mov $0151+x,a +0bf8: fc inc y +0bf9: f7 0f mov a,($0f)+y +0bfb: d5 50 01 mov $0150+x,a +0bfe: 6f ret + +; vcmd cf - pan +0bff: f4 62 mov a,$62+x +0c01: d0 03 bne $0c06 +0c03: dd mov a,y +0c04: 2f 1f bra $0c25 +0c06: dd mov a,y +0c07: 60 clrc +0c08: 95 90 02 adc a,$0290+x +0c0b: 10 07 bpl $0c14 +0c0d: 48 ff eor a,#$ff +0c0f: bc inc a +0c10: 28 9f and a,#$9f +0c12: 2f 0f bra $0c23 +0c14: 68 14 cmp a,#$14 +0c16: f0 0d beq $0c25 +0c18: 90 0b bcc $0c25 +0c1a: 80 setc +0c1b: a8 14 sbc a,#$14 +0c1d: c4 0f mov $0f,a +0c1f: e8 14 mov a,#$14 +0c21: a4 0f sbc a,$0f +0c23: 08 80 or a,#$80 +0c25: d5 f1 01 mov $01f1+x,a +0c28: 28 1f and a,#$1f +0c2a: d5 d1 01 mov $01d1+x,a +0c2d: e8 00 mov a,#$00 +0c2f: d5 d0 01 mov $01d0+x,a +0c32: 6f ret + +; vcmd d0 - pan fade +0c33: d4 a0 mov $a0+x,a +0c35: 2d push a +0c36: f4 19 mov a,$19+x +0c38: d0 0b bne $0c45 +0c3a: e7 61 mov a,($61+x) +0c3c: bb 61 inc $61+x +0c3e: d0 02 bne $0c42 +0c40: bb 62 inc $62+x +0c42: fd mov y,a +0c43: 2f 09 bra $0c4e +0c45: e7 18 mov a,($18+x) +0c47: bb 18 inc $18+x +0c49: d0 02 bne $0c4d +0c4b: bb 19 inc $19+x +0c4d: fd mov y,a +0c4e: d5 f0 01 mov $01f0+x,a +0c51: 80 setc +0c52: b5 d1 01 sbc a,$01d1+x +0c55: ce pop x +0c56: ed notc +0c57: 6b 0d ror $0d +0c59: 10 03 bpl $0c5e +0c5b: 48 ff eor a,#$ff +0c5d: bc inc a +0c5e: 8d 00 mov y,#$00 +0c60: 9e div ya,x +0c61: 2d push a +0c62: e8 00 mov a,#$00 +0c64: 9e div ya,x +0c65: ee pop y +0c66: f8 2c mov x,$2c +0c68: f3 0d 06 bbc7 $0d,$0c71 +0c6b: da 0f movw $0f,ya +0c6d: ba 09 movw ya,$09 +0c6f: 9a 0f subw ya,$0f +0c71: d5 e0 01 mov $01e0+x,a +0c74: dd mov a,y +0c75: d5 e1 01 mov $01e1+x,a +0c78: 6f ret + +; vcmd d1 - vibrato on +0c79: d5 51 02 mov $0251+x,a +0c7c: f4 19 mov a,$19+x +0c7e: d0 0b bne $0c8b +0c80: e7 61 mov a,($61+x) +0c82: bb 61 inc $61+x +0c84: d0 02 bne $0c88 +0c86: bb 62 inc $62+x +0c88: fd mov y,a +0c89: 2f 09 bra $0c94 +0c8b: e7 18 mov a,($18+x) +0c8d: bb 18 inc $18+x +0c8f: d0 02 bne $0c93 +0c91: bb 19 inc $19+x +0c93: fd mov y,a +0c94: d5 50 02 mov $0250+x,a +0c97: f4 19 mov a,$19+x +0c99: d0 0b bne $0ca6 +0c9b: e7 61 mov a,($61+x) +0c9d: bb 61 inc $61+x +0c9f: d0 02 bne $0ca3 +0ca1: bb 62 inc $62+x +0ca3: fd mov y,a +0ca4: 2f 09 bra $0caf +0ca6: e7 18 mov a,($18+x) +0ca8: bb 18 inc $18+x +0caa: d0 02 bne $0cae +0cac: bb 19 inc $19+x +0cae: fd mov y,a +; vcmd d2 - vibrato off +0caf: d4 c0 mov $c0+x,a +0cb1: d5 70 02 mov $0270+x,a +0cb4: e8 00 mov a,#$00 +0cb6: d5 60 02 mov $0260+x,a +0cb9: 6f ret + +; vcmd de - vibrato fade +0cba: d5 60 02 mov $0260+x,a +0cbd: 2d push a +0cbe: 8d 00 mov y,#$00 +0cc0: f4 c0 mov a,$c0+x +0cc2: ce pop x +0cc3: 9e div ya,x +0cc4: f8 2c mov x,$2c +0cc6: d5 61 02 mov $0261+x,a +0cc9: 6f ret + +; vcmd d3 - master volume +0cca: e8 00 mov a,#$00 +0ccc: da 40 movw $40,ya +0cce: 6f ret + +; vcmd d4 - master volume fade +0ccf: c4 42 mov $42,a +0cd1: f4 19 mov a,$19+x +0cd3: d0 0b bne $0ce0 +0cd5: e7 61 mov a,($61+x) +0cd7: bb 61 inc $61+x +0cd9: d0 02 bne $0cdd +0cdb: bb 62 inc $62+x +0cdd: fd mov y,a +0cde: 2f 09 bra $0ce9 +0ce0: e7 18 mov a,($18+x) +0ce2: bb 18 inc $18+x +0ce4: d0 02 bne $0ce8 +0ce6: bb 19 inc $19+x +0ce8: fd mov y,a +0ce9: c4 43 mov $43,a +0ceb: 80 setc +0cec: a4 41 sbc a,$41 +0cee: f8 42 mov x,$42 +0cf0: 3f 46 0f call $0f46 +0cf3: da 44 movw $44,ya +0cf5: 6f ret + +; vcmd d5 - tempo +0cf6: e8 00 mov a,#$00 +0cf8: da 3a movw $3a,ya +0cfa: cb 7e mov $7e,y +0cfc: 6f ret + +; vcmd d6 - tempo fade +0cfd: c4 3c mov $3c,a +0cff: f4 19 mov a,$19+x +0d01: d0 0b bne $0d0e +0d03: e7 61 mov a,($61+x) +0d05: bb 61 inc $61+x +0d07: d0 02 bne $0d0b +0d09: bb 62 inc $62+x +0d0b: fd mov y,a +0d0c: 2f 09 bra $0d17 +0d0e: e7 18 mov a,($18+x) +0d10: bb 18 inc $18+x +0d12: d0 02 bne $0d16 +0d14: bb 19 inc $19+x +0d16: fd mov y,a +0d17: c4 3d mov $3d,a +0d19: 80 setc +0d1a: a4 3b sbc a,$3b +0d1c: f8 3c mov x,$3c +0d1e: 3f 46 0f call $0f46 +0d21: da 3e movw $3e,ya +0d23: 6f ret + +; vcmd d7 - global transpose +0d24: c4 38 mov $38,a +0d26: 6f ret + +; vcmd d8 - per-voice transpose +0d27: d5 80 02 mov $0280+x,a +0d2a: 6f ret + +; vcmd d9 - set channel ASDR +0d2b: e4 2b mov a,$2b +0d2d: 24 13 and a,$13 +0d2f: d0 09 bne $0d3a +0d31: dd mov a,y +0d32: 08 80 or a,#$80 +0d34: fd mov y,a +0d35: f5 ac 08 mov a,$08ac+x +0d38: 08 05 or a,#$05 +0d3a: da f2 movw $f2,ya +0d3c: 6f ret + +; vcmd da - set channel ASDR envelope +0d3d: e4 2b mov a,$2b +0d3f: 24 13 and a,$13 +0d41: d0 07 bne $0d4a +0d43: f5 ac 08 mov a,$08ac+x +0d46: 08 06 or a,#$06 +0d48: da f2 movw $f2,ya +0d4a: 6f ret + +; vcmd e9 - set FIR +0d4b: e4 2b mov a,$2b +0d4d: 24 13 and a,$13 +0d4f: d0 0e bne $0d5f +0d51: f5 ac 08 mov a,$08ac+x +0d54: 08 05 or a,#$05 +0d56: c4 f2 mov $f2,a +0d58: 8f 7f f3 mov $f3,#$7f +0d5b: bc inc a +0d5c: bc inc a +0d5d: da f2 movw $f2,ya +0d5f: 6f ret + +; vcmd df - pitch envelope (release) +0d60: e8 01 mov a,#$01 +0d62: 2f 02 bra $0d66 +; vcmd e0 - pitch envelope (attack) +0d64: e8 00 mov a,#$00 +0d66: d5 31 02 mov $0231+x,a +0d69: dd mov a,y +0d6a: d5 30 02 mov $0230+x,a +0d6d: f4 19 mov a,$19+x +0d6f: d0 0b bne $0d7c +0d71: e7 61 mov a,($61+x) +0d73: bb 61 inc $61+x +0d75: d0 02 bne $0d79 +0d77: bb 62 inc $62+x +0d79: fd mov y,a +0d7a: 2f 09 bra $0d85 +0d7c: e7 18 mov a,($18+x) +0d7e: bb 18 inc $18+x +0d80: d0 02 bne $0d84 +0d82: bb 19 inc $19+x +0d84: fd mov y,a +0d85: d5 21 02 mov $0221+x,a +0d88: f4 19 mov a,$19+x +0d8a: d0 0b bne $0d97 +0d8c: e7 61 mov a,($61+x) +0d8e: bb 61 inc $61+x +0d90: d0 02 bne $0d94 +0d92: bb 62 inc $62+x +0d94: fd mov y,a +0d95: 2f 09 bra $0da0 +0d97: e7 18 mov a,($18+x) +0d99: bb 18 inc $18+x +0d9b: d0 02 bne $0d9f +0d9d: bb 19 inc $19+x +0d9f: fd mov y,a +0da0: d5 40 02 mov $0240+x,a +0da3: 6f ret + +; vcmd ed +0da4: d5 21 02 mov $0221+x,a +0da7: e8 02 mov a,#$02 +0da9: d5 31 02 mov $0231+x,a +0dac: f5 01 02 mov a,$0201+x +0daf: d5 40 02 mov $0240+x,a +0db2: e8 00 mov a,#$00 +0db4: d5 30 02 mov $0230+x,a +0db7: 6f ret + +; vcmd e1 - pitch envelope off +0db8: d5 30 02 mov $0230+x,a +0dbb: d5 21 02 mov $0221+x,a +0dbe: 6f ret + +; vcmd db - volume +0dbf: d5 a1 01 mov $01a1+x,a +0dc2: e8 00 mov a,#$00 +0dc4: d5 a0 01 mov $01a0+x,a +0dc7: 6f ret + +; vcmd ef +0dc8: d4 cf mov $cf+x,a +0dca: d5 90 01 mov $0190+x,a +0dcd: f4 19 mov a,$19+x +0dcf: d0 0b bne $0ddc +0dd1: e7 61 mov a,($61+x) +0dd3: bb 61 inc $61+x +0dd5: d0 02 bne $0dd9 +0dd7: bb 62 inc $62+x +0dd9: fd mov y,a +0dda: 2f 09 bra $0de5 +0ddc: e7 18 mov a,($18+x) +0dde: bb 18 inc $18+x +0de0: d0 02 bne $0de4 +0de2: bb 19 inc $19+x +0de4: fd mov y,a +; vcmd dc - volume fade +0de5: d4 9f mov $9f+x,a +0de7: 2d push a +0de8: f4 19 mov a,$19+x +0dea: d0 0b bne $0df7 +0dec: e7 61 mov a,($61+x) +0dee: bb 61 inc $61+x +0df0: d0 02 bne $0df4 +0df2: bb 62 inc $62+x +0df4: fd mov y,a +0df5: 2f 09 bra $0e00 +0df7: e7 18 mov a,($18+x) +0df9: bb 18 inc $18+x +0dfb: d0 02 bne $0dff +0dfd: bb 19 inc $19+x +0dff: fd mov y,a +0e00: d5 c0 01 mov $01c0+x,a +0e03: 80 setc +0e04: b5 a1 01 sbc a,$01a1+x +0e07: ce pop x +0e08: ed notc +0e09: 6b 0d ror $0d +0e0b: 10 03 bpl $0e10 +0e0d: 48 ff eor a,#$ff +0e0f: bc inc a +0e10: 8d 00 mov y,#$00 +0e12: 9e div ya,x +0e13: 2d push a +0e14: e8 00 mov a,#$00 +0e16: 9e div ya,x +0e17: ee pop y +0e18: f8 2c mov x,$2c +0e1a: f3 0d 06 bbc7 $0d,$0e23 +0e1d: da 0f movw $0f,ya +0e1f: ba 09 movw ya,$09 +0e21: 9a 0f subw ya,$0f +0e23: d5 b0 01 mov $01b0+x,a +0e26: dd mov a,y +0e27: d5 b1 01 mov $01b1+x,a +0e2a: 6f ret + +; vcmd f0 +0e2b: 09 2b e8 or ($e8),($2b) +0e2e: 6f ret + +; vcmd de - tuning +0e2f: d4 d0 mov $d0+x,a +0e31: 6f ret + +; vcmd dd - call subroutine +0e32: d5 70 01 mov $0170+x,a +0e35: f4 19 mov a,$19+x +0e37: d0 0b bne $0e44 +0e39: e7 61 mov a,($61+x) +0e3b: bb 61 inc $61+x +0e3d: d0 02 bne $0e41 +0e3f: bb 62 inc $62+x +0e41: fd mov y,a +0e42: 2f 09 bra $0e4d +0e44: e7 18 mov a,($18+x) +0e46: bb 18 inc $18+x +0e48: d0 02 bne $0e4c +0e4a: bb 19 inc $19+x +0e4c: fd mov y,a +0e4d: d5 71 01 mov $0171+x,a +0e50: f4 19 mov a,$19+x +0e52: d0 0b bne $0e5f +0e54: e7 61 mov a,($61+x) +0e56: bb 61 inc $61+x +0e58: d0 02 bne $0e5c +0e5a: bb 62 inc $62+x +0e5c: fd mov y,a +0e5d: 2f 09 bra $0e68 +0e5f: e7 18 mov a,($18+x) +0e61: bb 18 inc $18+x +0e63: d0 02 bne $0e67 +0e65: bb 19 inc $19+x +0e67: fd mov y,a +0e68: d4 8f mov $8f+x,a +0e6a: fb 62 mov y,$62+x +0e6c: f0 16 beq $0e84 +0e6e: f4 61 mov a,$61+x +0e70: d5 60 01 mov $0160+x,a +0e73: f4 62 mov a,$62+x +0e75: d5 61 01 mov $0161+x,a +0e78: f5 70 01 mov a,$0170+x +0e7b: d4 61 mov $61+x,a +0e7d: f5 71 01 mov a,$0171+x +0e80: d4 62 mov $62+x,a +0e82: 2f 14 bra $0e98 +0e84: f4 18 mov a,$18+x +0e86: d5 60 01 mov $0160+x,a +0e89: f4 19 mov a,$19+x +0e8b: d5 61 01 mov $0161+x,a +0e8e: f5 70 01 mov a,$0170+x +0e91: d4 18 mov $18+x,a +0e93: f5 71 01 mov a,$0171+x +0e96: d4 19 mov $19+x,a +0e98: 6f ret + +; vcmd e3 - echo vbits/volume +0e99: c4 33 mov $33,a +0e9b: f4 19 mov a,$19+x +0e9d: d0 0b bne $0eaa +0e9f: e7 61 mov a,($61+x) +0ea1: bb 61 inc $61+x +0ea3: d0 02 bne $0ea7 +0ea5: bb 62 inc $62+x +0ea7: fd mov y,a +0ea8: 2f 09 bra $0eb3 +0eaa: e7 18 mov a,($18+x) +0eac: bb 18 inc $18+x +0eae: d0 02 bne $0eb2 +0eb0: bb 19 inc $19+x +0eb2: fd mov y,a +0eb3: e8 00 mov a,#$00 +0eb5: cb 51 mov $51,y +0eb7: da 49 movw $49,ya +0eb9: f4 19 mov a,$19+x +0ebb: d0 0b bne $0ec8 +0ebd: e7 61 mov a,($61+x) +0ebf: bb 61 inc $61+x +0ec1: d0 02 bne $0ec5 +0ec3: bb 62 inc $62+x +0ec5: fd mov y,a +0ec6: 2f 09 bra $0ed1 +0ec8: e7 18 mov a,($18+x) +0eca: bb 18 inc $18+x +0ecc: d0 02 bne $0ed0 +0ece: bb 19 inc $19+x +0ed0: fd mov y,a +0ed1: cb 52 mov $52,y +0ed3: ec 39 14 mov y,$1439 +0ed6: f0 09 beq $0ee1 +0ed8: 2d push a +0ed9: 44 51 eor a,$51 +0edb: ae pop a +0edc: 10 03 bpl $0ee1 +0ede: 48 ff eor a,#$ff +0ee0: bc inc a +0ee1: fd mov y,a +0ee2: e8 00 mov a,#$00 +0ee4: da 4b movw $4b,ya +0ee6: b2 31 clr5 $31 +0ee8: 6f ret + +; vcmd e6 - echo volume fade +0ee9: c4 53 mov $53,a +0eeb: f4 19 mov a,$19+x +0eed: d0 0b bne $0efa +0eef: e7 61 mov a,($61+x) +0ef1: bb 61 inc $61+x +0ef3: d0 02 bne $0ef7 +0ef5: bb 62 inc $62+x +0ef7: fd mov y,a +0ef8: 2f 09 bra $0f03 +0efa: e7 18 mov a,($18+x) +0efc: bb 18 inc $18+x +0efe: d0 02 bne $0f02 +0f00: bb 19 inc $19+x +0f02: fd mov y,a +0f03: cb 51 mov $51,y +0f05: c4 54 mov $54,a +0f07: 80 setc +0f08: a4 4a sbc a,$4a +0f0a: f8 53 mov x,$53 +0f0c: 3f 46 0f call $0f46 +0f0f: da 4d movw $4d,ya +0f11: f4 19 mov a,$19+x +0f13: d0 0b bne $0f20 +0f15: e7 61 mov a,($61+x) +0f17: bb 61 inc $61+x +0f19: d0 02 bne $0f1d +0f1b: bb 62 inc $62+x +0f1d: fd mov y,a +0f1e: 2f 09 bra $0f29 +0f20: e7 18 mov a,($18+x) +0f22: bb 18 inc $18+x +0f24: d0 02 bne $0f28 +0f26: bb 19 inc $19+x +0f28: fd mov y,a +0f29: cb 52 mov $52,y +0f2b: ec 39 14 mov y,$1439 +0f2e: f0 09 beq $0f39 +0f30: 2d push a +0f31: 44 51 eor a,$51 +0f33: ae pop a +0f34: 10 03 bpl $0f39 +0f36: 48 ff eor a,#$ff +0f38: bc inc a +0f39: c4 55 mov $55,a +0f3b: 80 setc +0f3c: a4 4c sbc a,$4c +0f3e: f8 53 mov x,$53 +0f40: 3f 46 0f call $0f46 +0f43: da 4f movw $4f,ya +0f45: 6f ret + +0f46: ed notc +0f47: 6b 0d ror $0d +0f49: 10 03 bpl $0f4e +0f4b: 48 ff eor a,#$ff +0f4d: bc inc a +0f4e: 8d 00 mov y,#$00 +0f50: 9e div ya,x +0f51: 2d push a +0f52: e8 00 mov a,#$00 +0f54: 9e div ya,x +0f55: ee pop y +0f56: f8 2c mov x,$2c +0f58: f3 0d 06 bbc7 $0d,$0f61 +0f5b: da 0f movw $0f,ya +0f5d: ba 09 movw ya,$09 +0f5f: 9a 0f subw ya,$0f +0f61: 6f ret + +; vcmd e4 - disable echo +0f62: da 49 movw $49,ya +0f64: da 4b movw $4b,ya +0f66: a2 31 set5 $31 +0f68: 6f ret + +; vcmd e5 - set echo params +0f69: 3f e7 0f call $0fe7 +0f6c: f4 19 mov a,$19+x +0f6e: d0 0b bne $0f7b +0f70: e7 61 mov a,($61+x) +0f72: bb 61 inc $61+x +0f74: d0 02 bne $0f78 +0f76: bb 62 inc $62+x +0f78: fd mov y,a +0f79: 2f 09 bra $0f84 +0f7b: e7 18 mov a,($18+x) +0f7d: bb 18 inc $18+x +0f7f: d0 02 bne $0f83 +0f81: bb 19 inc $19+x +0f83: fd mov y,a +0f84: c4 37 mov $37,a +0f86: f4 19 mov a,$19+x +0f88: d0 0b bne $0f95 +0f8a: e7 61 mov a,($61+x) +0f8c: bb 61 inc $61+x +0f8e: d0 02 bne $0f92 +0f90: bb 62 inc $62+x +0f92: fd mov y,a +0f93: 2f 09 bra $0f9e +0f95: e7 18 mov a,($18+x) +0f97: bb 18 inc $18+x +0f99: d0 02 bne $0f9d +0f9b: bb 19 inc $19+x +0f9d: fd mov y,a +0f9e: 8d 08 mov y,#$08 +0fa0: cf mul ya +0fa1: 5d mov x,a +0fa2: 8d 0f mov y,#$0f +0fa4: f5 29 14 mov a,$1429+x +0fa7: cb f2 mov $f2,y +0fa9: c4 f3 mov $f3,a +0fab: 3d inc x +0fac: dd mov a,y +0fad: 60 clrc +0fae: 88 10 adc a,#$10 +0fb0: fd mov y,a +0fb1: 10 f1 bpl $0fa4 +0fb3: f8 2c mov x,$2c +0fb5: 6f ret + +; vcmd ee +0fb6: c4 37 mov $37,a +0fb8: 6f ret + +; vcmd ec +0fb9: eb 71 mov y,$71 +0fbb: f6 72 00 mov a,$0072+y +0fbe: 24 2b and a,$2b +0fc0: d0 18 bne $0fda +0fc2: dc dec y +0fc3: 10 f6 bpl $0fbb +0fc5: eb 71 mov y,$71 +0fc7: ab 71 inc $71 +0fc9: d9 59 mov $59+y,x +0fcb: e4 2b mov a,$2b +0fcd: d6 72 00 mov $0072+y,a +0fd0: f4 18 mov a,$18+x +0fd2: d5 a0 02 mov $02a0+x,a +0fd5: f4 19 mov a,$19+x +0fd7: d5 a1 02 mov $02a1+x,a +0fda: e8 00 mov a,#$00 +0fdc: d4 19 mov $19+x,a +0fde: ae pop a +0fdf: ae pop a +0fe0: e8 0a mov a,#$0a +0fe2: 2d push a +0fe3: e8 bc mov a,#$bc +0fe5: 2d push a +0fe6: 6f ret + +0fe7: c4 36 mov $36,a +0fe9: 8d 7d mov y,#$7d +0feb: 28 0f and a,#$0f +0fed: 48 ff eor a,#$ff +0fef: f3 35 03 bbc7 $35,$0ff5 +0ff2: 60 clrc +0ff3: 84 35 adc a,$35 +0ff5: c4 35 mov $35,a +0ff7: 8d 04 mov y,#$04 +0ff9: f6 8e 03 mov a,$038e+y +0ffc: c4 f2 mov $f2,a +0ffe: e8 00 mov a,#$00 +1000: c4 f3 mov $f3,a +1002: fe f5 dbnz y,$0ff9 +1004: 08 20 or a,#$20 +1006: 8d 6c mov y,#$6c +1008: cb f2 mov $f2,y +100a: c4 f3 mov $f3,a +100c: e4 36 mov a,$36 +100e: 8d 7d mov y,#$7d +1010: cb f2 mov $f2,y +1012: c4 f3 mov $f3,a +1014: 1c asl a +1015: 1c asl a +1016: 1c asl a +1017: 48 ff eor a,#$ff +1019: bc inc a +101a: 8d 6d mov y,#$6d +101c: cb f2 mov $f2,y +101e: c4 f3 mov $f3,a +1020: 6f ret + +; vcmd e8/ea +1021: 09 2b 56 or ($56),($2b) +1024: 6f ret + +; vcmd eb +1025: e4 2b mov a,$2b +1027: 4e 56 00 tclr1 $0056 +102a: 6f ret + +102b: f4 af mov a,$af+x +102d: d0 27 bne $1056 +102f: e7 61 mov a,($61+x) +1031: 68 e7 cmp a,#$e7 +1033: d0 21 bne $1056 +1035: bb 61 inc $61+x +1037: d0 02 bne $103b +1039: bb 62 inc $62+x +103b: fd mov y,a +103c: f4 19 mov a,$19+x +103e: d0 0b bne $104b +1040: e7 61 mov a,($61+x) +1042: bb 61 inc $61+x +1044: d0 02 bne $1048 +1046: bb 62 inc $62+x +1048: fd mov y,a +1049: 2f 09 bra $1054 +104b: e7 18 mov a,($18+x) +104d: bb 18 inc $18+x +104f: d0 02 bne $1053 +1051: bb 19 inc $19+x +1053: fd mov y,a +1054: 2f 2a bra $1080 +1056: 6f ret + +1057: f4 af mov a,$af+x +1059: d0 fb bne $1056 +105b: e7 18 mov a,($18+x) +105d: 68 e7 cmp a,#$e7 +105f: d0 f5 bne $1056 +1061: bb 18 inc $18+x +1063: d0 02 bne $1067 +1065: bb 19 inc $19+x +1067: fd mov y,a +1068: f4 19 mov a,$19+x +106a: d0 0b bne $1077 +106c: e7 61 mov a,($61+x) +106e: bb 61 inc $61+x +1070: d0 02 bne $1074 +1072: bb 62 inc $62+x +1074: fd mov y,a +1075: 2f 09 bra $1080 +1077: e7 18 mov a,($18+x) +1079: bb 18 inc $18+x +107b: d0 02 bne $107f +107d: bb 19 inc $19+x +107f: fd mov y,a +; vcmd e7 - pitch slide +1080: d4 b0 mov $b0+x,a +1082: f4 19 mov a,$19+x +1084: d0 0b bne $1091 +1086: e7 61 mov a,($61+x) +1088: bb 61 inc $61+x +108a: d0 02 bne $108e +108c: bb 62 inc $62+x +108e: fd mov y,a +108f: 2f 09 bra $109a +1091: e7 18 mov a,($18+x) +1093: bb 18 inc $18+x +1095: d0 02 bne $1099 +1097: bb 19 inc $19+x +1099: fd mov y,a +109a: d4 af mov $af+x,a +109c: f4 19 mov a,$19+x +109e: d0 0b bne $10ab +10a0: e7 61 mov a,($61+x) +10a2: bb 61 inc $61+x +10a4: d0 02 bne $10a8 +10a6: bb 62 inc $62+x +10a8: fd mov y,a +10a9: 2f 09 bra $10b4 +10ab: e7 18 mov a,($18+x) +10ad: bb 18 inc $18+x +10af: d0 02 bne $10b3 +10b1: bb 19 inc $19+x +10b3: fd mov y,a +10b4: 60 clrc +10b5: 84 38 adc a,$38 +10b7: 95 80 02 adc a,$0280+x +10ba: 28 7f and a,#$7f +10bc: d5 20 02 mov $0220+x,a +10bf: 80 setc +10c0: b5 01 02 sbc a,$0201+x +10c3: fb af mov y,$af+x +10c5: 6d push y +10c6: ce pop x +10c7: ed notc +10c8: 6b 0d ror $0d +10ca: 10 03 bpl $10cf +10cc: 48 ff eor a,#$ff +10ce: bc inc a +10cf: 8d 00 mov y,#$00 +10d1: 9e div ya,x +10d2: 2d push a +10d3: e8 00 mov a,#$00 +10d5: 9e div ya,x +10d6: ee pop y +10d7: f8 2c mov x,$2c +10d9: f3 0d 06 bbc7 $0d,$10e2 +10dc: da 0f movw $0f,ya +10de: ba 09 movw ya,$09 +10e0: 9a 0f subw ya,$0f +10e2: d5 10 02 mov $0210+x,a +10e5: dd mov a,y +10e6: d5 11 02 mov $0211+x,a +10e9: 6f ret + +10ea: f4 9f mov a,$9f+x +10ec: f0 28 beq $1116 +10ee: e8 a0 mov a,#$a0 +10f0: 8d 01 mov y,#$01 +10f2: 09 2b 46 or ($46),($2b) +10f5: 9b 9f dec $9f+x +10f7: d0 0a bne $1103 +10f9: e8 00 mov a,#$00 +10fb: d5 a0 01 mov $01a0+x,a +10fe: f5 c0 01 mov a,$01c0+x +1101: 2f 10 bra $1113 +1103: 60 clrc +1104: f5 a0 01 mov a,$01a0+x +1107: 95 b0 01 adc a,$01b0+x +110a: d5 a0 01 mov $01a0+x,a +110d: f5 a1 01 mov a,$01a1+x +1110: 95 b1 01 adc a,$01b1+x +1113: d5 a1 01 mov $01a1+x,a +1116: f5 a1 01 mov a,$01a1+x +1119: fd mov y,a +111a: f5 91 02 mov a,$0291+x +111d: cf mul ya +111e: dd mov a,y +111f: d5 c1 01 mov $01c1+x,a +1122: f4 a0 mov a,$a0+x +1124: f0 24 beq $114a +1126: 09 2b 46 or ($46),($2b) +1129: 9b a0 dec $a0+x +112b: d0 0a bne $1137 +112d: e8 00 mov a,#$00 +112f: d5 d0 01 mov $01d0+x,a +1132: f5 f0 01 mov a,$01f0+x +1135: 2f 10 bra $1147 +1137: 60 clrc +1138: f5 d0 01 mov a,$01d0+x +113b: 95 e0 01 adc a,$01e0+x +113e: d5 d0 01 mov $01d0+x,a +1141: f5 d1 01 mov a,$01d1+x +1144: 95 e1 01 adc a,$01e1+x +1147: d5 d1 01 mov $01d1+x,a +114a: 2f 77 bra $11c3 +114c: f4 cf mov a,$cf+x +114e: f0 04 beq $1154 +1150: 9b cf dec $cf+x +1152: 2f 2d bra $1181 +1154: f4 9f mov a,$9f+x +1156: f0 29 beq $1181 +1158: f5 90 01 mov a,$0190+x +115b: d4 cf mov $cf+x,a +115d: 09 2b 46 or ($46),($2b) +1160: 9b 9f dec $9f+x +1162: d0 0a bne $116e +1164: e8 00 mov a,#$00 +1166: d5 a0 01 mov $01a0+x,a +1169: f5 c0 01 mov a,$01c0+x +116c: 2f 10 bra $117e +116e: 60 clrc +116f: f5 a0 01 mov a,$01a0+x +1172: 95 b0 01 adc a,$01b0+x +1175: d5 a0 01 mov $01a0+x,a +1178: f5 a1 01 mov a,$01a1+x +117b: 95 b1 01 adc a,$01b1+x +117e: d5 a1 01 mov $01a1+x,a +1181: eb 41 mov y,$41 +1183: f5 40 01 mov a,$0140+x +1186: cf mul ya +1187: f5 a1 01 mov a,$01a1+x +118a: cf mul ya +118b: dd mov a,y +118c: cf mul ya +118d: dd mov a,y +118e: d5 c1 01 mov $01c1+x,a +1191: f4 a0 mov a,$a0+x +1193: f0 2e beq $11c3 +1195: e8 d0 mov a,#$d0 +1197: 8d 01 mov y,#$01 +1199: 9b a0 dec $a0+x +119b: 0d push psw +119c: 09 2b 46 or ($46),($2b) +119f: 8e pop psw +11a0: da 0f movw $0f,ya +11a2: da 11 movw $11,ya +11a4: 4d push x +11a5: ee pop y +11a6: 60 clrc +11a7: d0 0a bne $11b3 +11a9: 98 1f 11 adc $11,#$1f +11ac: e8 00 mov a,#$00 +11ae: d7 0f mov ($0f)+y,a +11b0: fc inc y +11b1: 2f 0c bra $11bf +11b3: 98 10 11 adc $11,#$10 +11b6: f7 0f mov a,($0f)+y +11b8: 97 11 adc a,($11)+y +11ba: d7 0f mov ($0f)+y,a +11bc: fc inc y +11bd: f7 0f mov a,($0f)+y +11bf: 97 11 adc a,($11)+y +11c1: d7 0f mov ($0f)+y,a +11c3: e4 2b mov a,$2b +11c5: 24 46 and a,$46 +11c7: f0 5f beq $1228 +11c9: f5 d1 01 mov a,$01d1+x +11cc: fd mov y,a +11cd: f5 d0 01 mov a,$01d0+x +11d0: da 0b movw $0b,ya +11d2: f5 ac 08 mov a,$08ac+x +11d5: c4 0d mov $0d,a +11d7: 8d 51 mov y,#$51 +11d9: e5 39 14 mov a,$1439 +11dc: d0 14 bne $11f2 +11de: eb 0c mov y,$0c +11e0: f6 2a 12 mov a,$122a+y +11e3: 80 setc +11e4: b6 29 12 sbc a,$1229+y +11e7: eb 0b mov y,$0b +11e9: cf mul ya +11ea: dd mov a,y +11eb: eb 0c mov y,$0c +11ed: 60 clrc +11ee: 96 29 12 adc a,$1229+y +11f1: fd mov y,a +11f2: f5 c1 01 mov a,$01c1+x +11f5: cf mul ya +11f6: 60 clrc +11f7: e5 39 14 mov a,$1439 +11fa: d0 08 bne $1204 +11fc: f5 f1 01 mov a,$01f1+x +11ff: 1c asl a +1200: 13 0d 01 bbc0 $0d,$1204 +1203: 1c asl a +1204: dd mov a,y +1205: 90 03 bcc $120a +1207: 48 ff eor a,#$ff +1209: bc inc a +120a: eb 0d mov y,$0d +120c: 2d push a +120d: e4 2b mov a,$2b +120f: 24 13 and a,$13 +1211: ae pop a +1212: d0 04 bne $1218 +1214: cb f2 mov $f2,y +1216: c4 f3 mov $f3,a +1218: 8d 14 mov y,#$14 +121a: e8 00 mov a,#$00 +121c: 9a 0b subw ya,$0b +121e: da 0b movw $0b,ya +1220: ab 0d inc $0d +1222: 33 0d b2 bbc1 $0d,$11d7 +1225: 49 2b 46 eor ($46),($2b) +1228: 6f ret + + +1229: db $00,$01,$03,$07,$0d,$15,$1e,$29 +0231: db $34,$42,$51,$5e,$67,$6e,$73,$77 +0239: db $7a,$7c,$7d,$7e,$7f + +123e: f0 7e beq $12be +1240: f4 80 mov a,$80+x +1242: f0 7a beq $12be +1244: 9b 80 dec $80+x +1246: f0 05 beq $124d +1248: e8 02 mov a,#$02 +124a: de 7f 71 cbne $7f+x,$12be +124d: f4 8f mov a,$8f+x +124f: c4 12 mov $12,a +1251: fb 62 mov y,$62+x +1253: f0 04 beq $1259 +1255: f4 61 mov a,$61+x +1257: 2f 04 bra $125d +1259: f4 18 mov a,$18+x +125b: fb 19 mov y,$19+x +125d: da 0f movw $0f,ya +125f: 8d 00 mov y,#$00 +1261: f7 0f mov a,($0f)+y +1263: f0 1c beq $1281 +1265: 30 05 bmi $126c +1267: fc inc y +1268: f7 0f mov a,($0f)+y +126a: 10 fb bpl $1267 +126c: 68 c8 cmp a,#$c8 +126e: f0 4e beq $12be +1270: 68 dd cmp a,#$dd +1272: f0 29 beq $129d +1274: 68 ce cmp a,#$ce +1276: 90 30 bcc $12a8 +1278: 6d push y +1279: fd mov y,a +127a: ae pop a +127b: 96 8a 0a adc a,$0a8a+y +127e: fd mov y,a +127f: 2f e0 bra $1261 +1281: e4 12 mov a,$12 +1283: f0 23 beq $12a8 +1285: 8b 12 dec $12 +1287: d0 0a bne $1293 +1289: f5 61 01 mov a,$0161+x +128c: 2d push a +128d: f5 60 01 mov a,$0160+x +1290: ee pop y +1291: 2f ca bra $125d +1293: f5 71 01 mov a,$0171+x +1296: 2d push a +1297: f5 70 01 mov a,$0170+x +129a: ee pop y +129b: 2f c0 bra $125d +129d: fc inc y +129e: f7 0f mov a,($0f)+y +12a0: 2d push a +12a1: fc inc y +12a2: f7 0f mov a,($0f)+y +12a4: fd mov y,a +12a5: ae pop a +12a6: 2f b5 bra $125d +12a8: e4 57 mov a,$57 +12aa: 24 2b and a,$2b +12ac: d0 10 bne $12be +12ae: e4 2b mov a,$2b +12b0: 8d 5c mov y,#$5c +12b2: 2d push a +12b3: e4 2b mov a,$2b +12b5: 24 13 and a,$13 +12b7: ae pop a +12b8: d0 04 bne $12be +12ba: cb f2 mov $f2,y +12bc: c4 f3 mov $f3,a +12be: f2 0e clr7 $0e +12c0: f4 af mov a,$af+x +12c2: f0 33 beq $12f7 +12c4: f4 b0 mov a,$b0+x +12c6: f0 04 beq $12cc +12c8: 9b b0 dec $b0+x +12ca: 2f 2b bra $12f7 +12cc: e2 0e set7 $0e +12ce: e8 00 mov a,#$00 +12d0: 8d 02 mov y,#$02 +12d2: 9b af dec $af+x +12d4: da 0f movw $0f,ya +12d6: da 11 movw $11,ya +12d8: 4d push x +12d9: ee pop y +12da: 60 clrc +12db: d0 0a bne $12e7 +12dd: 98 1f 11 adc $11,#$1f +12e0: e8 00 mov a,#$00 +12e2: d7 0f mov ($0f)+y,a +12e4: fc inc y +12e5: 2f 0c bra $12f3 +12e7: 98 10 11 adc $11,#$10 +12ea: f7 0f mov a,($0f)+y +12ec: 97 11 adc a,($11)+y +12ee: d7 0f mov ($0f)+y,a +12f0: fc inc y +12f1: f7 0f mov a,($0f)+y +12f3: 97 11 adc a,($11)+y +12f5: d7 0f mov ($0f)+y,a +12f7: f5 01 02 mov a,$0201+x +12fa: c4 0c mov $0c,a +12fc: f5 00 02 mov a,$0200+x +12ff: c4 0b mov $0b,a +1301: f4 c0 mov a,$c0+x +1303: f0 54 beq $1359 +1305: f5 51 02 mov a,$0251+x +1308: de bf 4c cbne $bf+x,$1357 +130b: f5 90 00 mov a,$0090+x +130e: 75 60 02 cmp a,$0260+x +1311: d0 05 bne $1318 +1313: f5 70 02 mov a,$0270+x +1316: 2f 0b bra $1323 +1318: bb 90 inc $90+x +131a: fd mov y,a +131b: f0 02 beq $131f +131d: f4 c0 mov a,$c0+x +131f: 60 clrc +1320: 95 61 02 adc a,$0261+x +1323: d4 c0 mov $c0+x,a +1325: f5 41 02 mov a,$0241+x +1328: 60 clrc +1329: 95 50 02 adc a,$0250+x +132c: d5 41 02 mov $0241+x,a +132f: c4 0d mov $0d,a +1331: 1c asl a +1332: 1c asl a +1333: 90 02 bcc $1337 +1335: 48 ff eor a,#$ff +1337: fd mov y,a +1338: f4 c0 mov a,$c0+x +133a: 68 f1 cmp a,#$f1 +133c: 90 05 bcc $1343 +133e: 28 0f and a,#$0f +1340: cf mul ya +1341: 2f 04 bra $1347 +1343: cf mul ya +1344: dd mov a,y +1345: 8d 00 mov y,#$00 +1347: f3 0d 06 bbc7 $0d,$1350 +134a: da 0f movw $0f,ya +134c: ba 09 movw ya,$09 +134e: 9a 0f subw ya,$0f +1350: 7a 0b addw ya,$0b +1352: da 0b movw $0b,ya +1354: 5f 08 08 jmp $0808 + +1357: bb bf inc $bf+x +1359: e3 0e f8 bbs7 $0e,$1354 +135c: 6f ret + +135d: f2 0e clr7 $0e +135f: f5 d1 01 mov a,$01d1+x +1362: fd mov y,a +1363: f5 d0 01 mov a,$01d0+x +1366: da 0b movw $0b,ya +1368: f4 a0 mov a,$a0+x +136a: f0 0a beq $1376 +136c: f5 e1 01 mov a,$01e1+x +136f: fd mov y,a +1370: f5 e0 01 mov a,$01e0+x +1373: 3f b2 13 call $13b2 +1376: f3 0e 03 bbc7 $0e,$137c +1379: 3f d2 11 call $11d2 +137c: f2 0e clr7 $0e +137e: f5 01 02 mov a,$0201+x +1381: c4 0c mov $0c,a +1383: f5 00 02 mov a,$0200+x +1386: c4 0b mov $0b,a +1388: f4 af mov a,$af+x +138a: f0 0e beq $139a +138c: f4 b0 mov a,$b0+x +138e: d0 0a bne $139a +1390: f5 11 02 mov a,$0211+x +1393: fd mov y,a +1394: f5 10 02 mov a,$0210+x +1397: 3f b2 13 call $13b2 +139a: f4 c0 mov a,$c0+x +139c: f0 bb beq $1359 +139e: f5 51 02 mov a,$0251+x +13a1: de bf b5 cbne $bf+x,$1359 +13a4: eb 39 mov y,$39 +13a6: f5 50 02 mov a,$0250+x +13a9: cf mul ya +13aa: dd mov a,y +13ab: 60 clrc +13ac: 95 41 02 adc a,$0241+x +13af: 5f 2f 13 jmp $132f + +13b2: e2 0e set7 $0e +13b4: cb 0d mov $0d,y +13b6: f3 0d 06 bbc7 $0d,$13bf +13b9: da 0f movw $0f,ya +13bb: ba 09 movw ya,$09 +13bd: 9a 0f subw ya,$0f +13bf: 6d push y +13c0: eb 39 mov y,$39 +13c2: cf mul ya +13c3: cb 0f mov $0f,y +13c5: 8f 00 10 mov $10,#$00 +13c8: eb 39 mov y,$39 +13ca: ae pop a +13cb: cf mul ya +13cc: 7a 0f addw ya,$0f +13ce: f3 0d 06 bbc7 $0d,$13d7 +13d1: da 0f movw $0f,ya +13d3: ba 09 movw ya,$09 +13d5: 9a 0f subw ya,$0f +13d7: 7a 0b addw ya,$0b +13d9: da 0b movw $0b,ya +13db: 6f ret + +13dc: e4 2b mov a,$2b +13de: 24 28 and a,$28 +13e0: f0 46 beq $1428 +13e2: f5 ac 08 mov a,$08ac+x +13e5: 08 08 or a,#$08 +13e7: c4 f2 mov $f2,a +13e9: e4 f3 mov a,$f3 +13eb: d0 3b bne $1428 +13ed: e4 2b mov a,$2b +13ef: 4e 56 00 tclr1 $0056 +13f2: 4e 57 00 tclr1 $0057 +13f5: 4e e8 00 tclr1 $00e8 +13f8: e8 00 mov a,#$00 +13fa: d5 81 02 mov $0281+x,a +13fd: d4 80 mov $80+x,a +13ff: d4 a0 mov $a0+x,a +1401: d4 9f mov $9f+x,a +1403: d4 8f mov $8f+x,a +1405: d5 80 02 mov $0280+x,a +1408: d4 d0 mov $d0+x,a +140a: d5 d0 01 mov $01d0+x,a +140d: 3f b8 0d call $0db8 +1410: d5 31 02 mov $0231+x,a +1413: d5 b0 00 mov $00b0+x,a +1416: 3f af 0c call $0caf +1419: e8 02 mov a,#$02 +141b: d4 7f mov $7f+x,a +141d: e8 0a mov a,#$0a +141f: d5 f1 01 mov $01f1+x,a +1422: d5 d1 01 mov $01d1+x,a +1425: 49 2b 28 eor ($28),($2b) +1428: 6f ret + +; echo FIR presets +1429: db $7f,$00,$00,$00,$00,$00,$00,$00 +1431: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c \ No newline at end of file From 3bad0cb3ab5c78bb4f458ee436e4f512368aeb8a Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:38:25 -0800 Subject: [PATCH 046/116] Update and rename snes/NSPC/King Arthur's World.s to snes/NSPC/Argonaut/King Arthur's World.s --- snes/NSPC/{ => Argonaut}/King Arthur's World.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename snes/NSPC/{ => Argonaut}/King Arthur's World.s (96%) diff --git a/snes/NSPC/King Arthur's World.s b/snes/NSPC/Argonaut/King Arthur's World.s similarity index 96% rename from snes/NSPC/King Arthur's World.s rename to snes/NSPC/Argonaut/King Arthur's World.s index 6abeec95..7fb5cfe2 100644 --- a/snes/NSPC/King Arthur's World.s +++ b/snes/NSPC/Argonaut/King Arthur's World.s @@ -1825,4 +1825,4 @@ 109e: db $32,$65,$7f,$98,$b2,$cb,$e5,$fd ; per-note velocity values 10a6: db $19,$32,$4c,$65,$72,$7f,$8c,$98 -10ae: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc \ No newline at end of file +10ae: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc From c98500bc24f8688178f0464184b606ff00a59994 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:38:42 -0800 Subject: [PATCH 047/116] Rename snes/NSPC/King Arthur's World ($0360).bin to snes/NSPC/Argonaut/King Arthur's World ($0360).bin --- .../{ => Argonaut}/King Arthur's World ($0360).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Argonaut}/King Arthur's World ($0360).bin (100%) diff --git a/snes/NSPC/King Arthur's World ($0360).bin b/snes/NSPC/Argonaut/King Arthur's World ($0360).bin similarity index 100% rename from snes/NSPC/King Arthur's World ($0360).bin rename to snes/NSPC/Argonaut/King Arthur's World ($0360).bin From 8a21a74e6879310103173f4f94d9de64e8e696f9 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:38:55 -0800 Subject: [PATCH 048/116] Rename snes/NSPC/Vortex ($02B5).bin to snes/NSPC/Argonaut/Vortex ($02B5).bin --- snes/NSPC/{ => Argonaut}/Vortex ($02B5).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Argonaut}/Vortex ($02B5).bin (100%) diff --git a/snes/NSPC/Vortex ($02B5).bin b/snes/NSPC/Argonaut/Vortex ($02B5).bin similarity index 100% rename from snes/NSPC/Vortex ($02B5).bin rename to snes/NSPC/Argonaut/Vortex ($02B5).bin From 2c527dff44f9f061a689f0c80d7662d3b1a0437e Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:39:10 -0800 Subject: [PATCH 049/116] Update and rename snes/NSPC/Vortex.s to snes/NSPC/Argonaut/Vortex.s --- snes/NSPC/{ => Argonaut}/Vortex.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename snes/NSPC/{ => Argonaut}/Vortex.s (96%) diff --git a/snes/NSPC/Vortex.s b/snes/NSPC/Argonaut/Vortex.s similarity index 96% rename from snes/NSPC/Vortex.s rename to snes/NSPC/Argonaut/Vortex.s index 79c36e5f..ae1b1577 100644 --- a/snes/NSPC/Vortex.s +++ b/snes/NSPC/Argonaut/Vortex.s @@ -2365,4 +2365,4 @@ ; echo FIR presets 1429: db $7f,$00,$00,$00,$00,$00,$00,$00 -1431: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c \ No newline at end of file +1431: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c From 9ead5229280238150dfe61b193fc2f4cd1593851 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:39:35 -0800 Subject: [PATCH 050/116] Add files via upload --- snes/NSPC/Ball Bullet Gun ($0B00).bin | Bin 0 -> 6836 bytes snes/NSPC/Ball Bullet Gun.s | 3586 +++++++++++++++++++++++++ 2 files changed, 3586 insertions(+) create mode 100644 snes/NSPC/Ball Bullet Gun ($0B00).bin create mode 100644 snes/NSPC/Ball Bullet Gun.s diff --git a/snes/NSPC/Ball Bullet Gun ($0B00).bin b/snes/NSPC/Ball Bullet Gun ($0B00).bin new file mode 100644 index 0000000000000000000000000000000000000000..e38f58d96d2f949666b39c704f580411f9567cbd GIT binary patch literal 6836 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 literal 0 HcmV?d00001 diff --git a/snes/NSPC/Ball Bullet Gun.s b/snes/NSPC/Ball Bullet Gun.s new file mode 100644 index 00000000..74a87054 --- /dev/null +++ b/snes/NSPC/Ball Bullet Gun.s @@ -0,0 +1,3586 @@ +0b00: 20 clrp +0b01: cd cf mov x,#$cf +0b03: bd mov sp,x +0b04: e8 00 mov a,#$00 +0b06: 5d mov x,a +0b07: af mov (x)+,a +0b08: c8 f0 cmp x,#$f0 +0b0a: d0 fb bne $0b07 +0b0c: 8f 5c 00 mov $00,#$5c +0b0f: 8f 04 01 mov $01,#$04 +0b12: e8 00 mov a,#$00 +0b14: fd mov y,a +0b15: d7 00 mov ($00)+y,a +0b17: 78 ff 00 cmp $00,#$ff +0b1a: d0 07 bne $0b23 +0b1c: 78 0a 01 cmp $01,#$0a +0b1f: f0 07 beq $0b28 +0b21: ab 01 inc $01 +0b23: ab 00 inc $00 +0b25: 5f 15 0b jmp $0b15 + +0b28: cd 00 mov x,#$00 +0b2a: e8 ff mov a,#$ff +0b2c: d5 61 04 mov $0461+x,a +0b2f: d5 6d 04 mov $046d+x,a +0b32: 3d inc x +0b33: c8 0c cmp x,#$0c +0b35: 90 f5 bcc $0b2c +0b37: 3f 75 1c call $1c75 +0b3a: e8 00 mov a,#$00 +0b3c: bc inc a +0b3d: 3f 07 21 call $2107 +0b40: a2 37 set5 $37 +0b42: 8f 00 ce mov $ce,#$00 +0b45: 8f 26 cf mov $cf,#$26 +0b48: e8 00 mov a,#$00 +0b4a: c4 d3 mov $d3,a +0b4c: c4 d1 mov $d1,a +0b4e: e8 45 mov a,#$45 +0b50: c4 d4 mov $d4,a +0b52: c4 d2 mov $d2,a +0b54: e8 7f mov a,#$7f +0b56: 8d 0c mov y,#$0c +0b58: 3f 68 10 call $1068 +0b5b: 8d 1c mov y,#$1c +0b5d: 3f 68 10 call $1068 +0b60: e8 43 mov a,#$43 +0b62: 8d 5d mov y,#$5d +0b64: 3f 68 10 call $1068 +0b67: 8f f0 f1 mov $f1,#$f0 +0b6a: e8 20 mov a,#$20 +0b6c: c4 fa mov $fa,a +0b6e: c4 fb mov $fb,a +0b70: c4 d7 mov $d7,a +0b72: 8f 03 f1 mov $f1,#$03 +0b75: 8f 01 ee mov $ee,#$01 +0b78: 8d 0a mov y,#$0a +0b7a: ad 05 cmp y,#$05 +0b7c: f0 07 beq $0b85 +0b7e: b0 08 bcs $0b88 +0b80: 69 3c 3b cmp ($3b),($3c) +0b83: d0 14 bne $0b99 +0b85: e3 3b 11 bbs7 $3b,$0b99 +0b88: f6 63 25 mov a,$2563+y +0b8b: c4 f2 mov $f2,a +0b8d: f6 6d 25 mov a,$256d+y +0b90: 5d mov x,a +0b91: e5 b9 0a mov a,$0ab9 +0b94: 48 ff eor a,#$ff +0b96: 26 and a,(x) +0b97: c4 f3 mov $f3,a +0b99: fe df dbnz y,$0b7a +0b9b: 8d 00 mov y,#$00 +0b9d: cb 34 mov $34,y +0b9f: cb 35 mov $35,y +0ba1: eb fe mov y,$fe +0ba3: eb fd mov y,$fd +0ba5: f0 fc beq $0ba3 +0ba7: 6d push y +0ba8: e8 20 mov a,#$20 +0baa: cf mul ya +0bab: 60 clrc +0bac: 84 32 adc a,$32 +0bae: c4 32 mov $32,a +0bb0: 90 07 bcc $0bb9 +0bb2: 69 3c 3b cmp ($3b),($3c) +0bb5: f0 02 beq $0bb9 +0bb7: ab 3b inc $3b +0bb9: ee pop y +0bba: cc 60 04 mov $0460,y +0bbd: e4 d7 mov a,$d7 +0bbf: cf mul ya +0bc0: 60 clrc +0bc1: 85 5c 04 adc a,$045c +0bc4: c5 5c 04 mov $045c,a +0bc7: 90 06 bcc $0bcf +0bc9: 8f 00 cb mov $cb,#$00 +0bcc: 3f c6 10 call $10c6 +0bcf: e4 d9 mov a,$d9 +0bd1: ec 60 04 mov y,$0460 +0bd4: cf mul ya +0bd5: 60 clrc +0bd6: 85 5d 04 adc a,$045d +0bd9: c5 5d 04 mov $045d,a +0bdc: 90 06 bcc $0be4 +0bde: 8f 01 cb mov $cb,#$01 +0be1: 3f c6 10 call $10c6 +0be4: e4 db mov a,$db +0be6: ec 60 04 mov y,$0460 +0be9: cf mul ya +0bea: 60 clrc +0beb: 85 5e 04 adc a,$045e +0bee: c5 5e 04 mov $045e,a +0bf1: 90 06 bcc $0bf9 +0bf3: 8f 02 cb mov $cb,#$02 +0bf6: 3f c6 10 call $10c6 +0bf9: e4 dd mov a,$dd +0bfb: ec 60 04 mov y,$0460 +0bfe: cf mul ya +0bff: 60 clrc +0c00: 85 5f 04 adc a,$045f +0c03: c5 5f 04 mov $045f,a +0c06: 90 06 bcc $0c0e +0c08: 8f 03 cb mov $cb,#$03 +0c0b: 3f c6 10 call $10c6 +0c0e: e8 b0 mov a,#$b0 +0c10: ec 60 04 mov y,$0460 +0c13: cf mul ya +0c14: 60 clrc +0c15: 85 9e 0a adc a,$0a9e +0c18: c5 9e 0a mov $0a9e,a +0c1b: 90 03 bcc $0c20 +0c1d: 3f 72 0c call $0c72 +0c20: e4 ef mov a,$ef +0c22: f0 2d beq $0c51 +0c24: 5f 51 0c jmp $0c51 + +0c27: cd 00 mov x,#$00 +0c29: 8f 01 36 mov $36,#$01 +0c2c: f4 1a mov a,$1a+x +0c2e: f0 03 beq $0c33 +0c30: 3f 47 24 call $2447 +0c33: 3d inc x +0c34: 3d inc x +0c35: 0b 36 asl $36 +0c37: d0 f3 bne $0c2c +0c39: 8f 80 36 mov $36,#$80 +0c3c: f4 1a mov a,$1a+x +0c3e: f0 03 beq $0c43 +0c40: 3f 47 24 call $2447 +0c43: 3d inc x +0c44: 3d inc x +0c45: 4b 36 lsr $36 +0c47: e4 36 mov a,$36 +0c49: 68 08 cmp a,#$08 +0c4b: d0 ef bne $0c3c +0c4d: e8 00 mov a,#$00 +0c4f: c4 36 mov $36,a +0c51: 3f da 0d call $0dda +0c54: 3f 92 0e call $0e92 +0c57: e5 b7 0a mov a,$0ab7 +0c5a: 05 b8 0a or a,$0ab8 +0c5d: d0 10 bne $0c6f +0c5f: 3f 32 0d call $0d32 +0c62: e5 99 0a mov a,$0a99 +0c65: f0 08 beq $0c6f +0c67: 3f 39 16 call $1639 +0c6a: e8 00 mov a,#$00 +0c6c: c5 99 0a mov $0a99,a +0c6f: 5f 78 0b jmp $0b78 + +0c72: e5 a8 0a mov a,$0aa8 +0c75: 48 ff eor a,#$ff +0c77: 25 9f 0a and a,$0a9f +0c7a: c5 9f 0a mov $0a9f,a +0c7d: f0 4a beq $0cc9 +0c7f: 8f 00 02 mov $02,#$00 +0c82: 8d 00 mov y,#$00 +0c84: f6 a0 0a mov a,$0aa0+y +0c87: 60 clrc +0c88: 96 a4 0a adc a,$0aa4+y +0c8b: d6 a0 0a mov $0aa0+y,a +0c8e: b0 08 bcs $0c98 +0c90: fc inc y +0c91: ad 04 cmp y,#$04 +0c93: 90 ef bcc $0c84 +0c95: 5f c9 0c jmp $0cc9 + +0c98: e8 05 mov a,#$05 +0c9a: 60 clrc +0c9b: 96 c0 0a adc a,$0ac0+y +0c9e: d6 c0 0a mov $0ac0+y,a +0ca1: 68 64 cmp a,#$64 +0ca3: 90 eb bcc $0c90 +0ca5: e8 64 mov a,#$64 +0ca7: d6 c0 0a mov $0ac0+y,a +0caa: 6d push y +0cab: e8 fe mov a,#$fe +0cad: ad 00 cmp y,#$00 +0caf: f0 06 beq $0cb7 +0cb1: dc dec y +0cb2: 80 setc +0cb3: 1c asl a +0cb4: 5f ad 0c jmp $0cad + +0cb7: 25 9f 0a and a,$0a9f +0cba: c5 9f 0a mov $0a9f,a +0cbd: ee pop y +0cbe: e8 00 mov a,#$00 +0cc0: d6 a0 0a mov $0aa0+y,a +0cc3: d6 a4 0a mov $0aa4+y,a +0cc6: 5f 90 0c jmp $0c90 + +0cc9: e5 a8 0a mov a,$0aa8 +0ccc: d0 03 bne $0cd1 +0cce: 5f 29 0d jmp $0d29 + +0cd1: 8f 00 02 mov $02,#$00 +0cd4: 8d 00 mov y,#$00 +0cd6: f6 a9 0a mov a,$0aa9+y +0cd9: 60 clrc +0cda: 96 ad 0a adc a,$0aad+y +0cdd: d6 a9 0a mov $0aa9+y,a +0ce0: b0 08 bcs $0cea +0ce2: fc inc y +0ce3: ad 04 cmp y,#$04 +0ce5: 90 ef bcc $0cd6 +0ce7: 5f 29 0d jmp $0d29 + +0cea: f6 c0 0a mov a,$0ac0+y +0ced: 80 setc +0cee: a8 05 sbc a,#$05 +0cf0: b0 08 bcs $0cfa +0cf2: e8 00 mov a,#$00 +0cf4: d6 c0 0a mov $0ac0+y,a +0cf7: 5f 00 0d jmp $0d00 + +0cfa: d6 c0 0a mov $0ac0+y,a +0cfd: 5f e2 0c jmp $0ce2 + +0d00: 6d push y +0d01: e8 fe mov a,#$fe +0d03: ad 00 cmp y,#$00 +0d05: f0 06 beq $0d0d +0d07: dc dec y +0d08: 80 setc +0d09: 3c rol a +0d0a: 5f 03 0d jmp $0d03 + +0d0d: 2d push a +0d0e: 48 ff eor a,#$ff +0d10: 05 b1 0a or a,$0ab1 +0d13: c5 b1 0a mov $0ab1,a +0d16: ae pop a +0d17: 25 a8 0a and a,$0aa8 +0d1a: c5 a8 0a mov $0aa8,a +0d1d: ee pop y +0d1e: e8 00 mov a,#$00 +0d20: d6 a9 0a mov $0aa9+y,a +0d23: d6 ad 0a mov $0aad+y,a +0d26: 5f e2 0c jmp $0ce2 + +0d29: e5 b1 0a mov a,$0ab1 +0d2c: d0 01 bne $0d2f +0d2e: 6f ret + +0d2f: 5f 98 19 jmp $1998 + +0d32: 8f 87 0b mov $0b,#$87 +0d35: 8f 0a 0c mov $0c,#$0a +0d38: 8f 00 f4 mov $f4,#$00 +0d3b: 8f 00 f6 mov $f6,#$00 +0d3e: e4 f4 mov a,$f4 +0d40: 64 f4 cmp a,$f4 +0d42: d0 fa bne $0d3e +0d44: 68 00 cmp a,#$00 +0d46: d0 03 bne $0d4b +0d48: 5f c8 0d jmp $0dc8 + +0d4b: 68 02 cmp a,#$02 +0d4d: b0 14 bcs $0d63 +0d4f: c5 99 0a mov $0a99,a +0d52: e4 f5 mov a,$f5 +0d54: c5 87 0a mov $0a87,a +0d57: e4 f6 mov a,$f6 +0d59: c5 88 0a mov $0a88,a +0d5c: e4 f7 mov a,$f7 +0d5e: c5 89 0a mov $0a89,a +0d61: 2f 65 bra $0dc8 +0d63: 8f 01 f5 mov $f5,#$01 +0d66: c4 f4 mov $f4,a +0d68: c5 99 0a mov $0a99,a +0d6b: 5d mov x,a +0d6c: f5 c8 0d mov a,$0dc8+x +0d6f: c4 09 mov $09,a +0d71: f0 3c beq $0daf +0d73: e8 00 mov a,#$00 +0d75: c4 f7 mov $f7,a +0d77: c4 ca mov $ca,a +0d79: c4 08 mov $08,a +0d7b: 8d 00 mov y,#$00 +0d7d: f8 f6 mov x,$f6 +0d7f: 3e f6 cmp x,$f6 +0d81: d0 fa bne $0d7d +0d83: 3e ca cmp x,$ca +0d85: f0 f6 beq $0d7d +0d87: e4 f4 mov a,$f4 +0d89: 64 f4 cmp a,$f4 +0d8b: d0 fa bne $0d87 +0d8d: d8 f6 mov $f6,x +0d8f: d8 ca mov $ca,x +0d91: d7 0b mov ($0b)+y,a +0d93: 3a 0b incw $0b +0d95: 8b 09 dec $09 +0d97: d0 e4 bne $0d7d +0d99: e5 99 0a mov a,$0a99 +0d9c: 68 0b cmp a,#$0b +0d9e: d0 0f bne $0daf +0da0: e4 08 mov a,$08 +0da2: d0 0b bne $0daf +0da4: e5 88 0a mov a,$0a88 +0da7: 1c asl a +0da8: c4 09 mov $09,a +0daa: c4 08 mov $08,a +0dac: 5f 7d 0d jmp $0d7d + +0daf: e5 99 0a mov a,$0a99 +0db2: 68 06 cmp a,#$06 +0db4: f0 12 beq $0dc8 +0db6: 68 0a cmp a,#$0a +0db8: 90 04 bcc $0dbe +0dba: 68 0d cmp a,#$0d +0dbc: 90 0a bcc $0dc8 +0dbe: 8f 00 f5 mov $f5,#$00 +0dc1: e4 f5 mov a,$f5 +0dc3: d0 fc bne $0dc1 +0dc5: 8f 00 f4 mov $f4,#$00 +0dc8: 6f ret + +0dc9: db $02,$02,$02,$02,$02,$02,$01,$00 +0dd1: db $00,$01,$02,$0A,$02,$01,$00,$00 +0dd9: db $01 + +0dda: e5 b7 0a mov a,$0ab7 +0ddd: f0 5a beq $0e39 +0ddf: 3f 71 0e call $0e71 +0de2: fa fe 02 mov ($02),($fe) +0de5: 3f 9e 18 call $189e +0de8: f0 50 beq $0e3a +0dea: 8d 00 mov y,#$00 +0dec: 69 d0 02 cmp ($02),($d0) +0def: b0 48 bcs $0e39 +0df1: e4 fe mov a,$fe +0df3: f0 05 beq $0dfa +0df5: ab 02 inc $02 +0df7: 5f ec 0d jmp $0dec + +0dfa: f8 f6 mov x,$f6 +0dfc: 3e f6 cmp x,$f6 +0dfe: d0 fa bne $0dfa +0e00: 3e ca cmp x,$ca +0e02: f0 ed beq $0df1 +0e04: e4 f4 mov a,$f4 +0e06: d7 0b mov ($0b)+y,a +0e08: 3a 0b incw $0b +0e0a: e4 f5 mov a,$f5 +0e0c: d7 0b mov ($0b)+y,a +0e0e: 3a 0b incw $0b +0e10: d8 f6 mov $f6,x +0e12: d8 ca mov $ca,x +0e14: 69 cf 0c cmp ($0c),($cf) +0e17: 90 d8 bcc $0df1 +0e19: d0 05 bne $0e20 +0e1b: 69 ce 0b cmp ($0b),($ce) +0e1e: 90 d1 bcc $0df1 +0e20: cc b7 0a mov $0ab7,y +0e23: 8f 03 f7 mov $f7,#$03 +0e26: 8f 03 00 mov $00,#$03 +0e29: 8f 00 f4 mov $f4,#$00 +0e2c: 8f 00 f5 mov $f5,#$00 +0e2f: f8 f7 mov x,$f7 +0e31: 3e f7 cmp x,$f7 +0e33: d0 fa bne $0e2f +0e35: 3e 00 cmp x,$00 +0e37: d0 f6 bne $0e2f +0e39: 6f ret + +0e3a: 8d 00 mov y,#$00 +0e3c: f8 ca mov x,$ca +0e3e: 3e f6 cmp x,$f6 +0e40: f0 fc beq $0e3e +0e42: e4 f4 mov a,$f4 +0e44: d7 0b mov ($0b)+y,a +0e46: 3a 0b incw $0b +0e48: e4 f5 mov a,$f5 +0e4a: d7 0b mov ($0b)+y,a +0e4c: 3a 0b incw $0b +0e4e: 3d inc x +0e4f: d8 f6 mov $f6,x +0e51: 69 cf 0c cmp ($0c),($cf) +0e54: 90 e8 bcc $0e3e +0e56: d0 05 bne $0e5d +0e58: 69 ce 0b cmp ($0b),($ce) +0e5b: 90 e1 bcc $0e3e +0e5d: d8 ca mov $ca,x +0e5f: cc b7 0a mov $0ab7,y +0e62: 8f 03 f7 mov $f7,#$03 +0e65: 8f 03 00 mov $00,#$03 +0e68: 8f 00 f4 mov $f4,#$00 +0e6b: 8f 00 f5 mov $f5,#$00 +0e6e: 5f 2f 0e jmp $0e2f + +0e71: f8 d7 mov x,$d7 +0e73: 3e d9 cmp x,$d9 +0e75: b0 02 bcs $0e79 +0e77: f8 d9 mov x,$d9 +0e79: 3e db cmp x,$db +0e7b: b0 02 bcs $0e7f +0e7d: f8 db mov x,$db +0e7f: 3e dd cmp x,$dd +0e81: b0 02 bcs $0e85 +0e83: f8 dd mov x,$dd +0e85: c8 00 cmp x,#$00 +0e87: d0 01 bne $0e8a +0e89: 3d inc x +0e8a: e8 ff mov a,#$ff +0e8c: 8d 00 mov y,#$00 +0e8e: 9e div ya,x +0e8f: c4 d0 mov $d0,a +0e91: 6f ret + +0e92: e5 b8 0a mov a,$0ab8 +0e95: f0 53 beq $0eea +0e97: 3f 71 0e call $0e71 +0e9a: fa fe 02 mov ($02),($fe) +0e9d: 3f 9e 18 call $189e +0ea0: f0 49 beq $0eeb +0ea2: 8d 00 mov y,#$00 +0ea4: 69 d0 02 cmp ($02),($d0) +0ea7: b0 41 bcs $0eea +0ea9: e4 fe mov a,$fe +0eab: f0 05 beq $0eb2 +0ead: ab 02 inc $02 +0eaf: 5f a4 0e jmp $0ea4 + +0eb2: f8 f6 mov x,$f6 +0eb4: 3e f6 cmp x,$f6 +0eb6: d0 fa bne $0eb2 +0eb8: 3e ca cmp x,$ca +0eba: f0 ed beq $0ea9 +0ebc: e4 f4 mov a,$f4 +0ebe: d7 0b mov ($0b)+y,a +0ec0: 3a 0b incw $0b +0ec2: e4 f5 mov a,$f5 +0ec4: d7 0b mov ($0b)+y,a +0ec6: 3a 0b incw $0b +0ec8: d8 f6 mov $f6,x +0eca: d8 ca mov $ca,x +0ecc: 69 d4 0c cmp ($0c),($d4) +0ecf: 90 d8 bcc $0ea9 +0ed1: d0 05 bne $0ed8 +0ed3: 69 d3 0b cmp ($0b),($d3) +0ed6: 90 d1 bcc $0ea9 +0ed8: cc b8 0a mov $0ab8,y +0edb: 8f 03 f7 mov $f7,#$03 +0ede: 8f 03 00 mov $00,#$03 +0ee1: 8f 00 f4 mov $f4,#$00 +0ee4: 8f 00 f5 mov $f5,#$00 +0ee7: 5f 2f 0e jmp $0e2f + +0eea: 6f ret + +0eeb: 8d 00 mov y,#$00 +0eed: f8 ca mov x,$ca +0eef: 3e f6 cmp x,$f6 +0ef1: f0 fc beq $0eef +0ef3: e4 f4 mov a,$f4 +0ef5: d7 0b mov ($0b)+y,a +0ef7: 3a 0b incw $0b +0ef9: e4 f5 mov a,$f5 +0efb: d7 0b mov ($0b)+y,a +0efd: 3a 0b incw $0b +0eff: 3d inc x +0f00: d8 f6 mov $f6,x +0f02: 69 d4 0c cmp ($0c),($d4) +0f05: 90 e8 bcc $0eef +0f07: d0 05 bne $0f0e +0f09: 69 d3 0b cmp ($0b),($d3) +0f0c: 90 e1 bcc $0eef +0f0e: d8 ca mov $ca,x +0f10: cc b8 0a mov $0ab8,y +0f13: 8f 03 f7 mov $f7,#$03 +0f16: 8f 03 00 mov $00,#$03 +0f19: 8f 00 f4 mov $f4,#$00 +0f1c: 8f 00 f5 mov $f5,#$00 +0f1f: 5f 2f 0e jmp $0e2f + +0f22: 6f ret + +0f23: ad ca cmp y,#$ca +0f25: 90 1c bcc $0f43 +0f27: 2d push a +0f28: 7d mov a,x +0f29: 5c lsr a +0f2a: 68 04 cmp a,#$04 +0f2c: 90 10 bcc $0f3e +0f2e: 68 08 cmp a,#$08 +0f30: b0 0c bcs $0f3e +0f32: 48 07 eor a,#$07 +0f34: 60 clrc +0f35: 88 04 adc a,#$04 +0f37: fd mov y,a +0f38: f6 61 04 mov a,$0461+y +0f3b: ae pop a +0f3c: 10 03 bpl $0f41 +0f3e: 3f 63 1e call $1e63 +0f41: 8d a4 mov y,#$a4 +0f43: ad c8 cmp y,#$c8 +0f45: b0 db bcs $0f22 +0f47: e4 18 mov a,$18 +0f49: 24 36 and a,$36 +0f4b: d0 d5 bne $0f22 +0f4d: dd mov a,y +0f4e: 28 7f and a,#$7f +0f50: 60 clrc +0f51: 84 3e adc a,$3e +0f53: 60 clrc +0f54: 95 54 03 adc a,$0354+x +0f57: d5 fd 03 mov $03fd+x,a +0f5a: f5 2d 04 mov a,$042d+x +0f5d: d5 fc 03 mov $03fc+x,a +0f60: f5 f5 02 mov a,$02f5+x +0f63: 5c lsr a +0f64: e8 00 mov a,#$00 +0f66: 7c ror a +0f67: d5 dc 02 mov $02dc+x,a +0f6a: e8 00 mov a,#$00 +0f6c: d4 b2 mov $b2+x,a +0f6e: d5 0c 01 mov $010c+x,a +0f71: d5 24 03 mov $0324+x,a +0f74: d5 44 04 mov $0444+x,a +0f77: 09 36 45 or ($45),($36) +0f7a: 7d mov a,x +0f7b: 5c lsr a +0f7c: 68 04 cmp a,#$04 +0f7e: 90 0f bcc $0f8f +0f80: 68 08 cmp a,#$08 +0f82: b0 0b bcs $0f8f +0f84: 80 setc +0f85: a8 04 sbc a,#$04 +0f87: 48 03 eor a,#$03 +0f89: fd mov y,a +0f8a: f6 69 04 mov a,$0469+y +0f8d: 10 03 bpl $0f92 +0f8f: 09 36 34 or ($34),($36) +0f92: f5 ac 02 mov a,$02ac+x +0f95: d4 9a mov $9a+x,a +0f97: f0 1e beq $0fb7 +0f99: f5 ad 02 mov a,$02ad+x +0f9c: d4 9b mov $9b+x,a +0f9e: f5 c4 02 mov a,$02c4+x +0fa1: d0 0a bne $0fad +0fa3: f5 fd 03 mov a,$03fd+x +0fa6: 80 setc +0fa7: b5 c5 02 sbc a,$02c5+x +0faa: d5 fd 03 mov $03fd+x,a +0fad: f5 c5 02 mov a,$02c5+x +0fb0: 60 clrc +0fb1: 95 fd 03 adc a,$03fd+x +0fb4: 3f 6b 21 call $216b +0fb7: 3f 83 21 call $2183 +0fba: 8d 00 mov y,#$00 +0fbc: e4 11 mov a,$11 +0fbe: 80 setc +0fbf: a8 34 sbc a,#$34 +0fc1: b0 09 bcs $0fcc +0fc3: e4 11 mov a,$11 +0fc5: 80 setc +0fc6: a8 13 sbc a,#$13 +0fc8: b0 06 bcs $0fd0 +0fca: dc dec y +0fcb: 1c asl a +0fcc: 7a 10 addw ya,$10 +0fce: da 10 movw $10,ya +0fd0: 4d push x +0fd1: e4 11 mov a,$11 +0fd3: 1c asl a +0fd4: 8d 00 mov y,#$00 +0fd6: cd 18 mov x,#$18 +0fd8: 9e div ya,x +0fd9: 5d mov x,a +0fda: f6 79 25 mov a,$2579+y +0fdd: c4 15 mov $15,a +0fdf: f6 78 25 mov a,$2578+y +0fe2: c4 14 mov $14,a +0fe4: f6 7b 25 mov a,$257b+y +0fe7: 2d push a +0fe8: f6 7a 25 mov a,$257a+y +0feb: ee pop y +0fec: 9a 14 subw ya,$14 +0fee: eb 10 mov y,$10 +0ff0: cf mul ya +0ff1: dd mov a,y +0ff2: 8d 00 mov y,#$00 +0ff4: 7a 14 addw ya,$14 +0ff6: cb 15 mov $15,y +0ff8: 1c asl a +0ff9: 2b 15 rol $15 +0ffb: c4 14 mov $14,a +0ffd: 5f 04 10 jmp $1004 + +1000: 4b 15 lsr $15 +1002: 7c ror a +1003: 3d inc x +1004: c8 06 cmp x,#$06 +1006: d0 f8 bne $1000 +1008: c4 14 mov $14,a +100a: ce pop x +100b: f5 3c 02 mov a,$023c+x +100e: eb 15 mov y,$15 +1010: cf mul ya +1011: da 16 movw $16,ya +1013: f5 3c 02 mov a,$023c+x +1016: eb 14 mov y,$14 +1018: cf mul ya +1019: 6d push y +101a: f5 3d 02 mov a,$023d+x +101d: eb 14 mov y,$14 +101f: cf mul ya +1020: 7a 16 addw ya,$16 +1022: da 16 movw $16,ya +1024: f5 3d 02 mov a,$023d+x +1027: eb 15 mov y,$15 +1029: cf mul ya +102a: fd mov y,a +102b: ae pop a +102c: 7a 16 addw ya,$16 +102e: da 16 movw $16,ya +1030: 7d mov a,x +1031: 5c lsr a +1032: 68 08 cmp a,#$08 +1034: 90 0d bcc $1043 +1036: 80 setc +1037: a8 08 sbc a,#$08 +1039: 48 03 eor a,#$03 +103b: 60 clrc +103c: 88 04 adc a,#$04 +103e: 1c asl a +103f: 5d mov x,a +1040: 5f 52 10 jmp $1052 + +1043: 68 04 cmp a,#$04 +1045: 90 0b bcc $1052 +1047: 80 setc +1048: a8 04 sbc a,#$04 +104a: 48 03 eor a,#$03 +104c: fd mov y,a +104d: f6 69 04 mov a,$0469+y +1050: 10 1a bpl $106c +1052: 7d mov a,x +1053: 9f xcn a +1054: 5c lsr a +1055: 08 02 or a,#$02 +1057: fd mov y,a +1058: e4 16 mov a,$16 +105a: 3f 60 10 call $1060 +105d: fc inc y +105e: e4 17 mov a,$17 +1060: 2d push a +1061: e4 36 mov a,$36 +1063: 24 18 and a,$18 +1065: ae pop a +1066: d0 04 bne $106c +1068: cb f2 mov $f2,y +106a: c4 f3 mov $f3,a +106c: 6f ret + +106d: cd 16 mov x,#$16 +106f: 8f 0c 36 mov $36,#$0c +1072: e8 ff mov a,#$ff +1074: d5 6d 03 mov $036d+x,a +1077: e8 0a mov a,#$0a +1079: 3f e1 1e call $1ee1 +107c: d5 25 02 mov $0225+x,a +107f: d5 2d 04 mov $042d+x,a +1082: d5 54 03 mov $0354+x,a +1085: d5 ac 02 mov $02ac+x,a +1088: d4 b3 mov $b3+x,a +108a: d5 45 04 mov $0445+x,a +108d: 1d dec x +108e: 1d dec x +108f: 8b 36 dec $36 +1091: d0 df bne $1072 +1093: c4 41 mov $41,a +1095: c4 4f mov $4f,a +1097: c4 de mov $de,a +1099: c4 3e mov $3e,a +109b: c4 31 mov $31,a +109d: c4 46 mov $46,a +109f: 8f e0 40 mov $40,#$e0 +10a2: e8 20 mov a,#$20 +10a4: c4 d7 mov $d7,a +10a6: c5 9a 0a mov $0a9a,a +10a9: c4 d9 mov $d9,a +10ab: c5 9b 0a mov $0a9b,a +10ae: c4 db mov $db,a +10b0: c5 9c 0a mov $0a9c,a +10b3: c4 dd mov $dd,a +10b5: c5 9d 0a mov $0a9d,a +10b8: 6f ret + +10b9: c4 ef mov $ef,a +10bb: 8f 02 0d mov $0d,#$02 +10be: e4 18 mov a,$18 +10c0: 48 ff eor a,#$ff +10c2: 0e 35 00 tset1 $0035 +10c5: 6f ret + +10c6: eb 0a mov y,$0a +10c8: e4 ee mov a,$ee +10ca: c4 0a mov $0a,a +10cc: 7e ee cmp y,$ee +10ce: d0 e9 bne $10b9 +10d0: e4 0d mov a,$0d +10d2: f0 68 beq $113c +10d4: 6e 0d 96 dbnz $0d,$106d +10d7: f0 e0 beq $10b9 +10d9: cd 00 mov x,#$00 +10db: 8f 01 36 mov $36,#$01 +10de: f4 1a mov a,$1a+x +10e0: f0 1f beq $1101 +10e2: f5 25 02 mov a,$0225+x +10e5: d0 1a bne $1101 +10e7: 7d mov a,x +10e8: 5c lsr a +10e9: 68 04 cmp a,#$04 +10eb: 90 0f bcc $10fc +10ed: 68 08 cmp a,#$08 +10ef: b0 0b bcs $10fc +10f1: 48 07 eor a,#$07 +10f3: 60 clrc +10f4: 88 04 adc a,#$04 +10f6: fd mov y,a +10f7: f6 61 04 mov a,$0461+y +10fa: 10 10 bpl $110c +10fc: e8 00 mov a,#$00 +10fe: 3f 63 1e call $1e63 +1101: e8 00 mov a,#$00 +1103: d4 6a mov $6a+x,a +1105: d4 82 mov $82+x,a +1107: d4 83 mov $83+x,a +1109: bc inc a +110a: d4 52 mov $52+x,a +110c: 3d inc x +110d: 3d inc x +110e: 0b 36 asl $36 +1110: d0 cc bne $10de +1112: 8f 80 36 mov $36,#$80 +1115: f4 1a mov a,$1a+x +1117: f0 0a beq $1123 +1119: f5 25 02 mov a,$0225+x +111c: d0 05 bne $1123 +111e: e8 00 mov a,#$00 +1120: 3f 63 1e call $1e63 +1123: e8 00 mov a,#$00 +1125: d4 6a mov $6a+x,a +1127: d4 82 mov $82+x,a +1129: d4 83 mov $83+x,a +112b: bc inc a +112c: d4 52 mov $52+x,a +112e: 3d inc x +112f: 3d inc x +1130: 4b 36 lsr $36 +1132: e4 36 mov a,$36 +1134: 68 08 cmp a,#$08 +1136: d0 dd bne $1115 +1138: e8 00 mov a,#$00 +113a: c4 36 mov $36,a +113c: cd 00 mov x,#$00 +113e: d8 45 mov $45,x +1140: 8f 01 36 mov $36,#$01 +1143: 7d mov a,x +1144: 5c lsr a +1145: 5d mov x,a +1146: c8 0c cmp x,#$0c +1148: f0 18 beq $1162 +114a: f5 61 04 mov a,$0461+x +114d: 64 cb cmp a,$cb +114f: f0 1b beq $116c +1151: 3d inc x +1152: c8 08 cmp x,#$08 +1154: f0 09 beq $115f +1156: b0 05 bcs $115d +1158: 0b 36 asl $36 +115a: 5f 46 11 jmp $1146 + +115d: 4b 36 lsr $36 +115f: 5f 46 11 jmp $1146 +1162: e8 00 mov a,#$00 +1164: c4 36 mov $36,a +1166: 5f 8e 13 jmp $138e + +1169: 5f 7c 13 jmp $137c + +116c: 7d mov a,x +116d: 1c asl a +116e: 5d mov x,a +116f: d8 33 mov $33,x +1171: f4 1a mov a,$1a+x +1173: f0 f4 beq $1169 +1175: 9b 52 dec $52+x +1177: d0 50 bne $11c9 +1179: 3f 36 14 call $1436 +117c: f0 03 beq $1181 +117e: 5f 25 13 jmp $1325 + +1181: f4 6a mov a,$6a+x +1183: f0 03 beq $1188 +1185: 5f 11 13 jmp $1311 + +1188: 4d push x +1189: 3f cc 11 call $11cc +118c: ce pop x +118d: eb cb mov y,$cb +118f: fc inc y +1190: e8 00 mov a,#$00 +1192: 80 setc +1193: 3c rol a +1194: fe fd dbnz y,$1193 +1196: 48 ff eor a,#$ff +1198: 2d push a +1199: 25 9f 0a and a,$0a9f +119c: c5 9f 0a mov $0a9f,a +119f: ae pop a +11a0: 25 a8 0a and a,$0aa8 +11a3: c5 a8 0a mov $0aa8,a +11a6: 8d 00 mov y,#$00 +11a8: f6 61 04 mov a,$0461+y +11ab: 64 cb cmp a,$cb +11ad: f0 0f beq $11be +11af: fc inc y +11b0: ad 0c cmp y,#$0c +11b2: 90 f4 bcc $11a8 +11b4: 4d push x +11b5: eb cb mov y,$cb +11b7: 3f ff 1b call $1bff +11ba: ce pop x +11bb: 5f 7c 13 jmp $137c + +11be: 3f 05 12 call $1205 +11c1: e8 ff mov a,#$ff +11c3: d6 61 04 mov $0461+y,a +11c6: 5f af 11 jmp $11af + +11c9: 5f 76 13 jmp $1376 + +11cc: eb cb mov y,$cb +11ce: e8 00 mov a,#$00 +11d0: d6 cb 0a mov $0acb+y,a +11d3: d6 cf 0a mov $0acf+y,a +11d6: 8d 00 mov y,#$00 +11d8: f6 69 04 mov a,$0469+y +11db: 64 cb cmp a,$cb +11dd: f0 06 beq $11e5 +11df: fc inc y +11e0: ad 04 cmp y,#$04 +11e2: d0 f4 bne $11d8 +11e4: 6f ret + +11e5: f6 69 04 mov a,$0469+y +11e8: 2d push a +11e9: e8 ff mov a,#$ff +11eb: d6 69 04 mov $0469+y,a +11ee: dd mov a,y +11ef: 48 03 eor a,#$03 +11f1: 60 clrc +11f2: 88 04 adc a,#$04 +11f4: 1c asl a +11f5: 5d mov x,a +11f6: f5 25 02 mov a,$0225+x +11f9: 6d push y +11fa: 3f 63 1e call $1e63 +11fd: ee pop y +11fe: ae pop a +11ff: d6 69 04 mov $0469+y,a +1202: 5f df 11 jmp $11df + +1205: 6d push y +1206: dd mov a,y +1207: 1c asl a +1208: fd mov y,a +1209: e8 00 mov a,#$00 +120b: d6 19 00 mov $0019+y,a +120e: d6 1a 00 mov $001a+y,a +1211: e8 01 mov a,#$01 +1213: d6 52 00 mov $0052+y,a +1216: e8 00 mov a,#$00 +1218: d6 53 00 mov $0053+y,a +121b: d6 0c 02 mov $020c+y,a +121e: d6 0d 02 mov $020d+y,a +1221: d6 24 02 mov $0224+y,a +1224: d6 25 02 mov $0225+y,a +1227: d6 25 02 mov $0225+y,a +122a: d6 54 02 mov $0254+y,a +122d: d6 55 02 mov $0255+y,a +1230: d6 6c 02 mov $026c+y,a +1233: d6 6d 02 mov $026d+y,a +1236: d6 6a 00 mov $006a+y,a +1239: d6 82 00 mov $0082+y,a +123c: d6 6c 03 mov $036c+y,a +123f: d6 84 03 mov $0384+y,a +1242: d6 85 03 mov $0385+y,a +1245: d6 9c 03 mov $039c+y,a +1248: d6 9d 03 mov $039d+y,a +124b: d6 b4 03 mov $03b4+y,a +124e: d6 cc 03 mov $03cc+y,a +1251: d6 cd 03 mov $03cd+y,a +1254: d6 e4 03 mov $03e4+y,a +1257: d6 e5 03 mov $03e5+y,a +125a: d6 83 00 mov $0083+y,a +125d: d6 9a 00 mov $009a+y,a +1260: d6 9b 00 mov $009b+y,a +1263: d6 fc 03 mov $03fc+y,a +1266: d6 fd 03 mov $03fd+y,a +1269: d6 14 04 mov $0414+y,a +126c: d6 15 04 mov $0415+y,a +126f: d6 2c 04 mov $042c+y,a +1272: d6 b3 00 mov $00b3+y,a +1275: d6 0d 03 mov $030d+y,a +1278: d6 f5 02 mov $02f5+y,a +127b: d6 54 03 mov $0354+y,a +127e: d6 45 04 mov $0445+y,a +1281: d6 2d 04 mov $042d+y,a +1284: d6 ac 02 mov $02ac+y,a +1287: d6 ad 02 mov $02ad+y,a +128a: d6 c4 02 mov $02c4+y,a +128d: d6 c5 02 mov $02c5+y,a +1290: e8 ff mov a,#$ff +1292: d6 6d 03 mov $036d+y,a +1295: e8 0a mov a,#$0a +1297: d6 b5 03 mov $03b5+y,a +129a: d6 e5 03 mov $03e5+y,a +129d: ee pop y +129e: e8 00 mov a,#$00 +12a0: d6 27 0a mov $0a27+y,a +12a3: d6 33 0a mov $0a33+y,a +12a6: 6d push y +12a7: e8 03 mov a,#$03 +12a9: cf mul ya +12aa: fd mov y,a +12ab: e8 00 mov a,#$00 +12ad: d6 03 0a mov $0a03+y,a +12b0: d6 04 0a mov $0a04+y,a +12b3: d6 05 0a mov $0a05+y,a +12b6: dd mov a,y +12b7: 1c asl a +12b8: fd mov y,a +12b9: e8 00 mov a,#$00 +12bb: d6 bb 09 mov $09bb+y,a +12be: d6 bc 09 mov $09bc+y,a +12c1: d6 bd 09 mov $09bd+y,a +12c4: d6 be 09 mov $09be+y,a +12c7: d6 bf 09 mov $09bf+y,a +12ca: d6 c0 09 mov $09c0+y,a +12cd: d6 3f 0a mov $0a3f+y,a +12d0: d6 40 0a mov $0a40+y,a +12d3: d6 41 0a mov $0a41+y,a +12d6: d6 42 0a mov $0a42+y,a +12d9: d6 43 0a mov $0a43+y,a +12dc: d6 44 0a mov $0a44+y,a +12df: 8f e0 40 mov $40,#$e0 +12e2: ee pop y +12e3: 6d push y +12e4: 8f 00 00 mov $00,#$00 +12e7: ad 08 cmp y,#$08 +12e9: 90 0d bcc $12f8 +12eb: 8f 01 00 mov $00,#$01 +12ee: dd mov a,y +12ef: 80 setc +12f0: a8 08 sbc a,#$08 +12f2: 48 03 eor a,#$03 +12f4: 60 clrc +12f5: 88 04 adc a,#$04 +12f7: fd mov y,a +12f8: e8 00 mov a,#$00 +12fa: fc inc y +12fb: 80 setc +12fc: 3c rol a +12fd: fe fd dbnz y,$12fc +12ff: 48 ff eor a,#$ff +1301: 24 39 and a,$39 +1303: 78 00 00 cmp $00,#$00 +1306: f0 02 beq $130a +1308: 04 d5 or a,$d5 +130a: c4 39 mov $39,a +130c: ee pop y +130d: 6f ret + +130e: 5f 79 11 jmp $1179 + +1311: 3f f4 1f call $1ff4 +1314: 9b 6a dec $6a+x +1316: d0 f6 bne $130e +1318: f5 54 02 mov a,$0254+x +131b: d4 19 mov $19+x,a +131d: f5 55 02 mov a,$0255+x +1320: d4 1a mov $1a+x,a +1322: 5f 0e 13 jmp $130e + +1325: 30 2b bmi $1352 +1327: 68 64 cmp a,#$64 +1329: 90 09 bcc $1334 +132b: 3f 40 14 call $1440 +132e: 5f 79 11 jmp $1179 + +1331: 5f 81 11 jmp $1181 + +1334: d5 0c 02 mov $020c+x,a +1337: 3f 36 14 call $1436 +133a: f0 f5 beq $1331 +133c: 30 14 bmi $1352 +133e: 68 64 cmp a,#$64 +1340: 90 06 bcc $1348 +1342: 3f 40 14 call $1440 +1345: 5f 37 13 jmp $1337 + +1348: 60 clrc +1349: 95 0c 02 adc a,$020c+x +134c: d5 0c 02 mov $020c+x,a +134f: 5f 37 13 jmp $1337 + +1352: 68 e0 cmp a,#$e0 +1354: 90 08 bcc $135e +1356: 4d push x +1357: 3f 24 14 call $1424 +135a: ce pop x +135b: 5f 79 11 jmp $1179 + +135e: 4d push x +135f: 3f 23 0f call $0f23 +1362: ce pop x +1363: f5 0c 02 mov a,$020c+x +1366: d4 52 mov $52+x,a +1368: fd mov y,a +1369: f5 0d 02 mov a,$020d+x +136c: cf mul ya +136d: dd mov a,y +136e: d0 01 bne $1371 +1370: bc inc a +1371: d4 53 mov $53+x,a +1373: 5f 79 13 jmp $1379 + +1376: 3f 2b 23 call $232b +1379: 3f 4b 21 call $214b +137c: 3d inc x +137d: 3d inc x +137e: c8 10 cmp x,#$10 +1380: f0 09 beq $138b +1382: b0 05 bcs $1389 +1384: 0b 36 asl $36 +1386: 5f 43 11 jmp $1143 + +1389: 4b 36 lsr $36 +138b: 5f 43 11 jmp $1143 + +138e: f8 cb mov x,$cb +1390: f4 de mov a,$de+x +1392: f0 24 beq $13b8 +1394: f4 e7 mov a,$e7+x +1396: fd mov y,a +1397: f4 e6 mov a,$e6+x +1399: 60 clrc +139a: 94 d6 adc a,$d6+x +139c: 2d push a +139d: dd mov a,y +139e: 94 d7 adc a,$d7+x +13a0: fd mov y,a +13a1: f4 de mov a,$de+x +13a3: c4 00 mov $00,a +13a5: 8b 00 dec $00 +13a7: e4 00 mov a,$00 +13a9: d4 de mov $de+x,a +13ab: ae pop a +13ac: d0 05 bne $13b3 +13ae: f4 df mov a,$df+x +13b0: fd mov y,a +13b1: f4 de mov a,$de+x +13b3: d4 d6 mov $d6+x,a +13b5: dd mov a,y +13b6: d4 d7 mov $d7+x,a +13b8: e4 4f mov a,$4f +13ba: f0 15 beq $13d1 +13bc: ba 4b movw ya,$4b +13be: 7a 47 addw ya,$47 +13c0: da 47 movw $47,ya +13c2: ba 4d movw ya,$4d +13c4: 7a 49 addw ya,$49 +13c6: 6e 4f 06 dbnz $4f,$13cf +13c9: ba 4f movw ya,$4f +13cb: da 47 movw $47,ya +13cd: eb 51 mov y,$51 +13cf: da 49 movw $49,ya +13d1: e4 41 mov a,$41 +13d3: f0 0e beq $13e3 +13d5: ba 43 movw ya,$43 +13d7: 7a 3f addw ya,$3f +13d9: 6e 41 02 dbnz $41,$13de +13dc: ba 41 movw ya,$41 +13de: da 3f movw $3f,ya +13e0: 8f ff 45 mov $45,#$ff +13e3: cd 00 mov x,#$00 +13e5: 8f 01 36 mov $36,#$01 +13e8: 7d mov a,x +13e9: 5c lsr a +13ea: fd mov y,a +13eb: f6 61 04 mov a,$0461+y +13ee: 64 cb cmp a,$cb +13f0: d0 07 bne $13f9 +13f2: f4 1a mov a,$1a+x +13f4: f0 03 beq $13f9 +13f6: 3f fe 21 call $21fe +13f9: 3d inc x +13fa: 3d inc x +13fb: 0b 36 asl $36 +13fd: d0 e9 bne $13e8 +13ff: 8f 80 36 mov $36,#$80 +1402: 7d mov a,x +1403: 5c lsr a +1404: fd mov y,a +1405: f6 61 04 mov a,$0461+y +1408: 64 cb cmp a,$cb +140a: d0 09 bne $1415 +140c: f4 1a mov a,$1a+x +140e: f0 05 beq $1415 +1410: 4d push x +1411: 3f fe 21 call $21fe +1414: ce pop x +1415: 3d inc x +1416: 3d inc x +1417: 4b 36 lsr $36 +1419: e4 36 mov a,$36 +141b: 68 08 cmp a,#$08 +141d: d0 e3 bne $1402 +141f: e8 00 mov a,#$00 +1421: c4 36 mov $36,a +1423: 6f ret + +; dispatch vcmd in A (e0-ff) +1424: 1c asl a +1425: fd mov y,a +1426: f6 eb 20 mov a,$20eb+y +1429: 2d push a +142a: f6 ea 20 mov a,$20ea+y +142d: 2d push a +142e: dd mov a,y +142f: 5c lsr a +1430: fd mov y,a +1431: f6 82 21 mov a,$2182+y +1434: f0 08 beq $143e +1436: e7 19 mov a,($19+x) +1438: bb 19 inc $19+x +143a: d0 02 bne $143e +143c: bb 1a inc $1a+x +143e: fd mov y,a +143f: 6f ret + +1440: 80 setc +1441: a8 64 sbc a,#$64 +1443: 1c asl a +1444: fd mov y,a +1445: f6 4f 14 mov a,$144f+y +1448: 2d push a +1449: f6 4e 14 mov a,$144e+y +144c: 2d push a +144d: 6f ret + +144e: dw $145a +1450: dw $1499 +1452: dw $151f +1454: dw $1566 +1456: dw $15c6 +1458: dw $1628 + +; load song +145a: eb cb mov y,$cb +145c: f6 91 04 mov a,$0491+y +145f: 8f 95 02 mov $02,#$95 +1462: 8f 04 03 mov $03,#$04 +1465: 8d 00 mov y,#$00 +1467: 77 02 cmp a,($02)+y +1469: f0 0a beq $1475 +146b: 60 clrc +146c: 98 11 02 adc $02,#$11 +146f: 98 00 03 adc $03,#$00 +1472: 5f 67 14 jmp $1467 + +1475: fc inc y +1476: f7 02 mov a,($02)+y +1478: c4 00 mov $00,a +147a: fc inc y +147b: f7 02 mov a,($02)+y +147d: c4 01 mov $01,a +147f: 3f 36 14 call $1436 +1482: 60 clrc +1483: 84 00 adc a,$00 +1485: c4 00 mov $00,a +1487: 0d push psw +1488: 3f 36 14 call $1436 +148b: 8e pop psw +148c: 84 01 adc a,$01 +148e: c4 01 mov $01,a +1490: e4 00 mov a,$00 +1492: d4 19 mov $19+x,a +1494: e4 01 mov a,$01 +1496: d4 1a mov $1a+x,a +1498: 6f ret + +1499: e8 33 mov a,#$33 +149b: c4 00 mov $00,a +149d: e8 0a mov a,#$0a +149f: c4 01 mov $01,a +14a1: 7d mov a,x +14a2: 5c lsr a +14a3: fd mov y,a +14a4: f7 00 mov a,($00)+y +14a6: 68 03 cmp a,#$03 +14a8: b0 72 bcs $151c +14aa: 2d push a +14ab: 60 clrc +14ac: 88 01 adc a,#$01 +14ae: d7 00 mov ($00)+y,a +14b0: e8 03 mov a,#$03 +14b2: cf mul ya +14b3: c4 00 mov $00,a +14b5: ae pop a +14b6: 60 clrc +14b7: 84 00 adc a,$00 +14b9: 1c asl a +14ba: 2d push a +14bb: e8 3f mov a,#$3f +14bd: c4 00 mov $00,a +14bf: e8 0a mov a,#$0a +14c1: c4 01 mov $01,a +14c3: ae pop a +14c4: 60 clrc +14c5: 84 00 adc a,$00 +14c7: c4 02 mov $02,a +14c9: 98 00 01 adc $01,#$00 +14cc: e4 01 mov a,$01 +14ce: c4 03 mov $03,a +14d0: eb cb mov y,$cb +14d2: f6 91 04 mov a,$0491+y +14d5: 8f 95 00 mov $00,#$95 +14d8: 8f 04 01 mov $01,#$04 +14db: 8d 00 mov y,#$00 +14dd: 77 00 cmp a,($00)+y +14df: f0 0a beq $14eb +14e1: 60 clrc +14e2: 98 11 00 adc $00,#$11 +14e5: 98 00 01 adc $01,#$00 +14e8: 5f dd 14 jmp $14dd + +14eb: fc inc y +14ec: f7 00 mov a,($00)+y +14ee: 2d push a +14ef: fc inc y +14f0: f7 00 mov a,($00)+y +14f2: c4 01 mov $01,a +14f4: ae pop a +14f5: c4 00 mov $00,a +14f7: 3f 36 14 call $1436 +14fa: 60 clrc +14fb: 84 00 adc a,$00 +14fd: c4 00 mov $00,a +14ff: 0d push psw +1500: 3f 36 14 call $1436 +1503: 8e pop psw +1504: 84 01 adc a,$01 +1506: c4 01 mov $01,a +1508: f4 19 mov a,$19+x +150a: 8d 00 mov y,#$00 +150c: d7 02 mov ($02)+y,a +150e: f4 1a mov a,$1a+x +1510: fc inc y +1511: d7 02 mov ($02)+y,a +1513: e4 00 mov a,$00 +1515: d4 19 mov $19+x,a +1517: e4 01 mov a,$01 +1519: d4 1a mov $1a+x,a +151b: 6f ret + +151c: 5f 1c 15 jmp $151c + +151f: e8 33 mov a,#$33 +1521: c4 02 mov $02,a +1523: e8 0a mov a,#$0a +1525: c4 03 mov $03,a +1527: 7d mov a,x +1528: 5c lsr a +1529: fd mov y,a +152a: f7 02 mov a,($02)+y +152c: f0 35 beq $1563 +152e: 9c dec a +152f: 2d push a +1530: e8 03 mov a,#$03 +1532: cf mul ya +1533: c4 00 mov $00,a +1535: ae pop a +1536: 2d push a +1537: 60 clrc +1538: 84 00 adc a,$00 +153a: fd mov y,a +153b: ae pop a +153c: 6d push y +153d: 2d push a +153e: 7d mov a,x +153f: 5c lsr a +1540: fd mov y,a +1541: ae pop a +1542: d7 02 mov ($02)+y,a +1544: ee pop y +1545: e8 3f mov a,#$3f +1547: c4 00 mov $00,a +1549: e8 0a mov a,#$0a +154b: c4 01 mov $01,a +154d: dd mov a,y +154e: 1c asl a +154f: 60 clrc +1550: 84 00 adc a,$00 +1552: c4 00 mov $00,a +1554: 98 00 01 adc $01,#$00 +1557: 8d 00 mov y,#$00 +1559: f7 00 mov a,($00)+y +155b: d4 19 mov $19+x,a +155d: fc inc y +155e: f7 00 mov a,($00)+y +1560: d4 1a mov $1a+x,a +1562: 6f ret + +1563: 5f 63 15 jmp $1563 + +1566: e8 27 mov a,#$27 +1568: c4 00 mov $00,a +156a: e8 0a mov a,#$0a +156c: c4 01 mov $01,a +156e: 7d mov a,x +156f: 5c lsr a +1570: fd mov y,a +1571: f7 00 mov a,($00)+y +1573: 68 03 cmp a,#$03 +1575: b0 4c bcs $15c3 +1577: 2d push a +1578: 60 clrc +1579: 88 01 adc a,#$01 +157b: d7 00 mov ($00)+y,a +157d: e8 03 mov a,#$03 +157f: cf mul ya +1580: c4 00 mov $00,a +1582: ae pop a +1583: 60 clrc +1584: 84 00 adc a,$00 +1586: fd mov y,a +1587: 6d push y +1588: 3f 36 14 call $1436 +158b: ee pop y +158c: 2d push a +158d: e8 03 mov a,#$03 +158f: c4 00 mov $00,a +1591: e8 0a mov a,#$0a +1593: c4 01 mov $01,a +1595: dd mov a,y +1596: 60 clrc +1597: 84 00 adc a,$00 +1599: c4 00 mov $00,a +159b: 98 00 01 adc $01,#$00 +159e: ae pop a +159f: 6d push y +15a0: 8d 00 mov y,#$00 +15a2: d7 00 mov ($00)+y,a +15a4: ee pop y +15a5: e8 bb mov a,#$bb +15a7: c4 00 mov $00,a +15a9: e8 09 mov a,#$09 +15ab: c4 01 mov $01,a +15ad: dd mov a,y +15ae: 1c asl a +15af: 60 clrc +15b0: 84 00 adc a,$00 +15b2: c4 00 mov $00,a +15b4: 98 00 01 adc $01,#$00 +15b7: f4 19 mov a,$19+x +15b9: 8d 00 mov y,#$00 +15bb: d7 00 mov ($00)+y,a +15bd: f4 1a mov a,$1a+x +15bf: fc inc y +15c0: d7 00 mov ($00)+y,a +15c2: 6f ret + +15c3: 5f c3 15 jmp $15c3 + +15c6: e8 27 mov a,#$27 +15c8: c4 02 mov $02,a +15ca: e8 0a mov a,#$0a +15cc: c4 03 mov $03,a +15ce: 7d mov a,x +15cf: 5c lsr a +15d0: fd mov y,a +15d1: f7 02 mov a,($02)+y +15d3: f0 50 beq $1625 +15d5: 9c dec a +15d6: 2d push a +15d7: e8 03 mov a,#$03 +15d9: cf mul ya +15da: c4 00 mov $00,a +15dc: ae pop a +15dd: 2d push a +15de: 60 clrc +15df: 84 00 adc a,$00 +15e1: fd mov y,a +15e2: e8 03 mov a,#$03 +15e4: c4 00 mov $00,a +15e6: e8 0a mov a,#$0a +15e8: c4 01 mov $01,a +15ea: dd mov a,y +15eb: 60 clrc +15ec: 84 00 adc a,$00 +15ee: c4 00 mov $00,a +15f0: 98 00 01 adc $01,#$00 +15f3: 6d push y +15f4: 8d 00 mov y,#$00 +15f6: f7 00 mov a,($00)+y +15f8: 9c dec a +15f9: d7 00 mov ($00)+y,a +15fb: ee pop y +15fc: ae pop a +15fd: d0 08 bne $1607 +15ff: 2d push a +1600: 7d mov a,x +1601: 5c lsr a +1602: fd mov y,a +1603: ae pop a +1604: d7 02 mov ($02)+y,a +1606: 6f ret + +1607: e8 bb mov a,#$bb +1609: c4 00 mov $00,a +160b: e8 09 mov a,#$09 +160d: c4 01 mov $01,a +160f: dd mov a,y +1610: 1c asl a +1611: 60 clrc +1612: 84 00 adc a,$00 +1614: c4 00 mov $00,a +1616: 98 00 01 adc $01,#$00 +1619: 8d 00 mov y,#$00 +161b: f7 00 mov a,($00)+y +161d: d4 19 mov $19+x,a +161f: fc inc y +1620: f7 00 mov a,($00)+y +1622: d4 1a mov $1a+x,a +1624: 6f ret + +1625: 5f 25 16 jmp $1625 + +1628: eb cb mov y,$cb +162a: f6 ba 0a mov a,$0aba+y +162d: f0 03 beq $1632 +162f: 5f 5c 14 jmp $145c + +1632: 3f 36 14 call $1436 +1635: 3f 36 14 call $1436 +1638: 6f ret + +1639: e5 99 0a mov a,$0a99 +163c: 1c asl a +163d: 5d mov x,a +163e: 1f 3f 16 jmp ($163f+x) + +1641: 63 16 28 bbs3 $16,$166c +1644: 19 or (x),(y) +1645: 8d 1a mov y,#$1a +1647: f2 1a clr7 $1a +1649: 61 tcall 6 +164a: 1b f2 asl $f2+x +164c: 1b ff asl $ff+x +164e: 1b 32 asl $32+x +1650: 1c asl a +1651: 69 1c 95 cmp ($95),($1c) +1654: 1c asl a +1655: bf mov a,(x)+ +1656: 1c asl a +1657: 27 1d and a,($1d+x) +1659: a1 tcall 10 +165a: 1d dec x +165b: bd mov sp,x +165c: 1d dec x +165d: d8 1d mov $1d,x +165f: 09 1e 46 or ($46),($1e) +1662: 1e e5 87 cmp x,$87e5 +1665: 0a 65 c9 or1 c,$0965,6 +1668: 0a f0 04 or1 c,$04f0,0 +166b: e8 00 mov a,#$00 +166d: 2f 0d bra $167c +166f: e5 88 0a mov a,$0a88 +1672: 28 80 and a,#$80 +1674: 65 ca 0a cmp a,$0aca +1677: d0 03 bne $167c +1679: 5f 61 18 jmp $1861 + +167c: c5 ca 0a mov $0aca,a +167f: e5 87 0a mov a,$0a87 +1682: c5 c9 0a mov $0ac9,a +1685: c4 00 mov $00,a +1687: 8d 00 mov y,#$00 +1689: cd 00 mov x,#$00 +168b: 8f 95 04 mov $04,#$95 +168e: 8f 04 05 mov $05,#$04 +1691: 77 04 cmp a,($04)+y +1693: f0 0f beq $16a4 +1695: 60 clrc +1696: 98 11 04 adc $04,#$11 +1699: 98 00 05 adc $05,#$00 +169c: 3d inc x +169d: c8 46 cmp x,#$46 +169f: 90 f0 bcc $1691 +16a1: 5f 61 18 jmp $1861 + +16a4: cd 00 mov x,#$00 +16a6: 8d 00 mov y,#$00 +16a8: ad 04 cmp y,#$04 +16aa: f0 0d beq $16b9 +16ac: f6 91 04 mov a,$0491+y +16af: fc inc y +16b0: 64 00 cmp a,$00 +16b2: d0 f4 bne $16a8 +16b4: 3d inc x +16b5: cb 02 mov $02,y +16b7: 2f ef bra $16a8 +16b9: e5 89 0a mov a,$0a89 +16bc: 28 0f and a,#$0f +16be: c4 01 mov $01,a +16c0: 3e 01 cmp x,$01 +16c2: 90 12 bcc $16d6 +16c4: eb 02 mov y,$02 +16c6: dc dec y +16c7: f6 b6 18 mov a,$18b6+y +16ca: c5 b1 0a mov $0ab1,a +16cd: f8 00 mov x,$00 +16cf: 4d push x +16d0: 3f 98 19 call $1998 +16d3: ce pop x +16d4: d8 00 mov $00,x +16d6: cd 00 mov x,#$00 +16d8: 8d 02 mov y,#$02 +16da: f7 04 mov a,($04)+y +16dc: f0 0a beq $16e8 +16de: 3d inc x +16df: c8 08 cmp x,#$08 +16e1: b0 05 bcs $16e8 +16e3: fc inc y +16e4: fc inc y +16e5: 5f da 16 jmp $16da + +16e8: d8 01 mov $01,x +16ea: 78 29 00 cmp $00,#$29 +16ed: b0 0c bcs $16fb +16ef: 8d 00 mov y,#$00 +16f1: f6 6d 04 mov a,$046d+y +16f4: 68 ff cmp a,#$ff +16f6: f0 23 beq $171b +16f8: 5f 61 18 jmp $1861 + +16fb: 8d 08 mov y,#$08 +16fd: cd 00 mov x,#$00 +16ff: f6 6d 04 mov a,$046d+y +1702: 68 ff cmp a,#$ff +1704: d0 01 bne $1707 +1706: 3d inc x +1707: fc inc y +1708: ad 0c cmp y,#$0c +170a: 90 f3 bcc $16ff +170c: 3e 01 cmp x,$01 +170e: b0 0b bcs $171b +1710: d8 02 mov $02,x +1712: fa 01 03 mov ($03),($01) +1715: 80 setc +1716: a9 02 03 sbc ($03),($02) +1719: 2f 0f bra $172a +171b: 8d 00 mov y,#$00 +171d: f6 91 04 mov a,$0491+y +1720: f0 37 beq $1759 +1722: fc inc y +1723: ad 04 cmp y,#$04 +1725: 90 f6 bcc $171d +1727: 8f 00 03 mov $03,#$00 +172a: e5 89 0a mov a,$0a89 +172d: 5c lsr a +172e: 5c lsr a +172f: 5c lsr a +1730: 5c lsr a +1731: c4 02 mov $02,a +1733: 3f ba 18 call $18ba +1736: b0 03 bcs $173b +1738: 5f 61 18 jmp $1861 + +173b: f8 00 mov x,$00 +173d: 4d push x +173e: f8 01 mov x,$01 +1740: 4d push x +1741: c5 b1 0a mov $0ab1,a +1744: 3f 98 19 call $1998 +1747: ce pop x +1748: d8 01 mov $01,x +174a: ce pop x +174b: d8 00 mov $00,x +174d: 8d 00 mov y,#$00 +174f: f6 91 04 mov a,$0491+y +1752: f0 05 beq $1759 +1754: fc inc y +1755: ad 03 cmp y,#$03 +1757: 90 f6 bcc $174f +1759: e5 89 0a mov a,$0a89 +175c: 5c lsr a +175d: 5c lsr a +175e: 5c lsr a +175f: 5c lsr a +1760: c4 02 mov $02,a +1762: e4 00 mov a,$00 +1764: d6 91 04 mov $0491+y,a +1767: e4 02 mov a,$02 +1769: d6 cb 0a mov $0acb+y,a +176c: e4 01 mov a,$01 +176e: d6 cf 0a mov $0acf+y,a +1771: cb 02 mov $02,y +1773: 78 29 00 cmp $00,#$29 +1776: b0 0e bcs $1786 +1778: cd 00 mov x,#$00 +177a: dd mov a,y +177b: d5 6d 04 mov $046d+x,a +177e: 3d inc x +177f: c8 08 cmp x,#$08 +1781: d0 f8 bne $177b +1783: 5f 9b 17 jmp $179b + +1786: cd 08 mov x,#$08 +1788: f5 6d 04 mov a,$046d+x +178b: 68 ff cmp a,#$ff +178d: d0 08 bne $1797 +178f: dd mov a,y +1790: d5 6d 04 mov $046d+x,a +1793: 8b 01 dec $01 +1795: f0 04 beq $179b +1797: 3d inc x +1798: 5f 88 17 jmp $1788 + +179b: 78 29 00 cmp $00,#$29 +179e: b0 21 bcs $17c1 +17a0: cb 00 mov $00,y +17a2: 8d 01 mov y,#$01 +17a4: cd 00 mov x,#$00 +17a6: e4 00 mov a,$00 +17a8: 4d push x +17a9: 7d mov a,x +17aa: 1c asl a +17ab: 5d mov x,a +17ac: f7 04 mov a,($04)+y +17ae: d5 79 04 mov $0479+x,a +17b1: fc inc y +17b2: f7 04 mov a,($04)+y +17b4: d5 7a 04 mov $047a+x,a +17b7: fc inc y +17b8: ce pop x +17b9: 3d inc x +17ba: c8 08 cmp x,#$08 +17bc: 90 e8 bcc $17a6 +17be: 5f ec 17 jmp $17ec + +17c1: cb 00 mov $00,y +17c3: 8d 01 mov y,#$01 +17c5: cd 08 mov x,#$08 +17c7: e4 00 mov a,$00 +17c9: 75 6d 04 cmp a,$046d+x +17cc: f0 08 beq $17d6 +17ce: 3d inc x +17cf: c8 0c cmp x,#$0c +17d1: b0 19 bcs $17ec +17d3: 5f c7 17 jmp $17c7 + +17d6: 4d push x +17d7: 7d mov a,x +17d8: 1c asl a +17d9: 5d mov x,a +17da: f7 04 mov a,($04)+y +17dc: d5 79 04 mov $0479+x,a +17df: fc inc y +17e0: f7 04 mov a,($04)+y +17e2: d5 7a 04 mov $047a+x,a +17e5: fc inc y +17e6: ce pop x +17e7: 3d inc x +17e8: c8 0c cmp x,#$0c +17ea: 90 db bcc $17c7 +17ec: f8 02 mov x,$02 +17ee: e8 00 mov a,#$00 +17f0: d5 ba 0a mov $0aba+x,a +17f3: f5 b6 18 mov a,$18b6+x +17f6: c4 02 mov $02,a +17f8: 3f 9e 18 call $189e +17fb: c5 b5 0a mov $0ab5,a +17fe: cd 00 mov x,#$00 +1800: e4 02 mov a,$02 +1802: 05 b5 0a or a,$0ab5 +1805: 45 b5 0a eor a,$0ab5 +1808: 5c lsr a +1809: 90 08 bcc $1813 +180b: 2d push a +180c: 4d push x +180d: 7d mov a,x +180e: 3f 6c 18 call $186c +1811: ce pop x +1812: ae pop a +1813: 3d inc x +1814: c8 04 cmp x,#$04 +1816: 90 f0 bcc $1808 +1818: e5 88 0a mov a,$0a88 +181b: 28 7f and a,#$7f +181d: f0 42 beq $1861 +181f: 5d mov x,a +1820: e4 02 mov a,$02 +1822: 05 b5 0a or a,$0ab5 +1825: 45 b5 0a eor a,$0ab5 +1828: 8d 00 mov y,#$00 +182a: c4 03 mov $03,a +182c: e4 03 mov a,$03 +182e: 5c lsr a +182f: c4 03 mov $03,a +1831: b0 17 bcs $184a +1833: fc inc y +1834: ad 04 cmp y,#$04 +1836: 90 f4 bcc $182c +1838: e5 02 00 mov a,$0002 +183b: 05 b5 0a or a,$0ab5 +183e: 45 b5 0a eor a,$0ab5 +1841: 05 9f 0a or a,$0a9f +1844: c5 9f 0a mov $0a9f,a +1847: 5f 61 18 jmp $1861 + +184a: 8f 61 00 mov $00,#$61 +184d: 8f 18 01 mov $01,#$18 +1850: 6d push y +1851: 7d mov a,x +1852: fd mov y,a +1853: f7 00 mov a,($00)+y +1855: ee pop y +1856: d6 a4 0a mov $0aa4+y,a +1859: e8 00 mov a,#$00 +185b: d6 c0 0a mov $0ac0+y,a +185e: 5f 33 18 jmp $1833 + +1861: 6f ret + +1862: 7f ret +i +1863: 3f 20 10 call $1020 +1866: 0c 08 06 asl $0608 +1869: 04 02 or a,$02 +186b: 01 tcall 0 +186c: 5d mov x,a +186d: e8 64 mov a,#$64 +186f: d5 c0 0a mov $0ac0+x,a +1872: e8 0a mov a,#$0a +1874: d5 c4 0a mov $0ac4+x,a +1877: 7d mov a,x +1878: 8d 00 mov y,#$00 +187a: 76 6d 04 cmp a,$046d+y +187d: f0 06 beq $1885 +187f: fc inc y +1880: ad 0c cmp y,#$0c +1882: 90 f6 bcc $187a +1884: 6f ret + +1885: d6 61 04 mov $0461+y,a +1888: 2d push a +1889: 6d push y +188a: dd mov a,y +188b: 1c asl a +188c: fd mov y,a +188d: f6 79 04 mov a,$0479+y +1890: d6 19 00 mov $0019+y,a +1893: f6 7a 04 mov a,$047a+y +1896: d6 1a 00 mov $001a+y,a +1899: ee pop y +189a: ae pop a +189b: 5f 7f 18 jmp $187f + +189e: cd 0b mov x,#$0b +18a0: 8f 00 00 mov $00,#$00 +18a3: f5 61 04 mov a,$0461+x +18a6: 30 08 bmi $18b0 +18a8: fd mov y,a +18a9: f6 b6 18 mov a,$18b6+y +18ac: 04 00 or a,$00 +18ae: c4 00 mov $00,a +18b0: 1d dec x +18b1: 10 f0 bpl $18a3 +18b3: e4 00 mov a,$00 +18b5: 6f ret + + +18b6: db $01,$02,$04,$08 + +18ba: f8 00 mov x,$00 +18bc: 4d push x +18bd: f8 02 mov x,$02 +18bf: 4d push x +18c0: f8 04 mov x,$04 +18c2: 4d push x +18c3: f8 05 mov x,$05 +18c5: 4d push x +18c6: cd 03 mov x,#$03 +18c8: f5 cb 0a mov a,$0acb+x +18cb: 64 02 cmp a,$02 +18cd: b0 02 bcs $18d1 +18cf: e8 00 mov a,#$00 +18d1: d4 04 mov $04+x,a +18d3: 1d dec x +18d4: 10 f2 bpl $18c8 +18d6: 8f 00 00 mov $00,#$00 +18d9: cd 02 mov x,#$02 +18db: 8d 03 mov y,#$03 +18dd: e4 07 mov a,$07 +18df: 74 04 cmp a,$04+x +18e1: f0 02 beq $18e5 +18e3: b0 04 bcs $18e9 +18e5: f4 04 mov a,$04+x +18e7: 4d push x +18e8: ee pop y +18e9: 1d dec x +18ea: 10 f3 bpl $18df +18ec: f6 cf 0a mov a,$0acf+y +18ef: 64 03 cmp a,$03 +18f1: b0 22 bcs $1915 +18f3: f0 20 beq $1915 +18f5: c4 02 mov $02,a +18f7: e4 04 mov a,$04 +18f9: 04 05 or a,$05 +18fb: 04 06 or a,$06 +18fd: 04 07 or a,$07 +18ff: f0 11 beq $1912 +1901: cd 00 mov x,#$00 +1903: d9 04 mov $04+y,x +1905: 80 setc +1906: a9 02 03 sbc ($03),($02) +1909: e4 00 mov a,$00 +190b: 16 b6 18 or a,$18b6+y +190e: c4 00 mov $00,a +1910: 2f c7 bra $18d9 +1912: 60 clrc +1913: 2f 06 bra $191b +1915: e4 00 mov a,$00 +1917: 16 b6 18 or a,$18b6+y +191a: 80 setc +191b: ce pop x +191c: d8 05 mov $05,x +191e: ce pop x +191f: d8 04 mov $04,x +1921: ce pop x +1922: d8 02 mov $02,x +1924: ce pop x +1925: d8 00 mov $00,x +1927: 6f ret + +1928: 3f 9e 18 call $189e +192b: 48 ff eor a,#$ff +192d: c5 b5 0a mov $0ab5,a +1930: e5 88 0a mov a,$0a88 +1933: 5d mov x,a +1934: d0 18 bne $194e +1936: e5 87 0a mov a,$0a87 +1939: d0 08 bne $1943 +193b: e8 ff mov a,#$ff +193d: c5 b1 0a mov $0ab1,a +1940: 5f 98 19 jmp $1998 + +1943: 3f 46 1a call $1a46 +1946: 90 4f bcc $1997 +1948: c5 b1 0a mov $0ab1,a +194b: 5f 98 19 jmp $1998 + +194e: e5 87 0a mov a,$0a87 +1951: d0 06 bne $1959 +1953: e8 0f mov a,#$0f +1955: c4 03 mov $03,a +1957: 2f 07 bra $1960 +1959: 3f 46 1a call $1a46 +195c: 90 39 bcc $1997 +195e: c4 03 mov $03,a +1960: 05 b5 0a or a,$0ab5 +1963: 45 b5 0a eor a,$0ab5 +1966: 8d 00 mov y,#$00 +1968: c4 02 mov $02,a +196a: e4 02 mov a,$02 +196c: 5c lsr a +196d: c4 02 mov $02,a +196f: b0 14 bcs $1985 +1971: fc inc y +1972: ad 04 cmp y,#$04 +1974: 90 f4 bcc $196a +1976: e4 03 mov a,$03 +1978: 05 b5 0a or a,$0ab5 +197b: 45 b5 0a eor a,$0ab5 +197e: 05 a8 0a or a,$0aa8 +1981: c5 a8 0a mov $0aa8,a +1984: 6f ret + +1985: 8f 61 00 mov $00,#$61 +1988: 8f 18 01 mov $01,#$18 +198b: 6d push y +198c: 7d mov a,x +198d: fd mov y,a +198e: f7 00 mov a,($00)+y +1990: ee pop y +1991: d6 ad 0a mov $0aad+y,a +1994: 5f 71 19 jmp $1971 + +1997: 6f ret + +1998: f8 cb mov x,$cb +199a: 4d push x +199b: 8d 00 mov y,#$00 +199d: 5c lsr a +199e: 90 09 bcc $19a9 +19a0: 2d push a +19a1: 6d push y +19a2: cb cb mov $cb,y +19a4: 3f cc 11 call $11cc +19a7: ee pop y +19a8: ae pop a +19a9: fc inc y +19aa: ad 04 cmp y,#$04 +19ac: 90 ef bcc $199d +19ae: ce pop x +19af: d8 cb mov $cb,x +19b1: cd 00 mov x,#$00 +19b3: d8 03 mov $03,x +19b5: e5 b1 0a mov a,$0ab1 +19b8: 48 ff eor a,#$ff +19ba: 25 a8 0a and a,$0aa8 +19bd: c5 a8 0a mov $0aa8,a +19c0: e5 b1 0a mov a,$0ab1 +19c3: 5c lsr a +19c4: 90 08 bcc $19ce +19c6: 2d push a +19c7: 4d push x +19c8: 7d mov a,x +19c9: 3f dd 19 call $19dd +19cc: ce pop x +19cd: ae pop a +19ce: 3d inc x +19cf: c8 04 cmp x,#$04 +19d1: 90 f0 bcc $19c3 +19d3: e4 03 mov a,$03 +19d5: c4 35 mov $35,a +19d7: e8 00 mov a,#$00 +19d9: c5 b1 0a mov $0ab1,a +19dc: 6f ret + +19dd: fd mov y,a +19de: 3f ff 1b call $1bff +19e1: 8d 00 mov y,#$00 +19e3: 76 61 04 cmp a,$0461+y +19e6: f0 06 beq $19ee +19e8: fc inc y +19e9: ad 0c cmp y,#$0c +19eb: 90 f6 bcc $19e3 +19ed: 6f ret + +19ee: 2d push a +19ef: 3f 05 12 call $1205 +19f2: ae pop a +19f3: 3f 2a 1a call $1a2a +19f6: 2d push a +19f7: 6d push y +19f8: e8 ff mov a,#$ff +19fa: d6 61 04 mov $0461+y,a +19fd: dd mov a,y +19fe: 1c asl a +19ff: fd mov y,a +1a00: e8 00 mov a,#$00 +1a02: d6 19 00 mov $0019+y,a +1a05: d6 1a 00 mov $001a+y,a +1a08: ee pop y +1a09: 6d push y +1a0a: dd mov a,y +1a0b: 68 08 cmp a,#$08 +1a0d: 90 09 bcc $1a18 +1a0f: 80 setc +1a10: a8 08 sbc a,#$08 +1a12: 48 03 eor a,#$03 +1a14: 60 clrc +1a15: 88 04 adc a,#$04 +1a17: fd mov y,a +1a18: fc inc y +1a19: 8f 00 02 mov $02,#$00 +1a1c: 80 setc +1a1d: 2b 02 rol $02 +1a1f: dc dec y +1a20: d0 fb bne $1a1d +1a22: 09 02 03 or ($03),($02) +1a25: ee pop y +1a26: ae pop a +1a27: 5f e8 19 jmp $19e8 + +1a2a: 2d push a +1a2b: 5d mov x,a +1a2c: e8 00 mov a,#$00 +1a2e: d5 a0 0a mov $0aa0+x,a +1a31: d5 a4 0a mov $0aa4+x,a +1a34: c4 02 mov $02,a +1a36: 3d inc x +1a37: 80 setc +1a38: 3c rol a +1a39: 1d dec x +1a3a: d0 fc bne $1a38 +1a3c: 48 ff eor a,#$ff +1a3e: 25 9f 0a and a,$0a9f +1a41: c5 9f 0a mov $0a9f,a +1a44: ae pop a +1a45: 6f ret + +1a46: eb 00 mov y,$00 +1a48: 6d push y +1a49: eb 01 mov y,$01 +1a4b: 6d push y +1a4c: c4 00 mov $00,a +1a4e: 8f 00 01 mov $01,#$00 +1a51: e5 b5 0a mov a,$0ab5 +1a54: 8d 00 mov y,#$00 +1a56: ad 04 cmp y,#$04 +1a58: f0 18 beq $1a72 +1a5a: 5c lsr a +1a5b: fc inc y +1a5c: b0 f8 bcs $1a56 +1a5e: 2d push a +1a5f: f6 90 04 mov a,$0490+y +1a62: 64 00 cmp a,$00 +1a64: ae pop a +1a65: d0 ef bne $1a56 +1a67: 2d push a +1a68: f6 b5 18 mov a,$18b5+y +1a6b: 04 01 or a,$01 +1a6d: c4 01 mov $01,a +1a6f: ae pop a +1a70: 2f e4 bra $1a56 +1a72: 60 clrc +1a73: e4 01 mov a,$01 +1a75: f0 01 beq $1a78 +1a77: 80 setc +1a78: ee pop y +1a79: cb 01 mov $01,y +1a7b: ee pop y +1a7c: cb 00 mov $00,y +1a7e: 6f ret + +1a7f: 6d push y +1a80: 8d 00 mov y,#$00 +1a82: 68 00 cmp a,#$00 +1a84: f0 04 beq $1a8a +1a86: 5c lsr a +1a87: fc inc y +1a88: 90 fc bcc $1a86 +1a8a: dd mov a,y +1a8b: ee pop y +1a8c: 6f ret + +1a8d: 3f 9e 18 call $189e +1a90: 48 ff eor a,#$ff +1a92: c5 b5 0a mov $0ab5,a +1a95: e8 00 mov a,#$00 +1a97: c4 04 mov $04,a +1a99: e5 88 0a mov a,$0a88 +1a9c: c4 00 mov $00,a +1a9e: e5 87 0a mov a,$0a87 +1aa1: f0 11 beq $1ab4 +1aa3: 3f 46 1a call $1a46 +1aa6: 90 1a bcc $1ac2 +1aa8: 3f 7f 1a call $1a7f +1aab: 9c dec a +1aac: 5d mov x,a +1aad: e4 00 mov a,$00 +1aaf: d5 c0 0a mov $0ac0+x,a +1ab2: 7d mov a,x +1ab3: 6f ret + +1ab4: e4 00 mov a,$00 +1ab6: c5 c0 0a mov $0ac0,a +1ab9: c5 c1 0a mov $0ac1,a +1abc: c5 c2 0a mov $0ac2,a +1abf: c5 c3 0a mov $0ac3,a +1ac2: 6f ret + +1ac3: 4d push x +1ac4: 78 00 00 cmp $00,#$00 +1ac7: f0 20 beq $1ae9 +1ac9: cd 64 mov x,#$64 +1acb: 8d 00 mov y,#$00 +1acd: 9e div ya,x +1ace: c4 02 mov $02,a +1ad0: e8 00 mov a,#$00 +1ad2: 9e div ya,x +1ad3: eb 00 mov y,$00 +1ad5: cf mul ya +1ad6: cb 03 mov $03,y +1ad8: e4 02 mov a,$02 +1ada: eb 00 mov y,$00 +1adc: cf mul ya +1add: ad 00 cmp y,#$00 +1adf: d0 0d bne $1aee +1ae1: 60 clrc +1ae2: 84 03 adc a,$03 +1ae4: b0 08 bcs $1aee +1ae6: 5f f0 1a jmp $1af0 + +1ae9: e8 00 mov a,#$00 +1aeb: 5f f0 1a jmp $1af0 + +1aee: e8 ff mov a,#$ff +1af0: ce pop x +1af1: 6f ret + +1af2: 3f 9e 18 call $189e +1af5: 48 ff eor a,#$ff +1af7: c5 b5 0a mov $0ab5,a +1afa: e5 87 0a mov a,$0a87 +1afd: f0 12 beq $1b11 +1aff: 3f 46 1a call $1a46 +1b02: 90 1c bcc $1b20 +1b04: 3f 7f 1a call $1a7f +1b07: fd mov y,a +1b08: dc dec y +1b09: e5 88 0a mov a,$0a88 +1b0c: d6 c4 0a mov $0ac4+y,a +1b0f: 2f 0f bra $1b20 +1b11: e5 88 0a mov a,$0a88 +1b14: c5 c4 0a mov $0ac4,a +1b17: c5 c5 0a mov $0ac5,a +1b1a: c5 c6 0a mov $0ac6,a +1b1d: c5 c7 0a mov $0ac7,a +1b20: 6f ret + +1b21: 78 0a 00 cmp $00,#$0a +1b24: f0 3a beq $1b60 +1b26: 90 26 bcc $1b4e +1b28: 2d push a +1b29: 80 setc +1b2a: e8 14 mov a,#$14 +1b2c: a4 00 sbc a,$00 +1b2e: c4 01 mov $01,a +1b30: cf mul ya +1b31: ae pop a +1b32: cb 02 mov $02,y +1b34: eb 01 mov y,$01 +1b36: cf mul ya +1b37: 60 clrc +1b38: 84 02 adc a,$02 +1b3a: 8d 00 mov y,#$00 +1b3c: cd 0a mov x,#$0a +1b3e: 9e div ya,x +1b3f: 2d push a +1b40: e4 00 mov a,$00 +1b42: 80 setc +1b43: a4 01 sbc a,$01 +1b45: c4 01 mov $01,a +1b47: ae pop a +1b48: 60 clrc +1b49: 84 01 adc a,$01 +1b4b: 5f 60 1b jmp $1b60 + +1b4e: 2d push a +1b4f: e4 00 mov a,$00 +1b51: cf mul ya +1b52: ae pop a +1b53: cb 02 mov $02,y +1b55: eb 00 mov y,$00 +1b57: cf mul ya +1b58: 60 clrc +1b59: 84 02 adc a,$02 +1b5b: 8d 00 mov y,#$00 +1b5d: cd 0a mov x,#$0a +1b5f: 9e div ya,x +1b60: 6f ret + +1b61: e5 87 0a mov a,$0a87 +1b64: f0 51 beq $1bb7 +1b66: 3f 9e 18 call $189e +1b69: 48 ff eor a,#$ff +1b6b: c5 b5 0a mov $0ab5,a +1b6e: e5 88 0a mov a,$0a88 +1b71: d0 18 bne $1b8b +1b73: e5 87 0a mov a,$0a87 +1b76: 3f 46 1a call $1a46 +1b79: 90 3b bcc $1bb6 +1b7b: 3f 7f 1a call $1a7f +1b7e: 5d mov x,a +1b7f: f5 99 0a mov a,$0a99+x +1b82: 2d push a +1b83: 7d mov a,x +1b84: 9c dec a +1b85: 1c asl a +1b86: 5d mov x,a +1b87: ae pop a +1b88: d4 d7 mov $d7+x,a +1b8a: 6f ret + +1b8b: e9 87 0a mov x,$0a87 +1b8e: 2d push a +1b8f: 7d mov a,x +1b90: 3f 46 1a call $1a46 +1b93: 90 20 bcc $1bb5 +1b95: 3f 7f 1a call $1a7f +1b98: 9c dec a +1b99: 1c asl a +1b9a: 5d mov x,a +1b9b: ae pop a +1b9c: c4 00 mov $00,a +1b9e: e3 00 0a bbs7 $00,$1bab +1ba1: 60 clrc +1ba2: 94 d7 adc a,$d7+x +1ba4: 90 0c bcc $1bb2 +1ba6: e8 ff mov a,#$ff +1ba8: 5f b2 1b jmp $1bb2 + +1bab: 60 clrc +1bac: 94 d7 adc a,$d7+x +1bae: b0 02 bcs $1bb2 +1bb0: e8 01 mov a,#$01 +1bb2: d4 d7 mov $d7+x,a +1bb4: 6f ret + +1bb5: ae pop a +1bb6: 6f ret + +1bb7: e5 88 0a mov a,$0a88 +1bba: f0 21 beq $1bdd +1bbc: e5 88 0a mov a,$0a88 +1bbf: cd 00 mov x,#$00 +1bc1: 3f 9c 1b call $1b9c +1bc4: e5 88 0a mov a,$0a88 +1bc7: cd 02 mov x,#$02 +1bc9: 3f 9c 1b call $1b9c +1bcc: e5 88 0a mov a,$0a88 +1bcf: cd 04 mov x,#$04 +1bd1: 3f 9c 1b call $1b9c +1bd4: e5 88 0a mov a,$0a88 +1bd7: cd 06 mov x,#$06 +1bd9: 3f 9c 1b call $1b9c +1bdc: 6f ret + +1bdd: e5 9a 0a mov a,$0a9a +1be0: c4 d7 mov $d7,a +1be2: e5 9b 0a mov a,$0a9b +1be5: c4 d9 mov $d9,a +1be7: e5 9c 0a mov a,$0a9c +1bea: c4 db mov $db,a +1bec: e5 9d 0a mov a,$0a9d +1bef: c4 dd mov $dd,a +1bf1: 6f ret + +1bf2: c4 f7 mov $f7,a +1bf4: c4 00 mov $00,a +1bf6: 8f 00 f4 mov $f4,#$00 +1bf9: 8f 00 f5 mov $f5,#$00 +1bfc: 5f 2f 0e jmp $0e2f + +1bff: 2d push a +1c00: e8 00 mov a,#$00 +1c02: d6 91 04 mov $0491+y,a +1c05: dd mov a,y +1c06: 1c asl a +1c07: 5d mov x,a +1c08: e8 20 mov a,#$20 +1c0a: d4 d7 mov $d7+x,a +1c0c: e8 00 mov a,#$00 +1c0e: 3d inc x +1c0f: d4 d7 mov $d7+x,a +1c11: cd 00 mov x,#$00 +1c13: dd mov a,y +1c14: 75 6d 04 cmp a,$046d+x +1c17: d0 12 bne $1c2b +1c19: e8 ff mov a,#$ff +1c1b: d5 6d 04 mov $046d+x,a +1c1e: 4d push x +1c1f: 7d mov a,x +1c20: 1c asl a +1c21: 5d mov x,a +1c22: e8 00 mov a,#$00 +1c24: d5 79 04 mov $0479+x,a +1c27: d5 7a 04 mov $047a+x,a +1c2a: ce pop x +1c2b: 3d inc x +1c2c: c8 0c cmp x,#$0c +1c2e: 90 e3 bcc $1c13 +1c30: ae pop a +1c31: 6f ret + +1c32: cd 00 mov x,#$00 +1c34: e8 ff mov a,#$ff +1c36: d5 61 04 mov $0461+x,a +1c39: d5 6d 04 mov $046d+x,a +1c3c: 3d inc x +1c3d: c8 0c cmp x,#$0c +1c3f: 90 f5 bcc $1c36 +1c41: 8f 00 ce mov $ce,#$00 +1c44: 8f 26 cf mov $cf,#$26 +1c47: cd 00 mov x,#$00 +1c49: 8d 00 mov y,#$00 +1c4b: e8 00 mov a,#$00 +1c4d: 8f 95 04 mov $04,#$95 +1c50: 8f 04 05 mov $05,#$04 +1c53: d7 04 mov ($04)+y,a +1c55: fc inc y +1c56: ad 11 cmp y,#$11 +1c58: 90 f9 bcc $1c53 +1c5a: 60 clrc +1c5b: 98 11 04 adc $04,#$11 +1c5e: 98 00 05 adc $05,#$00 +1c61: 8d 00 mov y,#$00 +1c63: 3d inc x +1c64: c8 46 cmp x,#$46 +1c66: 90 eb bcc $1c53 +1c68: 6f ret + +1c69: e8 00 mov a,#$00 +1c6b: c4 d3 mov $d3,a +1c6d: c4 d1 mov $d1,a +1c6f: e8 45 mov a,#$45 +1c71: c4 d4 mov $d4,a +1c73: c4 d2 mov $d2,a +1c75: e8 00 mov a,#$00 +1c77: c4 00 mov $00,a +1c79: e8 43 mov a,#$43 +1c7b: c4 01 mov $01,a +1c7d: e8 00 mov a,#$00 +1c7f: 8d 00 mov y,#$00 +1c81: d7 00 mov ($00)+y,a +1c83: 78 ff 00 cmp $00,#$ff +1c86: d0 07 bne $1c8f +1c88: 78 44 01 cmp $01,#$44 +1c8b: f0 07 beq $1c94 +1c8d: ab 01 inc $01 +1c8f: ab 00 inc $00 +1c91: 5f 81 1c jmp $1c81 + +1c94: 6f ret + +1c95: 3f 9e 18 call $189e +1c98: 48 ff eor a,#$ff +1c9a: c5 b5 0a mov $0ab5,a +1c9d: e5 87 0a mov a,$0a87 +1ca0: f0 1c beq $1cbe +1ca2: 3f 46 1a call $1a46 +1ca5: 90 0d bcc $1cb4 +1ca7: 3f 7f 1a call $1a7f +1caa: 9c dec a +1cab: 8d 08 mov y,#$08 +1cad: 76 60 04 cmp a,$0460+y +1cb0: f0 07 beq $1cb9 +1cb2: fe f9 dbnz y,$1cad +1cb4: e8 01 mov a,#$01 +1cb6: 5f f2 1b jmp $1bf + +1cb9: e8 02 mov a,#$02 +1cbb: 5f f2 1b jmp $1bf2 + +1cbe: 6f ret + +1cbf: fa ce cc mov ($cc),($ce) +1cc2: fa cf cd mov ($cd),($cf) +1cc5: cd 00 mov x,#$00 +1cc7: 8d 00 mov y,#$00 +1cc9: 8f 95 04 mov $04,#$95 +1ccc: 8f 04 05 mov $05,#$04 +1ccf: f7 04 mov a,($04)+y +1cd1: f0 11 beq $1ce4 +1cd3: 60 clrc +1cd4: 98 11 04 adc $04,#$11 +1cd7: 98 00 05 adc $05,#$00 +1cda: 3d inc x +1cdb: c8 46 cmp x,#$46 +1cdd: 90 f0 bcc $1ccf +1cdf: e8 02 mov a,#$02 +1ce1: 5f 24 1d jmp $1d24 + +1ce4: e5 87 0a mov a,$0a87 +1ce7: d7 04 mov ($04)+y,a +1ce9: e9 88 0a mov x,$0a88 +1cec: c9 b6 0a mov $0ab6,x +1cef: fa cc 00 mov ($00),($cc) +1cf2: fa cd 01 mov ($01),($cd) +1cf5: e4 00 mov a,$00 +1cf7: fc inc y +1cf8: d7 04 mov ($04)+y,a +1cfa: e4 01 mov a,$01 +1cfc: fc inc y +1cfd: d7 04 mov ($04)+y,a +1cff: 60 clrc +1d00: f6 87 0a mov a,$0a87+y +1d03: 84 00 adc a,$00 +1d05: c4 00 mov $00,a +1d07: f6 88 0a mov a,$0a88+y +1d0a: 84 01 adc a,$01 +1d0c: c4 01 mov $01,a +1d0e: 1d dec x +1d0f: d0 e4 bne $1cf5 +1d11: fa 00 ce mov ($ce),($00) +1d14: fa 01 cf mov ($cf),($01) +1d17: fa cc 0b mov ($0b),($cc) +1d1a: fa cd 0c mov ($0c),($cd) +1d1d: e8 01 mov a,#$01 +1d1f: c5 b7 0a mov $0ab7,a +1d22: e8 01 mov a,#$01 +1d24: c4 f7 mov $f7,a +1d26: 6f ret + +1d27: e9 87 0a mov x,$0a87 +1d2a: 7d mov a,x +1d2b: 8d 04 mov y,#$04 +1d2d: cf mul ya +1d2e: 8f 00 00 mov $00,#$00 +1d31: 8f 43 01 mov $01,#$43 +1d34: 60 clrc +1d35: 7a 00 addw ya,$00 +1d37: da 00 movw $00,ya +1d39: 8d 01 mov y,#$01 +1d3b: f7 00 mov a,($00)+y +1d3d: d0 5e bne $1d9d +1d3f: dc dec y +1d40: e4 d3 mov a,$d3 +1d42: d7 00 mov ($00)+y,a +1d44: c4 d1 mov $d1,a +1d46: e4 d4 mov a,$d4 +1d48: fc inc y +1d49: d7 00 mov ($00)+y,a +1d4b: c4 d2 mov $d2,a +1d4d: c9 bf 0a mov $0abf,x +1d50: 60 clrc +1d51: e4 d3 mov a,$d3 +1d53: 85 8f 0a adc a,$0a8f +1d56: fc inc y +1d57: d7 00 mov ($00)+y,a +1d59: e4 d4 mov a,$d4 +1d5b: 85 90 0a adc a,$0a90 +1d5e: fc inc y +1d5f: d7 00 mov ($00)+y,a +1d61: 60 clrc +1d62: e5 8d 0a mov a,$0a8d +1d65: 84 d3 adc a,$d3 +1d67: c4 d3 mov $d3,a +1d69: e5 8e 0a mov a,$0a8e +1d6c: 84 d4 adc a,$d4 +1d6e: c4 d4 mov $d4,a +1d70: 7d mov a,x +1d71: 8d 06 mov y,#$06 +1d73: cf mul ya +1d74: 8f 00 00 mov $00,#$00 +1d77: 8f 40 01 mov $01,#$40 +1d7a: 60 clrc +1d7b: 7a 00 addw ya,$00 +1d7d: da 00 movw $00,ya +1d7f: 8d 00 mov y,#$00 +1d81: cd 00 mov x,#$00 +1d83: f5 87 0a mov a,$0a87+x +1d86: d7 00 mov ($00)+y,a +1d88: 3d inc x +1d89: fc inc y +1d8a: ad 06 cmp y,#$06 +1d8c: 90 f5 bcc $1d83 +1d8e: fa d1 0b mov ($0b),($d1) +1d91: fa d2 0c mov ($0c),($d2) +1d94: e8 01 mov a,#$01 +1d96: c5 b8 0a mov $0ab8,a +1d99: 8f 01 f7 mov $f7,#$01 +1d9c: 6f ret + +1d9d: 8f 02 f7 mov $f7,#$02 +1da0: 6f ret + +1da1: e8 00 mov a,#$00 +1da3: ec 87 0a mov y,$0a87 +1da6: 80 setc +1da7: 3c rol a +1da8: fe fd dbnz y,$1da7 +1daa: ec 88 0a mov y,$0a88 +1dad: d0 05 bne $1db4 +1daf: 05 b9 0a or a,$0ab9 +1db2: 2f 05 bra $1db9 +1db4: 48 ff eor a,#$ff +1db6: 25 b9 0a and a,$0ab9 +1db9: c5 b9 0a mov $0ab9,a +1dbc: 6f ret + +1dbd: 3f 9e 18 call $189e +1dc0: 48 ff eor a,#$ff +1dc2: c5 b5 0a mov $0ab5,a +1dc5: e5 87 0a mov a,$0a87 +1dc8: 3f 46 1a call $1a46 +1dcb: 90 0a bcc $1dd7 +1dcd: 3f 7f 1a call $1a7f +1dd0: fd mov y,a +1dd1: dc dec y +1dd2: e8 01 mov a,#$01 +1dd4: d6 ba 0a mov $0aba+y,a +1dd7: 6f ret + +1dd8: cd 00 mov x,#$00 +1dda: 8d 00 mov y,#$00 +1ddc: 8f 95 04 mov $04,#$95 +1ddf: 8f 04 05 mov $05,#$04 +1de2: f7 04 mov a,($04)+y +1de4: f0 0c beq $1df2 +1de6: 60 clrc +1de7: 98 11 04 adc $04,#$11 +1dea: 98 00 05 adc $05,#$00 +1ded: 3d inc x +1dee: c8 46 cmp x,#$46 +1df0: 90 f0 bcc $1de2 +1df2: 80 setc +1df3: b8 11 04 sbc $04,#$11 +1df6: b8 00 05 sbc $05,#$00 +1df9: e8 00 mov a,#$00 +1dfb: 8d 10 mov y,#$10 +1dfd: d7 04 mov ($04)+y,a +1dff: dc dec y +1e00: 10 fb bpl $1dfd +1e02: fa cc ce mov ($ce),($cc) +1e05: fa cd cf mov ($cf),($cd) +1e08: 6f ret + +1e09: fa d1 d3 mov ($d3),($d1) +1e0c: fa d2 d4 mov ($d4),($d2) +1e0f: e5 bf 0a mov a,$0abf +1e12: 8d 04 mov y,#$04 +1e14: cf mul ya +1e15: 8f 00 00 mov $00,#$00 +1e18: 8f 43 01 mov $01,#$43 +1e1b: 60 clrc +1e1c: 7a 00 addw ya,$00 +1e1e: da 00 movw $00,ya +1e20: 8d 03 mov y,#$03 +1e22: e8 00 mov a,#$00 +1e24: d7 00 mov ($00)+y,a +1e26: fe fc dbnz y,$1e24 +1e28: d7 00 mov ($00)+y,a +1e2a: e5 bf 0a mov a,$0abf +1e2d: 8d 06 mov y,#$06 +1e2f: cf mul ya +1e30: 8f 00 00 mov $00,#$00 +1e33: 8f 40 01 mov $01,#$40 +1e36: 60 clrc +1e37: 7a 00 addw ya,$00 +1e39: da 00 movw $00,ya +1e3b: 8d 05 mov y,#$05 +1e3d: e8 00 mov a,#$00 +1e3f: d7 00 mov ($00)+y,a +1e41: fe fc dbnz y,$1e3f +1e43: d7 00 mov ($00)+y,a +1e45: 6f ret + +1e46: e5 87 0a mov a,$0a87 +1e49: c5 c8 0a mov $0ac8,a +1e4c: 6f ret + +; vcmd fb - set quantization +1e4d: 2d push a +1e4e: 9f xcn a +1e4f: 28 07 and a,#$07 +1e51: fd mov y,a +1e52: f6 9d 25 mov a,$259d+y ; note dur%'s +1e55: d5 0d 02 mov $020d+x,a +1e58: ae pop a +1e59: 28 0f and a,#$0f +1e5b: fd mov y,a +1e5c: f6 a5 25 mov a,$25a5+y ; per-note velocity values +1e5f: d5 24 02 mov $0224+x,a +1e62: 6f ret + +; vcmd e0 - set instrument +1e63: d5 25 02 mov $0225+x,a +1e66: fd mov y,a +1e67: 10 06 bpl $1e6f +1e69: 80 setc +1e6a: a8 ca sbc a,#$ca +1e6c: 60 clrc +1e6d: 84 46 adc a,$46 +1e6f: 8d 06 mov y,#$06 +1e71: cf mul ya +1e72: da 14 movw $14,ya +1e74: 60 clrc +1e75: 98 00 14 adc $14,#$00 +1e78: 98 40 15 adc $15,#$40 +1e7b: e4 18 mov a,$18 +1e7d: 24 36 and a,$36 +1e7f: d0 5f bne $1ee0 +1e81: 4d push x +1e82: 7d mov a,x +1e83: 5c lsr a +1e84: 68 08 cmp a,#$08 +1e86: 90 0d bcc $1e95 +1e88: 80 setc +1e89: a8 08 sbc a,#$08 +1e8b: 48 03 eor a,#$03 +1e8d: 60 clrc +1e8e: 88 04 adc a,#$04 +1e90: 1c asl a +1e91: 5d mov x,a +1e92: 5f a8 1e jmp $1ea8 + +1e95: 68 04 cmp a,#$04 +1e97: 90 0f bcc $1ea8 +1e99: 80 setc +1e9a: a8 04 sbc a,#$04 +1e9c: 48 03 eor a,#$03 +1e9e: fd mov y,a +1e9f: f6 69 04 mov a,$0469+y +1ea2: 30 04 bmi $1ea8 +1ea4: ce pop x +1ea5: 5f e0 1e jmp $1ee0 + +1ea8: 7d mov a,x +1ea9: 9f xcn a +1eaa: 5c lsr a +1eab: 08 04 or a,#$04 +1ead: 5d mov x,a +1eae: 8d 00 mov y,#$00 +1eb0: f7 14 mov a,($14)+y +1eb2: 10 0f bpl $1ec3 +1eb4: 28 1f and a,#$1f +1eb6: 38 20 37 and $37,#$20 +1eb9: 0e 37 00 tset1 $0037 +1ebc: 09 36 38 or ($38),($36) +1ebf: dd mov a,y +1ec0: 5f ca 1e jmp $1eca + +1ec3: e4 36 mov a,$36 +1ec5: 4e 38 00 tclr1 $0038 +1ec8: f7 14 mov a,($14)+y +1eca: d8 f2 mov $f2,x +1ecc: c4 f3 mov $f3,a +1ece: 3d inc x +1ecf: fc inc y +1ed0: ad 04 cmp y,#$04 +1ed2: d0 f4 bne $1ec8 +1ed4: ce pop x +1ed5: f7 14 mov a,($14)+y +1ed7: d5 3d 02 mov $023d+x,a +1eda: fc inc y +1edb: f7 14 mov a,($14)+y +1edd: d5 3c 02 mov $023c+x,a +1ee0: 6f ret + +; vcmd e1 - pan +1ee1: d5 e5 03 mov $03e5+x,a +1ee4: 28 1f and a,#$1f +1ee6: d5 b5 03 mov $03b5+x,a +1ee9: e8 00 mov a,#$00 +1eeb: d5 b4 03 mov $03b4+x,a +1eee: 6f ret + +; vcmd e2 - pan fade +1eef: d4 83 mov $83+x,a +1ef1: 2d push a +1ef2: 3f 36 14 call $1436 +1ef5: d5 e4 03 mov $03e4+x,a +1ef8: 80 setc +1ef9: b5 b5 03 sbc a,$03b5+x +1efc: ce pop x +1efd: 3f 8e 21 call $218e +1f00: d5 cc 03 mov $03cc+x,a +1f03: dd mov a,y +1f04: d5 cd 03 mov $03cd+x,a +1f07: 6f ret + +; vcmd e3 - vibrato on +1f08: d5 f4 02 mov $02f4+x,a +1f0b: 3f 36 14 call $1436 +1f0e: d5 dd 02 mov $02dd+x,a +1f11: 3f 36 14 call $1436 +; vcmd e4 - vibrato off +1f14: d4 b3 mov $b3+x,a +1f16: d5 0d 03 mov $030d+x,a +1f19: e8 00 mov a,#$00 +1f1b: d5 f5 02 mov $02f5+x,a +1f1e: 6f ret + +; vcmd f0 - vibrato fade +1f1f: d5 f5 02 mov $02f5+x,a +1f22: 2d push a +1f23: 8d 00 mov y,#$00 +1f25: f4 b3 mov a,$b3+x +1f27: ce pop x +1f28: 9e div ya,x +1f29: f8 33 mov x,$33 +1f2b: d5 0c 03 mov $030c+x,a +1f2e: 6f ret + +; vcmd e5 - master volume +1f2f: e8 00 mov a,#$00 +1f31: da 3f movw $3f,ya +1f33: 6f ret + +; vcmd e6 - master volume fade +1f34: c4 41 mov $41,a +1f36: 3f 36 14 call $1436 +1f39: c4 42 mov $42,a +1f3b: 80 setc +1f3c: a4 40 sbc a,$40 +1f3e: f8 41 mov x,$41 +1f40: 3f 8e 21 call $218e +1f43: da 43 movw $43,ya +1f45: 6f ret + +; vcmd e7 - tempo +1f46: 4d push x +1f47: e4 cb mov a,$cb +1f49: 1c asl a +1f4a: 5d mov x,a +1f4b: e8 00 mov a,#$00 +1f4d: d4 d6 mov $d6+x,a +1f4f: dd mov a,y +1f50: d4 d7 mov $d7+x,a +1f52: 7d mov a,x +1f53: 5c lsr a +1f54: 5d mov x,a +1f55: dd mov a,y +1f56: d5 9a 0a mov $0a9a+x,a +1f59: ce pop x +1f5a: 6f ret + +; vcmd e8 - tempo fade +1f5b: 2d push a +1f5c: e4 cb mov a,$cb +1f5e: 1c asl a +1f5f: 5d mov x,a +1f60: ae pop a +1f61: d4 de mov $de+x,a +1f63: 4d push x +1f64: 3f 36 14 call $1436 +1f67: ce pop x +1f68: d4 df mov $df+x,a +1f6a: 80 setc +1f6b: b4 d7 sbc a,$d7+x +1f6d: f4 de mov a,$de+x +1f6f: 4d push x +1f70: 5d mov x,a +1f71: 3f 8e 21 call $218e +1f74: ce pop x +1f75: cb 00 mov $00,y +1f77: 2d push a +1f78: e4 00 mov a,$00 +1f7a: d4 e7 mov $e7+x,a +1f7c: ae pop a +1f7d: d4 e6 mov $e6+x,a +1f7f: 6f ret + +; vcmd e9 - global transpose +1f80: c4 3e mov $3e,a +1f82: 6f ret + +; vcmd ea - per-voice transpose +1f83: d5 54 03 mov $0354+x,a +1f86: 6f ret + +; vcmd eb - tremolo on +1f87: d5 3c 03 mov $033c+x,a +1f8a: 3f 36 14 call $1436 +1f8d: d5 25 03 mov $0325+x,a +1f90: 3f 36 14 call $1436 +; vcmd ec - tremolo off +1f93: d5 45 04 mov $0445+x,a +1f96: 6f ret + +; vcmd f1 - pitch envelope (release) +1f97: e8 01 mov a,#$01 +1f99: 5f 9e 1f jmp $1f9e + +; vcmd f2 - pitch envelope (attack) +1f9c: e8 00 mov a,#$00 +1f9e: d5 c4 02 mov $02c4+x,a +1fa1: dd mov a,y +1fa2: d5 ad 02 mov $02ad+x,a +1fa5: 3f 36 14 call $1436 +1fa8: d5 ac 02 mov $02ac+x,a +1fab: 3f 36 14 call $1436 +1fae: d5 c5 02 mov $02c5+x,a +1fb1: 6f ret + +; vcmd f3 - pitch envelope off +1fb2: d5 ac 02 mov $02ac+x,a +1fb5: 6f ret + +; vcmd ed - volume +1fb6: d5 6d 03 mov $036d+x,a +1fb9: e8 00 mov a,#$00 +1fbb: d5 6c 03 mov $036c+x,a +1fbe: 6f ret + +; vcmd ee - volume fade +1fbf: d4 82 mov $82+x,a +1fc1: 2d push a +1fc2: 3f 36 14 call $1436 +1fc5: d5 9c 03 mov $039c+x,a +1fc8: 80 setc +1fc9: b5 6d 03 sbc a,$036d+x +1fcc: ce pop x +1fcd: 3f 8e 21 call $218e +1fd0: d5 84 03 mov $0384+x,a +1fd3: dd mov a,y +1fd4: d5 85 03 mov $0385+x,a +1fd7: 6f ret + +; vcmd f4 - tuning +1fd8: d5 2d 04 mov $042d+x,a +1fdb: 6f ret + +; vcmd ef - call subroutine +1fdc: d5 6c 02 mov $026c+x,a +1fdf: 3f 36 14 call $1436 +1fe2: d5 6d 02 mov $026d+x,a +1fe5: 3f 36 14 call $1436 +1fe8: d4 6a mov $6a+x,a +1fea: f4 19 mov a,$19+x +1fec: d5 54 02 mov $0254+x,a +1fef: f4 1a mov a,$1a+x +1ff1: d5 55 02 mov $0255+x,a +1ff4: f5 6c 02 mov a,$026c+x +1ff7: d4 19 mov $19+x,a +1ff9: f5 6d 02 mov a,$026d+x +1ffc: d4 1a mov $1a+x,a +1ffe: 6f ret + +; vcmd f5 - echo vbits/volume +1fff: c4 00 mov $00,a +2001: 8f 00 01 mov $01,#$00 +2004: e4 cb mov a,$cb +2006: 8d 00 mov y,#$00 +2008: 76 61 04 cmp a,$0461+y +200b: 60 clrc +200c: d0 02 bne $2010 +200e: 4b 00 lsr $00 +2010: 6b 01 ror $01 +2012: fc inc y +2013: ad 08 cmp y,#$08 +2015: 90 f1 bcc $2008 +2017: 09 01 39 or ($39),($01) +201a: 8f 00 01 mov $01,#$00 +201d: 8f 00 02 mov $02,#$00 +2020: 76 61 04 cmp a,$0461+y +2023: 60 clrc +2024: d0 02 bne $2028 +2026: 4b 00 lsr $00 +2028: 2b 01 rol $01 +202a: fc inc y +202b: ad 0c cmp y,#$0c +202d: 90 f1 bcc $2020 +202f: 2d push a +2030: e4 01 mov a,$01 +2032: 9f xcn a +2033: c4 01 mov $01,a +2035: ae pop a +2036: 8f 00 00 mov $00,#$00 +2039: 8d 08 mov y,#$08 +203b: 76 61 04 cmp a,$0461+y +203e: 60 clrc +203f: d0 04 bne $2045 +2041: 8f 01 02 mov $02,#$01 +2044: 80 setc +2045: 2b 00 rol $00 +2047: fc inc y +2048: ad 0c cmp y,#$0c +204a: 90 ef bcc $203b +204c: e4 00 mov a,$00 +204e: 9f xcn a +204f: 48 ff eor a,#$ff +2051: c4 00 mov $00,a +2053: 29 00 39 and ($39),($00) +2056: 09 01 39 or ($39),($01) +2059: 78 00 02 cmp $02,#$00 +205c: f0 07 beq $2065 +205e: 3f f2 20 call $20f2 +2061: b0 16 bcs $2079 +2063: 90 03 bcc $2068 +2065: fa 39 d5 mov ($d5),($39) +2068: 3f 36 14 call $1436 +206b: e8 00 mov a,#$00 +206d: da 47 movw $47,ya +206f: 3f 36 14 call $1436 +2072: e8 00 mov a,#$00 +2074: da 49 movw $49,ya +2076: b2 37 clr5 $37 +2078: 6f ret + +2079: 3f 36 14 call $1436 +207c: 3f 36 14 call $1436 +207f: b2 37 clr5 $37 +2081: 6f ret + +; vcmd f8 - echo volume fade +2082: c8 10 cmp x,#$10 +2084: 90 0f bcc $2095 +2086: 2d push a +2087: 3f f2 20 call $20f2 +208a: 90 08 bcc $2094 +208c: ae pop a +208d: 3f 36 14 call $1436 +2090: 3f 36 14 call $1436 +2093: 6f ret + +2094: ae pop a +2095: c4 4f mov $4f,a +2097: 3f 36 14 call $1436 +209a: c4 50 mov $50,a +209c: 80 setc +209d: a4 48 sbc a,$48 +209f: f8 4f mov x,$4f +20a1: 3f 8e 21 call $218e +20a4: da 4b movw $4b,ya +20a6: 3f 36 14 call $1436 +20a9: c4 51 mov $51,a +20ab: 80 setc +20ac: a4 4a sbc a,$4a +20ae: f8 4f mov x,$4f +20b0: 3f 8e 21 call $218e +20b3: da 4d movw $4d,ya +20b5: 6f ret + +; vcmd f6 - disable echo +20b6: da 47 movw $47,ya +20b8: da 49 movw $49,ya +20ba: a2 37 set5 $37 +20bc: 6f ret + +; vcmd f7 - set echo params +20bd: c8 10 cmp x,#$10 +20bf: 90 0f bcc $20d0 +20c1: 2d push a +20c2: 3f f2 20 call $20f2 +20c5: 90 08 bcc $20cf +20c7: ae pop a +20c8: 3f 36 14 call $1436 +20cb: 3f 36 14 call $1436 +20ce: 6f ret + +20cf: ae pop a +20d0: 3f 07 21 call $2107 +20d3: 3f 36 14 call $1436 +20d6: c4 3d mov $3d,a +20d8: 3f 36 14 call $1436 +20db: 8d 08 mov y,#$08 +20dd: cf mul ya +20de: 5d mov x,a +20df: 8d 0f mov y,#$0f +20e1: f5 44 25 mov a,$2544+x +20e4: 3f 68 10 call $1068 +20e7: 3d inc x +20e8: dd mov a,y +20e9: 60 clrc +20ea: 88 10 adc a,#$10 +20ec: fd mov y,a +20ed: 10 f2 bpl $20e1 +20ef: f8 33 mov x,$33 +20f1: 6f ret + +20f2: 6d push y +20f3: 8d 00 mov y,#$00 +20f5: f6 61 04 mov a,$0461+y +20f8: 68 ff cmp a,#$ff +20fa: d0 08 bne $2104 +20fc: fc inc y +20fd: ad 08 cmp y,#$08 +20ff: 90 f4 bcc $20f5 +2101: ee pop y +2102: 60 clrc +2103: 6f ret + +2104: ee pop y +2105: 80 setc +2106: 6f ret + +2107: c4 3c mov $3c,a +2109: 8d 7d mov y,#$7d +210b: cb f2 mov $f2,y +210d: e4 f3 mov a,$f3 +210f: 64 3c cmp a,$3c +2111: f0 28 beq $213b +2113: 28 0f and a,#$0f +2115: 48 ff eor a,#$ff +2117: f3 3b 03 bbc7 $3b,$211d +211a: 60 clrc +211b: 84 3b adc a,$3b +211d: c4 3b mov $3b,a +211f: 8d 04 mov y,#$04 +2121: f6 63 25 mov a,$2563+y +2124: c4 f2 mov $f2,a +2126: 8f 00 f3 mov $f3,#$00 +2129: fe f6 dbnz y,$2121 +212b: e4 37 mov a,$37 +212d: 08 20 or a,#$20 +212f: 8d 6c mov y,#$6c +2131: 3f 68 10 call $1068 +2134: e4 3c mov a,$3c +2136: 8d 7d mov y,#$7d +2138: 3f 68 10 call $1068 +213b: 1c asl a +213c: 1c asl a +213d: 1c asl a +213e: 48 ff eor a,#$ff +2140: 80 setc +2141: 88 ff adc a,#$ff +2143: 8d 6d mov y,#$6d +2145: 5f 68 10 jmp $1068 + +; vcmd fa - set perc patch base +2148: c4 46 mov $46,a +214a: 6f ret + +214b: f4 9a mov a,$9a+x +214d: d0 33 bne $2182 +214f: e7 19 mov a,($19+x) +2151: 68 f9 cmp a,#$f9 +2153: d0 2d bne $2182 +2155: 3f 38 14 call $1438 +2158: 3f 36 14 call $1436 +; vcmd f9 - pitch slide +215b: d4 9b mov $9b+x,a +215d: 3f 36 14 call $1436 +2160: d4 9a mov $9a+x,a +2162: 3f 36 14 call $1436 +2165: 60 clrc +2166: 84 3e adc a,$3e +2168: 95 54 03 adc a,$0354+x +216b: 28 7f and a,#$7f +216d: d5 2c 04 mov $042c+x,a +2170: 80 setc +2171: b5 fd 03 sbc a,$03fd+x +2174: fb 9a mov y,$9a+x +2176: 6d push y +2177: ce pop x +2178: 3f 8e 21 call $218e +217b: d5 14 04 mov $0414+x,a +217e: dd mov a,y +217f: d5 15 04 mov $0415+x,a +2182: 6f ret + +2183: f5 fd 03 mov a,$03fd+x +2186: c4 11 mov $11,a +2188: f5 fc 03 mov a,$03fc+x +218b: c4 10 mov $10,a +218d: 6f ret + +218e: ed notc +218f: 6b 12 ror $12 +2191: 10 03 bpl $2196 +2193: 48 ff eor a,#$ff +2195: bc inc a +2196: 8d 00 mov y,#$00 +2198: 9e div ya,x +2199: 2d push a +219a: e8 00 mov a,#$00 +219c: 9e div ya,x +219d: ee pop y +219e: f8 33 mov x,$33 +21a0: f3 12 06 bbc7 $12,$21a9 +21a3: da 14 movw $14,ya +21a5: ba 0e movw ya,$0e +21a7: 9a 14 subw ya,$14 +21a9: 6f ret + +; vcmd dispatch table +21aa: dw $1e63 ; e0 - set instrument +21ac: dw $1ee1 ; e1 - pan +21ae: dw $1eef ; e2 - pan fade +21b0: dw $1f08 ; e3 - vibrato on +21b2: dw $1f14 ; e4 - vibrato off +21b4: dw $1f2f ; e5 - master volume +21b6: dw $1f34 ; e6 - master volume fade +21b8: dw $1f46 ; e7 - tempo +21ba: dw $1f5b ; e8 - tempo fade +21bc: dw $1f80 ; e9 - per-voice transpose +21be: dw $1f83 ; ea - global transpose +21c0: dw $1f87 ; eb - tremolo on +21c2: dw $1f93 ; ec - tremolo off +21c4: dw $1fb6 ; ed - volume +21c6: dw $1fbf ; ee - volume fade +21c8: dw $1fdc ; ef - call subroutine +21ca: dw $1f1f ; f0 - vibrato fade +21cc: dw $1f97 ; f1 - pitch envelope (release) +21ce: dw $1f9c ; f2 - pitch envelope (attack) +21d0: dw $1fb2 ; f3 - pitch envelope off +21d2: dw $1fd8 ; f4 - tuning +21d4: dw $1fff ; f5 - echo vbits/volume +21d6: dw $20b6 ; f6 - disable echo +21d8: dw $20bd ; f7 - set echo params +21da: dw $2082 ; f8 - echo volume fade +21dc: dw $215b ; f9 - pitch slide +21de: dw $2148 ; fa - set perc patch base +21e0: dw $1e4d ; fb - set quantization + +; vcmd lengths +21e2: db $01,$01,$02,$03,$00,$01,$02,$01 ; e0-e7 +21fa: db $02,$01,$01,$03,$00,$01,$02,$03 ; e8-ff +22f2: db $01,$03,$03,$00,$01,$03,$00,$03 ; f0-f7 +22fa: db $03,$03,$01,$01 ; f8-fb + +21fe: f4 82 mov a,$82+x +2200: f0 2c beq $222e +2202: 09 36 45 or ($45),($36) +2205: 9b 82 dec $82+x +2207: d0 0b bne $2214 +2209: e8 00 mov a,#$00 +220b: d5 6c 03 mov $036c+x,a +220e: f5 9c 03 mov a,$039c+x +2211: 5f 24 22 jmp $2224 + +2214: 60 clrc +2215: f5 6c 03 mov a,$036c+x +2218: 95 84 03 adc a,$0384+x +221b: d5 6c 03 mov $036c+x,a +221e: f5 6d 03 mov a,$036d+x +2221: 95 85 03 adc a,$0385+x +2224: d5 6d 03 mov $036d+x,a +2227: 4d push x +2228: 2d push a +2229: 7d mov a,x +222a: 5c lsr a +222b: 5d mov x,a +222c: ae pop a +222d: ce pop x +222e: f5 45 04 mov a,$0445+x +2231: fd mov y,a +2232: f0 2c beq $2260 +2234: f5 3c 03 mov a,$033c+x +2237: 75 44 04 cmp a,$0444+x +223a: d0 1d bne $2259 +223c: 09 36 45 or ($45),($36) +223f: f5 24 03 mov a,$0324+x +2242: 10 08 bpl $224c +2244: fc inc y +2245: d0 05 bne $224c +2247: e8 80 mov a,#$80 +2249: 5f 50 22 jmp $2250 + +224c: 60 clrc +224d: 95 25 03 adc a,$0325+x +2250: d5 24 03 mov $0324+x,a +2253: 3f f6 24 call $24f6 +2256: 5f 65 22 jmp $2265 + +2259: f5 44 04 mov a,$0444+x +225c: bc inc a +225d: d5 44 04 mov $0444+x,a +2260: e8 ff mov a,#$ff +2262: 3f 05 25 call $2505 +2265: f4 83 mov a,$83+x +2267: f0 25 beq $228e +2269: 09 36 45 or ($45),($36) +226c: 9b 83 dec $83+x +226e: d0 0b bne $227b +2270: e8 00 mov a,#$00 +2272: d5 b4 03 mov $03b4+x,a +2275: f5 e4 03 mov a,$03e4+x +2278: 5f 8b 22 jmp $228b + +227b: 60 clrc +227c: f5 b4 03 mov a,$03b4+x +227f: 95 cc 03 adc a,$03cc+x +2282: d5 b4 03 mov $03b4+x,a +2285: f5 b5 03 mov a,$03b5+x +2288: 95 cd 03 adc a,$03cd+x +228b: d5 b5 03 mov $03b5+x,a +228e: e4 36 mov a,$36 +2290: 24 45 and a,$45 +2292: d0 03 bne $2297 +2294: 5f 2a 23 jmp $232a + +2297: f5 b4 03 mov a,$03b4+x +229a: fd mov y,a +229b: f5 b5 03 mov a,$03b5+x +229e: 4d push x +229f: 2d push a +22a0: 6d push y +22a1: 7d mov a,x +22a2: 5c lsr a +22a3: 5d mov x,a +22a4: f5 61 04 mov a,$0461+x +22a7: 5d mov x,a +22a8: f5 c4 0a mov a,$0ac4+x +22ab: c4 00 mov $00,a +22ad: ee pop y +22ae: ae pop a +22af: 3f 21 1b call $1b21 +22b2: ce pop x +22b3: 6d push y +22b4: fd mov y,a +22b5: ae pop a +22b6: da 10 movw $10,ya +22b8: 4d push x +22b9: 7d mov a,x +22ba: 5c lsr a +22bb: 68 08 cmp a,#$08 +22bd: 90 0d bcc $22cc +22bf: 80 setc +22c0: a8 08 sbc a,#$08 +22c2: 48 03 eor a,#$03 +22c4: 60 clrc +22c5: 88 04 adc a,#$04 +22c7: 1c asl a +22c8: 5d mov x,a +22c9: 5f df 22 jmp $22df + +22cc: 68 04 cmp a,#$04 +22ce: 90 0f bcc $22df +22d0: 80 setc +22d1: a8 04 sbc a,#$04 +22d3: 48 03 eor a,#$03 +22d5: fd mov y,a +22d6: f6 69 04 mov a,$0469+y +22d9: 30 04 bmi $22df +22db: ce pop x +22dc: 5f 2a 23 jmp $232a + +22df: 7d mov a,x +22e0: ce pop x +22e1: 9f xcn a +22e2: 5c lsr a +22e3: c4 12 mov $12,a +22e5: eb 11 mov y,$11 +22e7: f6 30 25 mov a,$2530+y +22ea: 80 setc +22eb: b6 2f 25 sbc a,$252f+y +22ee: eb 10 mov y,$10 +22f0: cf mul ya +22f1: e5 c8 0a mov a,$0ac8 +22f4: d0 04 bne $22fa +22f6: dd mov a,y +22f7: 5f ff 22 jmp $22ff + +22fa: e8 00 mov a,#$00 +22fc: 8f 0a 11 mov $11,#$0a +22ff: eb 11 mov y,$11 +2301: 60 clrc +2302: 96 2f 25 adc a,$252f+y +2305: fd mov y,a +2306: f5 9d 03 mov a,$039d+x +2309: cf mul ya +230a: f5 e5 03 mov a,$03e5+x +230d: 1c asl a +230e: 13 12 01 bbc0 $12,$2312 +2311: 1c asl a +2312: dd mov a,y +2313: 90 03 bcc $2318 +2315: 48 ff eor a,#$ff +2317: bc inc a +2318: eb 12 mov y,$12 +231a: 3f 60 10 call $1060 +231d: 8d 14 mov y,#$14 +231f: e8 00 mov a,#$00 +2321: 9a 10 subw ya,$10 +2323: da 10 movw $10,ya +2325: ab 12 inc $12 +2327: 33 12 bb bbc1 $12,$22e5 +232a: 6f ret + +232b: f4 53 mov a,$53+x +232d: d0 03 bne $2332 +232f: 5f b7 23 jmp $23b7 + +2332: 9b 53 dec $53+x +2334: f0 05 beq $233b +2336: e8 02 mov a,#$02 +2338: de 52 7c cbne $52+x,$23b7 +233b: f4 6a mov a,$6a+x +233d: c4 17 mov $17,a +233f: f4 19 mov a,$19+x +2341: fb 1a mov y,$1a+x +2343: da 14 movw $14,ya +2345: 8d 00 mov y,#$00 +2347: f7 14 mov a,($14)+y +2349: f0 26 beq $2371 +234b: 30 0e bmi $235b +234d: 68 64 cmp a,#$64 ; +234f: 90 04 bcc $2355 +2351: 68 6a cmp a,#$6a ; +2353: 90 46 bcc $239b +2355: fc inc y +2356: 30 43 bmi $239b +2358: 5f 47 23 jmp $2347 + +235b: 68 c8 cmp a,#$c8 ; rest +235d: f0 58 beq $23b7 +235f: 68 ef cmp a,#$ef ; call subroutine +2361: f0 2c beq $238f +2363: 68 e0 cmp a,#$e0 ; main vcmds +2365: 90 34 bcc $239b +2367: 6d push y +2368: fd mov y,a +2369: ae pop a +236a: 96 02 21 adc a,$2102+y +236d: fd mov y,a +236e: 5f 47 23 jmp $2347 + +2371: e4 17 mov a,$17 +2373: f0 26 beq $239b +2375: 8b 17 dec $17 +2377: d0 0b bne $2384 +2379: f5 55 02 mov a,$0255+x +237c: 2d push a +237d: f5 54 02 mov a,$0254+x +2380: ee pop y +2381: 5f 43 23 jmp $2343 + +2384: f5 6d 02 mov a,$026d+x +2387: 2d push a +2388: f5 6c 02 mov a,$026c+x +238b: ee pop y +238c: 5f 43 23 jmp $2343 + +238f: fc inc y +2390: f7 14 mov a,($14)+y +2392: 2d push a +2393: fc inc y +2394: f7 14 mov a,($14)+y +2396: fd mov y,a +2397: ae pop a +2398: 5f 43 23 jmp $2343 + +239b: 7d mov a,x +239c: 5c lsr a +239d: 68 04 cmp a,#$04 +239f: 90 0f bcc $23b0 +23a1: 68 08 cmp a,#$08 +23a3: b0 0b bcs $23b0 +23a5: 80 setc +23a6: a8 04 sbc a,#$04 +23a8: 48 03 eor a,#$03 +23aa: fd mov y,a +23ab: f6 69 04 mov a,$0469+y +23ae: 10 07 bpl $23b7 +23b0: e4 36 mov a,$36 +23b2: 8d 5c mov y,#$5c +23b4: 3f 60 10 call $1060 +23b7: f2 13 clr7 $13 +23b9: f4 9a mov a,$9a+x +23bb: f0 2e beq $23eb +23bd: f4 9b mov a,$9b+x +23bf: f0 05 beq $23c6 +23c1: 9b 9b dec $9b+x +23c3: 5f eb 23 jmp $23eb + +23c6: e2 13 set7 $13 +23c8: 9b 9a dec $9a+x +23ca: d0 0c bne $23d8 +23cc: f5 2d 04 mov a,$042d+x +23cf: d5 fc 03 mov $03fc+x,a +23d2: f5 2c 04 mov a,$042c+x +23d5: 5f e8 23 jmp $23e8 + +23d8: 60 clrc +23d9: f5 fc 03 mov a,$03fc+x +23dc: 95 14 04 adc a,$0414+x +23df: d5 fc 03 mov $03fc+x,a +23e2: f5 fd 03 mov a,$03fd+x +23e5: 95 15 04 adc a,$0415+x +23e8: d5 fd 03 mov $03fd+x,a +23eb: 3f 83 21 call $2183 +23ee: f4 b3 mov a,$b3+x +23f0: f0 51 beq $2443 +23f2: f5 f4 02 mov a,$02f4+x +23f5: de b2 49 cbne $b2+x,$2441 +23f8: f5 0c 01 mov a,$010c+x +23fb: 75 f5 02 cmp a,$02f5+x +23fe: d0 06 bne $2406 +2400: f5 0d 03 mov a,$030d+x +2403: 5f 13 24 jmp $2413 + +2406: 40 setp +2407: bb 0c inc $0c+x +2409: 20 clrp +240a: fd mov y,a +240b: f0 02 beq $240f +240d: f4 b3 mov a,$b3+x +240f: 60 clrc +2410: 95 0c 03 adc a,$030c+x +2413: d4 b3 mov $b3+x,a +2415: f5 dc 02 mov a,$02dc+x +2418: 60 clrc +2419: 95 dd 02 adc a,$02dd+x +241c: d5 dc 02 mov $02dc+x,a +241f: c4 12 mov $12,a +2421: 1c asl a +2422: 1c asl a +2423: 90 02 bcc $2427 +2425: 48 ff eor a,#$ff +2427: fd mov y,a +2428: f4 b3 mov a,$b3+x +242a: 68 f1 cmp a,#$f1 +242c: 90 06 bcc $2434 +242e: 28 0f and a,#$0f +2430: cf mul ya +2431: 5f 38 24 jmp $2438 + +2434: cf mul ya +2435: dd mov a,y +2436: 8d 00 mov y,#$00 +2438: 3f e0 24 call $24e0 +243b: 4d push x +243c: 3f ba 0f call $0fba +243f: ce pop x +2440: 6f ret + +2441: bb b2 inc $b2+x +2443: e3 13 f5 bbs7 $13,$243b +2446: 6f ret + +2447: f2 13 clr7 $13 +2449: f5 45 04 mov a,$0445+x +244c: f0 0b beq $2459 +244e: f5 3c 03 mov a,$033c+x +2451: 75 44 04 cmp a,$0444+x +2454: d0 03 bne $2459 +2456: 3f e8 24 call $24e8 +2459: f5 b5 03 mov a,$03b5+x +245c: fd mov y,a +245d: f5 b4 03 mov a,$03b4+x +2460: da 10 movw $10,ya +2462: f4 83 mov a,$83+x +2464: d0 05 bne $246b +2466: ba 10 movw ya,$10 +2468: 5f 75 24 jmp $2475 + +246b: f5 cd 03 mov a,$03cd+x +246e: fd mov y,a +246f: f5 cc 03 mov a,$03cc+x +2472: 3f c8 24 call $24c8 +2475: 6d push y +2476: fd mov y,a +2477: ae pop a +2478: 4d push x +2479: 2d push a +247a: 6d push y +247b: 7d mov a,x +247c: 5c lsr a +247d: 5d mov x,a +247e: f5 61 04 mov a,$0461+x +2481: 5d mov x,a +2482: f5 c4 0a mov a,$0ac4+x +2485: c4 00 mov $00,a +2487: ee pop y +2488: ae pop a +2489: 3f 21 1b call $1b21 +248c: ce pop x +248d: 6d push y +248e: fd mov y,a +248f: ae pop a +2490: da 10 movw $10,ya +2492: f3 13 03 bbc7 $13,$2498 +2495: 3f b8 22 call $22b8 +2498: f2 13 clr7 $13 +249a: 3f 83 21 call $2183 +249d: f4 9a mov a,$9a+x +249f: f0 0e beq $24af +24a1: f4 9b mov a,$9b+x +24a3: d0 0a bne $24af +24a5: f5 15 04 mov a,$0415+x +24a8: fd mov y,a +24a9: f5 14 04 mov a,$0414+x +24ac: 3f c8 24 call $24c8 +24af: f4 b3 mov a,$b3+x +24b1: f0 90 beq $2443 +24b3: f5 f4 02 mov a,$02f4+x +24b6: de b2 8a cbne $b2+x,$2443 +24b9: ec 5c 04 mov y,$045c +24bc: f5 dd 02 mov a,$02dd+x +24bf: cf mul ya +24c0: dd mov a,y +24c1: 60 clrc +24c2: 95 dc 02 adc a,$02dc+x +24c5: 5f 1f 24 jmp $241f + +24c8: e2 13 set7 $13 +24ca: cb 12 mov $12,y +24cc: 3f a0 21 call $21a0 +24cf: 6d push y +24d0: ec 5c 04 mov y,$045c +24d3: cf mul ya +24d4: cb 14 mov $14,y +24d6: 8f 00 15 mov $15,#$00 +24d9: ec 5c 04 mov y,$045c +24dc: ae pop a +24dd: cf mul ya +24de: 7a 14 addw ya,$14 +24e0: 3f a0 21 call $21a0 +24e3: 7a 10 addw ya,$10 +24e5: da 10 movw $10,ya +24e7: 6f ret + +24e8: e2 13 set7 $13 +24ea: ec 5c 04 mov y,$045c +24ed: f5 25 03 mov a,$0325+x +24f0: cf mul ya +24f1: dd mov a,y +24f2: 60 clrc +24f3: 95 24 03 adc a,$0324+x +24f6: 1c asl a +24f7: 90 02 bcc $24fb +24f9: 48 ff eor a,#$ff +24fb: 2d push a +24fc: f5 45 04 mov a,$0445+x +24ff: fd mov y,a +2500: ae pop a +2501: cf mul ya +2502: dd mov a,y +2503: 48 ff eor a,#$ff +2505: eb 40 mov y,$40 +2507: cf mul ya +2508: f5 24 02 mov a,$0224+x +250b: cf mul ya +250c: f5 6d 03 mov a,$036d+x +250f: 4d push x +2510: 6d push y +2511: 2d push a +2512: 7d mov a,x +2513: 5c lsr a +2514: 5d mov x,a +2515: f5 61 04 mov a,$0461+x +2518: 5d mov x,a +2519: f5 c0 0a mov a,$0ac0+x +251c: c4 00 mov $00,a +251e: ae pop a +251f: 3f c3 1a call $1ac3 +2522: ee pop y +2523: ce pop x +2524: 09 36 45 or ($45),($36) +2527: cf mul ya +2528: dd mov a,y +2529: cf mul ya +252a: dd mov a,y +252b: d5 9d 03 mov $039d+x,a +252e: 6f ret + +; pan table +252f: db $00,$01,$03,$07,$0d,$15,$1e,$29 +2537: db $34,$42,$51,$5e,$67,$6e,$73,$77 +253f: db $7a,$7c,$7d,$7e,$7f + +; echo FIR presets +2544: db $7f,$00,$00,$00,$00,$00,$00,$00 +254c: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +2554: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +255c: db $34,$33,$00,$d9,$e5,$01,$fc,$eb + +; dsp shadow addrs for dsp regs +2564: db $2c,$3c,$0d,$4d,$6c,$4c,$5c,$3d +256c: db $2d,$5c,$48,$4a,$3d,$39,$37,$34 +2574: db $35,$38,$3a,$35 + +; pitch table +257a: dw $08de +257c: dw $0965 +257e: dw $09f4 +2580: dw $0a8c +2582: dw $0b2c +2584: dw $0bd6 +2586: dw $0c8b +2588: dw $0d4a +258a: dw $0e14 +258c: dw $0eea +258e: dw $0fcd +2590: dw $10be + +2592: db "*Ver S1.20*" + +; note dur%'s +259d: db $32,$65,$7f,$98,$b2,$cb,$e5,$fc +; per-note velocity values +25a5: db $0a,$19,$28,$3c,$50,$64,$7d,$96 +25ad: db $aa,$b9,$c8,$d4,$e1,$eb,$f5,$ff \ No newline at end of file From 7d67e1ae8cf0e7057adfad9dfa090cadcfd35290 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:39:56 -0800 Subject: [PATCH 051/116] Rename snes/NSPC/Ball Bullet Gun ($0B00).bin to snes/NSPC/Betop/Ball Bullet Gun ($0B00).bin --- snes/NSPC/{ => Betop}/Ball Bullet Gun ($0B00).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Betop}/Ball Bullet Gun ($0B00).bin (100%) diff --git a/snes/NSPC/Ball Bullet Gun ($0B00).bin b/snes/NSPC/Betop/Ball Bullet Gun ($0B00).bin similarity index 100% rename from snes/NSPC/Ball Bullet Gun ($0B00).bin rename to snes/NSPC/Betop/Ball Bullet Gun ($0B00).bin From d17465471ef63efe1d9dceee3701c1eee8177247 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:40:10 -0800 Subject: [PATCH 052/116] Update and rename snes/NSPC/Ball Bullet Gun.s to snes/NSPC/Betop/Ball Bullet Gun.s --- snes/NSPC/{ => Betop}/Ball Bullet Gun.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Betop}/Ball Bullet Gun.s (96%) diff --git a/snes/NSPC/Ball Bullet Gun.s b/snes/NSPC/Betop/Ball Bullet Gun.s similarity index 96% rename from snes/NSPC/Ball Bullet Gun.s rename to snes/NSPC/Betop/Ball Bullet Gun.s index 74a87054..1bc435f9 100644 --- a/snes/NSPC/Ball Bullet Gun.s +++ b/snes/NSPC/Betop/Ball Bullet Gun.s @@ -3583,4 +3583,5 @@ i 259d: db $32,$65,$7f,$98,$b2,$cb,$e5,$fc ; per-note velocity values 25a5: db $0a,$19,$28,$3c,$50,$64,$7d,$96 -25ad: db $aa,$b9,$c8,$d4,$e1,$eb,$f5,$ff \ No newline at end of file + +25ad: db $aa,$b9,$c8,$d4,$e1,$eb,$f5,$ff From 5cfdc1863cd7653d0c0d9799aded48ae9b069284 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:40:29 -0800 Subject: [PATCH 053/116] Add files via upload --- snes/NSPC/Street Fighter Alpha 2 ($0400).bin | Bin 0 -> 3580 bytes snes/NSPC/Street Fighter Alpha 2.s | 2139 ++++++++++++++++++ 2 files changed, 2139 insertions(+) create mode 100644 snes/NSPC/Street Fighter Alpha 2 ($0400).bin create mode 100644 snes/NSPC/Street Fighter Alpha 2.s diff --git a/snes/NSPC/Street Fighter Alpha 2 ($0400).bin b/snes/NSPC/Street Fighter Alpha 2 ($0400).bin new file mode 100644 index 0000000000000000000000000000000000000000..cabe66cdbef6603e29ffbf69508718e5ca880738 GIT binary patch literal 3580 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 aCwxFV<(;Fl*~}u_xvaXJh^y5^oc#~1eLyh) literal 0 HcmV?d00001 diff --git a/snes/NSPC/Street Fighter Alpha 2.s b/snes/NSPC/Street Fighter Alpha 2.s new file mode 100644 index 00000000..f97c6c1e --- /dev/null +++ b/snes/NSPC/Street Fighter Alpha 2.s @@ -0,0 +1,2139 @@ +0400: 20 clrp +0401: cd cf mov x,#$cf +0403: bd mov sp,x +0404: e8 e0 mov a,#$e0 +0406: 8d 6c mov y,#$6c +0408: 3f c6 06 call $06c6 +040b: e8 00 mov a,#$00 +040d: 5d mov x,a +040e: af mov (x)+,a +040f: c8 f0 cmp x,#$f0 +0411: d0 fb bne $040e +0413: 5d mov x,a +0414: d5 00 01 mov $0100+x,a +0417: 3d inc x +0418: d0 fa bne $0414 +041a: d5 00 02 mov $0200+x,a +041d: 3d inc x +041e: d0 fa bne $041a +0420: d5 00 03 mov $0300+x,a +0423: 3d inc x +0424: c8 80 cmp x,#$80 +0426: d0 f8 bne $0420 +0428: 3f 3c 05 call $053c +042b: e8 70 mov a,#$70 +042d: c5 f1 00 mov $00f1,a +0430: e8 10 mov a,#$10 +0432: c5 fa 00 mov $00fa,a +0435: e8 01 mov a,#$01 +0437: c5 f1 00 mov $00f1,a +043a: 8d 0a mov y,#$0a +043c: ad 05 cmp y,#$05 +043e: f0 07 beq $0447 +0440: b0 08 bcs $044a +0442: 69 4d 4c cmp ($4c),($4d) +0445: d0 11 bne $0458 +0447: e3 4c 0e bbs7 $4c,$0458 +044a: f6 5e 0e mov a,$0e5e+y +044d: c5 f2 00 mov $00f2,a +0450: f6 68 0e mov a,$0e68+y +0453: 5d mov x,a +0454: e6 mov a,(x) +0455: c5 f3 00 mov $00f3,a +0458: fe e2 dbnz y,$043c +045a: cb 45 mov $45,y +045c: cb 46 mov $46,y +045e: e4 1a mov a,$1a +0460: 48 ff eor a,#$ff +0462: 24 6c and a,$6c +0464: c4 46 mov $46,a +0466: cb 6c mov $6c,y +0468: ec fd 00 mov y,$00fd +046b: f0 fb beq $0468 +046d: cb e6 mov $e6,y +046f: e8 20 mov a,#$20 +0471: cf mul ya +0472: 60 clrc +0473: 84 43 adc a,$43 +0475: c4 43 mov $43,a +0477: 90 07 bcc $0480 +0479: 69 4d 4c cmp ($4c),($4d) +047c: f0 02 beq $0480 +047e: ab 4c inc $4c +0480: e4 53 mov a,$53 +0482: eb e6 mov y,$e6 +0484: cf mul ya +0485: 60 clrc +0486: 84 51 adc a,$51 +0488: c4 51 mov $51,a +048a: 90 36 bcc $04c2 +048c: 3f 2e 0f call $0f2e +048f: 3f 56 07 call $0756 +0492: 8f 20 47 mov $47,#$20 +0495: cd 0a mov x,#$0a +0497: 3f 44 10 call $1044 +049a: 3d inc x +049b: 3d inc x +049c: 0b 47 asl $47 +049e: d0 f7 bne $0497 +04a0: cd 00 mov x,#$00 +04a2: 3f db 04 call $04db +04a5: cd 01 mov x,#$01 +04a7: 3f db 04 call $04db +04aa: cd 02 mov x,#$02 +04ac: 3f db 04 call $04db +04af: cd 03 mov x,#$03 +04b1: 3f db 04 call $04db +04b4: ac 4f 00 inc $004f +04b7: e5 4f 00 mov a,$004f +04ba: c4 07 mov $07,a +04bc: 3f f2 04 call $04f2 +04bf: 5f 3a 04 jmp $043a + +04c2: e4 04 mov a,$04 +04c4: f0 12 beq $04d8 +04c6: cd 00 mov x,#$00 +04c8: 8f 01 47 mov $47,#$01 +04cb: f4 31 mov a,$31+x +04cd: f0 03 beq $04d2 +04cf: 3f 3a 0d call $0d3a +04d2: 3d inc x +04d3: 3d inc x +04d4: 0b 47 asl $47 +04d6: d0 f3 bne $04cb +04d8: 5f 3a 04 jmp $043a + +04db: f5 50 02 mov a,$0250+x +04de: d5 54 02 mov $0254+x,a +04e1: f4 04 mov a,$04+x +04e3: d5 f4 00 mov $00f4+x,a +04e6: f5 f4 00 mov a,$00f4+x +04e9: 75 f4 00 cmp a,$00f4+x +04ec: d0 f8 bne $04e6 +04ee: d5 50 02 mov $0250+x,a +04f1: 6f ret + +04f2: e5 50 02 mov a,$0250 +04f5: 65 54 02 cmp a,$0254 +04f8: f0 08 beq $0502 +04fa: 28 7f and a,#$7f +04fc: c4 00 mov $00,a +04fe: e8 ff mov a,#$ff +0500: c4 08 mov $08,a +0502: e5 51 02 mov a,$0251 +0505: 65 55 02 cmp a,$0255 +0508: f0 0b beq $0515 +050a: 28 7f and a,#$7f +050c: 68 6f cmp a,#$6f +050e: b0 06 bcs $0516 +0510: c4 01 mov $01,a +0512: 8f ff 09 mov $09,#$ff +0515: 6f ret + +0516: 3f 1a 05 call $051a +0519: 6f ret + +051a: 28 0f and a,#$0f +051c: 1c asl a +051d: 5d mov x,a +051e: f5 28 05 mov a,$0528+x +0521: 2d push a +0522: f5 27 05 mov a,$0527+x +0525: 2d push a +0526: 6f ret + +0527: 39 and (x),(y) +0528: 05 56 05 or a,$0556 +052b: 89 05 8f adc ($8f),($05) +052e: 05 95 05 or a,$0595 +0531: a2 05 set5 $05 +0533: ac 05 c0 inc $c005 +0536: 05 ca 05 or a,$05ca +0539: 5f 00 04 jmp $0400 + +053c: e8 00 mov a,#$00 +053e: 3f 5d 0a call $0a5d +0541: a2 48 set5 $48 +0543: e8 68 mov a,#$68 +0545: 8d 0c mov y,#$0c +0547: 3f c6 06 call $06c6 +054a: 8d 1c mov y,#$1c +054c: 3f c6 06 call $06c6 +054f: e8 14 mov a,#$14 +0551: 8d 5d mov y,#$5d +0553: 3f c6 06 call $06c6 +0556: e8 00 mov a,#$00 +0558: c4 00 mov $00,a +055a: c4 01 mov $01,a +055c: c4 02 mov $02,a +055e: c4 03 mov $03,a +0560: c5 50 02 mov $0250,a +0563: c5 51 02 mov $0251,a +0566: c5 52 02 mov $0252,a +0569: c5 53 02 mov $0253,a +056c: c5 54 02 mov $0254,a +056f: c5 55 02 mov $0255,a +0572: c5 56 02 mov $0256,a +0575: c5 57 02 mov $0257,a +0578: c5 58 02 mov $0258,a +057b: 3f 10 07 call $0710 +057e: e8 77 mov a,#$77 +0580: c5 f1 00 mov $00f1,a +0583: e8 be mov a,#$be +0585: c5 59 02 mov $0259,a +0588: 6f ret + +0589: e8 00 mov a,#$00 +058b: c5 58 02 mov $0258,a +058e: 6f ret + +058f: e8 01 mov a,#$01 +0591: c5 58 02 mov $0258,a +0594: 6f ret + +0595: 3f 4c 0f call $0f4c +0598: e5 52 02 mov a,$0252 +059b: d5 40 01 mov $0140+x,a +059e: 09 47 e4 or ($e4),($47) +05a1: 6f ret + +05a2: e5 53 02 mov a,$0253 +05a5: d0 01 bne $05a8 +05a7: bc inc a +05a8: c5 59 02 mov $0259,a +05ab: 6f ret + +05ac: e5 59 02 mov a,$0259 +05af: c4 5a mov $5a,a +05b1: e8 00 mov a,#$00 +05b3: c4 5b mov $5b,a +05b5: 80 setc +05b6: a4 59 sbc a,$59 +05b8: f8 5a mov x,$5a +05ba: 3f ed 0a call $0aed +05bd: da 5c movw $5c,ya +05bf: 6f ret + +05c0: 3f 4c 0f call $0f4c +05c3: e5 52 02 mov a,$0252 +05c6: d5 50 01 mov $0150+x,a +05c9: 6f ret + +05ca: e5 52 02 mov a,$0252 +05cd: c5 6d 00 mov $006d,a +05d0: 6f ret + +05d1: ad ca cmp y,#$ca +05d3: 90 05 bcc $05da +05d5: 3f a6 08 call $08a6 +05d8: 8d a4 mov y,#$a4 +05da: ad c8 cmp y,#$c8 +05dc: b0 f2 bcs $05d0 +05de: e4 1a mov a,$1a +05e0: 24 47 and a,$47 +05e2: d0 ec bne $05d0 +05e4: dd mov a,y +05e5: 28 7f and a,#$7f +05e7: 60 clrc +05e8: 84 50 adc a,$50 +05ea: 60 clrc +05eb: 95 f0 02 adc a,$02f0+x +05ee: d5 61 03 mov $0361+x,a +05f1: f5 81 03 mov a,$0381+x +05f4: d5 60 03 mov $0360+x,a +05f7: f5 b1 02 mov a,$02b1+x +05fa: 5c lsr a +05fb: e8 00 mov a,#$00 +05fd: 7c ror a +05fe: d5 a0 02 mov $02a0+x,a +0601: e8 00 mov a,#$00 +0603: d4 b0 mov $b0+x,a +0605: d5 00 01 mov $0100+x,a +0608: d5 d0 02 mov $02d0+x,a +060b: d4 c0 mov $c0+x,a +060d: 09 47 5e or ($5e),($47) +0610: 09 47 45 or ($45),($47) +0613: f5 80 02 mov a,$0280+x +0616: d4 a0 mov $a0+x,a +0618: f0 1e beq $0638 +061a: f5 81 02 mov a,$0281+x +061d: d4 a1 mov $a1+x,a +061f: f5 90 02 mov a,$0290+x +0622: d0 0a bne $062e +0624: f5 61 03 mov a,$0361+x +0627: 80 setc +0628: b5 91 02 sbc a,$0291+x +062b: d5 61 03 mov $0361+x,a +062e: f5 91 02 mov a,$0291+x +0631: 60 clrc +0632: 95 61 03 adc a,$0361+x +0635: 3f ca 0a call $0aca +0638: 3f e2 0a call $0ae2 +063b: 8d 00 mov y,#$00 +063d: e4 11 mov a,$11 +063f: 80 setc +0640: a8 34 sbc a,#$34 +0642: b0 09 bcs $064d +0644: e4 11 mov a,$11 +0646: 80 setc +0647: a8 13 sbc a,#$13 +0649: b0 06 bcs $0651 +064b: dc dec y +064c: 1c asl a +064d: 7a 10 addw ya,$10 +064f: da 10 movw $10,ya +0651: 4d push x +0652: e4 11 mov a,$11 +0654: 1c asl a +0655: 8d 00 mov y,#$00 +0657: cd 18 mov x,#$18 +0659: 9e div ya,x +065a: 5d mov x,a +065b: f6 74 0e mov a,$0e74+y +065e: c4 15 mov $15,a +0660: f6 73 0e mov a,$0e73+y +0663: c4 14 mov $14,a +0665: f6 76 0e mov a,$0e76+y +0668: 2d push a +0669: f6 75 0e mov a,$0e75+y +066c: ee pop y +066d: 9a 14 subw ya,$14 +066f: eb 10 mov y,$10 +0671: cf mul ya +0672: dd mov a,y +0673: 8d 00 mov y,#$00 +0675: 7a 14 addw ya,$14 +0677: cb 15 mov $15,y +0679: 1c asl a +067a: 2b 15 rol $15 +067c: c4 14 mov $14,a +067e: 2f 04 bra $0684 +0680: 4b 15 lsr $15 +0682: 7c ror a +0683: 3d inc x +0684: c8 06 cmp x,#$06 +0686: d0 f8 bne $0680 +0688: c4 14 mov $14,a +068a: ce pop x +068b: f5 20 02 mov a,$0220+x +068e: eb 15 mov y,$15 +0690: cf mul ya +0691: da 16 movw $16,ya +0693: f5 20 02 mov a,$0220+x +0696: eb 14 mov y,$14 +0698: cf mul ya +0699: 6d push y +069a: f5 21 02 mov a,$0221+x +069d: eb 14 mov y,$14 +069f: cf mul ya +06a0: 7a 16 addw ya,$16 +06a2: da 16 movw $16,ya +06a4: f5 21 02 mov a,$0221+x +06a7: eb 15 mov y,$15 +06a9: cf mul ya +06aa: fd mov y,a +06ab: ae pop a +06ac: 7a 16 addw ya,$16 +06ae: da 16 movw $16,ya +06b0: 7d mov a,x +06b1: 9f xcn a +06b2: 5c lsr a +06b3: 08 02 or a,#$02 +06b5: fd mov y,a +06b6: e4 16 mov a,$16 +06b8: 3f be 06 call $06be +06bb: fc inc y +06bc: e4 17 mov a,$17 +06be: 2d push a +06bf: e4 47 mov a,$47 +06c1: 24 1a and a,$1a +06c3: ae pop a +06c4: d0 06 bne $06cc +06c6: cc f2 00 mov $00f2,y +06c9: c5 f3 00 mov $00f3,a +06cc: 6f ret + +06cd: 3f 05 07 call $0705 +06d0: 8d 00 mov y,#$00 +06d2: f7 40 mov a,($40)+y +06d4: 3a 40 incw $40 +06d6: 2d push a +06d7: f7 40 mov a,($40)+y +06d9: 3a 40 incw $40 +06db: fd mov y,a +06dc: ae pop a +06dd: 6f ret + +06de: e8 ff mov a,#$ff ; load song +06e0: 44 1a eor a,$1a +06e2: 2f 04 bra $06e8 +06e4: e8 ff mov a,#$ff +06e6: c4 6d mov $6d,a +06e8: 8d 5c mov y,#$5c +06ea: cc f2 00 mov $00f2,y +06ed: c5 f3 00 mov $00f3,a +06f0: 3f a5 0e call $0ea5 +06f3: c4 08 mov $08,a +06f5: c4 04 mov $04,a +06f7: 1c asl a +06f8: 5d mov x,a +06f9: f5 8f 03 mov a,$038f+x +06fc: fd mov y,a +06fd: f5 8e 03 mov a,$038e+x +0700: da 40 movw $40,ya +0702: 8f 02 0c mov $0c,#$02 +0705: e4 1a mov a,$1a +0707: 48 ff eor a,#$ff +0709: 0e 46 00 tset1 $0046 +070c: 8f 00 6c mov $6c,#$00 +070f: 6f ret + +0710: cd 0e mov x,#$0e +0712: 8f 80 47 mov $47,#$80 +0715: e8 ff mov a,#$ff +0717: d5 01 03 mov $0301+x,a +071a: d5 71 02 mov $0271+x,a +071d: e8 0a mov a,#$0a +071f: 3f 07 09 call $0907 +0722: e8 00 mov a,#$00 +0724: d5 11 02 mov $0211+x,a +0727: d5 81 03 mov $0381+x,a +072a: d5 f0 02 mov $02f0+x,a +072d: d5 80 02 mov $0280+x,a +0730: d4 b1 mov $b1+x,a +0732: d4 c1 mov $c1+x,a +0734: d5 60 02 mov $0260+x,a +0737: 1d dec x +0738: 1d dec x +0739: 4b 47 lsr $47 +073b: d0 d8 bne $0715 +073d: c4 5a mov $5a,a +073f: c4 68 mov $68,a +0741: c4 54 mov $54,a +0743: c4 50 mov $50,a +0745: c4 42 mov $42,a +0747: c4 5f mov $5f,a +0749: 8f c0 59 mov $59,#$c0 +074c: 8f 20 53 mov $53,#$20 +074f: 6f ret + +0750: 2f 92 bra $06e4 +0752: 2f 8a bra $06de +0754: 2f 9f bra $06f5 +0756: eb 08 mov y,$08 +0758: e4 00 mov a,$00 +075a: c4 08 mov $08,a +075c: 68 7d cmp a,#$7d +075e: f0 a5 beq $0705 +0760: 68 7e cmp a,#$7e +0762: f0 0c beq $0770 +0764: 68 7f cmp a,#$7f +0766: f0 e8 beq $0750 +0768: 68 7c cmp a,#$7c +076a: f0 e6 beq $0752 +076c: 7e 00 cmp y,$00 +076e: d0 85 bne $06f5 +0770: e4 04 mov a,$04 +0772: f0 db beq $074f +0774: e4 0c mov a,$0c +0776: f0 4c beq $07c4 +0778: 6e 0c 95 dbnz $0c,$0710 +077b: 3f cd 06 call $06cd +077e: d0 14 bne $0794 +0780: fd mov y,a +0781: f0 d1 beq $0754 +0783: 8b 42 dec $42 +0785: 10 02 bpl $0789 +0787: c4 42 mov $42,a +0789: 3f cd 06 call $06cd +078c: f8 42 mov x,$42 +078e: f0 eb beq $077b +0790: da 40 movw $40,ya +0792: 2f e7 bra $077b +0794: da 16 movw $16,ya +0796: 8d 0f mov y,#$0f +0798: f7 16 mov a,($16)+y +079a: d6 30 00 mov $0030+y,a +079d: dc dec y +079e: 10 f8 bpl $0798 +07a0: cd 00 mov x,#$00 +07a2: 8f 01 47 mov $47,#$01 +07a5: f4 31 mov a,$31+x +07a7: f0 0a beq $07b3 +07a9: f5 11 02 mov a,$0211+x +07ac: d0 05 bne $07b3 +07ae: e8 00 mov a,#$00 +07b0: 3f a6 08 call $08a6 +07b3: e8 00 mov a,#$00 +07b5: d4 80 mov $80+x,a +07b7: d4 90 mov $90+x,a +07b9: d4 91 mov $91+x,a +07bb: bc inc a +07bc: d4 70 mov $70+x,a +07be: 3d inc x +07bf: 3d inc x +07c0: 0b 47 asl $47 +07c2: d0 e1 bne $07a5 +07c4: cd 00 mov x,#$00 +07c6: d8 5e mov $5e,x +07c8: 8f 01 47 mov $47,#$01 +07cb: d8 44 mov $44,x +07cd: f4 31 mov a,$31+x +07cf: f0 66 beq $0837 +07d1: 9b 70 dec $70+x +07d3: d0 5c bne $0831 +07d5: 3f 9c 08 call $089c +07d8: d0 17 bne $07f1 +07da: f4 80 mov a,$80+x +07dc: f0 9d beq $077b +07de: 3f f5 09 call $09f5 +07e1: 9b 80 dec $80+x +07e3: d0 f0 bne $07d5 +07e5: f5 30 02 mov a,$0230+x +07e8: d4 30 mov $30+x,a +07ea: f5 31 02 mov a,$0231+x +07ed: d4 31 mov $31+x,a +07ef: 2f e4 bra $07d5 +07f1: 30 20 bmi $0813 +07f3: d5 00 02 mov $0200+x,a +07f6: 3f 9c 08 call $089c +07f9: 30 18 bmi $0813 +07fb: 2d push a +07fc: 9f xcn a +07fd: 28 07 and a,#$07 +07ff: fd mov y,a +0800: f6 8d 0e mov a,$0e8d+y +0803: d5 01 02 mov $0201+x,a +0806: ae pop a +0807: 28 0f and a,#$0f +0809: fd mov y,a +080a: f6 95 0e mov a,$0e95+y +080d: d5 10 02 mov $0210+x,a +0810: 3f 9c 08 call $089c +0813: 68 e0 cmp a,#$e0 +0815: 90 05 bcc $081c +0817: 3f 8a 08 call $088a +081a: 2f b9 bra $07d5 +081c: 3f d1 05 call $05d1 +081f: f5 00 02 mov a,$0200+x +0822: d4 70 mov $70+x,a +0824: fd mov y,a +0825: f5 01 02 mov a,$0201+x +0828: cf mul ya +0829: dd mov a,y +082a: d0 01 bne $082d +082c: bc inc a +082d: d4 71 mov $71+x,a +082f: 2f 03 bra $0834 +0831: 3f 4c 0c call $0c4c +0834: 3f aa 0a call $0aaa +0837: 3d inc x +0838: 3d inc x +0839: 0b 47 asl $47 +083b: d0 8e bne $07cb +083d: e4 54 mov a,$54 +083f: f0 0b beq $084c +0841: ba 56 movw ya,$56 +0843: 7a 52 addw ya,$52 +0845: 6e 54 02 dbnz $54,$084a +0848: ba 54 movw ya,$54 +084a: da 52 movw $52,ya +084c: e4 68 mov a,$68 +084e: f0 15 beq $0865 +0850: ba 64 movw ya,$64 +0852: 7a 60 addw ya,$60 +0854: da 60 movw $60,ya +0856: ba 66 movw ya,$66 +0858: 7a 62 addw ya,$62 +085a: 6e 68 06 dbnz $68,$0863 +085d: ba 68 movw ya,$68 +085f: da 60 movw $60,ya +0861: eb 6a mov y,$6a +0863: da 62 movw $62,ya +0865: e4 5a mov a,$5a +0867: f0 0e beq $0877 +0869: ba 5c movw ya,$5c +086b: 7a 58 addw ya,$58 +086d: 6e 5a 02 dbnz $5a,$0872 +0870: ba 5a movw ya,$5a +0872: da 58 movw $58,ya +0874: 8f ff 5e mov $5e,#$ff +0877: cd 00 mov x,#$00 +0879: 8f 01 47 mov $47,#$01 +087c: f4 31 mov a,$31+x +087e: f0 03 beq $0883 +0880: 3f 66 0b call $0b66 +0883: 3d inc x +0884: 3d inc x +0885: 0b 47 asl $47 +0887: d0 f3 bne $087c +0889: 6f ret + +; dispatch vcmd in A (e0-ff) +088a: 1c asl a +088b: fd mov y,a +088c: f6 4a 0a mov a,$0a4a+y +088f: 2d push a +0890: f6 49 0a mov a,$0a49+y +0893: 2d push a +0894: dd mov a,y +0895: 5c lsr a +0896: fd mov y,a +0897: f6 e7 0a mov a,$0ae7+y +089a: f0 08 beq $08a4 +; read new argument to A and Y +089c: e7 30 mov a,($30+x) +; advance reading ptr +089e: bb 30 inc $30+x +08a0: d0 02 bne $08a4 +08a2: bb 31 inc $31+x +08a4: fd mov y,a +08a5: 6f ret + +; vcmd e0 - set instrument +08a6: d5 11 02 mov $0211+x,a +08a9: e8 00 mov a,#$00 +08ab: d5 60 02 mov $0260+x,a +08ae: f5 11 02 mov a,$0211+x +08b1: fd mov y,a +08b2: 10 06 bpl $08ba +08b4: 80 setc +08b5: a8 ca sbc a,#$ca +08b7: 60 clrc +08b8: 84 5f adc a,$5f +08ba: 8d 06 mov y,#$06 +08bc: cf mul ya +08bd: da 14 movw $14,ya +08bf: 60 clrc +08c0: 98 08 14 adc $14,#$08 +08c3: 98 12 15 adc $15,#$12 +08c6: e4 1a mov a,$1a +08c8: 24 47 and a,$47 +08ca: d0 3a bne $0906 +08cc: 4d push x +08cd: 7d mov a,x +08ce: 9f xcn a +08cf: 5c lsr a +08d0: 08 04 or a,#$04 +08d2: 5d mov x,a +08d3: 8d 00 mov y,#$00 +08d5: f7 14 mov a,($14)+y +08d7: 10 0e bpl $08e7 +08d9: 28 1f and a,#$1f +08db: 38 20 48 and $48,#$20 +08de: 0e 48 00 tset1 $0048 +08e1: 09 47 49 or ($49),($47) +08e4: dd mov a,y +08e5: 2f 07 bra $08ee +08e7: e4 47 mov a,$47 +08e9: 4e 49 00 tclr1 $0049 +08ec: f7 14 mov a,($14)+y +08ee: c9 f2 00 mov $00f2,x +08f1: c5 f3 00 mov $00f3,a +08f4: 3d inc x +08f5: fc inc y +08f6: ad 04 cmp y,#$04 +08f8: d0 f2 bne $08ec +08fa: ce pop x +08fb: f7 14 mov a,($14)+y +08fd: d5 21 02 mov $0221+x,a +0900: fc inc y +0901: f7 14 mov a,($14)+y +0903: d5 20 02 mov $0220+x,a +0906: 6f ret + +; vcmd e1 - set pan +0907: d5 51 03 mov $0351+x,a +090a: 28 1f and a,#$1f +090c: d5 31 03 mov $0331+x,a +090f: e8 00 mov a,#$00 +0911: d5 30 03 mov $0330+x,a +0914: 6f ret + +; vcmd e2 - set pan fade +0915: d4 91 mov $91+x,a +0917: 2d push a +0918: 3f 9c 08 call $089c +091b: d5 50 03 mov $0350+x,a +091e: 80 setc +091f: b5 31 03 sbc a,$0331+x +0922: ce pop x +0923: 3f ed 0a call $0aed +0926: d5 40 03 mov $0340+x,a +0929: dd mov a,y +092a: d5 41 03 mov $0341+x,a +092d: 6f ret + +; vcmd e3 - vibrato on +092e: d5 b0 02 mov $02b0+x,a +0931: 3f 9c 08 call $089c +0934: d5 a1 02 mov $02a1+x,a +0937: 3f 9c 08 call $089c +; vcmd e4 - vibrato off +093a: d4 b1 mov $b1+x,a +093c: d5 c1 02 mov $02c1+x,a +093f: e8 00 mov a,#$00 +0941: d5 b1 02 mov $02b1+x,a +0944: 6f ret + +; vcmd f0 - vibrato fade +0945: d5 b1 02 mov $02b1+x,a +0948: 2d push a +0949: 8d 00 mov y,#$00 +094b: f4 b1 mov a,$b1+x +094d: ce pop x +094e: 9e div ya,x +094f: f8 44 mov x,$44 +0951: d5 c0 02 mov $02c0+x,a +0954: 6f ret + +; vcmd e5 - master volume +0955: e8 00 mov a,#$00 +0957: da 58 movw $58,ya +0959: 6f ret + +; vcmd e6 - master volume fade +095a: c4 5a mov $5a,a +095c: 3f 9c 08 call $089c +095f: c4 5b mov $5b,a +0961: 80 setc +0962: a4 59 sbc a,$59 +0964: f8 5a mov x,$5a +0966: 3f ed 0a call $0aed +0969: da 5c movw $5c,ya +096b: 6f ret + +; vcmd e7 - tempo +096c: e8 00 mov a,#$00 +096e: da 52 movw $52,ya +0970: 6f ret + +; vcmd e8 - tempo fade +0971: c4 54 mov $54,a +0973: 3f 9c 08 call $089c +0976: c4 55 mov $55,a +0978: 80 setc +0979: a4 53 sbc a,$53 +097b: f8 54 mov x,$54 +097d: 3f ed 0a call $0aed +0980: da 56 movw $56,ya +0982: 6f ret + +; vcmd e9 - global transpose +0983: c4 50 mov $50,a +0985: 6f ret + +; vcmd ea - per-voice transpose +0986: d5 f0 02 mov $02f0+x,a +0989: 6f ret + +; vcmd eb - tremolo on +098a: d5 e0 02 mov $02e0+x,a +098d: 3f 9c 08 call $089c +0990: d5 d1 02 mov $02d1+x,a +0993: 3f 9c 08 call $089c +; vcmd ec - tremolo off +0996: d4 c1 mov $c1+x,a +0998: 6f ret + +; vcmd f1 - pitch envelope (release) +0999: e8 01 mov a,#$01 +099b: 2f 02 bra $099f +; vcmd f2 - pitch envelope (attack) +099d: e8 00 mov a,#$00 +099f: d5 90 02 mov $0290+x,a +09a2: dd mov a,y +09a3: d5 81 02 mov $0281+x,a +09a6: 3f 9c 08 call $089c +09a9: d5 80 02 mov $0280+x,a +09ac: 3f 9c 08 call $089c +09af: d5 91 02 mov $0291+x,a +09b2: 6f ret + +; vcmd f3 - pitch envelope off +09b3: d5 80 02 mov $0280+x,a +09b6: 6f ret + +; vcmd ed - volume +09b7: d5 01 03 mov $0301+x,a +09ba: e8 00 mov a,#$00 +09bc: d5 00 03 mov $0300+x,a +09bf: 6f ret + +; vcmd ee - volume fade +09c0: d4 90 mov $90+x,a +09c2: 2d push a +09c3: 3f 9c 08 call $089c +09c6: d5 20 03 mov $0320+x,a +09c9: 80 setc +09ca: b5 01 03 sbc a,$0301+x +09cd: ce pop x +09ce: 3f ed 0a call $0aed +09d1: d5 10 03 mov $0310+x,a +09d4: dd mov a,y +09d5: d5 11 03 mov $0311+x,a +09d8: 6f ret + +; vcmd f4 - tuning +09d9: d5 81 03 mov $0381+x,a +09dc: 6f ret + +; vcmd ef - call subroutine +09dd: d5 40 02 mov $0240+x,a +09e0: 3f 9c 08 call $089c +09e3: d5 41 02 mov $0241+x,a +09e6: 3f 9c 08 call $089c +09e9: d4 80 mov $80+x,a +09eb: f4 30 mov a,$30+x +09ed: d5 30 02 mov $0230+x,a +09f0: f4 31 mov a,$31+x +09f2: d5 31 02 mov $0231+x,a +09f5: f5 40 02 mov a,$0240+x +09f8: d4 30 mov $30+x,a +09fa: f5 41 02 mov a,$0241+x +09fd: d4 31 mov $31+x,a +09ff: 6f ret + +; vcmd f5 - echo vbits/volume +0a00: c4 4a mov $4a,a +0a02: 3f 9c 08 call $089c +0a05: e8 00 mov a,#$00 +0a07: da 60 movw $60,ya +0a09: 3f 9c 08 call $089c +0a0c: e8 00 mov a,#$00 +0a0e: da 62 movw $62,ya +0a10: b2 48 clr5 $48 +0a12: 6f ret + +; vcmd f8 - echo volume fade +0a13: c4 68 mov $68,a +0a15: 3f 9c 08 call $089c +0a18: c4 69 mov $69,a +0a1a: 80 setc +0a1b: a4 61 sbc a,$61 +0a1d: f8 68 mov x,$68 +0a1f: 3f ed 0a call $0aed +0a22: da 64 movw $64,ya +0a24: 3f 9c 08 call $089c +0a27: c4 6a mov $6a,a +0a29: 80 setc +0a2a: a4 63 sbc a,$63 +0a2c: f8 68 mov x,$68 +0a2e: 3f ed 0a call $0aed +0a31: da 66 movw $66,ya +0a33: 6f ret + +; vcmd f6 - disable echo +0a34: da 60 movw $60,ya +0a36: da 62 movw $62,ya +0a38: a2 48 set5 $48 +0a3a: 6f ret + +; vcmd f7 - set echo params +0a3b: 3f 5d 0a call $0a5d +0a3e: 3f 9c 08 call $089c +0a41: c4 4e mov $4e,a +0a43: 3f 9c 08 call $089c +0a46: 8d 08 mov y,#$08 +0a48: cf mul ya +0a49: 5d mov x,a +0a4a: 8d 0f mov y,#$0f +0a4c: f5 3f 0e mov a,$0e3f+x +0a4f: 3f c6 06 call $06c6 +0a52: 3d inc x +0a53: dd mov a,y +0a54: 60 clrc +0a55: 88 10 adc a,#$10 +0a57: fd mov y,a +0a58: 10 f2 bpl $0a4c +0a5a: f8 44 mov x,$44 +0a5c: 6f ret + +0a5d: c4 4d mov $4d,a +0a5f: 8d 7d mov y,#$7d +0a61: cc f2 00 mov $00f2,y +0a64: e5 f3 00 mov a,$00f3 +0a67: 64 4d cmp a,$4d +0a69: f0 2b beq $0a96 +0a6b: 28 0f and a,#$0f +0a6d: 48 ff eor a,#$ff +0a6f: f3 4c 03 bbc7 $4c,$0a75 +0a72: 60 clrc +0a73: 84 4c adc a,$4c +0a75: c4 4c mov $4c,a +0a77: 8d 04 mov y,#$04 +0a79: f6 5e 0e mov a,$0e5e+y +0a7c: c5 f2 00 mov $00f2,a +0a7f: e8 00 mov a,#$00 +0a81: c5 f3 00 mov $00f3,a +0a84: fe f3 dbnz y,$0a79 +0a86: e4 48 mov a,$48 +0a88: 08 20 or a,#$20 +0a8a: 8d 6c mov y,#$6c +0a8c: 3f c6 06 call $06c6 +0a8f: e4 4d mov a,$4d +0a91: 8d 7d mov y,#$7d +0a93: 3f c6 06 call $06c6 +0a96: 1c asl a +0a97: 1c asl a +0a98: 1c asl a +0a99: 48 ff eor a,#$ff +0a9b: 80 setc +0a9c: 88 ff adc a,#$ff +0a9e: 8d 6d mov y,#$6d +0aa0: 5f c6 06 jmp $06c6 + +; vcmd fa - set perc patch base +0aa3: c4 5f mov $5f,a +0aa5: 6f ret + +; vcmd fd/fe - skip 1 byte +0aa6: 3f 9e 08 call $089e +0aa9: 6f ret + +; vcmd f9 - pitch slide +0aaa: f4 a0 mov a,$a0+x +0aac: d0 33 bne $0ae1 +0aae: e7 30 mov a,($30+x) +0ab0: 68 f9 cmp a,#$f9 +0ab2: d0 2d bne $0ae1 +0ab4: 3f 9e 08 call $089e +0ab7: 3f 9c 08 call $089c +0aba: d4 a1 mov $a1+x,a +0abc: 3f 9c 08 call $089c +0abf: d4 a0 mov $a0+x,a +0ac1: 3f 9c 08 call $089c +0ac4: 60 clrc +0ac5: 84 50 adc a,$50 +0ac7: 95 f0 02 adc a,$02f0+x +0aca: 28 7f and a,#$7f +0acc: d5 80 03 mov $0380+x,a +0acf: 80 setc +0ad0: b5 61 03 sbc a,$0361+x +0ad3: fb a0 mov y,$a0+x +0ad5: 6d push y +0ad6: ce pop x +0ad7: 3f ed 0a call $0aed +0ada: d5 70 03 mov $0370+x,a +0add: dd mov a,y +0ade: d5 71 03 mov $0371+x,a +0ae1: 6f ret + +0ae2: f5 61 03 mov a,$0361+x +0ae5: c4 11 mov $11,a +0ae7: f5 60 03 mov a,$0360+x +0aea: c4 10 mov $10,a +0aec: 6f ret + +0aed: ed notc +0aee: 6b 12 ror $12 +0af0: 10 03 bpl $0af5 +0af2: 48 ff eor a,#$ff +0af4: bc inc a +0af5: 8d 00 mov y,#$00 +0af7: 9e div ya,x +0af8: 2d push a +0af9: e8 00 mov a,#$00 +0afb: 9e div ya,x +0afc: ee pop y +0afd: f8 44 mov x,$44 +0aff: f3 12 06 bbc7 $12,$0b08 +0b02: da 14 movw $14,ya +0b04: ba 0e movw ya,$0e +0b06: 9a 14 subw ya,$14 +0b08: 6f ret + +; vcmd dispatch table +0b09: dw $08a6 ; e0 - set instrument +0b0b: dw $0907 ; e1 - set pan +0b0d: dw $0915 ; e2 - set pan fade +0b0f: dw $092e ; e3 - vibrato on +0b11: dw $093a ; e4 - vibrato off +0b13: dw $0955 ; e5 - master volume +0b15: dw $095a ; e6 - master volume fade +0b17: dw $096c ; e7 - tempo +0b19: dw $0971 ; e8 - tempo fade +0b1b: dw $0983 ; e9 - global transpose +0b1d: dw $0986 ; ea - per-voice transpose +0b1f: dw $098a ; eb - tremolo on +0b21: dw $0996 ; ec - tremolo off +0b23: dw $09b7 ; ed - volume +0b25: dw $09c0 ; ee - volume fade +0b27: dw $09dd ; ef - call subroutine +0b29: dw $0945 ; f0 - vibrato fade +0b2b: dw $0999 ; f1 - pitch envelope (release) +0b2d: dw $099d ; f2 - pitch envelope (attack) +0b2f: dw $09b3 ; f3 - pitch envelope off +0b31: dw $09d9 ; f4 - tuning +0b33: dw $0a00 ; f5 - echo vbits/volume +0b35: dw $0a34 ; f6 - disable echo +0b37: dw $0a3b ; f7 - set echo params +0b39: dw $0a13 ; f8 - echo volume fade +0b3b: dw $0aba ; f9 - pitch slide +0b3d: dw $0aa3 ; fa - set perc patch base +0b3f: dw $0ddd ; fb +0b41: dw $0e02 ; fc +0b43: dw $0aa6 ; fd - skip 1 byte +0b45: dw $0aa6 ; fe - skip 1 byte + +; vcmd lengths +0b47: db $01,$01,$02,$03,$00,$01,$02,$01 ; e0-e7 +0b4f: db $02,$01,$01,$03,$00,$01,$02,$03 ; e8-ef +0b57: db $01,$03,$03,$00,$01,$03,$00,$03 ; f0-f7 +0b5f: db $03,$03,$01,$02,$02,$02,$02 ; f8-fe + +; do voice fades +0b66: f4 90 mov a,$90+x +0b68: f0 24 beq $0b8e +0b6a: 09 47 5e or ($5e),($47) +0b6d: 9b 90 dec $90+x +0b6f: d0 0a bne $0b7b +0b71: e8 00 mov a,#$00 +0b73: d5 00 03 mov $0300+x,a +0b76: f5 20 03 mov a,$0320+x +0b79: 2f 10 bra $0b8b +0b7b: 60 clrc +0b7c: f5 00 03 mov a,$0300+x +0b7f: 95 10 03 adc a,$0310+x +0b82: d5 00 03 mov $0300+x,a +0b85: f5 01 03 mov a,$0301+x +0b88: 95 11 03 adc a,$0311+x +0b8b: d5 01 03 mov $0301+x,a +0b8e: fb c1 mov y,$c1+x +0b90: f0 23 beq $0bb5 +0b92: f5 e0 02 mov a,$02e0+x +0b95: de c0 1b cbne $c0+x,$0bb3 +0b98: 09 47 5e or ($5e),($47) +0b9b: f5 d0 02 mov a,$02d0+x +0b9e: 10 07 bpl $0ba7 +0ba0: fc inc y +0ba1: d0 04 bne $0ba7 +0ba3: e8 80 mov a,#$80 +0ba5: 2f 04 bra $0bab +0ba7: 60 clrc +0ba8: 95 d1 02 adc a,$02d1+x +0bab: d5 d0 02 mov $02d0+x,a +0bae: 3f c0 0d call $0dc0 +0bb1: 2f 07 bra $0bba +0bb3: bb c0 inc $c0+x +0bb5: e8 ff mov a,#$ff +0bb7: 3f cb 0d call $0dcb +0bba: f4 91 mov a,$91+x +0bbc: f0 24 beq $0be2 +0bbe: 09 47 5e or ($5e),($47) +0bc1: 9b 91 dec $91+x +0bc3: d0 0a bne $0bcf +0bc5: e8 00 mov a,#$00 +0bc7: d5 30 03 mov $0330+x,a +0bca: f5 50 03 mov a,$0350+x +0bcd: 2f 10 bra $0bdf +0bcf: 60 clrc +0bd0: f5 30 03 mov a,$0330+x +0bd3: 95 40 03 adc a,$0340+x +0bd6: d5 30 03 mov $0330+x,a +0bd9: f5 31 03 mov a,$0331+x +0bdc: 95 41 03 adc a,$0341+x +0bdf: d5 31 03 mov $0331+x,a +0be2: e4 47 mov a,$47 +0be4: 24 5e and a,$5e +0be6: f0 63 beq $0c4b +0be8: f5 31 03 mov a,$0331+x +0beb: fd mov y,a +0bec: f5 30 03 mov a,$0330+x +0bef: da 10 movw $10,ya +0bf1: 7d mov a,x +0bf2: 9f xcn a +0bf3: 5c lsr a +0bf4: c4 12 mov $12,a +0bf6: eb 11 mov y,$11 +0bf8: e5 58 02 mov a,$0258 +0bfb: f0 11 beq $0c0e +0bfd: e8 51 mov a,#$51 +0bff: 80 setc +0c00: a8 51 sbc a,#$51 +0c02: eb 10 mov y,$10 +0c04: cf mul ya +0c05: dd mov a,y +0c06: eb 11 mov y,$11 +0c08: 60 clrc +0c09: 88 51 adc a,#$51 +0c0b: fd mov y,a +0c0c: 2f 12 bra $0c20 +0c0e: f6 2b 0e mov a,$0e2b+y +0c11: 80 setc +0c12: b6 2a 0e sbc a,$0e2a+y +0c15: eb 10 mov y,$10 +0c17: cf mul ya +0c18: dd mov a,y +0c19: eb 11 mov y,$11 +0c1b: 60 clrc +0c1c: 96 2a 0e adc a,$0e2a+y +0c1f: fd mov y,a +0c20: f5 21 03 mov a,$0321+x +0c23: cf mul ya +0c24: f5 71 02 mov a,$0271+x +0c27: cf mul ya +0c28: e4 6d mov a,$6d +0c2a: cf mul ya +0c2b: f5 51 03 mov a,$0351+x +0c2e: 1c asl a +0c2f: 13 12 01 bbc0 $12,$0c33 +0c32: 1c asl a +0c33: dd mov a,y +0c34: 90 03 bcc $0c39 +0c36: 48 ff eor a,#$ff +0c38: bc inc a +0c39: eb 12 mov y,$12 +0c3b: 3f be 06 call $06be +0c3e: 8d 14 mov y,#$14 +0c40: e8 00 mov a,#$00 +0c42: 9a 10 subw ya,$10 +0c44: da 10 movw $10,ya +0c46: ab 12 inc $12 +0c48: 33 12 ab bbc1 $12,$0bf6 +0c4b: 6f ret + +; do readahead +0c4c: f4 71 mov a,$71+x +0c4e: f0 61 beq $0cb1 +0c50: 9b 71 dec $71+x +0c52: f0 05 beq $0c59 +0c54: e8 02 mov a,#$02 +0c56: de 70 58 cbne $70+x,$0cb1 +0c59: f4 80 mov a,$80+x +0c5b: c4 17 mov $17,a +0c5d: f4 30 mov a,$30+x +0c5f: fb 31 mov y,$31+x +0c61: da 14 movw $14,ya +0c63: 8d 00 mov y,#$00 +0c65: f7 14 mov a,($14)+y +0c67: f0 1e beq $0c87 +0c69: 30 07 bmi $0c72 +0c6b: fc inc y +0c6c: 30 40 bmi $0cae +0c6e: f7 14 mov a,($14)+y +0c70: 10 f9 bpl $0c6b +0c72: 68 c8 cmp a,#$c8 +0c74: f0 3b beq $0cb1 +0c76: 68 ef cmp a,#$ef +0c78: f0 29 beq $0ca3 +0c7a: 68 e0 cmp a,#$e0 +0c7c: 90 30 bcc $0cae +0c7e: 6d push y +0c7f: fd mov y,a +0c80: ae pop a +0c81: 96 67 0a adc a,$0a67+y +0c84: fd mov y,a +0c85: 2f de bra $0c65 +0c87: e4 17 mov a,$17 +0c89: f0 23 beq $0cae +0c8b: 8b 17 dec $17 +0c8d: d0 0a bne $0c99 +0c8f: f5 31 02 mov a,$0231+x +0c92: 2d push a +0c93: f5 30 02 mov a,$0230+x +0c96: ee pop y +0c97: 2f c8 bra $0c61 +0c99: f5 41 02 mov a,$0241+x +0c9c: 2d push a +0c9d: f5 40 02 mov a,$0240+x +0ca0: ee pop y +0ca1: 2f be bra $0c61 +0ca3: fc inc y +0ca4: f7 14 mov a,($14)+y +0ca6: 2d push a +0ca7: fc inc y +0ca8: f7 14 mov a,($14)+y +0caa: fd mov y,a +0cab: ae pop a +0cac: 2f b3 bra $0c61 +0cae: 09 47 6c or ($6c),($47) +0cb1: f2 13 clr7 $13 +0cb3: f4 a0 mov a,$a0+x +0cb5: f0 2c beq $0ce3 +0cb7: f4 a1 mov a,$a1+x +0cb9: f0 04 beq $0cbf +0cbb: 9b a1 dec $a1+x +0cbd: 2f 24 bra $0ce3 +0cbf: e2 13 set7 $13 +0cc1: 9b a0 dec $a0+x +0cc3: d0 0b bne $0cd0 +0cc5: f5 81 03 mov a,$0381+x +0cc8: d5 60 03 mov $0360+x,a +0ccb: f5 80 03 mov a,$0380+x +0cce: 2f 10 bra $0ce0 +0cd0: 60 clrc +0cd1: f5 60 03 mov a,$0360+x +0cd4: 95 70 03 adc a,$0370+x +0cd7: d5 60 03 mov $0360+x,a +0cda: f5 61 03 mov a,$0361+x +0cdd: 95 71 03 adc a,$0371+x +0ce0: d5 61 03 mov $0361+x,a +0ce3: 3f e2 0a call $0ae2 +0ce6: f4 b1 mov a,$b1+x +0ce8: f0 4c beq $0d36 +0cea: f5 b0 02 mov a,$02b0+x +0ced: de b0 44 cbne $b0+x,$0d34 +0cf0: f5 00 01 mov a,$0100+x +0cf3: 75 b1 02 cmp a,$02b1+x +0cf6: d0 05 bne $0cfd +0cf8: f5 c1 02 mov a,$02c1+x +0cfb: 2f 0d bra $0d0a +0cfd: 40 setp +0cfe: bb 00 inc $00+x +0d00: 20 clrp +0d01: fd mov y,a +0d02: f0 02 beq $0d06 +0d04: f4 b1 mov a,$b1+x +0d06: 60 clrc +0d07: 95 c0 02 adc a,$02c0+x +0d0a: d4 b1 mov $b1+x,a +0d0c: f5 a0 02 mov a,$02a0+x +0d0f: 60 clrc +0d10: 95 a1 02 adc a,$02a1+x +0d13: d5 a0 02 mov $02a0+x,a +0d16: c4 12 mov $12,a +0d18: 1c asl a +0d19: 1c asl a +0d1a: 90 02 bcc $0d1e +0d1c: 48 ff eor a,#$ff +0d1e: fd mov y,a +0d1f: f4 b1 mov a,$b1+x +0d21: 68 f1 cmp a,#$f1 +0d23: 90 05 bcc $0d2a +0d25: 28 0f and a,#$0f +0d27: cf mul ya +0d28: 2f 04 bra $0d2e +0d2a: cf mul ya +0d2b: dd mov a,y +0d2c: 8d 00 mov y,#$00 +0d2e: 3f ab 0d call $0dab +0d31: 5f 3b 06 jmp $063b + +0d34: bb b0 inc $b0+x +0d36: e3 13 f8 bbs7 $13,$0d31 +0d39: 6f ret + +; per-voice fades/dsps +0d3a: f2 13 clr7 $13 +0d3c: f4 c1 mov a,$c1+x +0d3e: f0 09 beq $0d49 +0d40: f5 e0 02 mov a,$02e0+x +0d43: de c0 03 cbne $c0+x,$0d49 +0d46: 3f b3 0d call $0db3 +0d49: f5 31 03 mov a,$0331+x +0d4c: fd mov y,a +0d4d: f5 30 03 mov a,$0330+x +0d50: da 10 movw $10,ya +0d52: f4 91 mov a,$91+x +0d54: f0 0a beq $0d60 +0d56: f5 41 03 mov a,$0341+x +0d59: fd mov y,a +0d5a: f5 40 03 mov a,$0340+x +0d5d: 3f 95 0d call $0d95 +0d60: f3 13 03 bbc7 $13,$0d66 +0d63: 3f f1 0b call $0bf1 +0d66: f2 13 clr7 $13 +0d68: 3f e2 0a call $0ae2 +0d6b: f4 a0 mov a,$a0+x +0d6d: f0 0e beq $0d7d +0d6f: f4 a1 mov a,$a1+x +0d71: d0 0a bne $0d7d +0d73: f5 71 03 mov a,$0371+x +0d76: fd mov y,a +0d77: f5 70 03 mov a,$0370+x +0d7a: 3f 95 0d call $0d95 +0d7d: f4 b1 mov a,$b1+x +0d7f: f0 b5 beq $0d36 +0d81: f5 b0 02 mov a,$02b0+x +0d84: de b0 af cbne $b0+x,$0d36 +0d87: eb 51 mov y,$51 +0d89: f5 a1 02 mov a,$02a1+x +0d8c: cf mul ya +0d8d: dd mov a,y +0d8e: 60 clrc +0d8f: 95 a0 02 adc a,$02a0+x +0d92: 5f 16 0d jmp $0d16 + +0d95: e2 13 set7 $13 +0d97: cb 12 mov $12,y +0d99: 3f ff 0a call $0aff +0d9c: 6d push y +0d9d: eb 51 mov y,$51 +0d9f: cf mul ya +0da0: cb 14 mov $14,y +0da2: 8f 00 15 mov $15,#$00 +0da5: eb 51 mov y,$51 +0da7: ae pop a +0da8: cf mul ya +0da9: 7a 14 addw ya,$14 +0dab: 3f ff 0a call $0aff +0dae: 7a 10 addw ya,$10 +0db0: da 10 movw $10,ya +0db2: 6f ret + +0db3: e2 13 set7 $13 +0db5: eb 51 mov y,$51 +0db7: f5 d1 02 mov a,$02d1+x +0dba: cf mul ya +0dbb: dd mov a,y +0dbc: 60 clrc +0dbd: 95 d0 02 adc a,$02d0+x +0dc0: 1c asl a +0dc1: 90 02 bcc $0dc5 +0dc3: 48 ff eor a,#$ff +0dc5: fb c1 mov y,$c1+x +0dc7: cf mul ya +0dc8: dd mov a,y +0dc9: 48 ff eor a,#$ff +0dcb: eb 59 mov y,$59 +0dcd: cf mul ya +0dce: f5 10 02 mov a,$0210+x +0dd1: cf mul ya +0dd2: f5 01 03 mov a,$0301+x +0dd5: cf mul ya +0dd6: dd mov a,y +0dd7: cf mul ya +0dd8: dd mov a,y +0dd9: d5 21 03 mov $0321+x,a +0ddc: 6f ret + +; vcmd fb +0ddd: dd mov a,y +0dde: d5 60 02 mov $0260+x,a +0de1: 3f 9c 08 call $089c +0de4: dd mov a,y +0de5: d5 61 02 mov $0261+x,a +0de8: 7d mov a,x +0de9: 9f xcn a +0dea: 5c lsr a +0deb: 08 05 or a,#$05 +0ded: c4 14 mov $14,a +0def: f5 60 02 mov a,$0260+x +0df2: eb 14 mov y,$14 +0df4: 3f be 06 call $06be +0df7: f5 61 02 mov a,$0261+x +0dfa: ab 14 inc $14 +0dfc: eb 14 mov y,$14 +0dfe: 3f be 06 call $06be +0e01: 6f ret + +; vcmd fc +0e02: 3f a6 08 call $08a6 +0e05: 3f 9c 08 call $089c +0e08: dd mov a,y +0e09: 1c asl a +0e0a: 1c asl a +0e0b: fd mov y,a +0e0c: f6 98 03 mov a,$0398+y +0e0f: d5 60 02 mov $0260+x,a +0e12: f6 99 03 mov a,$0399+y +0e15: d5 61 02 mov $0261+x,a +0e18: 6d push y +0e19: 3f e8 0d call $0de8 +0e1c: ee pop y +0e1d: f6 9a 03 mov a,$039a+y +0e20: 3f 07 09 call $0907 +0e23: f6 9b 03 mov a,$039b+y +0e26: d5 71 02 mov $0271+x,a +0e29: 6f ret + +0b66: f4 90 mov a,$90+x +0b68: f0 24 beq $0b8e +0b6a: 09 47 5e or ($5e),($47) +0b6d: 9b 90 dec $90+x +0b6f: d0 0a bne $0b7b +0b71: e8 00 mov a,#$00 +0b73: d5 00 03 mov $0300+x,a +0b76: f5 20 03 mov a,$0320+x +0b79: 2f 10 bra $0b8b +0b7b: 60 clrc +0b7c: f5 00 03 mov a,$0300+x +0b7f: 95 10 03 adc a,$0310+x +0b82: d5 00 03 mov $0300+x,a +0b85: f5 01 03 mov a,$0301+x +0b88: 95 11 03 adc a,$0311+x +0b8b: d5 01 03 mov $0301+x,a +0b8e: fb c1 mov y,$c1+x +0b90: f0 23 beq $0bb5 +0b92: f5 e0 02 mov a,$02e0+x +0b95: de c0 1b cbne $c0+x,$0bb3 +0b98: 09 47 5e or ($5e),($47) +0b9b: f5 d0 02 mov a,$02d0+x +0b9e: 10 07 bpl $0ba7 +0ba0: fc inc y +0ba1: d0 04 bne $0ba7 +0ba3: e8 80 mov a,#$80 +0ba5: 2f 04 bra $0bab +0ba7: 60 clrc +0ba8: 95 d1 02 adc a,$02d1+x +0bab: d5 d0 02 mov $02d0+x,a +0bae: 3f c0 0d call $0dc0 +0bb1: 2f 07 bra $0bba +0bb3: bb c0 inc $c0+x +0bb5: e8 ff mov a,#$ff +0bb7: 3f cb 0d call $0dcb +0bba: f4 91 mov a,$91+x +0bbc: f0 24 beq $0be2 +0bbe: 09 47 5e or ($5e),($47) +0bc1: 9b 91 dec $91+x +0bc3: d0 0a bne $0bcf +0bc5: e8 00 mov a,#$00 +0bc7: d5 30 03 mov $0330+x,a +0bca: f5 50 03 mov a,$0350+x +0bcd: 2f 10 bra $0bdf +0bcf: 60 clrc +0bd0: f5 30 03 mov a,$0330+x +0bd3: 95 40 03 adc a,$0340+x +0bd6: d5 30 03 mov $0330+x,a +0bd9: f5 31 03 mov a,$0331+x +0bdc: 95 41 03 adc a,$0341+x +0bdf: d5 31 03 mov $0331+x,a +0be2: e4 47 mov a,$47 +0be4: 24 5e and a,$5e +0be6: f0 63 beq $0c4b +0be8: f5 31 03 mov a,$0331+x +0beb: fd mov y,a +0bec: f5 30 03 mov a,$0330+x +0bef: da 10 movw $10,ya +0bf1: 7d mov a,x +0bf2: 9f xcn a +0bf3: 5c lsr a +0bf4: c4 12 mov $12,a +0bf6: eb 11 mov y,$11 +0bf8: e5 58 02 mov a,$0258 +0bfb: f0 11 beq $0c0e +0bfd: e8 51 mov a,#$51 +0bff: 80 setc +0c00: a8 51 sbc a,#$51 +0c02: eb 10 mov y,$10 +0c04: cf mul ya +0c05: dd mov a,y +0c06: eb 11 mov y,$11 +0c08: 60 clrc +0c09: 88 51 adc a,#$51 +0c0b: fd mov y,a +0c0c: 2f 12 bra $0c20 +0c0e: f6 2b 0e mov a,$0e2b+y +0c11: 80 setc +0c12: b6 2a 0e sbc a,$0e2a+y +0c15: eb 10 mov y,$10 +0c17: cf mul ya +0c18: dd mov a,y +0c19: eb 11 mov y,$11 +0c1b: 60 clrc +0c1c: 96 2a 0e adc a,$0e2a+y +0c1f: fd mov y,a +0c20: f5 21 03 mov a,$0321+x +0c23: cf mul ya +0c24: f5 71 02 mov a,$0271+x +0c27: cf mul ya +0c28: e4 6d mov a,$6d +0c2a: cf mul ya +0c2b: f5 51 03 mov a,$0351+x +0c2e: 1c asl a +0c2f: 13 12 01 bbc0 $12,$0c33 +0c32: 1c asl a +0c33: dd mov a,y +0c34: 90 03 bcc $0c39 +0c36: 48 ff eor a,#$ff +0c38: bc inc a +0c39: eb 12 mov y,$12 +0c3b: 3f be 06 call $06be +0c3e: 8d 14 mov y,#$14 +0c40: e8 00 mov a,#$00 +0c42: 9a 10 subw ya,$10 +0c44: da 10 movw $10,ya +0c46: ab 12 inc $12 +0c48: 33 12 ab bbc1 $12,$0bf6 +0c4b: 6f ret + +0c4c: f4 71 mov a,$71+x +0c4e: f0 61 beq $0cb1 +0c50: 9b 71 dec $71+x +0c52: f0 05 beq $0c59 +0c54: e8 02 mov a,#$02 +0c56: de 70 58 cbne $70+x,$0cb1 +0c59: f4 80 mov a,$80+x +0c5b: c4 17 mov $17,a +0c5d: f4 30 mov a,$30+x +0c5f: fb 31 mov y,$31+x +0c61: da 14 movw $14,ya +0c63: 8d 00 mov y,#$00 +0c65: f7 14 mov a,($14)+y +0c67: f0 1e beq $0c87 +0c69: 30 07 bmi $0c72 +0c6b: fc inc y +0c6c: 30 40 bmi $0cae +0c6e: f7 14 mov a,($14)+y +0c70: 10 f9 bpl $0c6b +0c72: 68 c8 cmp a,#$c8 +0c74: f0 3b beq $0cb1 +0c76: 68 ef cmp a,#$ef +0c78: f0 29 beq $0ca3 +0c7a: 68 e0 cmp a,#$e0 +0c7c: 90 30 bcc $0cae +0c7e: 6d push y +0c7f: fd mov y,a +0c80: ae pop a +0c81: 96 67 0a adc a,$0a67+y +0c84: fd mov y,a +0c85: 2f de bra $0c65 +0c87: e4 17 mov a,$17 +0c89: f0 23 beq $0cae +0c8b: 8b 17 dec $17 +0c8d: d0 0a bne $0c99 +0c8f: f5 31 02 mov a,$0231+x +0c92: 2d push a +0c93: f5 30 02 mov a,$0230+x +0c96: ee pop y +0c97: 2f c8 bra $0c61 +0c99: f5 41 02 mov a,$0241+x +0c9c: 2d push a +0c9d: f5 40 02 mov a,$0240+x +0ca0: ee pop y +0ca1: 2f be bra $0c61 +0ca3: fc inc y +0ca4: f7 14 mov a,($14)+y +0ca6: 2d push a +0ca7: fc inc y +0ca8: f7 14 mov a,($14)+y +0caa: fd mov y,a +0cab: ae pop a +0cac: 2f b3 bra $0c61 +0cae: 09 47 6c or ($6c),($47) +0cb1: f2 13 clr7 $13 +0cb3: f4 a0 mov a,$a0+x +0cb5: f0 2c beq $0ce3 +0cb7: f4 a1 mov a,$a1+x +0cb9: f0 04 beq $0cbf +0cbb: 9b a1 dec $a1+x +0cbd: 2f 24 bra $0ce3 +0cbf: e2 13 set7 $13 +0cc1: 9b a0 dec $a0+x +0cc3: d0 0b bne $0cd0 +0cc5: f5 81 03 mov a,$0381+x +0cc8: d5 60 03 mov $0360+x,a +0ccb: f5 80 03 mov a,$0380+x +0cce: 2f 10 bra $0ce0 +0cd0: 60 clrc +0cd1: f5 60 03 mov a,$0360+x +0cd4: 95 70 03 adc a,$0370+x +0cd7: d5 60 03 mov $0360+x,a +0cda: f5 61 03 mov a,$0361+x +0cdd: 95 71 03 adc a,$0371+x +0ce0: d5 61 03 mov $0361+x,a +0ce3: 3f e2 0a call $0ae2 +0ce6: f4 b1 mov a,$b1+x +0ce8: f0 4c beq $0d36 +0cea: f5 b0 02 mov a,$02b0+x +0ced: de b0 44 cbne $b0+x,$0d34 +0cf0: f5 00 01 mov a,$0100+x +0cf3: 75 b1 02 cmp a,$02b1+x +0cf6: d0 05 bne $0cfd +0cf8: f5 c1 02 mov a,$02c1+x +0cfb: 2f 0d bra $0d0a +0cfd: 40 setp +0cfe: bb 00 inc $00+x +0d00: 20 clrp +0d01: fd mov y,a +0d02: f0 02 beq $0d06 +0d04: f4 b1 mov a,$b1+x +0d06: 60 clrc +0d07: 95 c0 02 adc a,$02c0+x +0d0a: d4 b1 mov $b1+x,a +0d0c: f5 a0 02 mov a,$02a0+x +0d0f: 60 clrc +0d10: 95 a1 02 adc a,$02a1+x +0d13: d5 a0 02 mov $02a0+x,a +0d16: c4 12 mov $12,a +0d18: 1c asl a +0d19: 1c asl a +0d1a: 90 02 bcc $0d1e +0d1c: 48 ff eor a,#$ff +0d1e: fd mov y,a +0d1f: f4 b1 mov a,$b1+x +0d21: 68 f1 cmp a,#$f1 +0d23: 90 05 bcc $0d2a +0d25: 28 0f and a,#$0f +0d27: cf mul ya +0d28: 2f 04 bra $0d2e +0d2a: cf mul ya +0d2b: dd mov a,y +0d2c: 8d 00 mov y,#$00 +0d2e: 3f ab 0d call $0dab +0d31: 5f 3b 06 jmp $063b + +0d34: bb b0 inc $b0+x +0d36: e3 13 f8 bbs7 $13,$0d31 +0d39: 6f ret + +0d3a: f2 13 clr7 $13 +0d3c: f4 c1 mov a,$c1+x +0d3e: f0 09 beq $0d49 +0d40: f5 e0 02 mov a,$02e0+x +0d43: de c0 03 cbne $c0+x,$0d49 +0d46: 3f b3 0d call $0db3 +0d49: f5 31 03 mov a,$0331+x +0d4c: fd mov y,a +0d4d: f5 30 03 mov a,$0330+x +0d50: da 10 movw $10,ya +0d52: f4 91 mov a,$91+x +0d54: f0 0a beq $0d60 +0d56: f5 41 03 mov a,$0341+x +0d59: fd mov y,a +0d5a: f5 40 03 mov a,$0340+x +0d5d: 3f 95 0d call $0d95 +0d60: f3 13 03 bbc7 $13,$0d66 +0d63: 3f f1 0b call $0bf1 +0d66: f2 13 clr7 $13 +0d68: 3f e2 0a call $0ae2 +0d6b: f4 a0 mov a,$a0+x +0d6d: f0 0e beq $0d7d +0d6f: f4 a1 mov a,$a1+x +0d71: d0 0a bne $0d7d +0d73: f5 71 03 mov a,$0371+x +0d76: fd mov y,a +0d77: f5 70 03 mov a,$0370+x +0d7a: 3f 95 0d call $0d95 +0d7d: f4 b1 mov a,$b1+x +0d7f: f0 b5 beq $0d36 +0d81: f5 b0 02 mov a,$02b0+x +0d84: de b0 af cbne $b0+x,$0d36 +0d87: eb 51 mov y,$51 +0d89: f5 a1 02 mov a,$02a1+x +0d8c: cf mul ya +0d8d: dd mov a,y +0d8e: 60 clrc +0d8f: 95 a0 02 adc a,$02a0+x +0d92: 5f 16 0d jmp $0d16 + +0d95: e2 13 set7 $13 +0d97: cb 12 mov $12,y +0d99: 3f ff 0a call $0aff +0d9c: 6d push y +0d9d: eb 51 mov y,$51 +0d9f: cf mul ya +0da0: cb 14 mov $14,y +0da2: 8f 00 15 mov $15,#$00 +0da5: eb 51 mov y,$51 +0da7: ae pop a +0da8: cf mul ya +0da9: 7a 14 addw ya,$14 +0dab: 3f ff 0a call $0aff +0dae: 7a 10 addw ya,$10 +0db0: da 10 movw $10,ya +0db2: 6f ret + +0db3: e2 13 set7 $13 +0db5: eb 51 mov y,$51 +0db7: f5 d1 02 mov a,$02d1+x +0dba: cf mul ya +0dbb: dd mov a,y +0dbc: 60 clrc +0dbd: 95 d0 02 adc a,$02d0+x +0dc0: 1c asl a +0dc1: 90 02 bcc $0dc5 +0dc3: 48 ff eor a,#$ff +0dc5: fb c1 mov y,$c1+x +0dc7: cf mul ya +0dc8: dd mov a,y +0dc9: 48 ff eor a,#$ff +0dcb: eb 59 mov y,$59 +0dcd: cf mul ya +0dce: f5 10 02 mov a,$0210+x +0dd1: cf mul ya +0dd2: f5 01 03 mov a,$0301+x +0dd5: cf mul ya +0dd6: dd mov a,y +0dd7: cf mul ya +0dd8: dd mov a,y +0dd9: d5 21 03 mov $0321+x,a +0ddc: 6f ret + +; vcmd fb +0ddd: dd mov a,y +0dde: d5 60 02 mov $0260+x,a +0de1: 3f 9c 08 call $089c +0de4: dd mov a,y +0de5: d5 61 02 mov $0261+x,a +0de8: 7d mov a,x +0de9: 9f xcn a +0dea: 5c lsr a +0deb: 08 05 or a,#$05 +0ded: c4 14 mov $14,a +0def: f5 60 02 mov a,$0260+x +0df2: eb 14 mov y,$14 +0df4: 3f be 06 call $06be +0df7: f5 61 02 mov a,$0261+x +0dfa: ab 14 inc $14 +0dfc: eb 14 mov y,$14 +0dfe: 3f be 06 call $06be +0e01: 6f ret + +; vcmd fc +0e02: 3f a6 08 call $08a6 +0e05: 3f 9c 08 call $089c +0e08: dd mov a,y +0e09: 1c asl a +0e0a: 1c asl a +0e0b: fd mov y,a +0e0c: f6 98 03 mov a,$0398+y +0e0f: d5 60 02 mov $0260+x,a +0e12: f6 99 03 mov a,$0399+y +0e15: d5 61 02 mov $0261+x,a +0e18: 6d push y +0e19: 3f e8 0d call $0de8 +0e1c: ee pop y +0e1d: f6 9a 03 mov a,$039a+y +0e20: 3f 07 09 call $0907 +0e23: f6 9b 03 mov a,$039b+y +0e26: d5 71 02 mov $0271+x,a +0e29: 6f ret + +; pan table +0e2a: db $00,$01,$03,$07,$0d,$15,$1e,$29 +0e32: db $34,$42,$51,$5e,$67,$6e,$73,$77 +0e3a: db $7a,$7c,$7d,$7e,$7f + +; echo FIR presets +0e3f: db $7f,$00,$00,$00,$00,$00,$00,$00 ; 00 +0e4f: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c ; 01 +0e5f: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 ; 02 +0e6f: db $34,$33,$00,$d9,$e5,$01,$fc,$eb ; 03 + +; EVOL(L),EVOL(R),EFB,EON,FLG,KOL,KOF,NON,PMON,KOF +; dsp shadows addrs for dsp regs +0e5f: db $2c,$3c,$0d,$4d,$6c,$4c,$5c,$3d,$2d,$5c +0e69: db $61,$63,$4e,$4a,$48,$45,$0e,$49,$4b,$46 + +; pitch table +0e73: dw $085f +0e75: dw $08de +0e77: dw $0965 +0e79: dw $09f4 +0e7b: dw $0a8c +0e7d: dw $0b2c +0e7f: dw $0bd6 +0e81: dw $0c8b +0e83: dw $0d4a +0e85: dw $0e14 +0e87: dw $0eea +0e89: dw $0fcd +0e8b: dw $10be + +0e8d: dw $32,$65,$7f,$98,$b2,$cb,$e5,$ff,$0a,$19,$28,$3c,$50,$64,$7d,$96,$aa,$b9,$c8,$d4,$e1,$eb,$f5,$ff + +0ea5: e8 aa mov a,#$aa +0ea7: c5 f4 00 mov $00f4,a +0eaa: e8 bb mov a,#$bb +0eac: c5 f5 00 mov $00f5,a +0eaf: e5 f4 00 mov a,$00f4 +0eb2: 65 f4 00 cmp a,$00f4 +0eb5: d0 f8 bne $0eaf +0eb7: 68 cc cmp a,#$cc +0eb9: d0 f4 bne $0eaf +0ebb: 2f 42 bra $0eff +0ebd: ec f4 00 mov y,$00f4 +0ec0: 5e f4 00 cmp y,$00f4 +0ec3: d0 f8 bne $0ebd +0ec5: ad 00 cmp y,#$00 +0ec7: d0 f4 bne $0ebd +0ec9: 6d push y +0eca: ec f4 00 mov y,$00f4 +0ecd: 5e f4 00 cmp y,$00f4 +0ed0: d0 f8 bne $0eca +0ed2: cb e7 mov $e7,y +0ed4: ee pop y +0ed5: 7e e7 cmp y,$e7 +0ed7: d0 14 bne $0eed +0ed9: e5 f5 00 mov a,$00f5 +0edc: 65 f5 00 cmp a,$00f5 +0edf: d0 f8 bne $0ed9 +0ee1: cc f4 00 mov $00f4,y +0ee4: d7 14 mov ($14)+y,a +0ee6: fc inc y +0ee7: d0 e0 bne $0ec9 +0ee9: ab 15 inc $15 +0eeb: 2f dc bra $0ec9 +0eed: 10 da bpl $0ec9 +0eef: 6d push y +0ef0: ec f4 00 mov y,$00f4 +0ef3: 5e f4 00 cmp y,$00f4 +0ef6: d0 f8 bne $0ef0 +0ef8: cb e7 mov $e7,y +0efa: ee pop y +0efb: 7e e7 cmp y,$e7 +0efd: 10 ca bpl $0ec9 +0eff: e5 f6 00 mov a,$00f6 +0f02: 65 f6 00 cmp a,$00f6 +0f05: d0 f8 bne $0eff +0f07: ec f7 00 mov y,$00f7 +0f0a: 5e f7 00 cmp y,$00f7 +0f0d: d0 f8 bne $0f07 +0f0f: da 14 movw $14,ya +0f11: ec f4 00 mov y,$00f4 +0f14: 5e f4 00 cmp y,$00f4 +0f17: d0 f8 bne $0f11 +0f19: e5 f5 00 mov a,$00f5 +0f1c: 65 f5 00 cmp a,$00f5 +0f1f: d0 f8 bne $0f19 +0f21: cc f4 00 mov $00f4,y +0f24: 68 00 cmp a,#$00 +0f26: d0 95 bne $0ebd +0f28: cd 31 mov x,#$31 +0f2a: c9 f1 00 mov $00f1,x +0f2d: 6f ret +0f2e: 3f 4c 0f call $0f4c +0f31: e5 5a 02 mov a,$025a +0f34: f0 15 beq $0f4b +0f36: eb 09 mov y,$09 +0f38: e4 01 mov a,$01 +0f3a: c4 09 mov $09,a +0f3c: c4 05 mov $05,a +0f3e: c4 e1 mov $e1,a +0f40: 7e 01 cmp y,$01 +0f42: d0 67 bne $0fab +0f44: e5 5a 02 mov a,$025a +0f47: 68 02 cmp a,#$02 +0f49: f0 60 beq $0fab +0f4b: 6f ret +0f4c: eb 0b mov y,$0b +0f4e: e4 03 mov a,$03 +0f50: c4 0b mov $0b,a +0f52: 7e 03 cmp y,$03 +0f54: f0 04 beq $0f5a +0f56: e8 02 mov a,#$02 +0f58: 2f 02 bra $0f5c +0f5a: e8 01 mov a,#$01 +0f5c: c5 5a 02 mov $025a,a +0f5f: e5 53 02 mov a,$0253 +0f62: f0 0e beq $0f72 +0f64: 9c dec a +0f65: c4 e2 mov $e2,a +0f67: fd mov y,a +0f68: f6 fc 11 mov a,$11fc+y +0f6b: c4 47 mov $47,a +0f6d: f6 ff 11 mov a,$11ff+y +0f70: 5d mov x,a +0f71: 6f ret +0f72: e8 00 mov a,#$00 +0f74: c5 5a 02 mov $025a,a +0f77: 6f ret +0f78: 3f e9 10 call $10e9 +0f7b: dd mov a,y +0f7c: d5 21 01 mov $0121+x,a +0f7f: e4 e2 mov a,$e2 +0f81: d5 11 01 mov $0111+x,a +0f84: 3f 90 0f call $0f90 +0f87: 6f ret +0f88: e8 00 mov a,#$00 +0f8a: d5 10 01 mov $0110+x,a +0f8d: d5 21 01 mov $0121+x,a +0f90: e8 00 mov a,#$00 +0f92: d5 40 01 mov $0140+x,a +0f95: d5 41 01 mov $0141+x,a +0f98: d5 70 02 mov $0270+x,a +0f9b: e8 ff mov a,#$ff +0f9d: d5 50 01 mov $0150+x,a +0fa0: e4 47 mov a,$47 +0fa2: 4e e0 00 tclr1 $00e0 +0fa5: e4 47 mov a,$47 +0fa7: 4e e4 00 tclr1 $00e4 +0faa: 6f ret +0fab: e4 e1 mov a,$e1 +0fad: f0 5f beq $100e +0faf: f5 11 01 mov a,$0111+x +0fb2: fd mov y,a +0fb3: 8f fe 2c mov $2c,#$fe +0fb6: 8f e9 2d mov $2d,#$e9 +0fb9: f6 02 12 mov a,$1202+y +0fbc: c4 2f mov $2f,a +0fbe: 60 clrc +0fbf: 84 2d adc a,$2d +0fc1: c4 2d mov $2d,a +0fc3: e4 e1 mov a,$e1 +0fc5: 1c asl a +0fc6: fd mov y,a +0fc7: f7 2c mov a,($2c)+y +0fc9: c4 2e mov $2e,a +0fcb: fc inc y +0fcc: f7 2c mov a,($2c)+y +0fce: 60 clrc +0fcf: 84 2f adc a,$2f +0fd1: fd mov y,a +0fd2: e4 2e mov a,$2e +0fd4: da 2c movw $2c,ya +0fd6: f5 10 01 mov a,$0110+x +0fd9: c4 2f mov $2f,a +0fdb: 8d 00 mov y,#$00 +0fdd: f7 2c mov a,($2c)+y +0fdf: 60 clrc +0fe0: 64 2f cmp a,$2f +0fe2: f0 03 beq $0fe7 +0fe4: b0 01 bcs $0fe7 +0fe6: 6f ret +0fe7: d5 10 01 mov $0110+x,a +0fea: ba 2c movw ya,$2c +0fec: bc inc a +0fed: d0 01 bne $0ff0 +0fef: fc inc y +0ff0: d4 d0 mov $d0+x,a +0ff2: db d1 mov $d1+x,y +0ff4: 3f 78 0f call $0f78 +0ff7: e8 01 mov a,#$01 +0ff9: d5 20 01 mov $0120+x,a +0ffc: e4 47 mov a,$47 +0ffe: 04 1a or a,$1a +1000: c4 1a mov $1a,a +1002: 3f 56 11 call $1156 +1005: 6f ret +1006: f5 20 01 mov a,$0120+x +1009: 9c dec a +100a: d5 20 01 mov $0120+x,a +100d: 6f ret +100e: 3f 56 11 call $1156 +1011: e8 f2 mov a,#$f2 +1013: d5 20 01 mov $0120+x,a +1016: 6f ret +1017: 3f 61 11 call $1161 +101a: 68 00 cmp a,#$00 +101c: d0 1f bne $103d +101e: e8 00 mov a,#$00 +1020: c4 09 mov $09,a +1022: c4 01 mov $01,a +1024: c4 05 mov $05,a +1026: d4 d1 mov $d1+x,a +1028: d5 10 01 mov $0110+x,a +102b: e4 47 mov a,$47 +102d: 4e 1a 00 tclr1 $001a +1030: 3f ae 08 call $08ae +1033: f5 60 02 mov a,$0260+x +1036: 28 80 and a,#$80 +1038: f0 03 beq $103d +103a: 3f e8 0d call $0de8 +103d: 6f ret +103e: e4 47 mov a,$47 +1040: 4e 1a 00 tclr1 $001a +1043: 6f ret +1044: f4 d1 mov a,$d1+x +1046: f0 f6 beq $103e +1048: f5 20 01 mov a,$0120+x +104b: f0 06 beq $1053 +104d: 68 f0 cmp a,#$f0 +104f: f0 c6 beq $1017 +1051: 2f b3 bra $1006 +1053: f5 21 01 mov a,$0121+x +1056: f0 2a beq $1082 +1058: 30 28 bmi $1082 +105a: f5 70 02 mov a,$0270+x +105d: f0 0c beq $106b +105f: 9c dec a +1060: d5 70 02 mov $0270+x,a +1063: f0 01 beq $1066 +1065: 6f ret +1066: 3f 56 11 call $1156 +1069: 2f 75 bra $10e0 +106b: 3f 61 11 call $1161 +106e: 68 00 cmp a,#$00 +1070: d0 5b bne $10cd +1072: 3f e9 10 call $10e9 +1075: dd mov a,y +1076: ad ff cmp y,#$ff +1078: f0 05 beq $107f +107a: d5 70 02 mov $0270+x,a +107d: 2f 11 bra $1090 +107f: 5f 0e 10 jmp $100e + +1082: e5 e0 00 mov a,$00e0 +1085: 24 47 and a,$47 +1087: d0 46 bne $10cf +1089: 3f 61 11 call $1161 +108c: 68 00 cmp a,#$00 +108e: d0 3d bne $10cd +1090: 3f e9 10 call $10e9 +1093: dd mov a,y +1094: ad ff cmp y,#$ff +1096: f0 e7 beq $107f +1098: c4 2c mov $2c,a +109a: 30 0c bmi $10a8 +109c: f5 11 01 mov a,$0111+x +109f: fd mov y,a +10a0: f6 05 12 mov a,$1205+y +10a3: 60 clrc +10a4: 84 2c adc a,$2c +10a6: 2f 02 bra $10aa +10a8: 28 7f and a,#$7f +10aa: 3f 6d 11 call $116d +10ad: 3f e9 10 call $10e9 +10b0: 3f f3 10 call $10f3 +10b3: 3f e9 10 call $10e9 +10b6: e4 e4 mov a,$e4 +10b8: 24 47 and a,$47 +10ba: d0 04 bne $10c0 +10bc: dd mov a,y +10bd: d5 40 01 mov $0140+x,a +10c0: 3f e9 10 call $10e9 +10c3: dd mov a,y +10c4: d5 41 01 mov $0141+x,a +10c7: 09 47 e0 or ($e0),($47) +10ca: 09 47 45 or ($45),($47) +10cd: 2f 16 bra $10e5 +10cf: 8d 7c mov y,#$7c +10d1: 3f 4f 11 call $114f +10d4: 24 47 and a,$47 +10d6: f0 0d beq $10e5 +10d8: f5 21 01 mov a,$0121+x +10db: 30 08 bmi $10e5 +10dd: 3f 56 11 call $1156 +10e0: e4 47 mov a,$47 +10e2: 4e e0 00 tclr1 $00e0 +10e5: 3f b4 11 call $11b4 +10e8: 6f ret +10e9: e7 d0 mov a,($d0+x) +10eb: bb d0 inc $d0+x +10ed: d0 02 bne $10f1 +10ef: bb d1 inc $d1+x +10f1: fd mov y,a +10f2: 6f ret +10f3: 4d push x +10f4: dd mov a,y +10f5: 1c asl a +10f6: 8d 00 mov y,#$00 +10f8: cd 18 mov x,#$18 +10fa: 9e div ya,x +10fb: 5d mov x,a +10fc: f6 74 0e mov a,$0e74+y +10ff: c4 2d mov $2d,a +1101: f6 73 0e mov a,$0e73+y +1104: c4 2c mov $2c,a +1106: ba 2c movw ya,$2c +1108: 2f 04 bra $110e +110a: 4b 2d lsr $2d +110c: 7c ror a +110d: 3d inc x +110e: c8 06 cmp x,#$06 +1110: d0 f8 bne $110a +1112: c4 2c mov $2c,a +1114: ce pop x +1115: f5 30 01 mov a,$0130+x +1118: eb 2d mov y,$2d +111a: cf mul ya +111b: da 2e movw $2e,ya +111d: f5 30 01 mov a,$0130+x +1120: eb 2c mov y,$2c +1122: cf mul ya +1123: 6d push y +1124: f5 31 01 mov a,$0131+x +1127: eb 2c mov y,$2c +1129: cf mul ya +112a: 7a 2e addw ya,$2e +112c: da 2e movw $2e,ya +112e: f5 31 01 mov a,$0131+x +1131: eb 2d mov y,$2d +1133: cf mul ya +1134: fd mov y,a +1135: ae pop a +1136: 7a 2e addw ya,$2e +1138: da 2e movw $2e,ya +113a: 7d mov a,x +113b: 9f xcn a +113c: 5c lsr a +113d: 08 02 or a,#$02 +113f: fd mov y,a +1140: e4 2e mov a,$2e +1142: 3f 48 11 call $1148 +1145: fc inc y +1146: e4 2f mov a,$2f +1148: cc f2 00 mov $00f2,y +114b: c5 f3 00 mov $00f3,a +114e: 6f ret +114f: cc f2 00 mov $00f2,y +1152: e5 f3 00 mov a,$00f3 +1155: 6f ret +1156: 8d 5c mov y,#$5c +1158: e4 47 mov a,$47 +115a: cc f2 00 mov $00f2,y +115d: c5 f3 00 mov $00f3,a +1160: 6f ret +1161: 7d mov a,x +1162: 9f xcn a +1163: 5c lsr a +1164: 08 09 or a,#$09 +1166: c5 f2 00 mov $00f2,a +1169: e5 f3 00 mov a,$00f3 +116c: 6f ret +116d: 8d 06 mov y,#$06 +116f: cf mul ya +1170: da 2c movw $2c,ya +1172: 60 clrc +1173: 98 08 2c adc $2c,#$08 +1176: 98 12 2d adc $2d,#$12 +1179: 4d push x +117a: 7d mov a,x +117b: 9f xcn a +117c: 5c lsr a +117d: 08 04 or a,#$04 +117f: 5d mov x,a +1180: 8d 00 mov y,#$00 +1182: f7 2c mov a,($2c)+y +1184: 10 0e bpl $1194 +1186: 28 1f and a,#$1f +1188: 38 20 48 and $48,#$20 +118b: 0e 48 00 tset1 $0048 +118e: 09 47 49 or ($49),($47) +1191: dd mov a,y +1192: 2f 07 bra $119b +1194: e4 47 mov a,$47 +1196: 4e 49 00 tclr1 $0049 +1199: f7 2c mov a,($2c)+y +119b: c9 f2 00 mov $00f2,x +119e: c5 f3 00 mov $00f3,a +11a1: 3d inc x +11a2: fc inc y +11a3: ad 04 cmp y,#$04 +11a5: d0 f2 bne $1199 +11a7: ce pop x +11a8: f7 2c mov a,($2c)+y +11aa: d5 31 01 mov $0131+x,a +11ad: fc inc y +11ae: f7 2c mov a,($2c)+y +11b0: d5 30 01 mov $0130+x,a +11b3: 6f ret +11b4: 7d mov a,x +11b5: 9f xcn a +11b6: 5c lsr a +11b7: c4 2c mov $2c,a +11b9: e5 58 02 mov a,$0258 +11bc: f0 04 beq $11c2 +11be: e8 0a mov a,#$0a +11c0: 2f 03 bra $11c5 +11c2: f5 40 01 mov a,$0140+x +11c5: 3f ed 11 call $11ed +11c8: dd mov a,y +11c9: eb 2c mov y,$2c +11cb: 3f 48 11 call $1148 +11ce: e5 58 02 mov a,$0258 +11d1: f0 04 beq $11d7 +11d3: e8 0a mov a,#$0a +11d5: 2f 03 bra $11da +11d7: f5 40 01 mov a,$0140+x +11da: c4 2d mov $2d,a +11dc: e8 14 mov a,#$14 +11de: 80 setc +11df: a4 2d sbc a,$2d +11e1: 3f ed 11 call $11ed +11e4: ab 2c inc $2c +11e6: dd mov a,y +11e7: eb 2c mov y,$2c +11e9: 3f 48 11 call $1148 +11ec: 6f ret +11ed: fd mov y,a +11ee: f6 2a 0e mov a,$0e2a+y +11f1: bc inc a +11f2: fd mov y,a +11f3: f5 41 01 mov a,$0141+x +11f6: cf mul ya +11f7: f5 50 01 mov a,$0150+x +11fa: cf mul ya +11fb: 6f ret \ No newline at end of file From 52ba3364100834895891f3e88891919565234f91 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:40:47 -0800 Subject: [PATCH 054/116] Rename snes/NSPC/Street Fighter Alpha 2 ($0400).bin to snes/NSPC/Capcom/Street Fighter Alpha 2 ($0400).bin --- .../{ => Capcom}/Street Fighter Alpha 2 ($0400).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Capcom}/Street Fighter Alpha 2 ($0400).bin (100%) diff --git a/snes/NSPC/Street Fighter Alpha 2 ($0400).bin b/snes/NSPC/Capcom/Street Fighter Alpha 2 ($0400).bin similarity index 100% rename from snes/NSPC/Street Fighter Alpha 2 ($0400).bin rename to snes/NSPC/Capcom/Street Fighter Alpha 2 ($0400).bin From 5251f151bbac61213b74e7e6b8b31cb0aecef087 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:41:00 -0800 Subject: [PATCH 055/116] Update and rename snes/NSPC/Street Fighter Alpha 2.s to snes/NSPC/Capcom/Street Fighter Alpha 2.s --- snes/NSPC/{ => Capcom}/Street Fighter Alpha 2.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Capcom}/Street Fighter Alpha 2.s (96%) diff --git a/snes/NSPC/Street Fighter Alpha 2.s b/snes/NSPC/Capcom/Street Fighter Alpha 2.s similarity index 96% rename from snes/NSPC/Street Fighter Alpha 2.s rename to snes/NSPC/Capcom/Street Fighter Alpha 2.s index f97c6c1e..77d20743 100644 --- a/snes/NSPC/Street Fighter Alpha 2.s +++ b/snes/NSPC/Capcom/Street Fighter Alpha 2.s @@ -2136,4 +2136,5 @@ 11f6: cf mul ya 11f7: f5 50 01 mov a,$0150+x 11fa: cf mul ya -11fb: 6f ret \ No newline at end of file + +11fb: 6f ret From c1d4a8e3ad870834a6f63162d366888425eb6d7e Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:41:31 -0800 Subject: [PATCH 056/116] Add files via upload --- snes/NSPC/Super Godzilla ($0800).bin | Bin 0 -> 1069 bytes snes/NSPC/Super Godzilla.s | 2495 ++++++++++++++++++++++++++ 2 files changed, 2495 insertions(+) create mode 100644 snes/NSPC/Super Godzilla ($0800).bin create mode 100644 snes/NSPC/Super Godzilla.s diff --git a/snes/NSPC/Super Godzilla ($0800).bin b/snes/NSPC/Super Godzilla ($0800).bin new file mode 100644 index 0000000000000000000000000000000000000000..057b31eac4104764d0611df61a713b6755921ad2 GIT binary patch literal 1069 zcmZvb%TE(g6vk&d->r!;*e0eG0SgHl7S{R)sN=>U)uL|Hg+K{DaO3Dk+$b1bit>mF z3xdE#H+JFLL>KoMqXKQxVPVpU$=qaoEGjTq7evoYTjPSw+;h(T&hI>C#$1Tmd6-Kv z`)BYhX!aMlnq7cZ5w2D&uk7yuN453B;>@DG0?XAY0Vho{@MVeO$nRoK#~Vs( zDuxbIq%}4zj;S~X^}Hw{ozhD(?etS4oB?Wr(@o8OS@TE(Gi0}K?r(T`!gu=Fkpq@W zAg^1l#4-YJwc#x-uQ~dPbDWy5&X1W@=jyh>FKrXGQli z@%Ap+RjLScXor7M(d`Stcx>FR8QCXU*je6y?j4VdNzi0qXX5*+b~WuxpiZ)A3g+7G z-100cV!d^F4(n~p^9bUv>?v5I#*&OU`e=A5`yjIEQ>QS^85^^h=A``gYQ&dT#Ks(o ztsCgm7=vZ`_-8tE$ljx5wL>08Ky{LO|rh6cXm4-R>W{FL*TX9_%*5 z8-ab+U~wj%Y~LgIa8eSTvNMNX*~_ox#m<}`W_dK!H?+f9FJo|aEF=^B5y-IRB+9?o z|26V__ENa~Lxy|2XDgROVoY(dJI&2K8P8pj5%24Yj3QD#xz$weMY-x8lWS(INogV< zCAGd!4++E&}ohldm-?y-L=FN*VMR zs?VTDKKUS%Q%r_f*j6L^-}eDf5_A}J1au0N0i6T&g06tBgKmLZ1kHdXh(K>aB~6W^ z<28*#P538oebPTC;cln9{CjG25R?KP1(~33&}q Date: Sat, 17 Jan 2026 14:41:52 -0800 Subject: [PATCH 057/116] Rename snes/NSPC/Super Godzilla ($0800).bin to snes/NSPC/Advance Communication/Super Godzilla ($0800).bin --- .../Super Godzilla ($0800).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Advance Communication}/Super Godzilla ($0800).bin (100%) diff --git a/snes/NSPC/Super Godzilla ($0800).bin b/snes/NSPC/Advance Communication/Super Godzilla ($0800).bin similarity index 100% rename from snes/NSPC/Super Godzilla ($0800).bin rename to snes/NSPC/Advance Communication/Super Godzilla ($0800).bin From ee4dfa693d2299782b5848cb5fd89f3c454b209d Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:42:06 -0800 Subject: [PATCH 058/116] Update and rename snes/NSPC/Super Godzilla.s to snes/NSPC/Advance Communication/Super Godzilla.s --- snes/NSPC/{ => Advance Communication}/Super Godzilla.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Advance Communication}/Super Godzilla.s (96%) diff --git a/snes/NSPC/Super Godzilla.s b/snes/NSPC/Advance Communication/Super Godzilla.s similarity index 96% rename from snes/NSPC/Super Godzilla.s rename to snes/NSPC/Advance Communication/Super Godzilla.s index 76490e46..ebae8917 100644 --- a/snes/NSPC/Super Godzilla.s +++ b/snes/NSPC/Advance Communication/Super Godzilla.s @@ -2492,4 +2492,5 @@ 1bb3: c5 93 04 mov $0493,a 1bb6: e8 0a mov a,#$0a 1bb8: c5 7f 04 mov $047f,a -1bbb: 6f ret \ No newline at end of file + +1bbb: 6f ret From eb9b2227729a6e28982356c891de7acacade0b45 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:42:26 -0800 Subject: [PATCH 059/116] Add files via upload --- ...amoto Ayako to Match Play Golf ($0800).bin | Bin 0 -> 3875 bytes snes/NSPC/Okamoto Ayako to Match Play Golf.s | 1987 +++++++++++++++++ 2 files changed, 1987 insertions(+) create mode 100644 snes/NSPC/Okamoto Ayako to Match Play Golf ($0800).bin create mode 100644 snes/NSPC/Okamoto Ayako to Match Play Golf.s diff --git a/snes/NSPC/Okamoto Ayako to Match Play Golf ($0800).bin b/snes/NSPC/Okamoto Ayako to Match Play Golf ($0800).bin new file mode 100644 index 0000000000000000000000000000000000000000..f26b80deb47c360812a8345df9fce2e735b12da0 GIT binary patch literal 3875 zcmZ8k4R8}jmhPSzsr56GM%Xx}kR5p!F5V(48Jk_$1Z8B{y`whA?p|%x)@_x279>~a ztAq?mY7^oMK?G88=S(EFN>m7hwM}wGEgP?Et2SE|yc>STgv3aiaGoJiEXTmO7@~ws zY>f;?vhIz{<*sgQb@%Ij{rbJvuU~&1OyB<(9d-ZVq9NZ+P*_J2s$4;*ki2jT?{eVe z98cHr%jxT6Pb!xp6EWwcb7}P9O_adx<}}^5Tq5RG+HmtB zH~%X)|B5?I^WFv>DOc%8+|;U+#AKGXIBqem%!8)`wpe-uWnLYt z%r3|uf3N*x6*rx=s5~n9#cDA2$ zwzrwn)Wnd{Y+j`%PMC<6UFKdY{wG|UjOkcvFU9}T%Rl86k(Q31TsPvhs=5*TWT5X- z?$TB*9S~8v@pyM>%qe+Fl2c+!A2>s$3(i|_u!T$6yombPaZg~4M`FXwqn;Nd7wz(G ziOrY;xZug=yjIO-cbJ1#)#rr{XnC@gVXM8n)%V*j2UXF${GXj=&3DgCW_(tf6M7s| zj(>I*ov*qcbgS-u_9vct?-$;*@2^|}ozrQFfZJ{pnFgnu2Z+%uefFh>OqR*UQixFy zlRtt=-ayL8ZAzKTH1f zlPMj;{v6#TNBGsOY|}{3r~bA&C5C})a~ogBQZWov*yx>xeX3)_pYZ1$W(-eks+ikw zHZSARiOsOlKU&Urcq0+m-IGF^=1;r$DOVFWuZcVx{i>E%UgHzpZYU``6dKR%3{$`>IfNGVyObl=)`5AxZQXFg5~IT*#*f{H~$+n6b)|`&dnGkTPR6xj`xwr4%4rs8lDVv`||6s&mFqfUKB7DtD+#}cNg7Oloisk!;9{UiK(o)jSAFda3J5hCrNLqjutWyJ7T?#-hg;LmFdV_5D=z` zXLy3qb%WF*t)QREB@St3;{1(n$$Ql(q(1 zYUKc}Y=g6`bkYL+LLxE;=*;okQ%Z~$gr3!Gfv7B_GK`K?2O|KbB11N6gHp9kuLXrLvAw1_ z0?p6jnOCV_!xDM3OBgf$}D77z||qW3w2j>*)c=m|VI$<08uA|)frE2Vt z9fC9tZRu+KE$Q|+D4hGiBCo~Yy0AokDCExP#)dis$kEow51|kp*>2Hier4s0NIrIu zt8lZorvzz(xO;q7n|pkN(c0?UQk`2*$M&z6){9JOzCoHzpt;48*5L?>PeN+ffElVl zAh4wxKUfua^t|tsJ{O8Z@(*rsy?5j`{s9)2nmAzx6lcY~AwDOF0FaZ0)*eDy?zv!YT&$3r?ge(UzsT!!Sp@X8yk(8l(&N7z5Ie`P;o zC)v;0uUN0A-qYw=<@r0$FFYylM{KJn#yy{6MhX%aDv&1d&x+PgxqLU z>BPH50@om_6uH)?Gs$-kbS~0^c?e< zQA^h9C0Wt`krnE)BJ7qLwBIUnYSdQrtDQEXXWU{p)*Q3A@2whw6CAW3vp8j8I8h+?lZ%^_7ja# z4-r@}e$uYKM#c$Tv%#h&zzf_R{uzHiCC~Cd@`D+W=GTHGjS}hD;X`EcZm)C14KhIa^#HjgSQA>b$< z^R2#afEil5Oj}?sjscNnYSu^yls(qV$ev^T3(LO!rJH{Z(pH4bv-H*i%BCMb{&PyN zW+0K)vgmMA6E{_{RKGcP6Xh+pED2hgM?xCn`&o<22!8^Dvis)Kq{(Dz*S^)1&~@aB z0USuOdNu5@S|b!d6#xf-cg0pE$VA|qluPMmy$V|bqV6Qn#za#D7^JB5h#rwTCEh~B z`br7364AH7I0C>}SlIZ`LgZooiTWhA_TvfzYIK*cFxo>w zmYi^&G<4;m!_R_2WeqR2aJfm=7tqE99MMn#zv0NabUbzg31G@@k;x_yO02}OK9oZu zo=5WbNiBK>NsnlqWvKWMzW|}pS6(1MX`Qe1S#@mYd9pt$MQ3)A{hdHw{tq16@`rqpR_RNaJhm)b(9+bAL3DxyTt$}01W0eGR7RGQ>j zE1xV@?#^S1abQFt200Lif+&jO=>OBZXw$HRIy;Gwpv}ZiM}mMu`8CUL?j+_{_0qJl z5{Uk3`3@wEUbpOlJqbwD_xc2C=|gZcxG;P(H<0nbu1hAoeJ+`WqFjEdD7!Utym-Y? zmgi16xvyU;as>#18RR^b zknFzqRyk7xfpID|P(ZK+mZu=ks!t<{$eGuEqwKiJUI?mWHkdiJ&eSrjqS z_1P?-SHoEYuQZ=*_!e;jP<5G|06(J?|4hSNmgYy@vsusxjPMpuz?*3h1_!J`OUK{W zbo|f4b+d)e=3}WK-E(vKwd{C??+4U%Jv+`Okf(5cINQfUkM)cau4RFHZ;d-n-&42+ zUI|;OAyDoJxs^4~0-4P#m=dg4 Date: Sat, 17 Jan 2026 14:42:54 -0800 Subject: [PATCH 060/116] Rename snes/NSPC/Okamoto Ayako to Match Play Golf ($0800).bin to snes/NSPC/CP.BRAiN/Okamoto Ayako to Match Play Golf ($0800).bin --- .../Okamoto Ayako to Match Play Golf ($0800).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => CP.BRAiN}/Okamoto Ayako to Match Play Golf ($0800).bin (100%) diff --git a/snes/NSPC/Okamoto Ayako to Match Play Golf ($0800).bin b/snes/NSPC/CP.BRAiN/Okamoto Ayako to Match Play Golf ($0800).bin similarity index 100% rename from snes/NSPC/Okamoto Ayako to Match Play Golf ($0800).bin rename to snes/NSPC/CP.BRAiN/Okamoto Ayako to Match Play Golf ($0800).bin From a205289226325b9079a2311f0a212dd3d9f8da81 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:43:16 -0800 Subject: [PATCH 061/116] Update and rename snes/NSPC/Okamoto Ayako to Match Play Golf.s to snes/NSPC/CP.BRAiN/Okamoto Ayako to Match Play Golf.s --- snes/NSPC/{ => CP.BRAiN}/Okamoto Ayako to Match Play Golf.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => CP.BRAiN}/Okamoto Ayako to Match Play Golf.s (96%) diff --git a/snes/NSPC/Okamoto Ayako to Match Play Golf.s b/snes/NSPC/CP.BRAiN/Okamoto Ayako to Match Play Golf.s similarity index 96% rename from snes/NSPC/Okamoto Ayako to Match Play Golf.s rename to snes/NSPC/CP.BRAiN/Okamoto Ayako to Match Play Golf.s index 3ff44d3b..c4c657af 100644 --- a/snes/NSPC/Okamoto Ayako to Match Play Golf.s +++ b/snes/NSPC/CP.BRAiN/Okamoto Ayako to Match Play Golf.s @@ -1984,4 +1984,5 @@ 171c: d6 04 04 mov $0404+y,a 171f: dc dec y 1720: 10 f5 bpl $1717 -1722: 6f ret \ No newline at end of file + +1722: 6f ret From 71ded9d10249f9a16283708a2df8f02ea10551cb Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:43:45 -0800 Subject: [PATCH 062/116] Add files via upload --- snes/NSPC/Super Valis IV ($0400).bin | Bin 0 -> 2913 bytes snes/NSPC/Super Valis IV.s | 1442 ++++++++++++++++++++++++++ 2 files changed, 1442 insertions(+) create mode 100644 snes/NSPC/Super Valis IV ($0400).bin create mode 100644 snes/NSPC/Super Valis IV.s diff --git a/snes/NSPC/Super Valis IV ($0400).bin b/snes/NSPC/Super Valis IV ($0400).bin new file mode 100644 index 0000000000000000000000000000000000000000..dfef7ab2ec9871c19e6854ceb62c186198b0a30f GIT binary patch literal 2913 zcmX|D4Nx1$72dm*g#M90f(%h?(aeS~1lFZl_L=qTJNFDHynKT|#k-yFWO-*`ConX)z>++*Uu4{|>61nyPI=}&iz7t7w zqutxL?|t|7?f2fU_r8+A{^ouApWNUM?yT5#cg61CxZVD{{ciV9{a*h)Uf(@#|9u<$ zz76-3x!s}WgUwGq=5}xWU5mTKJrVtzgc|>H?s9lZLL3oyNN;iIQ^&HfblRD6p3w+1 z63T#-paPat0qTB>RLV6{-4;paXCxc{HNRUT_!;Vb&GihDm#D8b$=y-9t(LD1>nVqp z>NR+;CN*;21nM9v(|#FKZMuycO_jo&cRbll&1iTb`H0$GNL~!AlM8?Zyn#puy6F?2q_`vfaHeHZRR(JEmXdRYPEuy zOrEZ~!6Y>T!AzgRG7kR4m^8};$IR4wTETcsBj8|}F}T(kFQC5APN2`4z_rh|fOGqL zT7-J4%_tP6S$T^3vAKs8WW`6ue2Slp`MpWs8WEA8;49$mJMFGEyGUe*IWEzrzJxA^ zwbYYF?=WT3DTs`qJK5jt5^QYq9YN{`TOHFTFuip^L#ibWbLgJgq*4vW1I!&pQ_geZ`)vxdqh zL*-V5C1btv8s#V%>r=v{U{snh`(9_(xRa#2nlbf(nfkphSY%*einl8?=55SuetJ|k zD3{4gXEAk6r}%M3@!_~F-6T~m4KBm6Rnav0Lbgyhp_W}GNm~2re(}S`} ziIBgJ$eOG9xlF27>4WIeUA<&*Sr4DPk`JN_S&=}x!en4&X*8M$tfU@}DmF5z5ICBM zCd6XQBf#S1L$Y&dUn?D_haPR+doZLM3dQNvkWKf%07Ram3_a^nzBU`DLdU=Xw4|aII7fQSAHJhN`!G>Wh9kH zy=dVa5_;7Zx1G+rH}4#iJ|yq&IV5W(@={Afn&k`Az9oO$0eo}FYkWD&zVZc!?N;cV zOoeXBcLAAw2QmZQ*9{r(rDUOe=dnWAEI;XijJV-Fr&PdOIlO(ayx{P_KQrKcCt1lg zz-NIAz4H2WpRDQW^Oju6@97mx-x80_u9L=HEm6YW^lh zLBvyoz;tDl^jgY?kvk)k=|Q^dEEyYAdVz_3BoLU-b7iTJNe_l*!rIc@s8-B_)#AP*VnKGw_#l#LGJfvln+DO|mGkV%>(AtPUDG1$m>9&C`8Y$N`iQ zfMLKufNIZOfQI^+1z@Rh3zSb-NE8+_Y49W(GV@OuW&JhZuumX|{Tb$_F<^Sg#F+kI z>NfS5&Y0dd@uq*8#!a7^7EOeCjrloK+;qv5HWisG%uksQo9oO2=1FACi@n&Vwy{BR6pE-g2-bt7hePSX$&-s)#Iq#CF20B1 z)dPk9Iotp6Vm&~_8&vTF3}2^;A7uM?FV?BzhZw$wf$e3)%USFTS?tkow?+(;3Grxl zg3Y#_pvc0XP+djfYB=kv8(bw;UA2L$c5wA5{L8a86}&% zA?vFSMrAR<&{B6h~cMePM+=04N?P+C>9` z4v;{ZnNFkqX(TL$kZklw_OTf>FqQ`KJla41y|_3lo`+m~3nr!EF$IBL=)7>t>%I=w zOHI(^PAlkqI(s{lPdmNWZC`=ZHVsJE7f{>*daDY;#DxE&8N?t0=UAL;?kd|<+w_Zr zzxr+K;ivz26m$k#bN!*I+6QN-SsfmH?9A1iP_L z{9)0D7gw)?Ts6Qccjk_TF<_g=Uc%>J#?@e1dgRNOF(6M)zl>jR$Vf*(Z&}s-0Zj4s z4rEj3iwx5*VXi9JZ8=_pj@J+)HAKIbXx9=av_z!lnG-e7_SZc7yuPhp+aA%j|5e-m d8vD%ifwn(u(LXfLbi0p^+;+5`eU8(&{U2v_?t=gT literal 0 HcmV?d00001 diff --git a/snes/NSPC/Super Valis IV.s b/snes/NSPC/Super Valis IV.s new file mode 100644 index 00000000..3a102d85 --- /dev/null +++ b/snes/NSPC/Super Valis IV.s @@ -0,0 +1,1442 @@ +0400: 2f 38 bra $043a + +0403: db "$Header: _KAN.ASv 1.1 91/12/02 18:10:24 hanari Exp $" + +043a: 20 clrp +043b: cd cf mov x,#$cf +043d: bd mov sp,x +043e: e8 00 mov a,#$00 +0440: 5d mov x,a +0441: af mov (x)+,a +0442: c8 e0 cmp x,#$e0 +0444: 90 fb bcc $0441 +0446: e8 00 mov a,#$00 +0448: 8d 01 mov y,#$01 +044a: da 14 movw $14,ya +044c: e8 aa mov a,#$aa +044e: 8d 00 mov y,#$00 +0450: d7 14 mov ($14)+y,a +0452: fc inc y +0453: d0 fb bne $0450 +0455: ab 15 inc $15 +0457: eb 15 mov y,$15 +0459: ad 04 cmp y,#$04 +045b: d0 f1 bne $044e +045d: e8 00 mov a,#$00 +045f: fd mov y,a +0460: da 14 movw $14,ya +0462: e8 01 mov a,#$01 +0464: 3f 48 0d call $0d48 +0467: a2 48 set5 $48 +0469: 3f 3c 0d call $0d3c +046c: e8 28 mov a,#$28 +046e: 8d 5d mov y,#$5d +0470: 3f 96 0d call $0d96 +0473: e8 f0 mov a,#$f0 +0475: c4 f1 mov $f1,a +0477: e8 10 mov a,#$10 +0479: c4 fa mov $fa,a +047b: c4 53 mov $53,a +047d: e8 01 mov a,#$01 +047f: c4 f1 mov $f1,a +0481: 3f b6 04 call $04b6 +0484: ec fd 00 mov y,$00fd +0487: f0 fb beq $0484 +0489: 3f fa 04 call $04fa +048c: e4 53 mov a,$53 +048e: cf mul ya +048f: 60 clrc +0490: 84 51 adc a,$51 +0492: c4 51 mov $51,a +0494: 90 08 bcc $049e +0496: 3f 14 05 call $0514 +0499: 3f a0 09 call $09a0 +049c: 2f e3 bra $0481 +049e: e4 04 mov a,$04 +04a0: f0 12 beq $04b4 +04a2: cd 00 mov x,#$00 +04a4: 8f 01 47 mov $47,#$01 +04a7: f4 31 mov a,$31+x +04a9: f0 03 beq $04ae +04ab: 3f 84 06 call $0684 +04ae: 3d inc x +04af: 3d inc x +04b0: 0b 47 asl $47 +04b2: d0 f3 bne $04a7 +04b4: 2f cb bra $0481 +04b6: e4 61 mov a,$61 +04b8: 3f f1 04 call $04f1 +04bb: c4 d0 mov $d0,a +04bd: e4 63 mov a,$63 +04bf: 3f f1 04 call $04f1 +04c2: c4 d1 mov $d1,a +04c4: e4 d3 mov a,$d3 +04c6: 48 ff eor a,#$ff +04c8: 24 4a and a,$4a +04ca: c4 d2 mov $d2,a +04cc: 8d 0a mov y,#$0a +04ce: ad 05 cmp y,#$05 +04d0: f0 07 beq $04d9 +04d2: b0 08 bcs $04dc +04d4: 69 4d 4c cmp ($4c),($4d) +04d7: d0 11 bne $04ea +04d9: e3 4c 0e bbs7 $4c,$04ea +04dc: f6 4b 0e mov a,$0e4b+y +04df: c5 f2 00 mov $00f2,a +04e2: f6 55 0e mov a,$0e55+y +04e5: 5d mov x,a +04e6: e6 mov a,(x) +04e7: c5 f3 00 mov $00f3,a +04ea: fe e2 dbnz y,$04ce +04ec: cb 45 mov $45,y +04ee: cb 46 mov $46,y +04f0: 6f ret + +04f1: 80 setc +04f2: a5 a1 03 sbc a,$03a1 +04f5: b0 02 bcs $04f9 +04f7: e8 00 mov a,#$00 +04f9: 6f ret + +04fa: 6d push y +04fb: e8 20 mov a,#$20 +04fd: cf mul ya +04fe: 60 clrc +04ff: 84 43 adc a,$43 +0501: c4 43 mov $43,a +0503: 90 0d bcc $0512 +0505: 3f 13 0d call $0d13 +0508: 3f 7a 0e call $0e7a +050b: 69 4d 4c cmp ($4c),($4d) +050e: f0 02 beq $0512 +0510: ab 4c inc $4c +0512: ee pop y +0513: 6f ret + +0514: e4 04 mov a,$04 +0516: d0 01 bne $0519 +0518: 6f ret + +0519: e5 a2 03 mov a,$03a2 +051c: f0 03 beq $0521 +051e: 5f 37 0a jmp $0a37 + +0521: e4 0c mov a,$0c +0523: f0 16 beq $053b +0525: 8b 0c dec $0c +0527: 3f b5 05 call $05b5 +052a: d0 0a bne $0536 +052c: 8b 04 dec $04 +052e: d0 03 bne $0533 +0530: 5f 34 0a jmp $0a34 + +0533: 5f 1f 0a jmp $0a1f +0536: da 16 movw $16,ya +0538: 3f dc 05 call $05dc +053b: cd 00 mov x,#$00 +053d: d8 5e mov $5e,x +053f: 8f 01 47 mov $47,#$01 +0542: d8 44 mov $44,x +0544: f4 31 mov a,$31+x +0546: f0 64 beq $05ac +0548: 9b 70 dec $70+x +054a: d0 5a bne $05a6 +054c: 3f 84 0a call $0a84 +054f: d0 17 bne $0568 +; vcmd 00 - end repeat/return +0551: f4 80 mov a,$80+x +0553: f0 d2 beq $0527 +; repeat / return from subroutine +0555: 3f 36 0c call $0c36 +0558: 9b 80 dec $80+x +055a: d0 f0 bne $054c +055c: f5 30 02 mov a,$0230+x +055f: d4 30 mov $30+x,a +0561: f5 31 02 mov a,$0231+x +0564: d4 31 mov $31+x,a +0566: 2f e4 bra $054c +; vcmd branches +0568: 30 1e bmi $0588 ; vcmds 01-7f - note info: +056a: d5 00 02 mov $0200+x,a ; set cmd as duration +056d: 3f 84 0a call $0a84 ; read next byte +0570: 30 16 bmi $0588 ; if not note then +0572: c4 11 mov $11,a ; get the dur% from the following byte +0574: 4b 11 lsr $11 ; (not compatible with standard N-SPC!) +0576: 1c asl a +0577: 84 11 adc a,$11 +0579: d5 01 02 mov $0201+x,a +057c: 3f 84 0a call $0a84 +057f: 30 07 bmi $0588 +0581: 1c asl a +0582: d5 10 02 mov $0210+x,a ; set per-note vol +0585: 3f 84 0a call $0a84 ; read vcmd into A and Y +; vcmd branches 80-ff +0588: 68 e0 cmp a,#$e0 +058a: 90 05 bcc $0591 +058c: 3f 72 0a call $0a72 +058f: 2f bb bra $054c +; vcmds 80-df - note +0591: 3f 0b 06 call $060b +0594: f5 00 02 mov a,$0200+x +0597: d4 70 mov $70+x,a +0599: fd mov y,a +059a: f5 01 02 mov a,$0201+x +059d: cf mul ya +059e: dd mov a,y +059f: d0 01 bne $05a2 +05a1: bc inc a +05a2: d4 71 mov $71+x,a +05a4: 2f 03 bra $05a9 +05a6: 3f 27 08 call $0827 +05a9: 3f 9e 0c call $0c9e +05ac: 3d inc x +05ad: 3d inc x +05ae: 0b 47 asl $47 +05b0: d0 90 bne $0542 +05b2: 5f 11 07 jmp $0711 + +05b5: 3f ce 05 call $05ce +05b8: d0 21 bne $05db +05ba: fd mov y,a +05bb: f0 1e beq $05db +05bd: 8b 42 dec $42 +05bf: 10 02 bpl $05c3 +05c1: c4 42 mov $42,a +05c3: 3f ce 05 call $05ce +05c6: f8 42 mov x,$42 +05c8: f0 eb beq $05b5 +05ca: da 40 movw $40,ya +05cc: 2f e7 bra $05b5 +05ce: 8d 00 mov y,#$00 +05d0: f7 40 mov a,($40)+y +05d2: 3a 40 incw $40 +05d4: 2d push a +05d5: f7 40 mov a,($40)+y +05d7: 3a 40 incw $40 +05d9: fd mov y,a +05da: ae pop a +05db: 6f ret + +05dc: 8d 0f mov y,#$0f +05de: f7 16 mov a,($16)+y +05e0: d6 30 00 mov $0030+y,a +05e3: dc dec y +05e4: 10 f8 bpl $05de +05e6: cd 00 mov x,#$00 +05e8: 8f 01 47 mov $47,#$01 +05eb: f4 31 mov a,$31+x +05ed: f0 0a beq $05f9 +05ef: f5 11 02 mov a,$0211+x +05f2: d0 05 bne $05f9 +05f4: e8 00 mov a,#$00 +05f6: 3f ef 0a call $0aef +05f9: e8 00 mov a,#$00 +05fb: d4 80 mov $80+x,a +05fd: d4 90 mov $90+x,a +05ff: d4 91 mov $91+x,a +0601: bc inc a +0602: d4 70 mov $70+x,a +0604: 3d inc x +0605: 3d inc x +0606: 0b 47 asl $47 +0608: d0 e1 bne $05eb +060a: 6f ret + +; handle a note vcmd (80-df) +060b: ad ca cmp y,#$ca +060d: 90 05 bcc $0614 +; vcmds ca-df - percussion note +060f: 3f ef 0a call $0aef +0612: 8d a4 mov y,#$a4 +; vcmds 80-c7,c8,c9 - note/tie/rest +0614: ad c8 cmp y,#$c8 +0616: b0 60 bcs $0678 +0618: e4 1a mov a,$1a +061a: 24 47 and a,$47 +061c: d0 5a bne $0678 +; vcmds 80-c7 - note (note number in Y) +061e: dd mov a,y +061f: 28 7f and a,#$7f +0621: 60 clrc +0622: 84 50 adc a,$50 +0624: 60 clrc +0625: 95 f0 02 adc a,$02f0+x +0628: d5 61 03 mov $0361+x,a +062b: f5 81 03 mov a,$0381+x +062e: d5 60 03 mov $0360+x,a +0631: f5 b1 02 mov a,$02b1+x +0634: 5c lsr a +0635: e8 00 mov a,#$00 +0637: 7c ror a +0638: d5 a0 02 mov $02a0+x,a +063b: e8 00 mov a,#$00 +063d: d4 b0 mov $b0+x,a +063f: d5 00 01 mov $0100+x,a +0642: d5 d0 02 mov $02d0+x,a +0645: d4 c0 mov $c0+x,a +0647: 09 47 5e or ($5e),($47) +064a: 09 47 45 or ($45),($47) +064d: f5 80 02 mov a,$0280+x +0650: d4 a0 mov $a0+x,a +0652: f0 1e beq $0672 +0654: f5 81 02 mov a,$0281+x +0657: d4 a1 mov $a1+x,a +0659: f5 90 02 mov a,$0290+x +065c: d0 0a bne $0668 +065e: f5 61 03 mov a,$0361+x +0661: 80 setc +0662: b5 91 02 sbc a,$0291+x +0665: d5 61 03 mov $0361+x,a +0668: f5 91 02 mov a,$0291+x +066b: 60 clrc +066c: 95 61 03 adc a,$0361+x +066f: 3f be 0c call $0cbe +0672: 3f 79 06 call $0679 +0675: 5f 1a 09 jmp $091a + +0678: 6f ret + +0679: f5 61 03 mov a,$0361+x +067c: c4 11 mov $11,a +067e: f5 60 03 mov a,$0360+x +0681: c4 10 mov $10,a +0683: 6f ret + +0684: f2 13 clr7 $13 +0686: f4 c1 mov a,$c1+x +0688: f0 09 beq $0693 +068a: f5 e0 02 mov a,$02e0+x +068d: de c0 03 cbne $c0+x,$0693 +0690: 3f e7 06 call $06e7 +0693: f5 31 03 mov a,$0331+x +0696: fd mov y,a +0697: f5 30 03 mov a,$0330+x +069a: da 10 movw $10,ya +069c: f4 91 mov a,$91+x +069e: f0 0a beq $06aa +06a0: f5 41 03 mov a,$0341+x +06a3: fd mov y,a +06a4: f5 40 03 mov a,$0340+x +06a7: 3f d9 0c call $0cd9 +06aa: f3 13 03 bbc7 $13,$06b0 +06ad: 3f e9 07 call $07e9 +06b0: f2 13 clr7 $13 +06b2: 3f 79 06 call $0679 +06b5: f4 a0 mov a,$a0+x +06b7: f0 0e beq $06c7 +06b9: f4 a1 mov a,$a1+x +06bb: d0 0a bne $06c7 +06bd: f5 71 03 mov a,$0371+x +06c0: fd mov y,a +06c1: f5 70 03 mov a,$0370+x +06c4: 3f d9 0c call $0cd9 +06c7: f4 b1 mov a,$b1+x +06c9: f0 0b beq $06d6 +06cb: f5 b0 02 mov a,$02b0+x +06ce: 74 b0 cmp a,$b0+x +06d0: f0 04 beq $06d6 +06d2: e3 13 0f bbs7 $13,$06e4 +06d5: 6f ret + +06d6: eb 51 mov y,$51 +06d8: f5 a1 02 mov a,$02a1+x +06db: cf mul ya +06dc: dd mov a,y +06dd: 60 clrc +06de: 95 a0 02 adc a,$02a0+x +06e1: 5f fc 08 jmp $08fc + +06e4: 5f 1a 09 jmp $091a + +06e7: e2 13 set7 $13 +06e9: eb 51 mov y,$51 +06eb: f5 d1 02 mov a,$02d1+x +06ee: cf mul ya +06ef: dd mov a,y +06f0: 60 clrc +06f1: 95 d0 02 adc a,$02d0+x +06f4: 1c asl a +06f5: 90 02 bcc $06f9 +06f7: 48 ff eor a,#$ff +06f9: fb c1 mov y,$c1+x +06fb: cf mul ya +06fc: dd mov a,y +06fd: 48 ff eor a,#$ff +06ff: eb 59 mov y,$59 +0701: cf mul ya +0702: f5 10 02 mov a,$0210+x +0705: cf mul ya +0706: f5 01 03 mov a,$0301+x +0709: cf mul ya +070a: dd mov a,y +070b: cf mul ya +070c: dd mov a,y +070d: d5 21 03 mov $0321+x,a +0710: 6f ret + +0711: e4 54 mov a,$54 +0713: f0 0b beq $0720 +0715: ba 56 movw ya,$56 +0717: 7a 52 addw ya,$52 +0719: 6e 54 02 dbnz $54,$071e +071c: ba 54 movw ya,$54 +071e: da 52 movw $52,ya +0720: e4 68 mov a,$68 +0722: f0 15 beq $0739 +0724: ba 64 movw ya,$64 +0726: 7a 60 addw ya,$60 +0728: da 60 movw $60,ya +072a: ba 66 movw ya,$66 +072c: 7a 62 addw ya,$62 +072e: 6e 68 06 dbnz $68,$0737 +0731: ba 68 movw ya,$68 +0733: da 60 movw $60,ya +0735: eb 6a mov y,$6a +0737: da 62 movw $62,ya +0739: e4 5a mov a,$5a +073b: f0 0e beq $074b +073d: ba 5c movw ya,$5c +073f: 7a 58 addw ya,$58 +0741: 6e 5a 02 dbnz $5a,$0746 +0744: ba 5a movw ya,$5a +0746: da 58 movw $58,ya +0748: 8f ff 5e mov $5e,#$ff +074b: cd 00 mov x,#$00 +074d: 8f 01 47 mov $47,#$01 +0750: f4 31 mov a,$31+x +0752: f0 03 beq $0757 +0754: 3f 5e 07 call $075e +0757: 3d inc x +0758: 3d inc x +0759: 0b 47 asl $47 +075b: d0 f3 bne $0750 +075d: 6f ret + +075e: f4 90 mov a,$90+x +0760: f0 24 beq $0786 +0762: 09 47 5e or ($5e),($47) +0765: 9b 90 dec $90+x +0767: d0 0a bne $0773 +0769: e8 00 mov a,#$00 +076b: d5 00 03 mov $0300+x,a +076e: f5 20 03 mov a,$0320+x +0771: 2f 10 bra $0783 +0773: 60 clrc +0774: f5 00 03 mov a,$0300+x +0777: 95 10 03 adc a,$0310+x +077a: d5 00 03 mov $0300+x,a +077d: f5 01 03 mov a,$0301+x +0780: 95 11 03 adc a,$0311+x +0783: d5 01 03 mov $0301+x,a +0786: fb c1 mov y,$c1+x +0788: f0 23 beq $07ad +078a: f5 e0 02 mov a,$02e0+x +078d: de c0 1b cbne $c0+x,$07ab +0790: 09 47 5e or ($5e),($47) +0793: f5 d0 02 mov a,$02d0+x +0796: 10 07 bpl $079f +0798: fc inc y +0799: d0 04 bne $079f +079b: e8 80 mov a,#$80 +079d: 2f 04 bra $07a3 +079f: 60 clrc +07a0: 95 d1 02 adc a,$02d1+x +07a3: d5 d0 02 mov $02d0+x,a +07a6: 3f f4 06 call $06f4 +07a9: 2f 07 bra $07b2 +07ab: bb c0 inc $c0+x +07ad: e8 ff mov a,#$ff +07af: 3f ff 06 call $06ff +07b2: f4 91 mov a,$91+x +07b4: f0 24 beq $07da +07b6: 09 47 5e or ($5e),($47) +07b9: 9b 91 dec $91+x +07bb: d0 0a bne $07c7 +07bd: e8 00 mov a,#$00 +07bf: d5 30 03 mov $0330+x,a +07c2: f5 50 03 mov a,$0350+x +07c5: 2f 10 bra $07d7 +07c7: 60 clrc +07c8: f5 30 03 mov a,$0330+x +07cb: 95 40 03 adc a,$0340+x +07ce: d5 30 03 mov $0330+x,a +07d1: f5 31 03 mov a,$0331+x +07d4: 95 41 03 adc a,$0341+x +07d7: d5 31 03 mov $0331+x,a +07da: e4 47 mov a,$47 +07dc: 24 5e and a,$5e +07de: f0 46 beq $0826 +07e0: f5 31 03 mov a,$0331+x +07e3: fd mov y,a +07e4: f5 30 03 mov a,$0330+x +07e7: da 10 movw $10,ya +07e9: 7d mov a,x +07ea: 9f xcn a +07eb: 5c lsr a +07ec: c4 12 mov $12,a +07ee: eb 11 mov y,$11 +07f0: f6 18 0e mov a,$0e18+y +07f3: 80 setc +07f4: b6 17 0e sbc a,$0e17+y +07f7: eb 10 mov y,$10 +07f9: cf mul ya +07fa: dd mov a,y +07fb: eb 11 mov y,$11 +07fd: 60 clrc +07fe: 96 17 0e adc a,$0e17+y +0801: fd mov y,a +0802: f5 21 03 mov a,$0321+x +0805: cf mul ya +0806: f5 51 03 mov a,$0351+x +0809: 1c asl a +080a: 13 12 01 bbc0 $12,$080e +080d: 1c asl a +080e: dd mov a,y +080f: 90 03 bcc $0814 +0811: 48 ff eor a,#$ff +0813: bc inc a +0814: eb 12 mov y,$12 +0816: 3f 8e 0d call $0d8e +0819: 8d 14 mov y,#$14 +081b: e8 00 mov a,#$00 +081d: 9a 10 subw ya,$10 +081f: da 10 movw $10,ya +0821: ab 12 inc $12 +0823: 33 12 c8 bbc1 $12,$07ee +0826: 6f ret + +0827: f4 71 mov a,$71+x +0829: f0 65 beq $0890 +082b: 9b 71 dec $71+x +082d: f0 05 beq $0834 +082f: e8 02 mov a,#$02 +0831: de 70 5c cbne $70+x,$0890 +0834: f4 80 mov a,$80+x +0836: c4 17 mov $17,a +0838: f4 30 mov a,$30+x +083a: fb 31 mov y,$31+x +083c: da 14 movw $14,ya +083e: 8d 00 mov y,#$00 +0840: f7 14 mov a,($14)+y +0842: f0 1e beq $0862 +0844: 30 07 bmi $084d +0846: fc inc y +0847: 30 40 bmi $0889 +0849: f7 14 mov a,($14)+y +084b: 10 f9 bpl $0846 +084d: 68 c8 cmp a,#$c8 +084f: f0 3f beq $0890 +0851: 68 ef cmp a,#$ef +0853: f0 29 beq $087e +0855: 68 e0 cmp a,#$e0 +0857: 90 30 bcc $0889 +0859: 6d push y +085a: fd mov y,a +085b: ae pop a +085c: 96 ec 09 adc a,$09ec+y +085f: fd mov y,a +0860: 2f de bra $0840 +0862: e4 17 mov a,$17 +0864: f0 23 beq $0889 +0866: 8b 17 dec $17 +0868: d0 0a bne $0874 +086a: f5 31 02 mov a,$0231+x +086d: 2d push a +086e: f5 30 02 mov a,$0230+x +0871: ee pop y +0872: 2f c8 bra $083c +0874: f5 41 02 mov a,$0241+x +0877: 2d push a +0878: f5 40 02 mov a,$0240+x +087b: ee pop y +087c: 2f be bra $083c +087e: fc inc y +087f: f7 14 mov a,($14)+y +0881: 2d push a +0882: fc inc y +0883: f7 14 mov a,($14)+y +0885: fd mov y,a +0886: ae pop a +0887: 2f b3 bra $083c +0889: e4 47 mov a,$47 +088b: 8d 5c mov y,#$5c +088d: 3f 8e 0d call $0d8e +0890: f2 13 clr7 $13 +0892: f4 a0 mov a,$a0+x +0894: f0 2c beq $08c2 +0896: f4 a1 mov a,$a1+x +0898: f0 04 beq $089e +089a: 9b a1 dec $a1+x +089c: 2f 24 bra $08c2 +089e: e2 13 set7 $13 +08a0: 9b a0 dec $a0+x +08a2: d0 0b bne $08af +08a4: f5 81 03 mov a,$0381+x +08a7: d5 60 03 mov $0360+x,a +08aa: f5 80 03 mov a,$0380+x +08ad: 2f 10 bra $08bf +08af: 60 clrc +08b0: f5 60 03 mov a,$0360+x +08b3: 95 70 03 adc a,$0370+x +08b6: d5 60 03 mov $0360+x,a +08b9: f5 61 03 mov a,$0361+x +08bc: 95 71 03 adc a,$0371+x +08bf: d5 61 03 mov $0361+x,a +08c2: 3f 79 06 call $0679 +08c5: f4 b1 mov a,$b1+x +08c7: f0 09 beq $08d2 +08c9: f5 b0 02 mov a,$02b0+x +08cc: 74 b0 cmp a,$b0+x +08ce: f0 06 beq $08d6 +08d0: bb b0 inc $b0+x +08d2: e3 13 42 bbs7 $13,$0917 +08d5: 6f ret + +08d6: f5 00 01 mov a,$0100+x +08d9: 75 b1 02 cmp a,$02b1+x +08dc: d0 05 bne $08e3 +08de: f5 c1 02 mov a,$02c1+x +08e1: 2f 0d bra $08f0 +08e3: 40 setp +08e4: bb 00 inc $00+x +08e6: 20 clrp +08e7: fd mov y,a +08e8: f0 02 beq $08ec +08ea: f4 b1 mov a,$b1+x +08ec: 60 clrc +08ed: 95 c0 02 adc a,$02c0+x +08f0: d4 b1 mov $b1+x,a +08f2: f5 a0 02 mov a,$02a0+x +08f5: 60 clrc +08f6: 95 a1 02 adc a,$02a1+x +08f9: d5 a0 02 mov $02a0+x,a +08fc: c4 12 mov $12,a +08fe: 1c asl a +08ff: 1c asl a +0900: 90 02 bcc $0904 +0902: 48 ff eor a,#$ff +0904: fd mov y,a +0905: f4 b1 mov a,$b1+x +0907: 68 f1 cmp a,#$f1 +0909: 90 05 bcc $0910 +090b: 28 0f and a,#$0f +090d: cf mul ya +090e: 2f 04 bra $0914 +0910: cf mul ya +0911: dd mov a,y +0912: 8d 00 mov y,#$00 +0914: 3f ef 0c call $0cef +0917: 5f 1a 09 jmp $091a + +091a: 8d 00 mov y,#$00 +091c: e4 11 mov a,$11 +091e: 80 setc +091f: a8 34 sbc a,#$34 +0921: b0 09 bcs $092c +0923: e4 11 mov a,$11 +0925: 80 setc +0926: a8 13 sbc a,#$13 +0928: b0 06 bcs $0930 +092a: dc dec y +092b: 1c asl a +092c: 7a 10 addw ya,$10 +092e: da 10 movw $10,ya +0930: 4d push x +0931: e4 11 mov a,$11 +0933: 1c asl a +0934: 8d 00 mov y,#$00 +0936: cd 18 mov x,#$18 +0938: 9e div ya,x +0939: 5d mov x,a +093a: f6 61 0e mov a,$0e61+y +093d: c4 15 mov $15,a +093f: f6 60 0e mov a,$0e60+y +0942: c4 14 mov $14,a +0944: f6 63 0e mov a,$0e63+y +0947: 2d push a +0948: f6 62 0e mov a,$0e62+y +094b: ee pop y +094c: 9a 14 subw ya,$14 +094e: eb 10 mov y,$10 +0950: cf mul ya +0951: dd mov a,y +0952: 8d 00 mov y,#$00 +0954: 7a 14 addw ya,$14 +0956: cb 15 mov $15,y +0958: 1c asl a +0959: 2b 15 rol $15 +095b: c4 14 mov $14,a +095d: 2f 04 bra $0963 +095f: 4b 15 lsr $15 +0961: 7c ror a +0962: 3d inc x +0963: c8 06 cmp x,#$06 +0965: d0 f8 bne $095f +0967: c4 14 mov $14,a +0969: ce pop x +096a: f5 20 02 mov a,$0220+x +096d: eb 15 mov y,$15 +096f: cf mul ya +0970: da 16 movw $16,ya +0972: f5 20 02 mov a,$0220+x +0975: eb 14 mov y,$14 +0977: cf mul ya +0978: 6d push y +0979: f5 21 02 mov a,$0221+x +097c: eb 14 mov y,$14 +097e: cf mul ya +097f: 7a 16 addw ya,$16 +0981: da 16 movw $16,ya +0983: f5 21 02 mov a,$0221+x +0986: eb 15 mov y,$15 +0988: cf mul ya +0989: fd mov y,a +098a: ae pop a +098b: 7a 16 addw ya,$16 +098d: da 16 movw $16,ya +098f: 7d mov a,x +0990: 9f xcn a +0991: 5c lsr a +0992: 08 02 or a,#$02 +0994: fd mov y,a +0995: e4 16 mov a,$16 +0997: 3f 8e 0d call $0d8e +099a: fc inc y +099b: e4 17 mov a,$17 +099d: 5f 8e 0d jmp $0d8e + +09a0: 3f 9d 0d call $0d9d +09a3: 9c dec a +09a4: 68 0f cmp a,#$0f +09a6: 90 01 bcc $09a9 +09a8: 6f ret + +09a9: 1c asl a +09aa: fd mov y,a +09ab: f6 b5 09 mov a,$09b5+y +09ae: 2d push a +09af: f6 b4 09 mov a,$09b4+y +09b2: 2d push a +09b3: 6f ret + +09b4: dw $09d2 +09b6: dw $0a1b +09b8: dw $0a1f +09ba: dw $0a34 +09bc: dw $0a3f +09be: dw $0a43 +09c0: dw $09b3 +09c2: dw $09b3 +09c4: dw $09b3 +09c6: dw $0a49 +09c8: dw $09b3 +09ca: dw $09b3 +09cc: dw $09b3 +09ce: dw $09b3 +09d0: dw $0a5a + +; reset song params +09d2: cd 0e mov x,#$0e +09d4: 8f 80 47 mov $47,#$80 +09d7: e8 0a mov a,#$0a +09d9: 3f 48 0b call $0b48 +09dc: e8 ff mov a,#$ff +09de: d5 01 03 mov $0301+x,a +09e1: bc inc a +09e2: d5 11 02 mov $0211+x,a +09e5: d5 81 03 mov $0381+x,a +09e8: d5 f0 02 mov $02f0+x,a +09eb: d5 80 02 mov $0280+x,a +09ee: d4 b1 mov $b1+x,a +09f0: d4 c1 mov $c1+x,a +09f2: 1d dec x +09f3: 1d dec x +09f4: 4b 47 lsr $47 +09f6: d0 df bne $09d7 +09f8: c4 5a mov $5a,a +09fa: c4 68 mov $68,a +09fc: c4 54 mov $54,a +09fe: c4 50 mov $50,a +0a00: c4 42 mov $42,a +0a02: c4 5f mov $5f,a +0a04: c4 d3 mov $d3,a +0a06: c4 4a mov $4a,a +0a08: c4 60 mov $60,a +0a0a: c4 61 mov $61,a +0a0c: c5 a0 03 mov $03a0,a +0a0f: c5 a1 03 mov $03a1,a +0a12: 3f 48 0d call $0d48 +0a15: 8f c0 59 mov $59,#$c0 +0a18: 5f 3c 0d jmp $0d3c + +; play song +0a1b: e8 01 mov a,#$01 +0a1d: 2f 02 bra $0a21 +0a1f: e8 02 mov a,#$02 +0a21: c4 04 mov $04,a +0a23: 3f d2 09 call $09d2 +0a26: 3f 43 0a call $0a43 +0a29: e8 00 mov a,#$00 ; $1400 +0a2b: 8d 14 mov y,#$14 +0a2d: da 40 movw $40,ya +0a2f: 8f 01 0c mov $0c,#$01 +0a32: 2f 03 bra $0a37 +0a34: 8f 00 04 mov $04,#$00 +0a37: e4 1a mov a,$1a +0a39: 48 ff eor a,#$ff +0a3b: 0e 46 00 tset1 $0046 +0a3e: 6f ret + +0a3f: e8 01 mov a,#$01 +0a41: 2f 02 bra $0a45 +0a43: e8 00 mov a,#$00 +0a45: c5 a2 03 mov $03a2,a +0a48: 6f ret + +0a49: e4 04 mov a,$04 +0a4b: f0 0c beq $0a59 +0a4d: e5 a1 03 mov a,$03a1 +0a50: d0 07 bne $0a59 +0a52: c5 a0 03 mov $03a0,a +0a55: bc inc a +0a56: c5 a1 03 mov $03a1,a +0a59: 6f ret + +0a5a: e8 00 mov a,#$00 +0a5c: 8d d0 mov y,#$d0 +0a5e: 3f 96 0d call $0d96 +0a61: 8d d1 mov y,#$d1 +0a63: 3f 96 0d call $0d96 +0a66: 3f 3e 0d call $0d3e +0a69: 3f 48 0d call $0d48 +0a6c: 3f cb 0d call $0dcb +0a6f: 5f 34 0a jmp $0a34 + +; dispatch vcmd in A (e0-ff) +0a72: 1c asl a +0a73: fd mov y,a +0a74: f6 cf 09 mov a,$09cf+y +0a77: 2d push a +0a78: f6 ce 09 mov a,$09ce+y +0a7b: 2d push a +0a7c: dd mov a,y +0a7d: 5c lsr a +0a7e: fd mov y,a +0a7f: f6 6c 0a mov a,$0a6c+y +0a82: f0 08 beq $0a8c +; read new argument to A and Y +0a84: e7 30 mov a,($30+x) +; advance reading ptr +0a86: bb 30 inc $30+x +0a88: d0 02 bne $0a8c +0a8a: bb 31 inc $31+x +0a8c: fd mov y,a +0a8d: 6f ret + +; vcmd dispatch table +0a8f: dw $0aef ; e0 - set instrument +0a91: dw $0b48 ; e1 - pan +0a93: dw $0b56 ; e2 - pan fade +0a95: dw $0b6f ; e3 - vibrato on +0a97: dw $0b7b ; e4 - vibrato off +0a99: dw $0b96 ; e5 - master volume +0a9b: dw $0b9b ; e6 - master volume fade +0a9d: dw $0bad ; e7 - tempo +0a9f: dw $0bb2 ; e8 - tempo fade +0aa1: dw $0bc4 ; e9 - global transpose +0aa3: dw $0bc7 ; ea - per-voice transpose +0aa5: dw $0bcb ; eb - tremolo on +0aa7: dw $0bd7 ; ec - tremolo off +0aa9: dw $0bf8 ; ed - volume +0aab: dw $0c01 ; ee - volume fade +0aad: dw $0c1e ; ef - call subroutine +0aaf: dw $0b86 ; f0 - vibrato fade +0ab1: dw $0bda ; f1 - pitch envelope (release) +0ab3: dw $0bde ; f2 - pitch envelope (attack) +0ab5: dw $0bf4 ; f3 - pitch envelope off +0ab7: dw $0c1a ; f4 - tuning +0ab9: dw $0c41 ; f5 - echo vbits/volume +0abb: dw $0c75 ; f6 - disable echo +0abd: dw $0c7c ; f7 - set echo params +0abf: dw $0c54 ; f8 - echo volume fade +0ac1: dw $0cae ; f9 - pitch slide +0ac3: dw $0cd6 ; fa - set perc patch base +0ac5: dw $0aeb ; fb - skip to next byte +0ac7: dw $0aee ; fc - nop +0ac9: dw $0aee ; fd - nop +0aca: dw $0aee ; fe - nop + +; vcmd lengths +0acc: db $01,$01,$02,$03,$00,$01,$02,$01 ; e0-e7 +0ad4: db $02,$01,$01,$03,$00,$01,$02,$03 ; e8-ef +0adc: db $01,$03,$03,$00,$01,$03,$00,$03 ; f0-f7 +0ae4: db $03,$03,$01,$02,$00,$00,$00 ; f8-fe + +; vcmd fb - skip to next byte +0aeb: 3f 86 0a call $0a86 +; vcmd fc-fe - nop +0aee: 6f ret + +; vcmd e0 - set instrument +0aef: d5 11 02 mov $0211+x,a +0af2: fd mov y,a +0af3: 10 06 bpl $0afb +0af5: 80 setc +0af6: a8 ca sbc a,#$ca +0af8: 60 clrc +0af9: 84 5f adc a,$5f +0afb: 8d 06 mov y,#$06 +0afd: cf mul ya +0afe: da 14 movw $14,ya +0b00: 60 clrc +0b01: 98 00 14 adc $14,#$00 +0b04: 98 29 15 adc $15,#$29 +0b07: e4 1a mov a,$1a +0b09: 24 47 and a,$47 +0b0b: d0 3a bne $0b47 +0b0d: 4d push x +0b0e: 7d mov a,x +0b0f: 9f xcn a +0b10: 5c lsr a +0b11: 08 04 or a,#$04 +0b13: 5d mov x,a +0b14: 8d 00 mov y,#$00 +0b16: f7 14 mov a,($14)+y +0b18: 10 0e bpl $0b28 +0b1a: 28 1f and a,#$1f +0b1c: 38 20 48 and $48,#$20 +0b1f: 0e 48 00 tset1 $0048 +0b22: 09 47 49 or ($49),($47) +0b25: dd mov a,y +0b26: 2f 07 bra $0b2f +0b28: e4 47 mov a,$47 +0b2a: 4e 49 00 tclr1 $0049 +0b2d: f7 14 mov a,($14)+y +0b2f: c9 f2 00 mov $00f2,x +0b32: c5 f3 00 mov $00f3,a +0b35: 3d inc x +0b36: fc inc y +0b37: ad 04 cmp y,#$04 +0b39: d0 f2 bne $0b2d +0b3b: ce pop x +0b3c: f7 14 mov a,($14)+y +0b3e: d5 21 02 mov $0221+x,a +0b41: fc inc y +0b42: f7 14 mov a,($14)+y +0b44: d5 20 02 mov $0220+x,a +0b47: 6f ret + +; vcmd e1 - pan +0b48: d5 51 03 mov $0351+x,a +0b4b: 28 1f and a,#$1f +0b4d: d5 31 03 mov $0331+x,a +0b50: e8 00 mov a,#$00 +0b52: d5 30 03 mov $0330+x,a +0b55: 6f ret + +; vcmd e2 - pan fade +0b56: d4 91 mov $91+x,a +0b58: 2d push a +0b59: 3f 84 0a call $0a84 +0b5c: d5 50 03 mov $0350+x,a +0b5f: 80 setc +0b60: b5 31 03 sbc a,$0331+x +0b63: ce pop x +0b64: 3f f7 0c call $0cf7 +0b67: d5 40 03 mov $0340+x,a +0b6a: dd mov a,y +0b6b: d5 41 03 mov $0341+x,a +0b6e: 6f ret + +; vcmd e3 - vibrato on +0b6f: d5 b0 02 mov $02b0+x,a +0b72: 3f 84 0a call $0a84 +0b75: d5 a1 02 mov $02a1+x,a +0b78: 3f 84 0a call $0a84 +; vcmd e4 - vibrato off +0b7b: d4 b1 mov $b1+x,a +0b7d: d5 c1 02 mov $02c1+x,a +0b80: e8 00 mov a,#$00 +0b82: d5 b1 02 mov $02b1+x,a +0b85: 6f ret + +; vcmd f0 - vibrato fade +0b86: d5 b1 02 mov $02b1+x,a +0b89: 2d push a +0b8a: 8d 00 mov y,#$00 +0b8c: f4 b1 mov a,$b1+x +0b8e: ce pop x +0b8f: 9e div ya,x +0b90: f8 44 mov x,$44 +0b92: d5 c0 02 mov $02c0+x,a +0b95: 6f ret + +; vcmd e5 - master volume +0b96: e8 00 mov a,#$00 +0b98: da 58 movw $58,ya +0b9a: 6f ret + +; vcmd e6 - master volume fade +0b9b: c4 5a mov $5a,a +0b9d: 3f 84 0a call $0a84 +0ba0: c4 5b mov $5b,a +0ba2: 80 setc +0ba3: a4 59 sbc a,$59 +0ba5: f8 5a mov x,$5a +0ba7: 3f f7 0c call $0cf7 +0baa: da 5c movw $5c,ya +0bac: 6f ret + +; vcmd e7 - tempo +0bad: e8 00 mov a,#$00 +0baf: da 52 movw $52,ya +0bb1: 6f ret + +; vcmd e8 - tempo fade +0bb2: c4 54 mov $54,a +0bb4: 3f 84 0a call $0a84 +0bb7: c4 55 mov $55,a +0bb9: 80 setc +0bba: a4 53 sbc a,$53 +0bbc: f8 54 mov x,$54 +0bbe: 3f f7 0c call $0cf7 +0bc1: da 56 movw $56,ya +0bc3: 6f ret + +; vcmd e9 - global transpose +0bc4: c4 50 mov $50,a +0bc6: 6f ret + +; vcmd ea - per-voice transpose +0bc7: d5 f0 02 mov $02f0+x,a +0bca: 6f ret + +; vcmd eb - tremolo on +0bcb: d5 e0 02 mov $02e0+x,a +0bce: 3f 84 0a call $0a84 +0bd1: d5 d1 02 mov $02d1+x,a +0bd4: 3f 84 0a call $0a84 +; vcmd ec - tremolo off +0bd7: d4 c1 mov $c1+x,a +0bd9: 6f ret + +; vcmd f1 - pitch envelope (release) +0bda: e8 01 mov a,#$01 +0bdc: 2f 02 bra $0be0 +; vcmd f2 - pitch envelope (attack) +0bde: e8 00 mov a,#$00 +0be0: d5 90 02 mov $0290+x,a +0be3: dd mov a,y +0be4: d5 81 02 mov $0281+x,a +0be7: 3f 84 0a call $0a84 +0bea: d5 80 02 mov $0280+x,a +0bed: 3f 84 0a call $0a84 +0bf0: d5 91 02 mov $0291+x,a +0bf3: 6f ret + +; vcmd f3 - pitch envelope off +0bf4: d5 80 02 mov $0280+x,a +0bf7: 6f ret + +; vcmd ed - volume +0bf8: d5 01 03 mov $0301+x,a +0bfb: e8 00 mov a,#$00 +0bfd: d5 00 03 mov $0300+x,a +0c00: 6f ret + +; vcmd ee - volume fade +0c01: d4 90 mov $90+x,a +0c03: 2d push a +0c04: 3f 84 0a call $0a84 +0c07: d5 20 03 mov $0320+x,a +0c0a: 80 setc +0c0b: b5 01 03 sbc a,$0301+x +0c0e: ce pop x +0c0f: 3f f7 0c call $0cf7 +0c12: d5 10 03 mov $0310+x,a +0c15: dd mov a,y +0c16: d5 11 03 mov $0311+x,a +0c19: 6f ret + +; vcmd f4 - tuning +0c1a: d5 81 03 mov $0381+x,a +0c1d: 6f ret + +; vcmd ef - call subroutine +0c1e: d5 40 02 mov $0240+x,a +0c21: 3f 84 0a call $0a84 +0c24: d5 41 02 mov $0241+x,a +0c27: 3f 84 0a call $0a84 +0c2a: d4 80 mov $80+x,a +0c2c: f4 30 mov a,$30+x +0c2e: d5 30 02 mov $0230+x,a +0c31: f4 31 mov a,$31+x +0c33: d5 31 02 mov $0231+x,a +0c36: f5 40 02 mov a,$0240+x +0c39: d4 30 mov $30+x,a +0c3b: f5 41 02 mov a,$0241+x +0c3e: d4 31 mov $31+x,a +0c40: 6f ret + +; vcmd f5 - echo vbits/volume +0c41: c4 4a mov $4a,a +0c43: 3f 84 0a call $0a84 +0c46: e8 00 mov a,#$00 +0c48: da 60 movw $60,ya +0c4a: 3f 84 0a call $0a84 +0c4d: e8 00 mov a,#$00 +0c4f: da 62 movw $62,ya +0c51: b2 48 clr5 $48 +0c53: 6f ret + +; vcmd f8 - echo volume fade +0c54: c4 68 mov $68,a +0c56: 3f 84 0a call $0a84 +0c59: c4 69 mov $69,a +0c5b: 80 setc +0c5c: a4 61 sbc a,$61 +0c5e: f8 68 mov x,$68 +0c60: 3f f7 0c call $0cf7 +0c63: da 64 movw $64,ya +0c65: 3f 84 0a call $0a84 +0c68: c4 6a mov $6a,a +0c6a: 80 setc +0c6b: a4 63 sbc a,$63 +0c6d: f8 68 mov x,$68 +0c6f: 3f f7 0c call $0cf7 +0c72: da 66 movw $66,ya +0c74: 6f ret + +; vcmd f6 - disable echo +0c75: da 60 movw $60,ya +0c77: da 62 movw $62,ya +0c79: a2 48 set5 $48 +0c7b: 6f ret + +; vcmd f7 - set echo params +0c7c: 3f 48 0d call $0d48 +0c7f: 3f 84 0a call $0a84 +0c82: c4 4e mov $4e,a +0c84: 3f 84 0a call $0a84 +0c87: 8d 08 mov y,#$08 +0c89: cf mul ya +0c8a: 5d mov x,a +0c8b: 8d 0f mov y,#$0f +0c8d: f5 2c 0e mov a,$0e2c+x +0c90: 3f 96 0d call $0d96 +0c93: 3d inc x +0c94: dd mov a,y +0c95: 60 clrc +0c96: 88 10 adc a,#$10 +0c98: fd mov y,a +0c99: 10 f2 bpl $0c8d +0c9b: f8 44 mov x,$44 +0c9d: 6f ret + +0c9e: f4 a0 mov a,$a0+x +0ca0: d0 33 bne $0cd5 +0ca2: e7 30 mov a,($30+x) +0ca4: 68 f9 cmp a,#$f9 +0ca6: d0 2d bne $0cd5 +0ca8: 3f 86 0a call $0a86 +0cab: 3f 84 0a call $0a84 +; vcmd f9 - pitch slide +0cae: d4 a1 mov $a1+x,a +0cb0: 3f 84 0a call $0a84 +0cb3: d4 a0 mov $a0+x,a +0cb5: 3f 84 0a call $0a84 +0cb8: 60 clrc +0cb9: 84 50 adc a,$50 +0cbb: 95 f0 02 adc a,$02f0+x +0cbe: 28 7f and a,#$7f +0cc0: d5 80 03 mov $0380+x,a +0cc3: 80 setc +0cc4: b5 61 03 sbc a,$0361+x +0cc7: fb a0 mov y,$a0+x +0cc9: 6d push y +0cca: ce pop x +0ccb: 3f f7 0c call $0cf7 +0cce: d5 70 03 mov $0370+x,a +0cd1: dd mov a,y +0cd2: d5 71 03 mov $0371+x,a +0cd5: 6f ret + +; vcmd fa - set perc patch base +0cd6: c4 5f mov $5f,a +0cd8: 6f ret + +0cd9: e2 13 set7 $13 +0cdb: cb 12 mov $12,y +0cdd: 3f 09 0d call $0d09 +0ce0: 6d push y +0ce1: eb 51 mov y,$51 +0ce3: cf mul ya +0ce4: cb 14 mov $14,y +0ce6: 8f 00 15 mov $15,#$00 +0ce9: eb 51 mov y,$51 +0ceb: ae pop a +0cec: cf mul ya +0ced: 7a 14 addw ya,$14 +0cef: 3f 09 0d call $0d09 +0cf2: 7a 10 addw ya,$10 +0cf4: da 10 movw $10,ya +0cf6: 6f ret + +0cf7: ed notc +0cf8: 6b 12 ror $12 +0cfa: 10 03 bpl $0cff +0cfc: 48 ff eor a,#$ff +0cfe: bc inc a +0cff: 8d 00 mov y,#$00 +0d01: 9e div ya,x +0d02: 2d push a +0d03: e8 00 mov a,#$00 +0d05: 9e div ya,x +0d06: ee pop y +0d07: f8 44 mov x,$44 +0d09: f3 12 06 bbc7 $12,$0d12 +0d0c: da 14 movw $14,ya +0d0e: ba 0e movw ya,$0e +0d10: 9a 14 subw ya,$14 +0d12: 6f ret + +0d13: e5 a1 03 mov a,$03a1 +0d16: d0 01 bne $0d19 +0d18: 6f ret + +0d19: 60 clrc +0d1a: e8 96 mov a,#$96 +0d1c: 85 a0 03 adc a,$03a0 +0d1f: c5 a0 03 mov $03a0,a +0d22: e8 01 mov a,#$01 +0d24: 85 a1 03 adc a,$03a1 +0d27: c5 a1 03 mov $03a1,a +0d2a: 80 setc +0d2b: e8 60 mov a,#$60 +0d2d: a5 a1 03 sbc a,$03a1 +0d30: b0 08 bcs $0d3a +0d32: 3f 34 0a call $0a34 +0d35: e8 00 mov a,#$00 +0d37: c5 a0 03 mov $03a0,a +0d3a: 2f 02 bra $0d3e +0d3c: e8 60 mov a,#$60 +0d3e: 8d 0c mov y,#$0c +0d40: 3f 96 0d call $0d96 +0d43: 8d 1c mov y,#$1c +0d45: 5f 96 0d jmp $0d96 + +0d48: c4 4d mov $4d,a +0d4a: 8d 7d mov y,#$7d +0d4c: cc f2 00 mov $00f2,y +0d4f: e5 f3 00 mov a,$00f3 +0d52: 64 4d cmp a,$4d +0d54: f0 2b beq $0d81 +0d56: 28 0f and a,#$0f +0d58: 48 ff eor a,#$ff +0d5a: f3 4c 03 bbc7 $4c,$0d60 +0d5d: 60 clrc +0d5e: 84 4c adc a,$4c +0d60: c4 4c mov $4c,a +0d62: 8d 04 mov y,#$04 +0d64: f6 4b 0e mov a,$0e4b+y +0d67: c5 f2 00 mov $00f2,a +0d6a: e8 00 mov a,#$00 +0d6c: c5 f3 00 mov $00f3,a +0d6f: fe f3 dbnz y,$0d64 +0d71: e4 48 mov a,$48 +0d73: 08 20 or a,#$20 +0d75: 8d 6c mov y,#$6c +0d77: 3f 96 0d call $0d96 +0d7a: e4 4d mov a,$4d +0d7c: 8d 7d mov y,#$7d +0d7e: 3f 96 0d call $0d96 +0d81: 1c asl a +0d82: 1c asl a +0d83: 1c asl a +0d84: 48 ff eor a,#$ff +0d86: 80 setc +0d87: 88 ff adc a,#$ff +0d89: 8d 6d mov y,#$6d +0d8b: 5f 96 0d jmp $0d96 + +0d8e: 2d push a +0d8f: e4 47 mov a,$47 +0d91: 24 1a and a,$1a +0d93: ae pop a +0d94: d0 06 bne $0d9c +0d96: cc f2 00 mov $00f2,y +0d99: c5 f3 00 mov $00f3,a +0d9c: 6f ret + +0d9d: e5 f4 00 mov a,$00f4 +0da0: 65 f4 00 cmp a,$00f4 +0da3: d0 f8 bne $0d9d +0da5: 68 00 cmp a,#$00 +0da7: f0 0a beq $0db3 +0da9: 2d push a +0daa: e8 11 mov a,#$11 +0dac: c5 f1 00 mov $00f1,a +0daf: ae pop a +0db0: c5 f4 00 mov $00f4,a +0db3: 6f ret + +0db4: e5 f6 00 mov a,$00f6 +0db7: 65 f6 00 cmp a,$00f6 +0dba: d0 f8 bne $0db4 +0dbc: 68 00 cmp a,#$00 +0dbe: f0 0a beq $0dca +0dc0: 2d push a +0dc1: e8 21 mov a,#$21 +0dc3: c5 f1 00 mov $00f1,a +0dc6: ae pop a +0dc7: c5 f6 00 mov $00f6,a +0dca: 6f ret + +0dcb: e8 aa mov a,#$aa +0dcd: c5 f4 00 mov $00f4,a +0dd0: e8 bb mov a,#$bb +0dd2: c5 f5 00 mov $00f5,a +0dd5: e5 f4 00 mov a,$00f4 +0dd8: 68 cc cmp a,#$cc +0dda: d0 f9 bne $0dd5 +0ddc: 2f 20 bra $0dfe +0dde: ec f4 00 mov y,$00f4 +0de1: d0 fb bne $0dde +0de3: 5e f4 00 cmp y,$00f4 +0de6: d0 0f bne $0df7 +0de8: e5 f5 00 mov a,$00f5 +0deb: cc f4 00 mov $00f4,y +0dee: d7 14 mov ($14)+y,a +0df0: fc inc y +0df1: d0 f0 bne $0de3 +0df3: ab 15 inc $15 +0df5: 2f ec bra $0de3 +0df7: 10 ea bpl $0de3 +0df9: 5e f4 00 cmp y,$00f4 +0dfc: 10 e5 bpl $0de3 +0dfe: e5 f6 00 mov a,$00f6 +0e01: ec f7 00 mov y,$00f7 +0e04: da 14 movw $14,ya +0e06: ec f4 00 mov y,$00f4 +0e09: e5 f5 00 mov a,$00f5 +0e0c: cc f4 00 mov $00f4,y +0e0f: d0 cd bne $0dde +0e11: cd 31 mov x,#$31 +0e13: c9 f1 00 mov $00f1,x +0e16: 6f ret + +; pan table +0e17: db $00,$01,$03,$07,$0d,$15,$1e,$29 +0e1f: db $34,$42,$51,$5e,$67,$6e,$73,$77 +0e27: db $7a,$7c,$7d,$7e,$7f + +; echo FIR presets +0e2c: db $7f,$00,$00,$00,$00,$00,$00,$00 +0e34: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +0e3c: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +0e44: db $34,$33,$00,$d9,$e5,$01,$fc,$eb + +; EVOL(L),EVOL(R),EFB,EON,FLG,KOL,KOF,NON,PMON,KOF +; dsp shadow addrs for dsp regs +0e4c: db $2c,$3c,$0d,$4d,$6c,$4c,$5c,$3d,$2d,$5c +0e56: db $d0,$d1,$4e,$d2,$48,$45,$0e,$49,$4b,$46 + +; pitch table +0e60: dw $085f +0e62: dw $08de +0e64: dw $0965 +0e66: dw $09f4 +0e68: dw $0a8c +0e6a: dw $0b2c +0e6c: dw $0bd6 +0e6e: dw $0c8b +0e70: dw $0d4a +0e72: dw $0e14 +0e74: dw $0eea +0e76: dw $0fcd +0e78: dw $10be + +0e7a: e5 90 03 mov a,$0390 +0e7d: f0 25 beq $0ea4 +0e7f: 8c 90 03 dec $0390 +0e82: f0 0d beq $0e91 +0e84: 68 03 cmp a,#$03 +0e86: d0 1c bne $0ea4 +0e88: e8 40 mov a,#$40 +0e8a: 8d 5c mov y,#$5c +0e8c: 3f 96 0d call $0d96 +0e8f: 2f 13 bra $0ea4 +0e91: e5 1d 02 mov a,$021d +0e94: 68 07 cmp a,#$07 +0e96: b0 03 bcs $0e9b +0e98: e5 91 03 mov a,$0391 +0e9b: cd 0c mov x,#$0c +0e9d: 3f ef 0a call $0aef +0ea0: d2 1a clr6 $1a +0ea2: d2 d3 clr6 $d3 +0ea4: 3f b4 0d call $0db4 +0ea7: 9c dec a +0ea8: 68 15 cmp a,#$15 +0eaa: 90 01 bcc $0ead +0eac: 6f ret + +0ead: c5 94 03 mov $0394,a +0eb0: 1c asl a +0eb1: 85 94 03 adc a,$0394 +0eb4: 5d mov x,a +0eb5: f5 24 0f mov a,$0f24+x +0eb8: 30 0a bmi $0ec4 +0eba: e2 1a set7 $1a +0ebc: e2 d3 set7 $d3 +0ebe: e8 80 mov a,#$80 +0ec0: 8d 0e mov y,#$0e +0ec2: 2f 24 bra $0ee8 +0ec4: e5 90 03 mov a,$0390 +0ec7: d0 15 bne $0ede +0ec9: e5 1d 02 mov a,$021d +0ecc: c5 91 03 mov $0391,a +0ecf: c2 1a set6 $1a +0ed1: c2 d3 set6 $d3 +0ed3: e4 d3 mov a,$d3 +0ed5: 48 ff eor a,#$ff +0ed7: 24 4a and a,$4a +0ed9: 8d 4d mov y,#$4d +0edb: 3f 96 0d call $0d96 +0ede: f5 23 0f mov a,$0f23+x +0ee1: c5 90 03 mov $0390,a +0ee4: e8 40 mov a,#$40 +0ee6: 8d 0c mov y,#$0c +0ee8: c5 92 03 mov $0392,a +0eeb: cc 93 03 mov $0393,y +0eee: 4d push x +0eef: f5 24 0f mov a,$0f24+x +0ef2: 28 7f and a,#$7f +0ef4: e9 93 03 mov x,$0393 +0ef7: 3f ef 0a call $0aef +0efa: ce pop x +0efb: e5 93 03 mov a,$0393 +0efe: 9f xcn a +0eff: 5c lsr a +0f00: fd mov y,a +0f01: e8 7f mov a,#$7f +0f03: 3f 96 0d call $0d96 +0f06: fc inc y +0f07: 3f 96 0d call $0d96 +0f0a: f5 22 0f mov a,$0f22+x +0f0d: 28 7f and a,#$7f +0f0f: c4 11 mov $11,a +0f11: 8f 00 10 mov $10,#$00 +0f14: e9 93 03 mov x,$0393 +0f17: 3f 1a 09 call $091a +0f1a: e5 92 03 mov a,$0392 +0f1d: 8d 4c mov y,#$4c +0f1f: 5f 96 0d jmp $0d96 + +0f22: db $8c,$50,$00,$8c,$50,$01,$bc,$50 +0f2a: db $01,$a4,$05,$01,$85,$05,$01,$98 +0f32: db $05,$01,$b0,$50,$82,$98,$50,$83 +0f3a: db $a4,$50,$83,$87,$08,$84,$a4,$05 +0f42: db $85,$b0,$05,$85,$b7,$05,$85,$9c +0f4a: db $80,$82,$87,$48,$84,$a9,$05,$00 +0452: db $c3,$04,$82,$96,$20,$81,$bc,$18 +045a: db $81,$85,$80,$86,$8d,$08,$84 \ No newline at end of file From 70756169bd5881d19c769e2c8a0012c81432b945 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:44:10 -0800 Subject: [PATCH 063/116] Rename snes/NSPC/Super Valis IV ($0400).bin to snes/NSPC/Hanari Exp/Super Valis IV ($0400).bin --- .../{ => Hanari Exp}/Super Valis IV ($0400).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Hanari Exp}/Super Valis IV ($0400).bin (100%) diff --git a/snes/NSPC/Super Valis IV ($0400).bin b/snes/NSPC/Hanari Exp/Super Valis IV ($0400).bin similarity index 100% rename from snes/NSPC/Super Valis IV ($0400).bin rename to snes/NSPC/Hanari Exp/Super Valis IV ($0400).bin From e80371d6505afafa79d919387a8531d6ccb36c34 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:44:26 -0800 Subject: [PATCH 064/116] Update and rename snes/NSPC/Super Valis IV.s to snes/NSPC/Hanari Exp/Super Valis IV.s --- snes/NSPC/{ => Hanari Exp}/Super Valis IV.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Hanari Exp}/Super Valis IV.s (96%) diff --git a/snes/NSPC/Super Valis IV.s b/snes/NSPC/Hanari Exp/Super Valis IV.s similarity index 96% rename from snes/NSPC/Super Valis IV.s rename to snes/NSPC/Hanari Exp/Super Valis IV.s index 3a102d85..78bbbf26 100644 --- a/snes/NSPC/Super Valis IV.s +++ b/snes/NSPC/Hanari Exp/Super Valis IV.s @@ -1439,4 +1439,5 @@ 0f42: db $85,$b0,$05,$85,$b7,$05,$85,$9c 0f4a: db $80,$82,$87,$48,$84,$a9,$05,$00 0452: db $c3,$04,$82,$96,$20,$81,$bc,$18 -045a: db $81,$85,$80,$86,$8d,$08,$84 \ No newline at end of file + +045a: db $81,$85,$80,$86,$8d,$08,$84 From 89df81d826ede6fef82bd43d2ea4b4352272ac80 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:44:54 -0800 Subject: [PATCH 065/116] Add files via upload --- snes/NSPC/Hect/Kyuuyaku Megami Tensei.s | 192 +++++++++++++----------- 1 file changed, 105 insertions(+), 87 deletions(-) diff --git a/snes/NSPC/Hect/Kyuuyaku Megami Tensei.s b/snes/NSPC/Hect/Kyuuyaku Megami Tensei.s index 1b0beb6e..c2100510 100644 --- a/snes/NSPC/Hect/Kyuuyaku Megami Tensei.s +++ b/snes/NSPC/Hect/Kyuuyaku Megami Tensei.s @@ -531,6 +531,7 @@ 0b55: 3f 11 09 call $0911 0b58: 6f ret +; dispatch subcmd (ff) 0b59: 3f 7e 0b call $0b7e 0b5c: 1c asl a 0b5d: fd mov y,a @@ -559,7 +560,7 @@ 0b86: fd mov y,a 0b87: 6f ret -; vcmd e0 +; vcmd e0 - set instrument 0b88: d5 11 02 mov $0211+x,a 0b8b: fd mov y,a 0b8c: 10 08 bpl $0b96 @@ -610,7 +611,7 @@ 0be2: d5 20 02 mov $0220+x,a 0be5: 6f ret -; vcmd e1 +; vcmd e1 - pan 0be6: 2d push a 0be7: f5 00 04 mov a,$0400+x 0bea: 68 01 cmp a,#$01 @@ -629,7 +630,7 @@ 0c06: d5 20 03 mov $0320+x,a 0c09: 6f ret -; vcmd e2 +; vcmd e2 - pan fade 0c0a: d4 6d mov $6d+x,a 0c0c: 2d push a 0c0d: 3f 7e 0b call $0b7e @@ -643,19 +644,19 @@ 0c1f: d5 31 03 mov $0331+x,a 0c22: 6f ret -; vcmd e3 +; vcmd e3 - vibrato on 0c23: d5 70 02 mov $0270+x,a 0c26: 3f 7e 0b call $0b7e 0c29: d5 61 02 mov $0261+x,a 0c2c: 3f 7e 0b call $0b7e -; vcmd e4 +; vcmd e4 - vibrato off 0c2f: d4 8d mov $8d+x,a 0c31: d5 81 02 mov $0281+x,a 0c34: e8 00 mov a,#$00 0c36: d5 71 02 mov $0271+x,a 0c39: 6f ret -; vcmd f0 +; vcmd f0 - vibrato fade 0c3a: d5 71 02 mov $0271+x,a 0c3d: 2d push a 0c3e: 8d 00 mov y,#$00 @@ -666,12 +667,12 @@ 0c46: d5 80 02 mov $0280+x,a 0c49: 6f ret -; vcmd e5 +; vcmd e5 - master volume 0c4a: e8 00 mov a,#$00 0c4c: da 4f movw $4f,ya 0c4e: 6f ret -; vcmd e6 +; vcmd e6 - master volume fade 0c4f: c4 58 mov $58,a 0c51: 3f 7e 0b call $0b7e 0c54: c4 59 mov $59,a @@ -682,7 +683,7 @@ 0c5e: da 51 movw $51,ya 0c60: 6f ret -; vcmd e7 +; vcmd e7 - tempo 0c61: f5 00 04 mov a,$0400+x 0c64: d0 05 bne $0c6b 0c66: e8 00 mov a,#$00 @@ -702,7 +703,7 @@ 0c79: c4 5a mov $5a,a 0c7b: 3f f7 1a call $1af7 0c7e: 2f 0c bra $0c8c -; vcmd e8 +; vcmd e8 - tempo fade 0c80: 2d push a 0c81: f5 00 04 mov a,$0400+x 0c84: d0 15 bne $0c9b @@ -747,27 +748,27 @@ 0ccd: ce pop x 0cce: 6f ret -; vcmd e9 +; vcmd e9 - global transpose 0ccf: c4 33 mov $33,a 0cd1: 6f ret -; vcmd ea +; vcmd ea - per-voice transpose 0cd2: d5 b0 02 mov $02b0+x,a 0cd5: 6f ret -; vcmd eb +; vcmd eb - tremolo on 0cd6: d5 a0 02 mov $02a0+x,a 0cd9: 3f 7e 0b call $0b7e 0cdc: d5 91 02 mov $0291+x,a 0cdf: 3f 7e 0b call $0b7e -; vcmd ec +; vcmd ec - tremolo off 0ce2: d4 9d mov $9d+x,a 0ce4: 6f ret -; vcmd f1 +; vcmd f1 - pitch envelope (release) 0ce5: e8 01 mov a,#$01 0ce7: 2f 02 bra $0ceb -; vcmd f2 +; vcmd f2 - pitch envelope (attack) 0ce9: e8 00 mov a,#$00 0ceb: d5 50 02 mov $0250+x,a 0cee: dd mov a,y @@ -778,11 +779,11 @@ 0cfb: d5 51 02 mov $0251+x,a 0cfe: 6f ret -; vcmd f3 +; vcmd f3 - pitch envelope off 0cff: d5 40 02 mov $0240+x,a 0d02: 6f ret -; vcmd ed +; vcmd ed - volume 0d03: d5 d1 02 mov $02d1+x,a 0d06: d5 21 06 mov $0621+x,a 0d09: 3f 89 14 call $1489 @@ -791,7 +792,7 @@ 0d11: d5 20 06 mov $0620+x,a 0d14: 6f ret -; vcmd ee +; vcmd ee - volume fade 0d15: d4 6c mov $6c+x,a 0d17: 2d push a 0d18: 3f 7e 0b call $0b7e @@ -805,12 +806,12 @@ 0d2a: d5 01 03 mov $0301+x,a 0d2d: 6f ret -; vcmd f4 +; vcmd f4 - tuning 0d2e: d5 71 03 mov $0371+x,a -; vcmd ef +; vcmd ef - nop 0d31: 6f ret -; vcmd f5 +; vcmd f5 - echo vbits/volume 0d32: 2d push a 0d33: f5 00 04 mov a,$0400+x 0d36: d0 1b bne $0d53 @@ -832,7 +833,7 @@ 0d54: 05 2e 00 or a,$002e 0d57: c5 2e 00 mov $002e,a 0d5a: 2f e2 bra $0d3e -; vcmd f8 +; vcmd f8 - echo volume fade 0d5c: c4 3c mov $3c,a 0d5e: 3f 7e 0b call $0b7e 0d61: c4 3d mov $3d,a @@ -850,13 +851,13 @@ 0d7a: da 3a movw $3a,ya 0d7c: 6f ret -; vcmd f6 +; vcmd f6 - disable echo 0d7d: da 34 movw $34,ya 0d7f: da 36 movw $36,ya 0d81: a2 2c set5 $2c 0d83: 6f ret -; vcmd f7 +; vcmd f7 - set echo params 0d84: 3f a6 0d call $0da6 0d87: 3f 7e 0b call $0b7e 0d8a: c4 32 mov $32,a @@ -916,7 +917,7 @@ 0df4: 8d 6d mov y,#$6d 0df6: 5f 19 09 jmp $0919 -; vcmd fa +; vcmd fa - set perc patch base 0df9: c4 57 mov $57,a 0dfb: 6f ret @@ -927,7 +928,7 @@ 0e04: d0 2d bne $0e33 0e06: 3f 80 0b call $0b80 0e09: 3f 7e 0b call $0b7e -; vcmd f9 +; vcmd f9 - pitch slide 0e0c: d4 7d mov $7d+x,a 0e0e: 3f 7e 0b call $0b7e 0e11: d4 7c mov $7c+x,a @@ -1294,33 +1295,33 @@ 10ee: db $35,$37,$32,$2e,$2c,$29,$04,$2d,$2f,$2a ; vcmd dispatch table -10f8: dw $0b88 ; e0 -10fa: dw $0be6 ; e1 -10fc: dw $0c0a ; e2 -10fe: dw $0c23 ; e3 -1100: dw $0c2f ; e4 -1102: dw $0c4a ; e5 -1104: dw $0c4f ; e6 -1106: dw $0c61 ; e7 -1108: dw $0c80 ; e8 -110a: dw $0ccf ; e9 -110c: dw $0cd2 ; ea -110e: dw $0cd6 ; eb -1110: dw $0ce2 ; ec -1112: dw $0d03 ; ed -1114: dw $0d15 ; ee -1116: dw $0d31 ; ef -1118: dw $0c3a ; f0 -111a: dw $0ce5 ; f1 -111c: dw $0ce9 ; f2 -111e: dw $0cff ; f3 -1120: dw $0d2e ; f4 -1122: dw $0d32 ; f5 -1124: dw $0d7d ; f6 -1126: dw $0d84 ; f7 -1128: dw $0d5c ; f8 -112a: dw $0e0c ; f9 -112c: dw $0df9 ; fa +10f8: dw $0b88 ; e0 - set instrument +10fa: dw $0be6 ; e1 - pan +10fc: dw $0c0a ; e2 - pan fade +10fe: dw $0c23 ; e3 - vibrato on +1100: dw $0c2f ; e4 - vibrato off +1102: dw $0c4a ; e5 - master volume +1104: dw $0c4f ; e6 - master volume fade +1106: dw $0c61 ; e7 - tempo +1108: dw $0c80 ; e8 - tempo fade +110a: dw $0ccf ; e9 - global transpose +110c: dw $0cd2 ; ea - per-voice transpose +110e: dw $0cd6 ; eb - tremolo on +1110: dw $0ce2 ; ec - tremolo off +1112: dw $0d03 ; ed - volume +1114: dw $0d15 ; ee - volume fade +1116: dw $0d31 ; ef - nop +1118: dw $0c3a ; f0 - vibrato fade +111a: dw $0ce5 ; f1 - pitch envelope (release) +111c: dw $0ce9 ; f2 - pitch envelope (attack) +111e: dw $0cff ; f3 - pitch envelope off +1120: dw $0d2e ; f4 - tuning +1122: dw $0d32 ; f5 - echo vbits/volume +1124: dw $0d7d ; f6 - disable echo +1126: dw $0d84 ; f7 - set echo params +1128: dw $0d5c ; f8 - echo volume fade +112a: dw $0e0c ; f9 - pitch slide +112c: dw $0df9 ; fa - set perc patch base ; vcmd length table 112e: db $01,$01,$02,$03,$00,$01,$02,$01 @@ -1400,28 +1401,31 @@ 11da: 3f 3a 0f call $0f3a 11dd: 5f fc 0d jmp $0dfc -11e0: dw $12b1 -11e2: dw $12b7 -11e4: dw $12c4 -11e6: dw $12cf -11e8: dw $12d5 -11ea: dw $1290 -11ec: dw $12a6 -11ee: dw $1286 -11f0: dw $1273 -11f2: dw $1277 -11f4: dw $126d -11f6: dw $1244 -11f8: dw $124e -11fa: dw $1258 -11fc: dw $120a -11fe: dw $1200 - +; subcmd dispatch table +11e0: dw $12b1 ; 00 - set attack rate +11e2: dw $12b7 ; 01 - set decay rate +11e4: dw $12c4 ; 02 - set sustain level +11e6: dw $12cf ; 03 - set release rate +11e8: dw $12d5 ; 04 - set sustain rate +11ea: dw $1290 ; 05 - call subroutine +11ec: dw $12a6 ; 06 - return from subroutine +11ee: dw $1286 ; 07 - jump +11f0: dw $1273 ; 08 - repeat count +11f2: dw $1277 ; 09 - conditional loop +11f4: dw $126d ; 0a +11f6: dw $1244 ; 0b - set pan value (1) +11f8: dw $124e ; 0c - set pan value (2) +11fa: dw $1258 ; 0d - set reverb +11fc: dw $120a ; 0e - surround volume +11fe: dw $1200 ; 0f - subtract volume + +; subcmd 0f - subtract volume 1200: d5 5c 06 mov $065c+x,a 1203: 3f 7e 0b call $0b7e 1206: d5 5d 06 mov $065d+x,a 1209: 6f ret +; subcmd 0e - surround volume 120a: 2d push a 120b: e5 81 06 mov a,$0681 120e: f0 1f beq $122f @@ -1451,16 +1455,19 @@ 1240: 3f 19 09 call $0919 1243: 6f ret +; subcmd 0b - set pan value (1) 1244: f5 40 15 mov a,$1540+x 1247: 05 2d 00 or a,$002d 124a: c5 2d 00 mov $002d,a 124d: 6f ret +; subcmd 0c - set pan value (2) 124e: e5 2d 00 mov a,$002d 1251: 35 3f 15 and a,$153f+x 1254: c5 2d 00 mov $002d,a 1257: 6f ret +; subcmd 0d - set reverb 1258: c5 89 06 mov $0689,a 125b: 2d push a 125c: e5 2c 00 mov a,$002c @@ -1472,13 +1479,16 @@ 1269: c5 2c 00 mov $002c,a 126c: 6f ret +; subcmd 0a 126d: e8 01 mov a,#$01 126f: c5 4a 06 mov $064a,a 1272: 6f ret +; subcmd 08 - repeat count 1273: d5 f0 03 mov $03f0+x,a 1276: 6f ret +; subcmd 09 - conditional loop 1277: 2d push a 1278: f5 f0 03 mov a,$03f0+x 127b: 9c dec a @@ -1488,6 +1498,7 @@ 1282: 5f 7e 0b jmp $0b7e 1285: ae pop a +; subcmd 07 - jump 1286: 2d push a 1287: 3f 7e 0b call $0b7e 128a: d4 15 mov $15+x,a @@ -1495,6 +1506,7 @@ 128d: d4 14 mov $14+x,a 128f: 6f ret +; subcmd 05 - call subroutine 1290: 2d push a 1291: 3f 7e 0b call $0b7e 1294: 2d push a @@ -1508,16 +1520,19 @@ 12a3: d4 14 mov $14+x,a 12a5: 6f ret +; subcmd 06 - return from subroutine 12a6: f5 e0 03 mov a,$03e0+x 12a9: d4 14 mov $14+x,a 12ab: f5 e1 03 mov a,$03e1+x 12ae: d4 15 mov $15+x,a 12b0: 6f ret +; subcmd 00 - set attack rate 12b1: 28 0f and a,#$0f 12b3: d5 80 03 mov $0380+x,a 12b6: 6f ret +; subcmd 01 - set decay rate 12b7: 1c asl a 12b8: 1c asl a 12b9: 1c asl a @@ -1528,6 +1543,7 @@ 12c0: d5 90 03 mov $0390+x,a 12c3: 6f ret +; subcmd 02 - set sustain level 12c4: 1c asl a 12c5: 1c asl a 12c6: 1c asl a @@ -1537,10 +1553,12 @@ 12cb: d5 a0 03 mov $03a0+x,a 12ce: 6f ret +; subcmd 03 - set release rate 12cf: 28 1f and a,#$1f 12d1: d5 b0 03 mov $03b0+x,a 12d4: 6f ret +; subcmd 04 - set sustain rate 12d5: 28 1f and a,#$1f 12d7: d5 c0 03 mov $03c0+x,a 12da: 6f ret @@ -2308,22 +2326,22 @@ 19f7: db $01,$03,$03,$00,$01,$03,$00,$03 19ff: db $03,$03,$01 -1a02: dw $1aa8 -1a04: dw $1aae -1a06: dw $1abb -1a08: dw $1ac6 -1a0a: dw $1acc -1a0c: dw $1a6a -1a0e: dw $1a80 -1a10: dw $1a9a -1a12: dw $1aa4 -1a14: dw $1a8b -1a16: dw $126d -1a18: dw $1a2c -1a1a: dw $1a36 -1a1c: dw $1a40 -1a1e: dw $1a44 -1a20: dw $1a22 +1a02: dw $1aa8 ; 00 +1a04: dw $1aae ; 01 +1a06: dw $1abb ; 02 +1a08: dw $1ac6 ; 03 +1a0a: dw $1acc ; 04 +1a0c: dw $1a6a ; 05 +1a0e: dw $1a80 ; 06 +1a10: dw $1a9a ; 07 +1a12: dw $1aa4 ; 08 +1a14: dw $1a8b ; 09 +1a16: dw $126d ; 0a +1a18: dw $1a2c ; 0b +1a1a: dw $1a36 ; 0c +1a1c: dw $1a40 ; 0d +1a1e: dw $1a44 ; 0e +1a20: dw $1a22 ; 0f 1a22: d5 6c 06 mov $066c+x,a 1a25: 3f 7e 0b call $0b7e From a7a008cd46e2b676c95c05fcbada6343fd9219c6 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:45:37 -0800 Subject: [PATCH 066/116] Add files via upload --- snes/NSPC/Harvest Moon ($0500).bin | Bin 0 -> 4029 bytes snes/NSPC/Harvest Moon.s | 2049 ++++++++++++++++++++++++++++ 2 files changed, 2049 insertions(+) create mode 100644 snes/NSPC/Harvest Moon ($0500).bin create mode 100644 snes/NSPC/Harvest Moon.s diff --git a/snes/NSPC/Harvest Moon ($0500).bin b/snes/NSPC/Harvest Moon ($0500).bin new file mode 100644 index 0000000000000000000000000000000000000000..19e54a73d90f94ce81271f05e1400ee4f6d23052 GIT binary patch literal 4029 zcmb7H4^R_l7XR{XU=so)A+difRk*e{v^KM$+8M{wF7(4p0w+C`7W&@t2+}nV`dN*@( zYTo<4_uluu@4fGRzqe+z^Pfxh)|-f4V`P(#CCFrh?u|{Ag8943)W~LQ>i~-Eu;zc? zdJFw@y=`6F`p}y%yp@-CW7(U_-s+1Y`Of)eM3I!iJH6Fhbu|eqW&Ckv=#os(+mb`u z`aw~{)l};&d^UYFftpmoKVsp3*^a6-6`_j9F9~E=1E$jrvt}78gd0t~Ayg}njeHtk zb#3=+d?G#5EGiNzE5vd||&52Ysot&y5956){4d%N9&8dKyBIw^I(O4e~2UAIo z=7cnUG4E(g2yK@Q{+;fvE4E|*c5!Ryusp&4p?j~m*MG>pf5qWM|6y@&?@@7os8&w( zzwh3)q89sW#a&e+b@wOhgHi7{nDl5Q(_)KcSZrN+(a33wOgNSp9m|a!JeHDzui~u9 z!CWk%U=C(F_@sCYOd!)1p9G!Qb37Mcpcm?c^Kn;j0cL{2cs_zH@4H#kz197(_6_^vf9xnD(VcM3_n zCYMO4(=|-#cbQ7)c}c^AuJ=khT};?4yY`sn1POPWUJpCDm0@&8Bf3~L=#nSd$zglW zpv!c-@T@$i@SpONfG75%sBhZi^EgxLVX`l-|4-Uh#@ zk7^24uz5C!%i|LgNAGu_JZzUO;cQvECz~={FPEwzdOJNeiJq$u=gM;x0e9!Tpdig# z7qO6_e2b}+oMw~}m2o)Nx#JoR9K2xhI0#VRwrZ`c}mN7v4}ou zaJW;ObG|DdVqm`ovOabn1iexp&n{#>Nm&4?o{#BmhFj$XJ)j>bR}W#AQ^VO1*?v&& zQd@Ddd?wlDZx-?Wt9s3TZ?Ifh4*kF=!^>oddQ2G6Zr13m$#+r3&F1cbMDGZRQ%Q z3|p!)wlQ>B@-ZY>qq2W~GxUveG;xFP)SC|;8c=-}~c>@BFRGT0mTtMS^BgOGr%KzB}ugSW?Z)AP7 znM$Isq)_kE;S}mUwIy!--z|}F1d{LTh4=Qju}JUsI0zF`5~)U)i-_T4IzfTSX>_?7 z#U^8_)1xy`6%lb&JZ=`PI%$>3;bRkp2%FjkH^I;@xy@Yvagfsp6%3ZbtnYb{`&6F@ImgB2*KYOGwuc@ipzcLIsbLBaVbh%|sd zfDHPIb&3lI?MR-i6ysnvQal(cz6QW@9abHzgC|yl>1ld+5G)G0Jx8WB=v8KENW7Y^ z*7v-SJDo-C57p&Ip0jerky%#G70I#MBDA%?)}^8qi`=fZ;`AxSoQu-FR9rsmY@#s4 zxh^OfL~k)KmZ;pt7b%%4bC-YsM#X&8r;Y*qbT}F+`8jwDhgLdP7~#o8O^Kc(Upc*7 z*hF4*Id>t~E^Tov6Eo(iOSSnbh?!EeCQr}srh1XSVnY{2LSbzH@wr%|nKgV&D-2v1 zbOkdBK&xN|!Nl)^`T4fc0$T^we-g_7a3qp&l1weAL<2}o$xcM zAR$%iI|Xg?fLB_ zO}qm9GqGJ1B^f@1B~$CaQ0pDUZR1)b0tC|$FBw`_6L8wM32;Az$c#1 z=a`uWWT%CmXi3kX{5zA~Qe@g>sxvj2BBnI6-TaDqwfT^Fa+)oTF1D}_KrCO1O??GK z&k{oX2%Ih^=$UDZ|D1TDXEo94Cg_c6^{WYglX#Btw}J5OyTZ3sVH-nlvcOU}3)n^_ zbor!p_?ST$0y{vcjCwcG=O!dA?>s`d{jDd_`M*Fq2TyWs!$8h6{wu1BV#_Fw{hT0UWT*<&IzBZt z@>OVePXWQzO4qnO^g$t@*szovF0iMxdt`!p~IxS6L=ymEgaBq-ADG@jy z?STo>!fg(pKaT$6Mj>H+O9}T05x%fOCpu3KhdxuuDV2QQc@q5f9Y^32TnvM4j4h2Z z@CLVkzg88ERiyuf*rXO@h;I$YV=EX$!cZ0#G^1~pn$ijut{wBb z=*-vhPh@g(a^{pNmY;6jo;DTzy+ Date: Sat, 17 Jan 2026 14:45:57 -0800 Subject: [PATCH 067/116] Rename snes/NSPC/Harvest Moon ($0500).bin to snes/NSPC/Japan Art Media/Harvest Moon ($0500).bin --- .../{ => Japan Art Media}/Harvest Moon ($0500).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Japan Art Media}/Harvest Moon ($0500).bin (100%) diff --git a/snes/NSPC/Harvest Moon ($0500).bin b/snes/NSPC/Japan Art Media/Harvest Moon ($0500).bin similarity index 100% rename from snes/NSPC/Harvest Moon ($0500).bin rename to snes/NSPC/Japan Art Media/Harvest Moon ($0500).bin From 912e5ed9596c784c9a1706eb379c68cb88ef92fa Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:46:14 -0800 Subject: [PATCH 068/116] Update and rename snes/NSPC/Harvest Moon.s to snes/NSPC/Japan Art Media/Harvest Moon.s --- snes/NSPC/{ => Japan Art Media}/Harvest Moon.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Japan Art Media}/Harvest Moon.s (96%) diff --git a/snes/NSPC/Harvest Moon.s b/snes/NSPC/Japan Art Media/Harvest Moon.s similarity index 96% rename from snes/NSPC/Harvest Moon.s rename to snes/NSPC/Japan Art Media/Harvest Moon.s index 840936aa..d2b77bad 100644 --- a/snes/NSPC/Harvest Moon.s +++ b/snes/NSPC/Japan Art Media/Harvest Moon.s @@ -2046,4 +2046,5 @@ 14a8: db $19,$32,$4c,$65,$72,$7f,$8c,$98 14b0: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc -14b8: db $05,$01,$07,$06,$05 \ No newline at end of file + +14b8: db $05,$01,$07,$06,$05 From 57b3d6c3d764728c5d368d17fb019e67ea35d881 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:46:50 -0800 Subject: [PATCH 069/116] Add files via upload --- .../Taito/Sonic Blast Man ($0800).bin | Bin 0 -> 3968 bytes snes/NSPC/Kazuo Sawa/Taito/Sonic Blast Man.s | 1877 +++++++++++++++++ 2 files changed, 1877 insertions(+) create mode 100644 snes/NSPC/Kazuo Sawa/Taito/Sonic Blast Man ($0800).bin create mode 100644 snes/NSPC/Kazuo Sawa/Taito/Sonic Blast Man.s diff --git a/snes/NSPC/Kazuo Sawa/Taito/Sonic Blast Man ($0800).bin b/snes/NSPC/Kazuo Sawa/Taito/Sonic Blast Man ($0800).bin new file mode 100644 index 0000000000000000000000000000000000000000..589cf04b9d2f340838c61d833e6af23867cf1368 GIT binary patch literal 3968 zcmb7{e{37o9l+n+yB~3W*yqGaO6oQaWGpa(9e#+75zg(PHqb&sJ48#E2 z{WEEc^xmD{z4v|ZeLvq{@lB;)Raz2*Mfdgt8F8z;}9 zxzWa+4=2x~FaLV_=F{u`82+S$?1cg{SDD+))p@U7JzzGgUdP$IcXA#L6ntrI|98yq z#AT3T^DnGd`yKg>XJN40?2gx{_f>t-)T};Nk#Dh@^G$-+ZZMmtP=PZ;t<5%8qt%_A z`Hd{KoQ>8kp z)!S;yGVJTyTfMDKNqcgLD=$?qt5@&wz~Y+!x=@YPsq^*z-@|4)+Zdix)rH_!8@JOq z)<%Xg8OHJd@er1&Pa*Z7GAo!u#I~=EoU_+Q7VX<3U)rI_lD#3~NPYWJWM5}iOcs&X zuJ56CBk8% z@P$ehxeACNOe{q9VPf;d;7I~!#xf@f$CEhH)fGTwAY$>wOl0f)M|3?Sb zD!jQCK3`aCXR|^7JJ|+MVG~0;-|$WVEtdQDd+d5gsL2spH)o+9%Q2AaDIoQE=h-Rr zp7CD%z2VOHqKk`Q0=5MBlJ;x5Bh;d+H#n`vqG6v`S1N}L%ccQ76QCV@ro*2P_z2=* zLSRMv;WoK6hjch;vdvYRtI*+2@Fg-GuZ}F(qI#**|8lQVM-y0BX;tJev4ouZyh0J5 ziIynGpGfC2yYynhy85F)pp*Uqzxg zM|NTT(;w6-IJ|TshMs9Jpl8lrxaoYYob?n?=_!w%-(**f-!*vW&Q1LIrtF>hh+RM4 zKd5E3@$U_8-x-m{BUx?s{_OVr7TY<#b@1+;Tln!U*}I39w&}&dLPypUL-QW{(tx}e zxOv{Ad>%Pv-xm3YeI;D&+JU3fW`lQsLn&z-3_DBycR*3Tr!5EQrv!@fzed-tfarb94VSjBD302~p;3RUBeeQZ!m0#2&@eTyU(u+BN1~Yh z?876wFzLg^G5ac-;y*}TP7(Le7;lO6B=4^|K@j(}%@@bCkqJICMiaa?G71L7gG~K+ zN-v(Y9dw%iU;?Xi)wBb{`EXV#4%?M<4g3gVwWTH>YTX8rV6p}_Gu^PYsle&n#Zjw< z?t)2CHVNdx5&Y#NTsGTHNBMM48%gkHt=Ajp!%L;&Smd*~*yc+6g>){4)XtjT6>bo{ z+M3s4{@dmG7GIvca59|>FF8WnW;ds)!lx;R)46nxv|#xbrE`z-)K= zv}Xv_&vqx%gPwnl4=PzjFUIYbL-DfO5T?Ge+7KR5FnALP9C2gtv4xYiuYCU%)Z!I+ z(Gm)VU(iP0=846tT#a8oK2cawt7||dUxx!78n$YHLjcn*OghRkgLou>*~l6^(!mDx zJ%_iNwX^Oy!D+mLowG_hH|y38VrPlA;56;V-nv@On~O8soUK(KbH~6YpMoR5PCZbklwd2(lczPUAIU%vqqP$Bd%4^ffy)jb1czUP zb&_Jig^aR3Ge%DGuyl;qp|!_QaqP@97j7aGygqX;Y+=a-1Q9-aw{C8M>E=DgkD*bcH<*dAo{5)l;DZ}*%QsNq25z{)K4`(RfHh_LMlnDFe6fRc z@DMN{#IAu5tDCpN+2EAg@?-l;Vcm?dAMhN$L(i7?>CNYU;g<$o#m)!!@BxY zH~Vrsbg_zbPs~LhX;crmJ9F9-N=Z3);U?Ye)gjL6Cm_q{CtT*r-d{Rs5j|8y)`bkx zZ43cQKlWx^gd7n&a_m&<(=zlAb8UMe9BUAdAsSIgRS=xU_^k!B8=_4CWl|7{z^5`3 z;6;wm&D7vC341l&$7e=qoVO|=xEL=FmlqF1km|$gHC6u(I5CuW8%M86IoP8vCB5%u zKAv}bOLMO`nDuj$4W?)AR73mR9~#a+O5ZeQ08BZ+526_*;3%>?qD;$SfV5W#7Z&{!FeV>3v z7q&s?nxW{eBKnhO(XwBt_kW^%45P{n)DWM{qpSz!El;qfraIpE4Cw`X@-wJCdR{zL zuog}L&}YMiy|HT8GUkP@@Ib7GJ(S5Wkh!tI!Q`ixYY-?0b+lm!T?{AQE>H1L2A#?C zcEygqS|}e--DF>F+n4qpvvsSszqN<{rm;kifjYc5#4oxbehDn0$;QKNt{r_)lJ3yt zl#=w{F~nUAqiwFqKG|Qf{HDpt_WZ?dT#t5Q_wL<-*YwWx)xrt(XirGqo|)~kg`uoV zW;$}2K!GDs1l3NQ)o{IXr4IG$f zsTBl+EkZ>FMP$(ea|B<6LJE{+ZUN=>KH_4fq8V!S+U@_BoaKu5bzMDJ*9mQvUW^hS zS2Rd~E5=EXD<()6S4vL&1=)uu(-=}e zu`#$YK?0aRQ3No2;u9b#lYju3lLQ4i!ILflauLx4$V((DP#a1M^>LXf4R9HQ z2Dwa}c5#^m)woQGM!C!cHMopL;~cmvO>jivXbMBznEcW^5FhvGK`_O+aRBf-+;%1^+0ZhE8a}CMW`% zE)m#hBCv^yz{U`PO5>>5O=4`K5@TaXj7?l(Y!VVKpOA>X}|-d0S}q6QDnx(Co?tynXw7V zj7^u!*sMkC&~4}rv?dgU(kh@gfE13;z4m% zyjl8%R4G3se<=4>d{D8&QFQ#I@`|c=st#1&TH|qk?3{A_PI=XRy7upNE9y5l9BXX2 e=x0rBUb5;?^W}H#_@QrO$CXzFF5iom|NaT&POy*w literal 0 HcmV?d00001 diff --git a/snes/NSPC/Kazuo Sawa/Taito/Sonic Blast Man.s b/snes/NSPC/Kazuo Sawa/Taito/Sonic Blast Man.s new file mode 100644 index 00000000..11d78796 --- /dev/null +++ b/snes/NSPC/Kazuo Sawa/Taito/Sonic Blast Man.s @@ -0,0 +1,1877 @@ +0800: 20 clrp +0801: cd cf mov x,#$cf +0803: bd mov sp,x +0804: 3f 24 12 call $1224 +0807: 3f db 09 call $09db +080a: e4 1b mov a,$1b +080c: d0 63 bne $0871 +080e: 8d 0a mov y,#$0a +0810: ad 05 cmp y,#$05 +0812: f0 07 beq $081b +0814: b0 08 bcs $081e +0816: 69 4d 4c cmp ($4c),($4d) +0819: d0 11 bne $082c +081b: e3 4c 0e bbs7 $4c,$082c +081e: f6 97 17 mov a,$1797+y +0821: c5 f2 00 mov $00f2,a +0824: f6 a1 17 mov a,$17a1+y +0827: 5d mov x,a +0828: e6 mov a,(x) +0829: c5 f3 00 mov $00f3,a +082c: fe e2 dbnz y,$0810 +082e: cb 45 mov $45,y +0830: cb 46 mov $46,y +0832: d2 48 clr6 $48 +0834: ec fd 00 mov y,$00fd +0837: f0 fb beq $0834 +0839: e8 00 mov a,#$00 +083b: c4 1d mov $1d,a +083d: c4 5e mov $5e,a +083f: c4 1e mov $1e,a +0841: e4 1c mov a,$1c +0843: f0 0c beq $0851 +0845: 6d push y +0846: c4 1f mov $1f,a +0848: 3f 1c 09 call $091c +084b: ee pop y +084c: e4 1c mov a,$1c +084e: c5 f7 00 mov $00f7,a +0851: 6d push y +0852: e8 20 mov a,#$20 +0854: cf mul ya +0855: 60 clrc +0856: 84 43 adc a,$43 +0858: c4 43 mov $43,a +085a: 90 07 bcc $0863 +085c: 69 4d 4c cmp ($4c),($4d) +085f: f0 02 beq $0863 +0861: ab 4c inc $4c +0863: 3f 64 09 call $0964 +0866: e4 53 mov a,$53 +0868: ee pop y +0869: cf mul ya +086a: 60 clrc +086b: 84 51 adc a,$51 +086d: c4 51 mov $51,a +086f: 90 0d bcc $087e +0871: 3f 69 0b call $0b69 +0874: fa 1a 1f mov ($1f),($1a) +0877: 3f a3 08 call $08a3 +087a: e4 21 mov a,$21 +087c: d0 1f bne $089d +087e: e4 1a mov a,$1a +0880: 04 1c or a,$1c +0882: f0 16 beq $089a +0884: c4 1f mov $1f,a +0886: cd 00 mov x,#$00 +0888: e8 01 mov a,#$01 +088a: c4 47 mov $47,a +088c: 24 1f and a,$1f +088e: f0 03 beq $0893 +0890: 3f 70 0c call $0c70 +0893: 3d inc x +0894: 3d inc x +0895: e4 47 mov a,$47 +0897: 1c asl a +0898: d0 f0 bne $088a +089a: 5f 0a 08 jmp $080a + +089d: 3f 33 0a call $0a33 +08a0: 5f 0a 08 jmp $080a + +08a3: 8d 00 mov y,#$00 +08a5: cb 21 mov $21,y +08a7: cd 00 mov x,#$00 +08a9: e8 01 mov a,#$01 +08ab: 8f 00 23 mov $23,#$00 +08ae: d8 44 mov $44,x +08b0: c4 47 mov $47,a +08b2: 24 1f and a,$1f +08b4: f0 21 beq $08d7 +08b6: 9b 70 dec $70+x +08b8: f0 11 beq $08cb +08ba: e4 1b mov a,$1b +08bc: d0 19 bne $08d7 +08be: f4 71 mov a,$71+x +08c0: f0 0f beq $08d1 +08c2: 9b 71 dec $71+x +08c4: d0 0b bne $08d1 +08c6: 3f a4 0b call $0ba4 +08c9: 2f 06 bra $08d1 +08cb: 3f a8 0a call $0aa8 +08ce: 3f 14 0b call $0b14 +08d1: 3f 09 0c call $0c09 +08d4: 3f 4b 0d call $0d4b +08d7: 3d inc x +08d8: 3d inc x +08d9: e4 47 mov a,$47 +08db: 1c asl a +08dc: f0 3a beq $0918 +08de: 2d push a +08df: 24 1c and a,$1c +08e1: 24 1a and a,$1a +08e3: ae pop a +08e4: f0 c5 beq $08ab +08e6: 8f 01 23 mov $23,#$01 +08e9: d8 44 mov $44,x +08eb: c4 47 mov $47,a +08ed: 3f 29 15 call $1529 +08f0: 3f 5b 14 call $145b +08f3: 9b 70 dec $70+x +08f5: f0 0d beq $0904 +08f7: f4 71 mov a,$71+x +08f9: f0 0f beq $090a +08fb: 9b 71 dec $71+x +08fd: d0 0b bne $090a +08ff: 3f a4 0b call $0ba4 +0902: 2f 06 bra $090a +0904: 3f a8 0a call $0aa8 +0907: 3f 14 0b call $0b14 +090a: 3f 09 0c call $0c09 +090d: 3f 4b 0d call $0d4b +0910: 3f 8d 13 call $138d +0913: 3f f7 15 call $15f7 +0916: 2f bf bra $08d7 +0918: 8f 00 23 mov $23,#$00 +091b: 6f ret + +091c: 8d 00 mov y,#$00 +091e: cb 21 mov $21,y +0920: 8f 00 23 mov $23,#$00 +0923: cd 0c mov x,#$0c +0925: e8 40 mov a,#$40 +0927: d8 44 mov $44,x +0929: c4 47 mov $47,a +092b: 24 1f and a,$1f +092d: f0 2d beq $095c +092f: f5 90 03 mov a,$0390+x +0932: 60 clrc +0933: 95 91 03 adc a,$0391+x +0936: d5 91 03 mov $0391+x,a +0939: 90 21 bcc $095c +093b: 9b 70 dec $70+x +093d: f0 11 beq $0950 +093f: e4 1b mov a,$1b +0941: d0 19 bne $095c +0943: f4 71 mov a,$71+x +0945: f0 0f beq $0956 +0947: 9b 71 dec $71+x +0949: d0 0b bne $0956 +094b: 3f a4 0b call $0ba4 +094e: 2f 06 bra $0956 +0950: 3f a8 0a call $0aa8 +0953: 3f 14 0b call $0b14 +0956: 3f 09 0c call $0c09 +0959: 3f 4b 0d call $0d4b +095c: 3d inc x +095d: 3d inc x +095e: e4 47 mov a,$47 +0960: 1c asl a +0961: d0 c4 bne $0927 +0963: 6f ret + +; load song +0964: cd 00 mov x,#$00 +0966: 3f 96 10 call $1096 +0969: eb 04 mov y,$04 +096b: c4 04 mov $04,a +096d: 68 f0 cmp a,#$f0 +096f: f0 35 beq $09a6 +0971: 68 f2 cmp a,#$f2 +0973: f0 4c beq $09c1 +0975: 68 fc cmp a,#$fc +0977: f0 4e beq $09c7 +0979: 68 fe cmp a,#$fe +097b: f0 47 beq $09c4 +097d: 68 ff cmp a,#$ff +097f: f0 4d beq $09ce +0981: 68 09 cmp a,#$09 +0983: b0 3b bcs $09c0 +0985: 7e 00 cmp y,$00 +0987: f0 37 beq $09c0 +0989: c4 08 mov $08,a +098b: c5 f4 00 mov $00f4,a +098e: 1c asl a +098f: f0 15 beq $09a6 +0991: 5d mov x,a +0992: f5 eb 1a mov a,$1aeb+x +0995: fd mov y,a +0996: f5 ea 1a mov a,$1aea+x +0999: da 40 movw $40,ya +099b: 3f db 09 call $09db +099e: 3f 33 0a call $0a33 +09a1: e8 ff mov a,#$ff +09a3: c4 46 mov $46,a +09a5: 6f ret + +09a6: e4 1a mov a,$1a +09a8: 04 1c or a,$1c +09aa: 0e 46 00 tset1 $0046 +09ad: e8 00 mov a,#$00 +09af: c4 1a mov $1a,a +09b1: c4 1c mov $1c,a +09b3: c4 4a mov $4a,a +09b5: fd mov y,a +09b6: da 60 movw $60,ya +09b8: da 62 movw $62,ya +09ba: e8 60 mov a,#$60 +09bc: 04 48 or a,$48 +09be: c4 48 mov $48,a +09c0: 6f ret + +09c1: 5f 3e 13 jmp $133e + +09c4: 5f 62 12 jmp $1262 + +09c7: e5 f6 00 mov a,$00f6 +09ca: c5 64 07 mov $0764,a +09cd: 6f ret + +09ce: 3f d8 11 call $11d8 +09d1: c4 04 mov $04,a +09d3: c5 f5 00 mov $00f5,a +09d6: c5 f6 00 mov $00f6,a +09d9: 2f ae bra $0989 +09db: cd 0e mov x,#$0e +09dd: 8f 80 47 mov $47,#$80 +09e0: 3f 07 0a call $0a07 +09e3: 1d dec x +09e4: 1d dec x +09e5: 4b 47 lsr $47 +09e7: d0 f7 bne $09e0 +09e9: e8 00 mov a,#$00 +09eb: c4 5a mov $5a,a +09ed: c4 68 mov $68,a +09ef: c4 54 mov $54,a +09f1: c4 50 mov $50,a +09f3: c4 42 mov $42,a +09f5: c4 5f mov $5f,a +09f7: c5 63 07 mov $0763,a +09fa: c4 46 mov $46,a +09fc: c4 4a mov $4a,a +09fe: fd mov y,a +09ff: da 60 movw $60,ya +0a01: da 62 movw $62,ya +0a03: 8f 20 53 mov $53,#$20 +0a06: 6f ret + +0a07: e8 ff mov a,#$ff +0a09: d5 01 03 mov $0301+x,a +0a0c: d5 10 02 mov $0210+x,a +0a0f: e8 0a mov a,#$0a +0a11: 3f 00 0f call $0f00 +0a14: e8 00 mov a,#$00 +0a16: d5 00 03 mov $0300+x,a +0a19: d5 d0 00 mov $00d0+x,a +0a1c: d5 81 03 mov $0381+x,a +0a1f: d5 f0 02 mov $02f0+x,a +0a22: d5 80 02 mov $0280+x,a +0a25: d5 a0 03 mov $03a0+x,a +0a28: d4 b1 mov $b1+x,a +0a2a: d4 c1 mov $c1+x,a +0a2c: d5 01 02 mov $0201+x,a +0a2f: d5 90 00 mov $0090+x,a +0a32: 6f ret + +0a33: 3f 18 0e call $0e18 +0a36: d0 25 bne $0a5d +0a38: fd mov y,a +0a39: d0 03 bne $0a3e +0a3b: 5f 89 09 jmp $0989 + +0a3e: 68 80 cmp a,#$80 +0a40: f0 06 beq $0a48 +0a42: 68 81 cmp a,#$81 +0a44: d0 06 bne $0a4c +0a46: e8 00 mov a,#$00 +0a48: c4 1b mov $1b,a +0a4a: 2f e7 bra $0a33 +0a4c: 8b 42 dec $42 +0a4e: 10 02 bpl $0a52 +0a50: c4 42 mov $42,a +0a52: 3f 18 0e call $0e18 +0a55: f8 42 mov x,$42 +0a57: f0 da beq $0a33 +0a59: da 40 movw $40,ya +0a5b: 2f d6 bra $0a33 +0a5d: da 16 movw $16,ya +0a5f: 8d 00 mov y,#$00 +0a61: cb 1a mov $1a,y +0a63: e8 01 mov a,#$01 +0a65: c4 47 mov $47,a +0a67: f7 16 mov a,($16)+y +0a69: d6 30 00 mov $0030+y,a +0a6c: fc inc y +0a6d: f7 16 mov a,($16)+y +0a6f: d6 30 00 mov $0030+y,a +0a72: dc dec y +0a73: 5d mov x,a +0a74: f0 15 beq $0a8b +0a76: 09 47 1a or ($1a),($47) +0a79: 09 47 46 or ($46),($47) +0a7c: f6 d0 00 mov a,$00d0+y +0a7f: 5d mov x,a +0a80: d0 09 bne $0a8b +0a82: 6d push y +0a83: dd mov a,y +0a84: 5d mov x,a +0a85: e8 00 mov a,#$00 +0a87: 3f a7 0e call $0ea7 +0a8a: ee pop y +0a8b: cd 00 mov x,#$00 +0a8d: d9 80 mov $80+y,x +0a8f: d9 90 mov $90+y,x +0a91: d9 91 mov $91+y,x +0a93: 3d inc x +0a94: d9 70 mov $70+y,x +0a96: fc inc y +0a97: fc inc y +0a98: e4 47 mov a,$47 +0a9a: 1c asl a +0a9b: f0 06 beq $0aa3 +0a9d: 2d push a +0a9e: 24 1c and a,$1c +0aa0: ae pop a +0aa1: f0 c2 beq $0a65 +0aa3: 6f ret + +0aa4: 09 47 21 or ($21),($47) +0aa7: 6f ret + +0aa8: 3f 3c 0e call $0e3c +0aab: d0 17 bne $0ac4 +0aad: f4 80 mov a,$80+x +0aaf: f0 f3 beq $0aa4 +0ab1: 3f 1b 10 call $101b +0ab4: 9b 80 dec $80+x +0ab6: d0 f0 bne $0aa8 +0ab8: f5 30 02 mov a,$0230+x +0abb: d4 30 mov $30+x,a +0abd: f5 31 02 mov a,$0231+x +0ac0: d4 31 mov $31+x,a +0ac2: 2f e4 bra $0aa8 +0ac4: 30 20 bmi $0ae6 +0ac6: d5 00 02 mov $0200+x,a +0ac9: 3f 3c 0e call $0e3c +0acc: 30 18 bmi $0ae6 +0ace: 2d push a +0acf: 9f xcn a +0ad0: 28 07 and a,#$07 +0ad2: fd mov y,a +0ad3: f6 00 6f mov a,$6f00+y +0ad6: d5 01 02 mov $0201+x,a +0ad9: ae pop a +0ada: 28 0f and a,#$0f +0adc: fd mov y,a +0add: f6 08 6f mov a,$6f08+y +0ae0: d5 10 02 mov $0210+x,a +0ae3: 3f 3c 0e call $0e3c +0ae6: 68 e0 cmp a,#$e0 +0ae8: 90 0c bcc $0af6 +0aea: 68 fb cmp a,#$fb +0aec: f0 05 beq $0af3 +0aee: 3f 26 0e call $0e26 +0af1: 2f b5 bra $0aa8 +0af3: 5f 10 13 jmp $1310 + +0af6: f5 a0 03 mov a,$03a0+x +0af9: 04 1b or a,$1b +0afb: d0 08 bne $0b05 +0afd: e4 23 mov a,$23 +0aff: d0 04 bne $0b05 +0b01: dd mov a,y +0b02: 3f a7 10 call $10a7 +0b05: f5 00 02 mov a,$0200+x +0b08: d4 70 mov $70+x,a +0b0a: fd mov y,a +0b0b: f5 01 02 mov a,$0201+x +0b0e: bc inc a +0b0f: cf mul ya +0b10: dd mov a,y +0b11: d4 71 mov $71+x,a +0b13: 6f ret + +0b14: f4 a0 mov a,$a0+x +0b16: d0 33 bne $0b4b +0b18: e7 30 mov a,($30+x) +0b1a: 68 f9 cmp a,#$f9 +0b1c: d0 2d bne $0b4b +0b1e: 3f 3e 0e call $0e3e +0b21: 3f 3c 0e call $0e3c + +; vcmd f9 - pitch slide +0b24: d4 a1 mov $a1+x,a +0b26: 3f 3c 0e call $0e3c +0b29: d4 a0 mov $a0+x,a +0b2b: 3f 3c 0e call $0e3c +0b2e: 60 clrc +0b2f: 84 50 adc a,$50 +0b31: 95 f0 02 adc a,$02f0+x +0b34: 28 7f and a,#$7f +0b36: d5 80 03 mov $0380+x,a +0b39: 80 setc +0b3a: b5 61 03 sbc a,$0361+x +0b3d: fb a0 mov y,$a0+x +0b3f: 6d push y +0b40: ce pop x +0b41: 3f 4c 0b call $0b4c +0b44: d5 70 03 mov $0370+x,a +0b47: dd mov a,y +0b48: d5 71 03 mov $0371+x,a +0b4b: 6f ret + +0b4c: ed notc +0b4d: 6b 12 ror $12 +0b4f: 10 03 bpl $0b54 +0b51: 48 ff eor a,#$ff +0b53: bc inc a +0b54: 8d 00 mov y,#$00 +0b56: 9e div ya,x +0b57: 2d push a +0b58: e8 00 mov a,#$00 +0b5a: 9e div ya,x +0b5b: ee pop y +0b5c: f8 44 mov x,$44 +0b5e: f3 12 07 bbc7 $12,$0b68 +0b61: da 14 movw $14,ya +0b63: e8 00 mov a,#$00 +0b65: fd mov y,a +0b66: 9a 14 subw ya,$14 +0b68: 6f ret + +0b69: e4 54 mov a,$54 +0b6b: f0 0b beq $0b78 +0b6d: ba 56 movw ya,$56 +0b6f: 7a 52 addw ya,$52 +0b71: 6e 54 02 dbnz $54,$0b76 +0b74: ba 54 movw ya,$54 +0b76: da 52 movw $52,ya +0b78: e4 68 mov a,$68 +0b7a: f0 15 beq $0b91 +0b7c: ba 64 movw ya,$64 +0b7e: 7a 60 addw ya,$60 +0b80: da 60 movw $60,ya +0b82: ba 66 movw ya,$66 +0b84: 7a 62 addw ya,$62 +0b86: 6e 68 06 dbnz $68,$0b8f +0b89: ba 68 movw ya,$68 +0b8b: da 60 movw $60,ya +0b8d: eb 6a mov y,$6a +0b8f: da 62 movw $62,ya +0b91: e4 5a mov a,$5a +0b93: f0 0e beq $0ba3 +0b95: ba 5c movw ya,$5c +0b97: 7a 58 addw ya,$58 +0b99: 6e 5a 02 dbnz $5a,$0b9e +0b9c: ba 5a movw ya,$5a +0b9e: da 58 movw $58,ya +0ba0: 8f ff 5e mov $5e,#$ff +0ba3: 6f ret + +0ba4: f4 30 mov a,$30+x +0ba6: fb 31 mov y,$31+x +0ba8: da 14 movw $14,ya +0baa: 8d 00 mov y,#$00 +0bac: f7 14 mov a,($14)+y +0bae: f0 26 beq $0bd6 +0bb0: 30 07 bmi $0bb9 +0bb2: fc inc y +0bb3: 30 45 bmi $0bfa +0bb5: f7 14 mov a,($14)+y +0bb7: 10 f9 bpl $0bb2 +0bb9: 68 c8 cmp a,#$c8 +0bbb: f0 4b beq $0c08 +0bbd: 68 ef cmp a,#$ef +0bbf: f0 2e beq $0bef +0bc1: 68 e0 cmp a,#$e0 +0bc3: 90 35 bcc $0bfa +0bc5: 6d push y +0bc6: a8 e0 sbc a,#$e0 +0bc8: c4 16 mov $16,a +0bca: 1c asl a +0bcb: 84 16 adc a,$16 +0bcd: fd mov y,a +0bce: ae pop a +0bcf: 80 setc +0bd0: 96 48 0e adc a,$0e48+y +0bd3: fd mov y,a +0bd4: 2f d6 bra $0bac +0bd6: f4 80 mov a,$80+x +0bd8: f0 20 beq $0bfa +0bda: 9c dec a +0bdb: d0 09 bne $0be6 +0bdd: f5 31 02 mov a,$0231+x +0be0: fd mov y,a +0be1: f5 30 02 mov a,$0230+x +0be4: 2f c2 bra $0ba8 +0be6: f5 41 02 mov a,$0241+x +0be9: fd mov y,a +0bea: f5 40 02 mov a,$0240+x +0bed: 2f b9 bra $0ba8 +0bef: fc inc y +0bf0: f7 14 mov a,($14)+y +0bf2: 2d push a +0bf3: fc inc y +0bf4: f7 14 mov a,($14)+y +0bf6: fd mov y,a +0bf7: ae pop a +0bf8: 2f ae bra $0ba8 +0bfa: e4 23 mov a,$23 +0bfc: d0 0a bne $0c08 +0bfe: e4 47 mov a,$47 +0c00: 8d 5c mov y,#$5c +0c02: 09 47 46 or ($46),($47) +0c05: 5f 83 11 jmp $1183 + +0c08: 6f ret + +0c09: f4 a0 mov a,$a0+x +0c0b: f0 2c beq $0c39 +0c0d: f4 a1 mov a,$a1+x +0c0f: f0 04 beq $0c15 +0c11: 9b a1 dec $a1+x +0c13: 2f 24 bra $0c39 +0c15: 09 47 1e or ($1e),($47) +0c18: 9b a0 dec $a0+x +0c1a: d0 0a bne $0c26 +0c1c: e8 00 mov a,#$00 +0c1e: d5 60 03 mov $0360+x,a +0c21: f5 80 03 mov a,$0380+x +0c24: 2f 10 bra $0c36 +0c26: 60 clrc +0c27: f5 60 03 mov a,$0360+x +0c2a: 95 70 03 adc a,$0370+x +0c2d: d5 60 03 mov $0360+x,a +0c30: f5 61 03 mov a,$0361+x +0c33: 95 71 03 adc a,$0371+x +0c36: d5 61 03 mov $0361+x,a +0c39: f4 b1 mov a,$b1+x +0c3b: f0 32 beq $0c6f +0c3d: f5 b0 02 mov a,$02b0+x +0c40: de b0 2a cbne $b0+x,$0c6d +0c43: f5 00 01 mov a,$0100+x +0c46: 75 b1 02 cmp a,$02b1+x +0c49: d0 05 bne $0c50 +0c4b: f5 c1 02 mov a,$02c1+x +0c4e: 2f 0d bra $0c5d +0c50: bc inc a +0c51: d5 00 01 mov $0100+x,a +0c54: 9c dec a +0c55: f0 02 beq $0c59 +0c57: f4 b1 mov a,$b1+x +0c59: 60 clrc +0c5a: 95 c0 02 adc a,$02c0+x +0c5d: d4 b1 mov $b1+x,a +0c5f: f5 a0 02 mov a,$02a0+x +0c62: 60 clrc +0c63: 95 a1 02 adc a,$02a1+x +0c66: d5 a0 02 mov $02a0+x,a +0c69: 09 47 1e or ($1e),($47) +0c6c: 6f ret + +0c6d: bb b0 inc $b0+x +0c6f: 6f ret + +0c70: f4 c1 mov a,$c1+x +0c72: f0 09 beq $0c7d +0c74: f5 e0 02 mov a,$02e0+x +0c77: de c0 03 cbne $c0+x,$0c7d +0c7a: 3f f6 0c call $0cf6 +0c7d: f5 31 03 mov a,$0331+x +0c80: fd mov y,a +0c81: f5 30 03 mov a,$0330+x +0c84: da 10 movw $10,ya +0c86: f4 91 mov a,$91+x +0c88: f0 0a beq $0c94 +0c8a: f5 41 03 mov a,$0341+x +0c8d: fd mov y,a +0c8e: f5 40 03 mov a,$0340+x +0c91: 3f 21 0d call $0d21 +0c94: e4 47 mov a,$47 +0c96: 24 5e and a,$5e +0c98: f0 03 beq $0c9d +0c9a: 3f c5 0d call $0dc5 +0c9d: f5 61 03 mov a,$0361+x +0ca0: c4 11 mov $11,a +0ca2: f5 60 03 mov a,$0360+x +0ca5: c4 10 mov $10,a +0ca7: f4 a0 mov a,$a0+x +0ca9: f0 11 beq $0cbc +0cab: f4 a1 mov a,$a1+x +0cad: d0 0d bne $0cbc +0caf: f5 71 03 mov a,$0371+x +0cb2: fd mov y,a +0cb3: f5 70 03 mov a,$0370+x +0cb6: 3f 21 0d call $0d21 +0cb9: 09 47 1e or ($1e),($47) +0cbc: f4 b1 mov a,$b1+x +0cbe: f0 2f beq $0cef +0cc0: f5 b0 02 mov a,$02b0+x +0cc3: de b0 29 cbne $b0+x,$0cef +0cc6: eb 51 mov y,$51 +0cc8: f5 a1 02 mov a,$02a1+x +0ccb: cf mul ya +0ccc: dd mov a,y +0ccd: 60 clrc +0cce: 95 a0 02 adc a,$02a0+x +0cd1: c4 12 mov $12,a +0cd3: 1c asl a +0cd4: 1c asl a +0cd5: 90 02 bcc $0cd9 +0cd7: 48 ff eor a,#$ff +0cd9: fd mov y,a +0cda: f4 b1 mov a,$b1+x +0cdc: 68 f1 cmp a,#$f1 +0cde: 90 05 bcc $0ce5 +0ce0: 28 0f and a,#$0f +0ce2: cf mul ya +0ce3: 2f 04 bra $0ce9 +0ce5: cf mul ya +0ce6: dd mov a,y +0ce7: 8d 00 mov y,#$00 +0ce9: 3f 3d 0d call $0d3d +0cec: 5f 18 11 jmp $1118 + +0cef: e4 47 mov a,$47 +0cf1: 24 1e and a,$1e +0cf3: d0 f7 bne $0cec +0cf5: 6f ret + +0cf6: eb 51 mov y,$51 +0cf8: f5 d1 02 mov a,$02d1+x +0cfb: cf mul ya +0cfc: dd mov a,y +0cfd: 60 clrc +0cfe: 95 d0 02 adc a,$02d0+x +0d01: 1c asl a +0d02: 90 02 bcc $0d06 +0d04: 48 ff eor a,#$ff +0d06: fb c1 mov y,$c1+x +0d08: cf mul ya +0d09: dd mov a,y +0d0a: 48 ff eor a,#$ff +0d0c: 09 47 5e or ($5e),($47) +0d0f: eb 59 mov y,$59 +0d11: cf mul ya +0d12: f5 10 02 mov a,$0210+x +0d15: cf mul ya +0d16: f5 01 03 mov a,$0301+x +0d19: cf mul ya +0d1a: dd mov a,y +0d1b: cf mul ya +0d1c: dd mov a,y +0d1d: d5 21 03 mov $0321+x,a +0d20: 6f ret + +0d21: e2 13 set7 $13 +0d23: cb 12 mov $12,y +0d25: f3 12 06 bbc7 $12,$0d2e +0d28: da 14 movw $14,ya +0d2a: ba 0e movw ya,$0e +0d2c: 9a 14 subw ya,$14 +0d2e: 6d push y +0d2f: eb 51 mov y,$51 +0d31: cf mul ya +0d32: cb 14 mov $14,y +0d34: 8f 00 15 mov $15,#$00 +0d37: eb 51 mov y,$51 +0d39: ae pop a +0d3a: cf mul ya +0d3b: 7a 14 addw ya,$14 +0d3d: f3 12 06 bbc7 $12,$0d46 +0d40: da 14 movw $14,ya +0d42: ba 0e movw ya,$0e +0d44: 9a 14 subw ya,$14 +0d46: 7a 10 addw ya,$10 +0d48: da 10 movw $10,ya +0d4a: 6f ret + +0d4b: f4 90 mov a,$90+x +0d4d: f0 21 beq $0d70 +0d4f: 9b 90 dec $90+x +0d51: d0 0a bne $0d5d +0d53: e8 00 mov a,#$00 +0d55: d5 00 03 mov $0300+x,a +0d58: f5 20 03 mov a,$0320+x +0d5b: 2f 10 bra $0d6d +0d5d: 60 clrc +0d5e: f5 00 03 mov a,$0300+x +0d61: 95 10 03 adc a,$0310+x +0d64: d5 00 03 mov $0300+x,a +0d67: f5 01 03 mov a,$0301+x +0d6a: 95 11 03 adc a,$0311+x +0d6d: d5 01 03 mov $0301+x,a +0d70: fb c1 mov y,$c1+x +0d72: f0 20 beq $0d94 +0d74: f5 e0 02 mov a,$02e0+x +0d77: de c0 18 cbne $c0+x,$0d92 +0d7a: f5 d0 02 mov a,$02d0+x +0d7d: 10 07 bpl $0d86 +0d7f: fc inc y +0d80: d0 04 bne $0d86 +0d82: e8 80 mov a,#$80 +0d84: 2f 04 bra $0d8a +0d86: 60 clrc +0d87: 95 d1 02 adc a,$02d1+x +0d8a: d5 d0 02 mov $02d0+x,a +0d8d: 3f 01 0d call $0d01 +0d90: 2f 07 bra $0d99 +0d92: bb c0 inc $c0+x +0d94: e8 ff mov a,#$ff +0d96: 3f 0c 0d call $0d0c +0d99: f4 91 mov a,$91+x +0d9b: f0 27 beq $0dc4 +0d9d: 09 47 5e or ($5e),($47) +0da0: 9b 91 dec $91+x +0da2: d0 0d bne $0db1 +0da4: e8 00 mov a,#$00 +0da6: d5 30 03 mov $0330+x,a +0da9: f5 50 03 mov a,$0350+x +0dac: d5 31 03 mov $0331+x,a +0daf: 2f 10 bra $0dc1 +0db1: 60 clrc +0db2: f5 40 03 mov a,$0340+x +0db5: 95 30 03 adc a,$0330+x +0db8: d5 30 03 mov $0330+x,a +0dbb: f5 41 03 mov a,$0341+x +0dbe: 95 31 03 adc a,$0331+x +0dc1: d5 31 03 mov $0331+x,a +0dc4: 6f ret + +0dc5: 7d mov a,x +0dc6: 9f xcn a +0dc7: 5c lsr a +0dc8: c4 12 mov $12,a +0dca: eb 11 mov y,$11 +0dcc: f6 04 0e mov a,$0e04+y +0dcf: 80 setc +0dd0: b6 03 0e sbc a,$0e03+y +0dd3: eb 10 mov y,$10 +0dd5: cf mul ya +0dd6: dd mov a,y +0dd7: eb 11 mov y,$11 +0dd9: 60 clrc +0dda: 96 03 0e adc a,$0e03+y +0ddd: fd mov y,a +0dde: f5 21 03 mov a,$0321+x +0de1: cf mul ya +0de2: f5 51 03 mov a,$0351+x +0de5: 1c asl a +0de6: 13 12 01 bbc0 $12,$0dea +0de9: 1c asl a +0dea: dd mov a,y +0deb: 90 03 bcc $0df0 +0ded: 48 ff eor a,#$ff +0def: bc inc a +0df0: eb 12 mov y,$12 +0df2: 3f 83 11 call $1183 +0df5: 8d 14 mov y,#$14 +0df7: e8 00 mov a,#$00 +0df9: 9a 10 subw ya,$10 +0dfb: da 10 movw $10,ya +0dfd: ab 12 inc $12 +0dff: 33 12 c8 bbc1 $12,$0dca +0e02: 6f ret + +0e03: db $00,$01,$03,$07,$0d,$15,$1e,$29 +0e0b: db $34,$42,$51,$5e,$67,$6e,$73,$77 +0e13: db $7a,$7c,$7d,$7e,$7f + +; increment section pointer +0e18: 8d 00 mov y,#$00 +0e1a: f7 40 mov a,($40)+y +0e1c: 3a 40 incw $40 +0e1e: 2d push a +0e1f: f7 40 mov a,($40)+y +0e21: 3a 40 incw $40 +0e23: fd mov y,a +0e24: ae pop a +0e25: 6f ret + +; dispatch vcmd +0e26: 80 setc +0e27: a8 e0 sbc a,#$e0 +0e29: c4 14 mov $14,a +0e2b: 1c asl a +0e2c: 84 14 adc a,$14 +0e2e: fd mov y,a +0e2f: f6 47 0e mov a,$0e47+y +0e32: 2d push a +0e33: f6 46 0e mov a,$0e46+y +0e36: 2d push a +0e37: f6 48 0e mov a,$0e48+y +0e3a: f0 08 beq $0e44 +0e3c: e7 30 mov a,($30+x) +0e3e: bb 30 inc $30+x +0e40: d0 02 bne $0e44 +0e42: bb 31 inc $31+x +0e44: fd mov y,a +0e45: 6f ret + +; vcmd dispatch table +0e46: db $a7,$0e,$01 ; $0ea7> e0 - set instrument +0e49: db $00,$0f,$01 ; $0f00> e1 - pan +0e4c: db $19,$0f,$02 ; $0f19> e2 - pan fade +0e4f: db $3d,$0f,$03 ; $0f3d> e3 - vibrato on +0e52: db $49,$0f,$00 ; $0f49> e4 - vibrato off +0e55: db $64,$0f,$01 ; $0f64> e5 - master volume +0e58: db $73,$0f,$02 ; $0f73> e6 - master volume fade +0e5b: db $85,$0f,$01 ; $0f85> e7 - tempo +0e5e: db $8a,$0f,$02 ; $0f8a> e8 - tempo fade +0e61: db $9c,$0f,$01 ; $0f9c> e9 - global transpose +0e64: db $9f,$0f,$01 ; $0f9f> ea - per-voice transpose +0e67: db $a3,$0f,$03 ; $0fa3> eb - tremolo on +0e6a: db $af,$0f,$00 ; $0faf> ec - tremolo off +0e6d: db $d0,$0f,$01 ; $0fd0> ed - volume +0e70: db $e6,$0f,$02 ; $0fe6> ee - volume fade +0e73: db $03,$10,$03 ; $1003> ef - call subroutine +0e76: db $54,$0f,$01 ; $0f54> f0 - vibrato fade +0e79: db $b2,$0f,$03 ; $0fb2> f1 - pitch envelope (release) +0e7c: db $b6,$0f,$03 ; $0fb6> f2 - pitch envelope (attack) +0e7f: db $cc,$0f,$00 ; $0fcc> f3 - pitch envelope off +0e82: db $ff,$0f,$01 ; $0fff> f4 - tuning +0e85: db $26,$10,$03 ; $1026> f5 - echo vbits/volume +0e88: db $5a,$10,$00 ; $105a> f6 - disable echo +0e8b: db $61,$10,$03 ; $1061> f7 - echo params +0e8e: db $39,$10,$03 ; $1039> f8 - echo volume fade +0e91: db $24,$0b,$03 ; $0b24> f9 - pitch slide +0e94: db $83,$10,$01 ; $1083> fa - set perc patch base +0e97: db $10,$13,$00 ; $1310> fb +0e9a: db $8a,$10,$00 ; $108a> fc +0e9d: db $8f,$10,$00 ; $108f> fd +0ea0: db $90,$10,$00 ; $1090> fe +0ea3: db $07,$13,$01 ; $1307> ff +0ea6: db $00 + +; vcmd e0 - set instrument +0ea7: d5 d0 00 mov $00d0+x,a +0eaa: fd mov y,a +0eab: 10 06 bpl $0eb3 +0ead: 80 setc +0eae: a8 ca sbc a,#$ca +0eb0: 60 clrc +0eb1: 84 5f adc a,$5f +0eb3: 8d 06 mov y,#$06 +0eb5: cf mul ya +0eb6: da 14 movw $14,ya +0eb8: 60 clrc +0eb9: 98 00 14 adc $14,#$00 +0ebc: 98 6e 15 adc $15,#$6e +0ebf: e4 1f mov a,$1f +0ec1: 24 47 and a,$47 +0ec3: f0 3a beq $0eff +0ec5: 4d push x +0ec6: 7d mov a,x +0ec7: 9f xcn a +0ec8: 5c lsr a +0ec9: 08 04 or a,#$04 +0ecb: 5d mov x,a +0ecc: 8d 00 mov y,#$00 +0ece: f7 14 mov a,($14)+y +0ed0: 10 0e bpl $0ee0 +0ed2: 28 1f and a,#$1f +0ed4: 38 20 48 and $48,#$20 +0ed7: 0e 48 00 tset1 $0048 +0eda: 09 47 49 or ($49),($47) +0edd: dd mov a,y +0ede: 2f 07 bra $0ee7 +0ee0: e4 47 mov a,$47 +0ee2: 4e 49 00 tclr1 $0049 +0ee5: f7 14 mov a,($14)+y +0ee7: c9 f2 00 mov $00f2,x +0eea: c5 f3 00 mov $00f3,a +0eed: 3d inc x +0eee: fc inc y +0eef: ad 04 cmp y,#$04 +0ef1: d0 f2 bne $0ee5 +0ef3: ce pop x +0ef4: f7 14 mov a,($14)+y +0ef6: d5 21 02 mov $0221+x,a +0ef9: fc inc y +0efa: f7 14 mov a,($14)+y +0efc: d5 20 02 mov $0220+x,a +0eff: 6f ret + +; vcmd e1 - pan +0f00: 2d push a +0f01: e5 64 07 mov a,$0764 +0f04: 68 00 cmp a,#$00 +0f06: ae pop a +0f07: f0 02 beq $0f0b +0f09: e8 0a mov a,#$0a +0f0b: d5 51 03 mov $0351+x,a +0f0e: 28 1f and a,#$1f +0f10: d5 31 03 mov $0331+x,a +0f13: e8 00 mov a,#$00 +0f15: d5 30 03 mov $0330+x,a +0f18: 6f ret + +; vcmd e2 - pan fade +0f19: 2d push a +0f1a: e5 64 07 mov a,$0764 +0f1d: 68 00 cmp a,#$00 +0f1f: ae pop a +0f20: f0 02 beq $0f24 +0f22: e8 0a mov a,#$0a +0f24: d4 91 mov $91+x,a +0f26: 2d push a +0f27: 3f 3c 0e call $0e3c +0f2a: d5 50 03 mov $0350+x,a +0f2d: 80 setc +0f2e: b5 31 03 sbc a,$0331+x +0f31: ce pop x +0f32: 3f 4c 0b call $0b4c +0f35: d5 40 03 mov $0340+x,a +0f38: dd mov a,y +0f39: d5 41 03 mov $0341+x,a +0f3c: 6f ret + +; vcmd e3 - vibrato on +0f3d: d5 b0 02 mov $02b0+x,a +0f40: 3f 3c 0e call $0e3c +0f43: d5 a1 02 mov $02a1+x,a +0f46: 3f 3c 0e call $0e3c +; vcmd e4 - vibrato off +0f49: d4 b1 mov $b1+x,a +0f4b: d5 c1 02 mov $02c1+x,a +0f4e: e8 00 mov a,#$00 +0f50: d5 b1 02 mov $02b1+x,a +0f53: 6f ret + +; vcmd f0 - vibrato fade +0f54: d5 b1 02 mov $02b1+x,a +0f57: 2d push a +0f58: 8d 00 mov y,#$00 +0f5a: f4 b1 mov a,$b1+x +0f5c: ce pop x +0f5d: 9e div ya,x +0f5e: f8 44 mov x,$44 +0f60: d5 c0 02 mov $02c0+x,a +0f63: 6f ret + +; vcmd e5 - master volume +0f64: e5 63 07 mov a,$0763 +0f67: 68 00 cmp a,#$00 +0f69: d0 07 bne $0f72 +0f6b: e8 00 mov a,#$00 +0f6d: c5 f4 00 mov $00f4,a +0f70: da 58 movw $58,ya +0f72: 6f ret + +; vcmd e6 - master volume fade +0f73: c4 5a mov $5a,a +0f75: 3f 3c 0e call $0e3c +0f78: c4 5b mov $5b,a +0f7a: 80 setc +0f7b: a4 59 sbc a,$59 +0f7d: f8 5a mov x,$5a +0f7f: 3f 4c 0b call $0b4c +0f82: da 5c movw $5c,ya +0f84: 6f ret + +; vcmd e7 - tempo +0f85: e8 00 mov a,#$00 +0f87: da 52 movw $52,ya +0f89: 6f ret + +; vcmd e8 - tempo fade +0f8a: c4 54 mov $54,a +0f8c: 3f 3c 0e call $0e3c +0f8f: c4 55 mov $55,a +0f91: 80 setc +0f92: a4 53 sbc a,$53 +0f94: f8 54 mov x,$54 +0f96: 3f 4c 0b call $0b4c +0f99: da 56 movw $56,ya +0f9b: 6f ret + +; vcmd e9 - global transpose +0f9c: c4 50 mov $50,a +0f9e: 6f ret + +; vcmd ea - per-voice transpose +0f9f: d5 f0 02 mov $02f0+x,a +0fa2: 6f ret + +; vcmd eb - tremolo on +0fa3: d5 e0 02 mov $02e0+x,a +0fa6: 3f 3c 0e call $0e3c +0fa9: d5 d1 02 mov $02d1+x,a +0fac: 3f 3c 0e call $0e3c +; vcmd ec - tremolo off +0faf: d4 c1 mov $c1+x,a +0fb1: 6f ret + +; vcmd f1 - pitch envelope (release) +0fb2: e8 01 mov a,#$01 +0fb4: 2f 02 bra $0fb8 +; vcmd f2 - pitch envelope (attack) +0fb6: e8 00 mov a,#$00 +0fb8: d5 90 02 mov $0290+x,a +0fbb: dd mov a,y +0fbc: d5 81 02 mov $0281+x,a +0fbf: 3f 3c 0e call $0e3c +0fc2: d5 80 02 mov $0280+x,a +0fc5: 3f 3c 0e call $0e3c +0fc8: d5 91 02 mov $0291+x,a +0fcb: 6f ret + +; vcmd f3 - pitch envelope off +0fcc: d5 80 02 mov $0280+x,a +0fcf: 6f ret + +; vcmd ed - volume +0fd0: 2d push a +0fd1: 7d mov a,x +0fd2: 68 0b cmp a,#$0b +0fd4: ae pop a +0fd5: b0 06 bcs $0fdd +0fd7: 6d push y +0fd8: 8d d0 mov y,#$d0 +0fda: cf mul ya +0fdb: dd mov a,y +0fdc: ee pop y +0fdd: d5 01 03 mov $0301+x,a +0fe0: e8 00 mov a,#$00 +0fe2: d5 00 03 mov $0300+x,a +0fe5: 6f ret + +; vcmd ee - volume fade +0fe6: d4 90 mov $90+x,a +0fe8: 2d push a +0fe9: 3f 3c 0e call $0e3c +0fec: d5 20 03 mov $0320+x,a +0fef: 80 setc +0ff0: b5 01 03 sbc a,$0301+x +0ff3: ce pop x +0ff4: 3f 4c 0b call $0b4c +0ff7: d5 10 03 mov $0310+x,a +0ffa: dd mov a,y +0ffb: d5 11 03 mov $0311+x,a +0ffe: 6f ret + +; vcmd f4 - tuning +0fff: d5 81 03 mov $0381+x,a +1002: 6f ret + +; vcmd ef - call subroutine +1003: d5 40 02 mov $0240+x,a +1006: 3f 3c 0e call $0e3c +1009: d5 41 02 mov $0241+x,a +100c: 3f 3c 0e call $0e3c +100f: d4 80 mov $80+x,a +1011: f4 30 mov a,$30+x +1013: d5 30 02 mov $0230+x,a +1016: f4 31 mov a,$31+x +1018: d5 31 02 mov $0231+x,a +101b: f5 40 02 mov a,$0240+x +101e: d4 30 mov $30+x,a +1020: f5 41 02 mov a,$0241+x +1023: d4 31 mov $31+x,a +1025: 6f ret + +; vcmd f5 - echo vbits/volume +1026: c4 4a mov $4a,a +1028: 3f 3c 0e call $0e3c +102b: e8 00 mov a,#$00 +102d: da 60 movw $60,ya +102f: 3f 3c 0e call $0e3c +1032: e8 00 mov a,#$00 +1034: da 62 movw $62,ya +1036: b2 48 clr5 $48 +1038: 6f ret + +; vcmd f8 - echo volume fade +1039: c4 68 mov $68,a +103b: 3f 3c 0e call $0e3c +103e: c4 69 mov $69,a +1040: 80 setc +1041: a4 61 sbc a,$61 +1043: f8 68 mov x,$68 +1045: 3f 4c 0b call $0b4c +1048: da 64 movw $64,ya +104a: 3f 3c 0e call $0e3c +104d: c4 6a mov $6a,a +104f: 80 setc +1050: a4 62 sbc a,$62 +1052: f8 68 mov x,$68 +1054: 3f 4c 0b call $0b4c +1057: da 66 movw $66,ya +1059: 6f ret + +; vcmd f6 - disable echo +105a: da 60 movw $60,ya +105c: da 62 movw $62,ya +105e: a2 48 set5 $48 +1060: 6f ret + +; vcmd f7 - set echo params +1061: 3f 92 11 call $1192 +1064: 3f 3c 0e call $0e3c +1067: c4 4e mov $4e,a +1069: 3f 3c 0e call $0e3c +106c: 8d 08 mov y,#$08 +106e: cf mul ya +106f: 5d mov x,a +1070: 8d 0f mov y,#$0f +1072: f5 78 17 mov a,$1778+x +1075: 3f 8b 11 call $118b +1078: 3d inc x +1079: dd mov a,y +107a: 60 clrc +107b: 88 10 adc a,#$10 +107d: fd mov y,a +107e: 10 f2 bpl $1072 +1080: f8 44 mov x,$44 +1082: 6f ret + +; vcmd fa - set perc patch base +1083: c4 5f mov $5f,a +1085: 6f ret + +1086: 3f 3e 0e call $0e3e +1089: 6f ret + +; vcmd fc +108a: bc inc a +108b: d5 a0 03 mov $03a0+x,a +108e: 6f ret + +; vcmd fd +108f: bc inc a +; vcmd fe +1090: 0f brk +1091: c4 1b mov $1b,a +1093: 5f a6 09 jmp $09a6 + +1096: f5 f4 00 mov a,$00f4+x +1099: 75 f4 00 cmp a,$00f4+x +109c: d0 f8 bne $1096 +109e: d4 00 mov $00+x,a +10a0: 6f ret + +10a1: f0 03 beq $10a6 +10a3: 09 47 46 or ($46),($47) +10a6: 6f ret + +10a7: ad ca cmp y,#$ca +10a9: 90 05 bcc $10b0 +10ab: 3f a7 0e call $0ea7 +10ae: 8d a4 mov y,#$a4 +10b0: ad c8 cmp y,#$c8 +10b2: b0 ed bcs $10a1 +10b4: e4 1f mov a,$1f +10b6: 24 47 and a,$47 +10b8: f0 e6 beq $10a0 +10ba: dd mov a,y +10bb: 28 7f and a,#$7f +10bd: 60 clrc +10be: 84 50 adc a,$50 +10c0: 60 clrc +10c1: 95 f0 02 adc a,$02f0+x +10c4: d5 61 03 mov $0361+x,a +10c7: f5 81 03 mov a,$0381+x +10ca: d5 60 03 mov $0360+x,a +10cd: f5 b1 02 mov a,$02b1+x +10d0: 5c lsr a +10d1: e8 00 mov a,#$00 +10d3: 7c ror a +10d4: d5 a0 02 mov $02a0+x,a +10d7: e8 00 mov a,#$00 +10d9: d4 b0 mov $b0+x,a +10db: d5 00 01 mov $0100+x,a +10de: d5 d0 02 mov $02d0+x,a +10e1: d4 c0 mov $c0+x,a +10e3: 09 47 5e or ($5e),($47) +10e6: 09 47 45 or ($45),($47) +10e9: f5 80 02 mov a,$0280+x +10ec: d4 a0 mov $a0+x,a +10ee: f0 1e beq $110e +10f0: f5 81 02 mov a,$0281+x +10f3: d4 a1 mov $a1+x,a +10f5: f5 90 02 mov a,$0290+x +10f8: d0 0a bne $1104 +10fa: f5 61 03 mov a,$0361+x +10fd: 80 setc +10fe: b5 91 02 sbc a,$0291+x +1101: d5 61 03 mov $0361+x,a +1104: f5 91 02 mov a,$0291+x +1107: 60 clrc +1108: 95 61 03 adc a,$0361+x +110b: 3f 34 0b call $0b34 +110e: f5 61 03 mov a,$0361+x +1111: c4 11 mov $11,a +1113: f5 60 03 mov a,$0360+x +1116: c4 10 mov $10,a +1118: 8d 00 mov y,#$00 +111a: e4 11 mov a,$11 +111c: 80 setc +111d: a8 34 sbc a,#$34 +111f: b0 09 bcs $112a +1121: e4 11 mov a,$11 +1123: 80 setc +1124: a8 13 sbc a,#$13 +1126: b0 06 bcs $112e +1128: dc dec y +1129: 1c asl a +112a: 7a 10 addw ya,$10 +112c: da 10 movw $10,ya +112e: e4 11 mov a,$11 +1130: 1c asl a +1131: fd mov y,a +1132: f6 c6 16 mov a,$16c6+y +1135: c4 15 mov $15,a +1137: f6 c5 16 mov a,$16c5+y +113a: c4 14 mov $14,a +113c: f6 c8 16 mov a,$16c8+y +113f: 2d push a +1140: f6 c7 16 mov a,$16c7+y +1143: ee pop y +1144: 9a 14 subw ya,$14 +1146: eb 10 mov y,$10 +1148: cf mul ya +1149: dd mov a,y +114a: 8d 00 mov y,#$00 +114c: 7a 14 addw ya,$14 +114e: da 14 movw $14,ya +1150: f5 20 02 mov a,$0220+x +1153: eb 15 mov y,$15 +1155: cf mul ya +1156: da 16 movw $16,ya +1158: f5 20 02 mov a,$0220+x +115b: eb 14 mov y,$14 +115d: cf mul ya +115e: 6d push y +115f: f5 21 02 mov a,$0221+x +1162: eb 14 mov y,$14 +1164: cf mul ya +1165: 7a 16 addw ya,$16 +1167: da 16 movw $16,ya +1169: f5 21 02 mov a,$0221+x +116c: eb 15 mov y,$15 +116e: cf mul ya +116f: fd mov y,a +1170: ae pop a +1171: 7a 16 addw ya,$16 +1173: da 16 movw $16,ya +1175: 7d mov a,x +1176: 9f xcn a +1177: 5c lsr a +1178: 08 02 or a,#$02 +117a: fd mov y,a +117b: e4 16 mov a,$16 +117d: 3f 83 11 call $1183 +1180: fc inc y +1181: e4 17 mov a,$17 +1183: 2d push a +1184: e4 47 mov a,$47 +1186: 24 1f and a,$1f +1188: ae pop a +1189: f0 06 beq $1191 +118b: cc f2 00 mov $00f2,y +118e: c5 f3 00 mov $00f3,a +1191: 6f ret + +1192: c4 4d mov $4d,a +1194: 8d 7d mov y,#$7d +1196: cc f2 00 mov $00f2,y +1199: e5 f3 00 mov a,$00f3 +119c: 64 4d cmp a,$4d +119e: f0 2b beq $11cb +11a0: 28 0f and a,#$0f +11a2: 48 ff eor a,#$ff +11a4: f3 4c 03 bbc7 $4c,$11aa +11a7: 60 clrc +11a8: 84 4c adc a,$4c +11aa: c4 4c mov $4c,a +11ac: 8d 04 mov y,#$04 +11ae: f6 97 17 mov a,$1797+y +11b1: c5 f2 00 mov $00f2,a +11b4: e8 00 mov a,#$00 +11b6: c5 f3 00 mov $00f3,a +11b9: fe f3 dbnz y,$11ae +11bb: e4 48 mov a,$48 +11bd: 08 20 or a,#$20 +11bf: 8d 6c mov y,#$6c +11c1: 3f 8b 11 call $118b +11c4: e4 4d mov a,$4d +11c6: 8d 7d mov y,#$7d +11c8: 3f 8b 11 call $118b +11cb: 1c asl a +11cc: 1c asl a +11cd: 1c asl a +11ce: 48 ff eor a,#$ff +11d0: 80 setc +11d1: 88 ff adc a,#$ff +11d3: 8d 6d mov y,#$6d +11d5: 5f 8b 11 jmp $118b + +11d8: e8 aa mov a,#$aa +11da: c5 f4 00 mov $00f4,a +11dd: e8 bb mov a,#$bb +11df: c5 f5 00 mov $00f5,a +11e2: e5 f4 00 mov a,$00f4 +11e5: 68 cc cmp a,#$cc +11e7: d0 f9 bne $11e2 +11e9: 2f 20 bra $120b +11eb: ec f4 00 mov y,$00f4 +11ee: d0 fb bne $11eb +11f0: 5e f4 00 cmp y,$00f4 +11f3: d0 0f bne $1204 +11f5: e5 f5 00 mov a,$00f5 +11f8: cc f4 00 mov $00f4,y +11fb: d7 14 mov ($14)+y,a +11fd: fc inc y +11fe: d0 f0 bne $11f0 +1200: ab 15 inc $15 +1202: 2f ec bra $11f0 +1204: 10 ea bpl $11f0 +1206: 5e f4 00 cmp y,$00f4 +1209: 10 e5 bpl $11f0 +120b: e5 f6 00 mov a,$00f6 +120e: ec f7 00 mov y,$00f7 +1211: da 14 movw $14,ya +1213: ec f4 00 mov y,$00f4 +1216: e5 f5 00 mov a,$00f5 +1219: cc f4 00 mov $00f4,y +121c: d0 cd bne $11eb +121e: cd 31 mov x,#$31 +1220: c9 f1 00 mov $00f1,x +1223: 6f ret + +1224: e8 f0 mov a,#$f0 +1226: c5 f1 00 mov $00f1,a +1229: e8 00 mov a,#$00 +122b: 5d mov x,a +122c: af mov (x)+,a +122d: c8 e8 cmp x,#$e8 +122f: d0 fb bne $122c +1231: bc inc a +1232: 3f 92 11 call $1192 +1235: a2 48 set5 $48 +1237: e8 7f mov a,#$7f +1239: 8d 0c mov y,#$0c +123b: 3f 8b 11 call $118b +123e: 8d 1c mov y,#$1c +1240: 3f 8b 11 call $118b +1243: e8 6c mov a,#$6c +1245: 8d 5d mov y,#$5d +1247: 3f 8b 11 call $118b +124a: e8 10 mov a,#$10 +124c: c5 fa 00 mov $00fa,a +124f: c4 53 mov $53,a +1251: e8 01 mov a,#$01 +1253: c5 f1 00 mov $00f1,a +1256: 9c dec a +1257: c5 f5 00 mov $00f5,a +125a: c5 f6 00 mov $00f6,a +125d: c5 f7 00 mov $00f7,a +1260: 6f ret + +1261: 00 nop +1262: 4d push x +1263: 8f 00 22 mov $22,#$00 +1266: e8 00 mov a,#$00 +1268: c5 62 07 mov $0762,a +126b: cd 02 mov x,#$02 +126d: 3f 96 10 call $1096 +1270: ce pop x +1271: e4 02 mov a,$02 +1273: f0 08 beq $127d +1275: 65 61 12 cmp a,$1261 +1278: d0 03 bne $127d +127a: 5f 00 13 jmp $1300 + +127d: c5 61 12 mov $1261,a +1280: 28 fe and a,#$fe +1282: f0 7d beq $1301 +1284: c4 24 mov $24,a +1286: 5c lsr a +1287: 60 clrc +1288: 84 24 adc a,$24 +128a: 5d mov x,a +128b: f5 ac 17 mov a,$17ac+x +128e: fd mov y,a +128f: f5 ad 17 mov a,$17ad+x +1292: 2d push a +1293: e4 1c mov a,$1c +1295: 3c rol a +1296: 90 19 bcc $12b1 +1298: 3c rol a +1299: 90 23 bcc $12be +129b: c5 62 07 mov $0762,a +129e: f5 ae 17 mov a,$17ae+x +12a1: 9f xcn a +12a2: 28 0f and a,#$0f +12a4: 65 61 07 cmp a,$0761 +12a7: b0 08 bcs $12b1 +12a9: 65 60 07 cmp a,$0760 +12ac: b0 10 bcs $12be +12ae: ae pop a +12af: 2f 4f bra $1300 +12b1: 8f 01 22 mov $22,#$01 +12b4: f5 ae 17 mov a,$17ae+x +12b7: 28 0f and a,#$0f +12b9: c5 61 07 mov $0761,a +12bc: 2f 08 bra $12c6 +12be: f5 ae 17 mov a,$17ae+x +12c1: 28 0f and a,#$0f +12c3: c5 60 07 mov $0760,a +12c6: ae pop a +12c7: 2d push a +12c8: e4 22 mov a,$22 +12ca: 28 01 and a,#$01 +12cc: 5d mov x,a +12cd: 60 clrc +12ce: bc inc a +12cf: 7c ror a +12d0: 7c ror a +12d1: 7c ror a +12d2: 04 1c or a,$1c +12d4: c4 1c mov $1c,a +12d6: e5 61 12 mov a,$1261 +12d9: c5 f5 00 mov $00f5,a +12dc: 7d mov a,x +12dd: 60 clrc +12de: 88 06 adc a,#$06 +12e0: 1c asl a +12e1: 5d mov x,a +12e2: e5 62 07 mov a,$0762 +12e5: d0 03 bne $12ea +12e7: 3f 8d 13 call $138d +12ea: ae pop a +12eb: d4 31 mov $31+x,a +12ed: dd mov a,y +12ee: d4 30 mov $30+x,a +12f0: e8 01 mov a,#$01 +12f2: d5 70 00 mov $0070+x,a +12f5: e8 ff mov a,#$ff +12f7: d5 90 03 mov $0390+x,a +12fa: d5 91 03 mov $0391+x,a +12fd: 5f 07 0a jmp $0a07 + +1300: 6f ret + +1301: e4 1c mov a,$1c +1303: f0 fb beq $1300 +1305: 2f 47 bra $134e +; vcmd ff +1307: d5 90 03 mov $0390+x,a +130a: e8 00 mov a,#$00 +130c: d5 91 03 mov $0391+x,a +130f: 6f ret + +; vcmd fb +1310: e5 0f 18 mov a,$180f +1313: d4 30 mov $30+x,a +1315: e5 10 18 mov a,$1810 +1318: d4 31 mov $31+x,a +131a: 4d push x +131b: 7d mov a,x +131c: 5c lsr a +131d: 80 setc +131e: a8 06 sbc a,#$06 +1320: 5d mov x,a +1321: e8 00 mov a,#$00 +1323: c5 f5 00 mov $00f5,a +1326: ce pop x +1327: e4 47 mov a,$47 +1329: 48 ff eor a,#$ff +132b: 24 1c and a,$1c +132d: c4 1c mov $1c,a +132f: 09 47 46 or ($46),($47) +1332: 3f 07 0a call $0a07 +1335: 3f 5b 14 call $145b +1338: f4 d0 mov a,$d0+x +133a: 3f a7 0e call $0ea7 +133d: 6f ret + +133e: e8 01 mov a,#$01 +1340: c5 63 07 mov $0763,a +1343: e5 f5 00 mov a,$00f5 +1346: c4 5a mov $5a,a +1348: e5 f6 00 mov a,$00f6 +134b: 5f 78 0f jmp $0f78 + +134e: cd 0c mov x,#$0c +1350: e8 40 mov a,#$40 +1352: c4 47 mov $47,a +1354: 24 1c and a,$1c +1356: f0 2d beq $1385 +1358: e5 0f 18 mov a,$180f +135b: d4 30 mov $30+x,a +135d: e5 10 18 mov a,$1810 +1360: d4 31 mov $31+x,a +1362: 4d push x +1363: 7d mov a,x +1364: 5c lsr a +1365: 80 setc +1366: a8 06 sbc a,#$06 +1368: 5d mov x,a +1369: e8 00 mov a,#$00 +136b: c5 f5 00 mov $00f5,a +136e: ce pop x +136f: e4 47 mov a,$47 +1371: 48 ff eor a,#$ff +1373: 24 1c and a,$1c +1375: c4 1c mov $1c,a +1377: 09 47 46 or ($46),($47) +137a: 3f 07 0a call $0a07 +137d: 3f 5b 14 call $145b +1380: f4 d0 mov a,$d0+x +1382: 3f a7 0e call $0ea7 +1385: 3d inc x +1386: 3d inc x +1387: e4 47 mov a,$47 +1389: 1c asl a +138a: d0 c6 bne $1352 +138c: 6f ret + +138d: 3f 96 13 call $1396 +1390: 3d inc x +1391: 3f 96 13 call $1396 +1394: 1d dec x +1395: 6f ret + +1396: f4 70 mov a,$70+x +1398: d5 20 01 mov $0120+x,a +139b: f4 80 mov a,$80+x +139d: d5 30 01 mov $0130+x,a +13a0: f4 90 mov a,$90+x +13a2: d5 40 01 mov $0140+x,a +13a5: f4 a0 mov a,$a0+x +13a7: d5 50 01 mov $0150+x,a +13aa: f4 b0 mov a,$b0+x +13ac: d5 60 01 mov $0160+x,a +13af: f4 c0 mov a,$c0+x +13b1: d5 70 01 mov $0170+x,a +13b4: f4 d0 mov a,$d0+x +13b6: d5 80 01 mov $0180+x,a +13b9: f5 00 01 mov a,$0100+x +13bc: d5 90 01 mov $0190+x,a +13bf: f5 10 01 mov a,$0110+x +13c2: d5 a0 01 mov $01a0+x,a +13c5: f4 30 mov a,$30+x +13c7: d5 b0 03 mov $03b0+x,a +13ca: f5 00 02 mov a,$0200+x +13cd: d5 c0 03 mov $03c0+x,a +13d0: f5 10 02 mov a,$0210+x +13d3: d5 d0 03 mov $03d0+x,a +13d6: f5 20 02 mov a,$0220+x +13d9: d5 e0 03 mov $03e0+x,a +13dc: f5 30 02 mov a,$0230+x +13df: d5 f0 03 mov $03f0+x,a +13e2: f5 40 02 mov a,$0240+x +13e5: d5 00 04 mov $0400+x,a +13e8: f5 80 02 mov a,$0280+x +13eb: d5 10 04 mov $0410+x,a +13ee: f5 90 02 mov a,$0290+x +13f1: d5 20 04 mov $0420+x,a +13f4: f5 a0 02 mov a,$02a0+x +13f7: d5 30 04 mov $0430+x,a +13fa: f5 b0 02 mov a,$02b0+x +13fd: d5 40 04 mov $0440+x,a +1400: f5 c0 02 mov a,$02c0+x +1403: d5 50 04 mov $0450+x,a +1406: f5 d0 02 mov a,$02d0+x +1409: d5 60 04 mov $0460+x,a +140c: f5 e0 02 mov a,$02e0+x +140f: d5 70 04 mov $0470+x,a +1412: f5 f0 02 mov a,$02f0+x +1415: d5 80 04 mov $0480+x,a +1418: f5 00 03 mov a,$0300+x +141b: d5 90 04 mov $0490+x,a +141e: f5 10 03 mov a,$0310+x +1421: d5 a0 04 mov $04a0+x,a +1424: f5 20 03 mov a,$0320+x +1427: d5 b0 04 mov $04b0+x,a +142a: f5 30 03 mov a,$0330+x +142d: d5 c0 04 mov $04c0+x,a +1430: f5 40 03 mov a,$0340+x +1433: d5 d0 04 mov $04d0+x,a +1436: f5 50 03 mov a,$0350+x +1439: d5 e0 04 mov $04e0+x,a +143c: f5 60 03 mov a,$0360+x +143f: d5 f0 04 mov $04f0+x,a +1442: f5 70 03 mov a,$0370+x +1445: d5 00 05 mov $0500+x,a +1448: f5 80 03 mov a,$0380+x +144b: d5 10 05 mov $0510+x,a +144e: f5 90 03 mov a,$0390+x +1451: d5 20 05 mov $0520+x,a +1454: f5 a0 03 mov a,$03a0+x +1457: d5 30 05 mov $0530+x,a +145a: 6f ret + +145b: 3f 64 14 call $1464 +145e: 3d inc x +145f: 3f 64 14 call $1464 +1462: 1d dec x +1463: 6f ret + +1464: f5 20 01 mov a,$0120+x +1467: d4 70 mov $70+x,a +1469: f5 30 01 mov a,$0130+x +146c: d4 80 mov $80+x,a +146e: f5 40 01 mov a,$0140+x +1471: d4 90 mov $90+x,a +1473: f5 50 01 mov a,$0150+x +1476: d4 a0 mov $a0+x,a +1478: f5 60 01 mov a,$0160+x +147b: d4 b0 mov $b0+x,a +147d: f5 70 01 mov a,$0170+x +1480: d4 c0 mov $c0+x,a +1482: f5 80 01 mov a,$0180+x +1485: d4 d0 mov $d0+x,a +1487: f5 90 01 mov a,$0190+x +148a: d5 00 01 mov $0100+x,a +148d: f5 a0 01 mov a,$01a0+x +1490: d5 10 01 mov $0110+x,a +1493: f5 b0 03 mov a,$03b0+x +1496: d4 30 mov $30+x,a +1498: f5 c0 03 mov a,$03c0+x +149b: d5 00 02 mov $0200+x,a +149e: f5 d0 03 mov a,$03d0+x +14a1: d5 10 02 mov $0210+x,a +14a4: f5 e0 03 mov a,$03e0+x +14a7: d5 20 02 mov $0220+x,a +14aa: f5 f0 03 mov a,$03f0+x +14ad: d5 30 02 mov $0230+x,a +14b0: f5 00 04 mov a,$0400+x +14b3: d5 40 02 mov $0240+x,a +14b6: f5 10 04 mov a,$0410+x +14b9: d5 80 02 mov $0280+x,a +14bc: f5 20 04 mov a,$0420+x +14bf: d5 90 02 mov $0290+x,a +14c2: f5 30 04 mov a,$0430+x +14c5: d5 a0 02 mov $02a0+x,a +14c8: f5 40 04 mov a,$0440+x +14cb: d5 b0 02 mov $02b0+x,a +14ce: f5 50 04 mov a,$0450+x +14d1: d5 c0 02 mov $02c0+x,a +14d4: f5 60 04 mov a,$0460+x +14d7: d5 d0 02 mov $02d0+x,a +14da: f5 70 04 mov a,$0470+x +14dd: d5 e0 02 mov $02e0+x,a +14e0: f5 80 04 mov a,$0480+x +14e3: d5 f0 02 mov $02f0+x,a +14e6: f5 90 04 mov a,$0490+x +14e9: d5 00 03 mov $0300+x,a +14ec: f5 a0 04 mov a,$04a0+x +14ef: d5 10 03 mov $0310+x,a +14f2: f5 b0 04 mov a,$04b0+x +14f5: d5 20 03 mov $0320+x,a +14f8: f5 c0 04 mov a,$04c0+x +14fb: d5 30 03 mov $0330+x,a +14fe: f5 d0 04 mov a,$04d0+x +1501: d5 40 03 mov $0340+x,a +1504: f5 e0 04 mov a,$04e0+x +1507: d5 50 03 mov $0350+x,a +150a: f5 f0 04 mov a,$04f0+x +150d: d5 60 03 mov $0360+x,a +1510: f5 00 05 mov a,$0500+x +1513: d5 70 03 mov $0370+x,a +1516: f5 10 05 mov a,$0510+x +1519: d5 80 03 mov $0380+x,a +151c: f5 20 05 mov a,$0520+x +151f: d5 90 03 mov $0390+x,a +1522: f5 30 05 mov a,$0530+x +1525: d5 a0 03 mov $03a0+x,a +1528: 6f ret + +1529: 3f 32 15 call $1532 +152c: 3d inc x +152d: 3f 32 15 call $1532 +1530: 1d dec x +1531: 6f ret + +1532: f4 70 mov a,$70+x +1534: d5 40 05 mov $0540+x,a +1537: f4 80 mov a,$80+x +1539: d5 50 05 mov $0550+x,a +153c: f4 90 mov a,$90+x +153e: d5 60 05 mov $0560+x,a +1541: f4 a0 mov a,$a0+x +1543: d5 70 05 mov $0570+x,a +1546: f4 b0 mov a,$b0+x +1548: d5 80 05 mov $0580+x,a +154b: f4 c0 mov a,$c0+x +154d: d5 90 05 mov $0590+x,a +1550: f4 d0 mov a,$d0+x +1552: d5 a0 05 mov $05a0+x,a +1555: f5 00 01 mov a,$0100+x +1558: d5 b0 05 mov $05b0+x,a +155b: f5 10 01 mov a,$0110+x +155e: d5 c0 05 mov $05c0+x,a +1561: f4 30 mov a,$30+x +1563: d5 d0 05 mov $05d0+x,a +1566: f5 00 02 mov a,$0200+x +1569: d5 e0 05 mov $05e0+x,a +156c: f5 10 02 mov a,$0210+x +156f: d5 f0 05 mov $05f0+x,a +1572: f5 20 02 mov a,$0220+x +1575: d5 00 06 mov $0600+x,a +1578: f5 30 02 mov a,$0230+x +157b: d5 10 06 mov $0610+x,a +157e: f5 40 02 mov a,$0240+x +1581: d5 20 06 mov $0620+x,a +1584: f5 80 02 mov a,$0280+x +1587: d5 30 06 mov $0630+x,a +158a: f5 90 02 mov a,$0290+x +158d: d5 40 06 mov $0640+x,a +1590: f5 a0 02 mov a,$02a0+x +1593: d5 50 06 mov $0650+x,a +1596: f5 b0 02 mov a,$02b0+x +1599: d5 60 06 mov $0660+x,a +159c: f5 c0 02 mov a,$02c0+x +159f: d5 70 06 mov $0670+x,a +15a2: f5 d0 02 mov a,$02d0+x +15a5: d5 80 06 mov $0680+x,a +15a8: f5 e0 02 mov a,$02e0+x +15ab: d5 90 06 mov $0690+x,a +15ae: f5 f0 02 mov a,$02f0+x +15b1: d5 a0 06 mov $06a0+x,a +15b4: f5 00 03 mov a,$0300+x +15b7: d5 b0 06 mov $06b0+x,a +15ba: f5 10 03 mov a,$0310+x +15bd: d5 c0 06 mov $06c0+x,a +15c0: f5 20 03 mov a,$0320+x +15c3: d5 d0 06 mov $06d0+x,a +15c6: f5 30 03 mov a,$0330+x +15c9: d5 e0 06 mov $06e0+x,a +15cc: f5 40 03 mov a,$0340+x +15cf: d5 f0 06 mov $06f0+x,a +15d2: f5 50 03 mov a,$0350+x +15d5: d5 00 07 mov $0700+x,a +15d8: f5 60 03 mov a,$0360+x +15db: d5 10 07 mov $0710+x,a +15de: f5 70 03 mov a,$0370+x +15e1: d5 20 07 mov $0720+x,a +15e4: f5 80 03 mov a,$0380+x +15e7: d5 30 07 mov $0730+x,a +15ea: f5 90 03 mov a,$0390+x +15ed: d5 40 07 mov $0740+x,a +15f0: f5 a0 03 mov a,$03a0+x +15f3: d5 50 07 mov $0750+x,a +15f6: 6f ret + +15f7: 3f 00 16 call $1600 +15fa: 3d inc x +15fb: 3f 00 16 call $1600 +15fe: 1d dec x +15ff: 6f ret + +1600: f5 40 05 mov a,$0540+x +1603: d4 70 mov $70+x,a +1605: f5 50 05 mov a,$0550+x +1608: d4 80 mov $80+x,a +160a: f5 60 05 mov a,$0560+x +160d: d4 90 mov $90+x,a +160f: f5 70 05 mov a,$0570+x +1612: d4 a0 mov $a0+x,a +1614: f5 80 05 mov a,$0580+x +1617: d4 b0 mov $b0+x,a +1619: f5 90 05 mov a,$0590+x +161c: d4 c0 mov $c0+x,a +161e: f5 a0 05 mov a,$05a0+x +1621: d4 d0 mov $d0+x,a +1623: f5 b0 05 mov a,$05b0+x +1626: d5 00 01 mov $0100+x,a +1629: f5 c0 05 mov a,$05c0+x +162c: d5 10 01 mov $0110+x,a +162f: f5 d0 05 mov a,$05d0+x +1632: d4 30 mov $30+x,a +1634: f5 e0 05 mov a,$05e0+x +1637: d5 00 02 mov $0200+x,a +163a: f5 f0 05 mov a,$05f0+x +163d: d5 10 02 mov $0210+x,a +1640: f5 00 06 mov a,$0600+x +1643: d5 20 02 mov $0220+x,a +1646: f5 10 06 mov a,$0610+x +1649: d5 30 02 mov $0230+x,a +164c: f5 20 06 mov a,$0620+x +164f: d5 40 02 mov $0240+x,a +1652: f5 30 06 mov a,$0630+x +1655: d5 80 02 mov $0280+x,a +1658: f5 40 06 mov a,$0640+x +165b: d5 90 02 mov $0290+x,a +165e: f5 50 06 mov a,$0650+x +1661: d5 a0 02 mov $02a0+x,a +1664: f5 60 06 mov a,$0660+x +1667: d5 b0 02 mov $02b0+x,a +166a: f5 70 06 mov a,$0670+x +166d: d5 c0 02 mov $02c0+x,a +1670: f5 80 06 mov a,$0680+x +1673: d5 d0 02 mov $02d0+x,a +1676: f5 90 06 mov a,$0690+x +1679: d5 e0 02 mov $02e0+x,a +167c: f5 a0 06 mov a,$06a0+x +167f: d5 f0 02 mov $02f0+x,a +1682: f5 b0 06 mov a,$06b0+x +1685: d5 00 03 mov $0300+x,a +1688: f5 c0 06 mov a,$06c0+x +168b: d5 10 03 mov $0310+x,a +168e: f5 d0 06 mov a,$06d0+x +1691: d5 20 03 mov $0320+x,a +1694: f5 e0 06 mov a,$06e0+x +1697: d5 30 03 mov $0330+x,a +169a: f5 f0 06 mov a,$06f0+x +169d: d5 40 03 mov $0340+x,a +16a0: f5 00 07 mov a,$0700+x +16a3: d5 50 03 mov $0350+x,a +16a6: f5 10 07 mov a,$0710+x +16a9: d5 60 03 mov $0360+x,a +16ac: f5 20 07 mov a,$0720+x +16af: d5 70 03 mov $0370+x,a +16b2: f5 30 07 mov a,$0730+x +16b5: d5 80 03 mov $0380+x,a +16b8: f5 40 07 mov a,$0740+x +16bb: d5 90 03 mov $0390+x,a +16be: f5 50 07 mov a,$0750+x +16c1: d5 a0 03 mov $03a0+x,a +16c4: 6f ret + +16c5: dw $42,$00,$46,$00 +16c9: db $4b,$00,$4f,$00 +16cd: db $54,$00,$59,$00 +16d1: db $5e,$00,$64,$00 +16d5: db $6a,$00,$70,$00 +16d9: db $77,$00,$7e,$00 +16dd: db $85,$00,$8d,$00 +16e1: db $96,$00,$9f,$00 +16e5: db $a8,$00,$b2,$00 +16e9: db $bd,$00,$c8,$00 +16ed: db $d4,$00,$e1,$00 +16f1: db $ee,$00,$fc,$00 +16f5: db $0b,$01,$1b,$01 +16f9: db $2c,$01,$3e,$01 +16fd: db $51,$01,$65,$01 +1701: db $7a,$01,$91,$01 +1705: db $a9,$01,$c2,$01 +1709: db $dd,$01,$f9,$01 +170d: db $17,$02,$37,$02 +1711: db $59,$02,$7d,$02 +1715: db $a3,$02,$cb,$02 +1719: db $f5,$02,$22,$03 +171d: db $52,$03,$85,$03 +1721: db $ba,$03,$f3,$03 +1725: db $2f,$04,$6f,$04 +1729: db $b2,$04,$fa,$04 +172d: db $46,$05,$96,$05 +1731: db $eb,$05,$45,$06 +1735: db $a5,$06,$0a,$07 +1739: db $75,$07,$e6,$07 +173d: db $5f,$08,$de,$08 +1741: db $65,$09,$f4,$09 +1745: db $8c,$0a,$2c,$0b +1749: db $d6,$0b,$8b,$0c +174d: db $4a,$0d,$14,$0e +1751: db $ea,$0e,$cd,$0f +1755: db $be,$10,$bd,$11 +1759: db $cb,$12,$e9,$13 +175d: db $18,$15,$59,$16 +1761: db $ad,$17,$16,$19 +1765: db $94,$1a,$28,$1c +1769: db $d5,$1d,$9b,$1f + +176d: db "*Ver S1.20*" \ No newline at end of file From c02e57fd2c1ed0cc8bc79a30a461559be587395c Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:47:24 -0800 Subject: [PATCH 070/116] Add files via upload --- snes/NSPC/Super Bonk ($0700).bin | Bin 0 -> 3491 bytes snes/NSPC/Super Bonk.s | 1703 ++++++++++++++++++++++++++++++ 2 files changed, 1703 insertions(+) create mode 100644 snes/NSPC/Super Bonk ($0700).bin create mode 100644 snes/NSPC/Super Bonk.s diff --git a/snes/NSPC/Super Bonk ($0700).bin b/snes/NSPC/Super Bonk ($0700).bin new file mode 100644 index 0000000000000000000000000000000000000000..592c74c99cb9f47545340cdb3963e2360f0b0f3a GIT binary patch literal 3491 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 literal 0 HcmV?d00001 diff --git a/snes/NSPC/Super Bonk.s b/snes/NSPC/Super Bonk.s new file mode 100644 index 00000000..c12e9a61 --- /dev/null +++ b/snes/NSPC/Super Bonk.s @@ -0,0 +1,1703 @@ +0700: 20 clrp +0701: cd cf mov x,#$cf +0703: bd mov sp,x +0704: e8 00 mov a,#$00 +0706: 5d mov x,a +0707: af mov (x)+,a +0708: c8 e9 cmp x,#$e9 +070a: d0 fb bne $0707 +070c: e8 00 mov a,#$00 +070e: 5d mov x,a +070f: d5 00 01 mov $0100+x,a +0712: 3d inc x +0713: c8 c1 cmp x,#$c1 +0715: d0 f8 bne $070f +0717: e8 ff mov a,#$ff +0719: 3f 09 14 call $1409 +071c: e8 7f mov a,#$7f +071e: 65 b0 05 cmp a,$05b0 +0721: f0 03 beq $0726 +0723: c5 b0 05 mov $05b0,a +0726: 3f db 0b call $0bdb +0729: e8 3a mov a,#$3a +072b: 8d 5d mov y,#$5d +072d: 3f e9 13 call $13e9 +0730: 8f 18 2d mov $2d,#$18 +0733: 8f 00 11 mov $11,#$00 +0736: e8 f0 mov a,#$f0 +0738: c5 f1 00 mov $00f1,a +073b: e8 10 mov a,#$10 +073d: c5 fa 00 mov $00fa,a +0740: e8 01 mov a,#$01 +0742: c4 f1 mov $f1,a +0744: 8f 00 34 mov $34,#$00 +0747: 8f 00 35 mov $35,#$00 +074a: e4 33 mov a,$33 +074c: 3f 09 14 call $1409 +074f: e4 2d mov a,$2d +0751: f0 dd beq $0730 +0753: e4 2f mov a,$2f +0755: f0 05 beq $075c +0757: e8 00 mov a,#$00 +0759: 3f 0e 14 call $140e +075c: e4 35 mov a,$35 +075e: 3f 18 14 call $1418 +0761: e4 32 mov a,$32 +0763: 3f 04 14 call $1404 +0766: 8d 00 mov y,#$00 +0768: cb 32 mov $32,y +076a: cb 33 mov $33,y +076c: ec fd 00 mov y,$00fd +076f: f0 fb beq $076c +0771: cb 12 mov $12,y +0773: e8 20 mov a,#$20 +0775: cf mul ya +0776: 60 clrc +0777: 84 11 adc a,$11 +0779: c4 11 mov $11,a +077b: 90 44 bcc $07c1 +077d: 8f 00 1b mov $1b,#$00 +0780: cd 02 mov x,#$02 +0782: 8f 04 20 mov $20,#$04 +0785: 8f 08 21 mov $21,#$08 +0788: 3f 93 0c call $0c93 +078b: 3f 3e 08 call $083e +078e: 8f 00 1b mov $1b,#$00 +0791: cd 01 mov x,#$01 +0793: 8f 03 20 mov $20,#$03 +0796: 8f 04 21 mov $21,#$04 +0799: 3f 93 0c call $0c93 +079c: 3f 3e 08 call $083e +079f: 8f 00 1b mov $1b,#$00 +07a2: cd 02 mov x,#$02 +07a4: 8f 02 20 mov $20,#$02 +07a7: 8f 02 21 mov $21,#$02 +07aa: 3f 93 0c call $0c93 +07ad: 3f 3e 08 call $083e +07b0: 8f 00 1b mov $1b,#$00 +07b3: cd 01 mov x,#$01 +07b5: 8f 01 20 mov $20,#$01 +07b8: 8f 01 21 mov $21,#$01 +07bb: 3f 93 0c call $0c93 +07be: 3f 3e 08 call $083e +07c1: e5 2d 00 mov a,$002d +07c4: ec 12 00 mov y,$0012 +07c7: cf mul ya +07c8: 60 clrc +07c9: 84 10 adc a,$10 +07cb: c4 10 mov $10,a +07cd: 90 63 bcc $0832 +07cf: 3f c9 0c call $0cc9 +07d2: cd 00 mov x,#$00 +07d4: 3f 93 0c call $0c93 +07d7: cd 03 mov x,#$03 +07d9: 3f 93 0c call $0c93 +07dc: 64 07 cmp a,$07 +07de: f0 4f beq $082f +07e0: 68 e0 cmp a,#$e0 +07e2: f0 12 beq $07f6 +07e4: 68 e1 cmp a,#$e1 +07e6: f0 14 beq $07fc +07e8: 68 e2 cmp a,#$e2 +07ea: f0 16 beq $0802 +07ec: 68 f0 cmp a,#$f0 +07ee: d0 18 bne $0808 +07f0: 3f 6d 0a call $0a6d +07f3: 5f 2f 08 jmp $082f + +07f6: 3f 7e 0a call $0a7e +07f9: 5f 2f 08 jmp $082f + +07fc: 3f 84 0a call $0a84 +07ff: 5f 2f 08 jmp $082f + +0802: 3f 8a 0a call $0a8a +0805: 5f 2f 08 jmp $082f + +0808: 48 7f eor a,#$7f +080a: c4 f7 mov $f7,a +080c: c5 b0 05 mov $05b0,a +080f: 3f f0 13 call $13f0 +0812: e5 b0 05 mov a,$05b0 +0815: 68 00 cmp a,#$00 +0817: d0 0c bne $0825 +0819: e8 00 mov a,#$00 +081b: 3f fa 13 call $13fa +081e: e8 00 mov a,#$00 +0820: 3f ff 13 call $13ff +0823: 2f 0a bra $082f +0825: e4 30 mov a,$30 +0827: 3f fa 13 call $13fa +082a: e4 31 mov a,$31 +082c: 3f ff 13 call $13ff +082f: fa 03 07 mov ($07),($03) +0832: e4 00 mov a,$00 +0834: f0 05 beq $083b +0836: cd 00 mov x,#$00 +0838: 8f 01 13 mov $13,#$01 +083b: 5f 4a 07 jmp $074a + +083e: d8 22 mov $22,x +0840: fb 00 mov y,$00+x +0842: f0 3a beq $087e +0844: dd mov a,y +0845: 08 80 or a,#$80 +0847: 48 80 eor a,#$80 +0849: fd mov y,a +084a: f4 08 mov a,$08+x +084c: 74 00 cmp a,$00+x +084e: f0 2e beq $087e +0850: f6 61 12 mov a,$1261+y +0853: 10 0c bpl $0861 +0855: f8 20 mov x,$20 +0857: 2d push a +0858: e8 ff mov a,#$ff +085a: d4 15 mov $15+x,a +085c: c4 1b mov $1b,a +085e: f8 22 mov x,$22 +0860: ae pop a +0861: 08 f0 or a,#$f0 +0863: 48 f0 eor a,#$f0 +0865: d4 a4 mov $a4+x,a +0867: 74 a6 cmp a,$a6+x +0869: f0 06 beq $0871 +086b: 80 setc +086c: b4 a6 sbc a,$a6+x +086e: 90 0b bcc $087b +0870: 60 clrc +0871: f4 a4 mov a,$a4+x +0873: d4 a6 mov $a6+x,a +0875: e8 01 mov a,#$01 +0877: d4 a8 mov $a8+x,a +0879: 2f 03 bra $087e +087b: 5f fb 08 jmp $08fb + +087e: fb 04 mov y,$04+x +0880: f4 00 mov a,$00+x +0882: d4 04 mov $04+x,a +0884: f0 f5 beq $087b +0886: dd mov a,y +0887: 74 00 cmp a,$00+x +0889: d0 02 bne $088d +088b: 2f ee bra $087b +088d: f4 00 mov a,$00+x +088f: d4 08 mov $08+x,a +0891: e4 1b mov a,$1b +0893: d0 34 bne $08c9 +0895: 2f 00 bra $0897 +0897: 8f 00 1b mov $1b,#$00 +089a: f8 22 mov x,$22 +089c: 3e 20 cmp x,$20 +089e: f0 21 beq $08c1 +08a0: 60 clrc +08a1: fa 20 b6 mov ($b6),($20) +08a4: fa 21 b7 mov ($b7),($21) +08a7: 8b 20 dec $20 +08a9: 8b 20 dec $20 +08ab: 4b 21 lsr $21 +08ad: 4b 21 lsr $21 +08af: f4 08 mov a,$08+x +08b1: f8 20 mov x,$20 +08b3: d4 0b mov $0b+x,a +08b5: 3f 05 09 call $0905 +08b8: fa b6 20 mov ($20),($b6) +08bb: fa b7 21 mov ($21),($b7) +08be: 2f 3b bra $08fb +08c0: 6f ret + +08c1: f4 08 mov a,$08+x +08c3: f8 20 mov x,$20 +08c5: d4 0b mov $0b+x,a +08c7: 2f 3c bra $0905 +08c9: 8f 00 1b mov $1b,#$00 +08cc: f8 22 mov x,$22 +08ce: 3e 20 cmp x,$20 +08d0: d0 21 bne $08f3 +08d2: 60 clrc +08d3: fa 20 b6 mov ($b6),($20) +08d6: fa 21 b7 mov ($b7),($21) +08d9: ab 20 inc $20 +08db: ab 20 inc $20 +08dd: 0b 21 asl $21 +08df: 0b 21 asl $21 +08e1: f4 08 mov a,$08+x +08e3: f8 20 mov x,$20 +08e5: d4 0b mov $0b+x,a +08e7: 3f 05 09 call $0905 +08ea: fa b6 20 mov ($20),($b6) +08ed: fa b7 21 mov ($21),($b7) +08f0: 2f 09 bra $08fb +08f2: 6f ret + +08f3: f4 08 mov a,$08+x +08f5: f8 20 mov x,$20 +08f7: d4 0b mov $0b+x,a +08f9: 2f 0a bra $0905 +08fb: f8 20 mov x,$20 +08fd: f4 0b mov a,$0b+x +08ff: d0 44 bne $0945 +0901: 6f ret + +0902: 5f fe 09 jmp $09fe + +0905: 8f 01 b5 mov $b5,#$01 +0908: 3f 37 0e call $0e37 +090b: e8 00 mov a,#$00 +090d: d4 1b mov $1b+x,a +090f: f4 0b mov a,$0b+x +0911: c8 02 cmp x,#$02 +0913: f0 11 beq $0926 +0915: c8 04 cmp x,#$04 +0917: f0 0d beq $0926 +0919: 1c asl a +091a: f0 e5 beq $0901 +091c: 5d mov x,a +091d: f5 ff 14 mov a,$14ff+x +0920: fd mov y,a +0921: f5 fe 14 mov a,$14fe+x +0924: 2f 0b bra $0931 +0926: 1c asl a +0927: f0 d8 beq $0901 +0929: 5d mov x,a +092a: f5 ff 21 mov a,$21ff+x +092d: fd mov y,a +092e: f5 fe 21 mov a,$21fe+x +0931: fa 20 b1 mov ($b1),($20) +0934: 0b b1 asl $b1 +0936: 0b b1 asl $b1 +0938: f8 b1 mov x,$b1 +093a: db 91 mov $91+x,y +093c: d4 90 mov $90+x,a +093e: f8 20 mov x,$20 +0940: e8 01 mov a,#$01 +0942: d5 90 05 mov $0590+x,a +0945: f5 90 05 mov a,$0590+x +0948: f0 b8 beq $0902 +094a: e8 00 mov a,#$00 +094c: d5 90 05 mov $0590+x,a +094f: 8d 07 mov y,#$07 +0951: c8 01 cmp x,#$01 +0953: f0 11 beq $0966 +0955: c8 02 cmp x,#$02 +0957: f0 12 beq $096b +0959: c8 03 cmp x,#$03 +095b: f0 13 beq $0970 +095d: c8 04 cmp x,#$04 +095f: f0 14 beq $0975 +0961: 8f bb ba mov $ba,#$bb +0964: 2f 12 bra $0978 +0966: 3f 41 0a call $0a41 +0969: 2f 0d bra $0978 +096b: 3f 4c 0a call $0a4c +096e: 2f 08 bra $0978 +0970: 3f 57 0a call $0a57 +0973: 2f 03 bra $0978 +0975: 3f 62 0a call $0a62 +0978: 8f 04 15 mov $15,#$04 +097b: 8f 10 13 mov $13,#$10 +097e: eb 15 mov y,$15 +0980: f4 41 mov a,$41+x +0982: f0 67 beq $09eb +0984: 09 13 33 or ($33),($13) +0987: 3f 4d 0c call $0c4d +098a: 60 clrc +098b: e8 02 mov a,#$02 +098d: eb 15 mov y,$15 +098f: cf mul ya +0990: fd mov y,a +0991: f6 00 01 mov a,$0100+y +0994: f0 50 beq $09e6 +0996: d8 b1 mov $b1,x +0998: 3f 1d 0a call $0a1d +099b: d8 b0 mov $b0,x +099d: dd mov a,y +099e: 48 08 eor a,#$08 +09a0: 60 clrc +09a1: 84 b0 adc a,$b0 +09a3: 5d mov x,a +09a4: e8 00 mov a,#$00 +09a6: d4 40 mov $40+x,a +09a8: d4 41 mov $41+x,a +09aa: d5 00 05 mov $0500+x,a +09ad: cb b0 mov $b0,y +09af: f8 b0 mov x,$b0 +09b1: 8f 01 b5 mov $b5,#$01 +09b4: 3f 9c 0e call $0e9c +09b7: eb b0 mov y,$b0 +09b9: eb b0 mov y,$b0 +09bb: cd 01 mov x,#$01 +09bd: f6 00 01 mov a,$0100+y +09c0: 68 01 cmp a,#$01 +09c2: f0 12 beq $09d6 +09c4: 3d inc x +09c5: 68 02 cmp a,#$02 +09c7: f0 0d beq $09d6 +09c9: 3d inc x +09ca: 68 04 cmp a,#$04 +09cc: f0 08 beq $09d6 +09ce: 3d inc x +09cf: 68 08 cmp a,#$08 +09d1: f0 03 beq $09d6 +09d3: 8f ee ba mov $ba,#$ee +09d6: d4 1b mov $1b+x,a +09d8: f4 15 mov a,$15+x +09da: 10 04 bpl $09e0 +09dc: e8 7f mov a,#$7f +09de: 2f 02 bra $09e2 +09e0: e8 00 mov a,#$00 +09e2: d4 15 mov $15+x,a +09e4: f8 b1 mov x,$b1 +09e6: e4 21 mov a,$21 +09e8: d6 00 01 mov $0100+y,a +09eb: e8 02 mov a,#$02 +09ed: d5 61 01 mov $0161+x,a +09f0: e8 00 mov a,#$00 +09f2: d5 91 01 mov $0191+x,a +09f5: 3d inc x +09f6: 3d inc x +09f7: ab 15 inc $15 +09f9: 0b 13 asl $13 +09fb: d0 81 bne $097e +09fd: 6f ret + +09fe: f4 1b mov a,$1b+x +0a00: 68 af cmp a,#$af +0a02: f0 0e beq $0a12 +0a04: e4 21 mov a,$21 +0a06: 3f 1d 0a call $0a1d +0a09: 8f 10 13 mov $13,#$10 +0a0c: 8f 04 15 mov $15,#$04 +0a0f: 5f 45 0d jmp $0d45 + +0a12: 6f ret + +0a13: 2d push a +0a14: f5 00 01 mov a,$0100+x +0a17: c4 b2 mov $b2,a +0a19: d8 b3 mov $b3,x +0a1b: ae pop a +0a1c: 6f ret + +0a1d: 68 01 cmp a,#$01 +0a1f: f0 0f beq $0a30 +0a21: 68 02 cmp a,#$02 +0a23: f0 0f beq $0a34 +0a25: 68 04 cmp a,#$04 +0a27: f0 0f beq $0a38 +0a29: 68 08 cmp a,#$08 +0a2b: f0 0f beq $0a3c +0a2d: 8f ab ba mov $ba,#$ab +0a30: cd 10 mov x,#$10 +0a32: 2f 0c bra $0a40 +0a34: cd 18 mov x,#$18 +0a36: 2f 08 bra $0a40 +0a38: cd 20 mov x,#$20 +0a3a: 2f 04 bra $0a40 +0a3c: cd 28 mov x,#$28 +0a3e: 2f 00 bra $0a40 +0a40: 6f ret + +0a41: f7 94 mov a,($94)+y +0a43: d6 50 00 mov $0050+y,a +0a46: dc dec y +0a47: 10 f8 bpl $0a41 +0a49: cd 10 mov x,#$10 +0a4b: 6f ret + +0a4c: f7 98 mov a,($98)+y +0a4e: d6 58 00 mov $0058+y,a +0a51: dc dec y +0a52: 10 f8 bpl $0a4c +0a54: cd 18 mov x,#$18 +0a56: 6f ret + +0a57: f7 9c mov a,($9c)+y +0a59: d6 60 00 mov $0060+y,a +0a5c: dc dec y +0a5d: 10 f8 bpl $0a57 +0a5f: cd 20 mov x,#$20 +0a61: 6f ret + +0a62: f7 a0 mov a,($a0)+y +0a64: d6 68 00 mov $0068+y,a +0a67: dc dec y +0a68: 10 f8 bpl $0a62 +0a6a: cd 28 mov x,#$28 +0a6c: 6f ret + +0a6d: e8 40 mov a,#$40 +0a6f: 3f 0e 14 call $140e +0a72: e4 f7 mov a,$f7 +0a74: 68 00 cmp a,#$00 +0a76: d0 fa bne $0a72 +0a78: e8 00 mov a,#$00 +0a7a: 3f 0e 14 call $140e +0a7d: 6f ret + +0a7e: e8 bb mov a,#$bb +0a80: c5 a0 05 mov $05a0,a +0a83: 6f ret + +0a84: e8 00 mov a,#$00 +0a86: c5 a0 05 mov $05a0,a +0a89: 6f ret + +0a8a: e5 a0 05 mov a,$05a0 +0a8d: c5 f7 00 mov $00f7,a +0a90: e4 f7 mov a,$f7 +0a92: 68 00 cmp a,#$00 +0a94: d0 fa bne $0a90 +0a96: 6f ret + +0a97: f2 2a clr7 $2a +0a99: f4 c0 mov a,$c0+x +0a9b: f0 34 beq $0ad1 +0a9d: f5 01 03 mov a,$0301+x +0aa0: f0 09 beq $0aab +0aa2: f5 01 03 mov a,$0301+x +0aa5: 9c dec a +0aa6: d5 01 03 mov $0301+x,a +0aa9: 2f 26 bra $0ad1 +0aab: e2 2a set7 $2a +0aad: 9b c0 dec $c0+x +0aaf: d0 0b bne $0abc +0ab1: f5 91 03 mov a,$0391+x +0ab4: d5 31 03 mov $0331+x,a +0ab7: f5 90 03 mov a,$0390+x +0aba: 2f 10 bra $0acc +0abc: 60 clrc +0abd: f5 31 03 mov a,$0331+x +0ac0: 95 61 03 adc a,$0361+x +0ac3: d5 31 03 mov $0331+x,a +0ac6: f5 30 03 mov a,$0330+x +0ac9: 95 60 03 adc a,$0360+x +0acc: d5 30 03 mov $0330+x,a +0acf: 2f 00 bra $0ad1 +0ad1: 3f 23 11 call $1123 +0ad4: f5 00 04 mov a,$0400+x +0ad7: f0 4f beq $0b28 +0ad9: f5 31 04 mov a,$0431+x +0adc: de c1 47 cbne $c1+x,$0b26 +0adf: f5 c0 04 mov a,$04c0+x +0ae2: 75 90 04 cmp a,$0490+x +0ae5: d0 05 bne $0aec +0ae7: f5 60 04 mov a,$0460+x +0aea: 2f 0e bra $0afa +0aec: 40 setp +0aed: bb c0 inc $c0+x +0aef: 20 clrp +0af0: fd mov y,a +0af1: f0 03 beq $0af6 +0af3: f5 00 04 mov a,$0400+x +0af6: 60 clrc +0af7: 95 91 04 adc a,$0491+x +0afa: d5 00 04 mov $0400+x,a +0afd: f5 30 04 mov a,$0430+x +0b00: 60 clrc +0b01: 95 61 04 adc a,$0461+x +0b04: d5 30 04 mov $0430+x,a +0b07: c4 29 mov $29,a +0b09: 1c asl a +0b0a: 1c asl a +0b0b: 90 02 bcc $0b0f +0b0d: 48 ff eor a,#$ff +0b0f: fd mov y,a +0b10: f5 00 04 mov a,$0400+x +0b13: 68 f1 cmp a,#$f1 +0b15: 90 05 bcc $0b1c +0b17: 28 0f and a,#$0f +0b19: cf mul ya +0b1a: 2f 04 bra $0b20 +0b1c: cf mul ya +0b1d: dd mov a,y +0b1e: 8d 00 mov y,#$00 +0b20: 3f d3 0b call $0bd3 +0b23: 5f 54 0f jmp $0f54 + +0b26: bb c1 inc $c1+x +0b28: e3 2a f8 bbs7 $2a,$0b23 +0b2b: 6f ret + +0b2c: f4 41 mov a,$41+x +0b2e: f0 03 beq $0b33 +0b30: 3f 3a 0b call $0b3a +0b33: 3d inc x +0b34: 3d inc x +0b35: 0b 13 asl $13 +0b37: d0 f3 bne $0b2c +0b39: 6f ret + +0b3a: f5 00 04 mov a,$0400+x +0b3d: f0 e9 beq $0b28 +0b3f: f5 31 04 mov a,$0431+x +0b42: de c1 e3 cbne $c1+x,$0b28 +0b45: eb 2d mov y,$2d +0b47: f5 61 04 mov a,$0461+x +0b4a: cf mul ya +0b4b: dd mov a,y +0b4c: 60 clrc +0b4d: 85 30 04 adc a,$0430 +0b50: 5f 07 0b jmp $0b07 + +0b53: f5 00 03 mov a,$0300+x +0b56: fd mov y,a +0b57: e5 a0 05 mov a,$05a0 +0b5a: d0 06 bne $0b62 +0b5c: f6 d4 13 mov a,$13d4+y +0b5f: 5f 65 0b jmp $0b65 + +0b62: f6 aa 13 mov a,$13aa+y +0b65: fd mov y,a +0b66: f5 60 02 mov a,$0260+x +0b69: cf mul ya +0b6a: f5 90 02 mov a,$0290+x +0b6d: cf mul ya +0b6e: dd mov a,y +0b6f: cf mul ya +0b70: dd mov a,y +0b71: d5 30 02 mov $0230+x,a +0b74: eb 15 mov y,$15 +0b76: 3f 3d 14 call $143d +0b79: f5 00 03 mov a,$0300+x +0b7c: fd mov y,a +0b7d: e5 a0 05 mov a,$05a0 +0b80: d0 06 bne $0b88 +0b82: f6 d4 13 mov a,$13d4+y +0b85: 5f 8b 0b jmp $0b8b + +0b88: f6 bf 13 mov a,$13bf+y +0b8b: fd mov y,a +0b8c: f5 61 02 mov a,$0261+x +0b8f: 60 clrc +0b90: cf mul ya +0b91: f5 91 02 mov a,$0291+x +0b94: cf mul ya +0b95: dd mov a,y +0b96: cf mul ya +0b97: dd mov a,y +0b98: d5 31 02 mov $0231+x,a +0b9b: eb 15 mov y,$15 +0b9d: 3f 49 14 call $1449 +0ba0: 6f ret + +0ba1: ed notc +0ba2: 6b 29 ror $29 +0ba4: 10 03 bpl $0ba9 +0ba6: 48 ff eor a,#$ff +0ba8: bc inc a +0ba9: 8d 00 mov y,#$00 +0bab: 9e div ya,x +0bac: 2d push a +0bad: e8 00 mov a,#$00 +0baf: 9e div ya,x +0bb0: ee pop y +0bb1: f8 14 mov x,$14 +0bb3: f3 29 06 bbc7 $29,$0bbc +0bb6: da 23 movw $23,ya +0bb8: ba 2b movw ya,$2b +0bba: 9a 23 subw ya,$23 +0bbc: 6f ret + +0bbd: e2 2a set7 $2a +0bbf: cb 29 mov $29,y +0bc1: 3f b3 0b call $0bb3 +0bc4: 6d push y +0bc5: eb 10 mov y,$10 +0bc7: cf mul ya +0bc8: cb 23 mov $23,y +0bca: 8f 00 24 mov $24,#$00 +0bcd: eb 10 mov y,$10 +0bcf: ae pop a +0bd0: cf mul ya +0bd1: 7a 23 addw ya,$23 +0bd3: 3f b3 0b call $0bb3 +0bd6: 7a 27 addw ya,$27 +0bd8: da 27 movw $27,ya +0bda: 6f ret + +0bdb: e8 bf mov a,#$bf +0bdd: cd 01 mov x,#$01 +0bdf: d4 1b mov $1b+x,a +0be1: 3d inc x +0be2: d4 1b mov $1b+x,a +0be4: 3d inc x +0be5: d4 1b mov $1b+x,a +0be7: 3d inc x +0be8: d4 1b mov $1b+x,a +0bea: e8 00 mov a,#$00 +0bec: 3f 22 14 call $1422 +0bef: e8 00 mov a,#$00 +0bf1: 3f 13 14 call $1413 +0bf4: e8 00 mov a,#$00 +0bf6: 3f fa 13 call $13fa +0bf9: e8 00 mov a,#$00 +0bfb: 3f ff 13 call $13ff +0bfe: e8 20 mov a,#$20 +0c00: 3f 0e 14 call $140e +0c03: e5 b0 05 mov a,$05b0 +0c06: 3f f0 13 call $13f0 +0c09: e8 00 mov a,#$00 +0c0b: 3f 1d 14 call $141d +0c0e: e8 04 mov a,#$04 +0c10: 3f 2c 14 call $142c +0c13: e8 dd mov a,#$dd +0c15: 8d 6d mov y,#$6d +0c17: cb f2 mov $f2,y +0c19: c4 f3 mov $f3,a +0c1b: 8d 00 mov y,#$00 +0c1d: e8 7f mov a,#$7f +0c1f: 3f 31 14 call $1431 +0c22: fc inc y +0c23: e8 00 mov a,#$00 +0c25: 3f 31 14 call $1431 +0c28: fc inc y +0c29: e8 00 mov a,#$00 +0c2b: 3f 31 14 call $1431 +0c2e: fc inc y +0c2f: e8 00 mov a,#$00 +0c31: 3f 31 14 call $1431 +0c34: fc inc y +0c35: e8 00 mov a,#$00 +0c37: 3f 31 14 call $1431 +0c3a: fc inc y +0c3b: e8 00 mov a,#$00 +0c3d: 3f 31 14 call $1431 +0c40: fc inc y +0c41: e8 00 mov a,#$00 +0c43: 3f 31 14 call $1431 +0c46: fc inc y +0c47: e8 00 mov a,#$00 +0c49: 3f 31 14 call $1431 +0c4c: 6f ret + +0c4d: e8 00 mov a,#$00 +0c4f: d5 90 02 mov $0290+x,a +0c52: d5 91 02 mov $0291+x,a +0c55: d5 30 02 mov $0230+x,a +0c58: d5 31 02 mov $0231+x,a +0c5b: e8 00 mov a,#$00 +0c5d: d5 01 02 mov $0201+x,a +0c60: d5 91 03 mov $0391+x,a +0c63: d5 c0 00 mov $00c0+x,a +0c66: d5 01 03 mov $0301+x,a +0c69: d5 00 04 mov $0400+x,a +0c6c: d5 c1 00 mov $00c1+x,a +0c6f: d5 30 04 mov $0430+x,a +0c72: d5 31 04 mov $0431+x,a +0c75: d5 60 04 mov $0460+x,a +0c78: d5 61 04 mov $0461+x,a +0c7b: d5 c0 04 mov $04c0+x,a +0c7e: d5 90 04 mov $0490+x,a +0c81: d5 91 04 mov $0491+x,a +0c84: d5 30 05 mov $0530+x,a +0c87: d5 00 05 mov $0500+x,a +0c8a: d5 01 05 mov $0501+x,a +0c8d: e8 0a mov a,#$0a +0c8f: d5 00 03 mov $0300+x,a +0c92: 6f ret + +0c93: f4 00 mov a,$00+x +0c95: d5 f4 00 mov $00f4+x,a +0c98: f5 f4 00 mov a,$00f4+x +0c9b: 75 f4 00 cmp a,$00f4+x +0c9e: d0 f8 bne $0c98 +0ca0: d4 00 mov $00+x,a +0ca2: 6f ret + +0ca3: c4 08 mov $08,a +0ca5: 1c asl a +0ca6: f0 17 beq $0cbf +0ca8: 5d mov x,a +0ca9: f5 ff 22 mov a,$22ff+x +0cac: fd mov y,a +0cad: f5 fe 22 mov a,$22fe+x +0cb0: da 90 movw $90,ya +0cb2: e8 01 mov a,#$01 +0cb4: c5 90 05 mov $0590,a +0cb7: 8f ff 2f mov $2f,#$ff +0cba: e8 00 mov a,#$00 +0cbc: 3f 0e 14 call $140e +0cbf: 6f ret + +0cc0: 5f 7a 14 jmp $147a + +0cc3: 5f 87 14 jmp $1487 + +0cc6: 5f 9b 14 jmp $149b + +0cc9: eb 04 mov y,$04 +0ccb: e4 00 mov a,$00 +0ccd: c4 04 mov $04,a +0ccf: f0 18 beq $0ce9 +0cd1: 68 ff cmp a,#$ff +0cd3: f0 eb beq $0cc0 +0cd5: 68 ee cmp a,#$ee +0cd7: f0 ea beq $0cc3 +0cd9: 68 d1 cmp a,#$d1 +0cdb: f0 e9 beq $0cc6 +0cdd: 08 80 or a,#$80 +0cdf: 48 80 eor a,#$80 +0ce1: 68 0c cmp a,#$0c +0ce3: b0 04 bcs $0ce9 +0ce5: 7e 00 cmp y,$00 +0ce7: d0 ba bne $0ca3 +0ce9: e4 08 mov a,$08 +0ceb: f0 d2 beq $0cbf +0ced: e5 90 05 mov a,$0590 +0cf0: f0 44 beq $0d36 +0cf2: e8 00 mov a,#$00 +0cf4: c5 90 05 mov $0590,a +0cf7: 8d 0f mov y,#$0f +0cf9: f7 90 mov a,($90)+y +0cfb: f0 08 beq $0d05 +0cfd: d6 70 00 mov $0070+y,a +0d00: d6 40 00 mov $0040+y,a +0d03: 2f 08 bra $0d0d +0d05: e8 00 mov a,#$00 +0d07: d6 70 00 mov $0070+y,a +0d0a: d6 40 00 mov $0040+y,a +0d0d: dc dec y +0d0e: 10 e9 bpl $0cf9 +0d10: 8f 00 36 mov $36,#$00 +0d13: 8f 18 2d mov $2d,#$18 +0d16: 8f 00 15 mov $15,#$00 +0d19: cd 00 mov x,#$00 +0d1b: 8f 01 13 mov $13,#$01 +0d1e: d8 14 mov $14,x +0d20: eb 15 mov y,$15 +0d22: e8 00 mov a,#$00 +0d24: 3f 4d 0c call $0c4d +0d27: e8 01 mov a,#$01 +0d29: d5 61 01 mov $0161+x,a +0d2c: d4 80 mov $80+x,a +0d2e: 3d inc x +0d2f: 3d inc x +0d30: ab 15 inc $15 +0d32: 0b 13 asl $13 +0d34: d0 e8 bne $0d1e +0d36: cd 00 mov x,#$00 +0d38: 8d 00 mov y,#$00 +0d3a: 8f 01 13 mov $13,#$01 +0d3d: d8 15 mov $15,x +0d3f: 8f 00 20 mov $20,#$00 +0d42: 8f 00 21 mov $21,#$00 +0d45: d8 14 mov $14,x +0d47: f4 41 mov a,$41+x +0d49: f0 0b beq $0d56 +0d4b: f5 61 01 mov a,$0161+x +0d4e: 9c dec a +0d4f: d5 61 01 mov $0161+x,a +0d52: d0 67 bne $0dbb +0d54: 2f 03 bra $0d59 +0d56: 5f eb 0d jmp $0deb + +0d59: 3f 24 10 call $1024 +0d5c: 30 0d bmi $0d6b +0d5e: d5 60 01 mov $0160+x,a +0d61: f0 22 beq $0d85 +0d63: 3f 24 10 call $1024 +0d66: 30 20 bmi $0d88 +0d68: 3f f0 0f call $0ff0 +0d6b: 68 d5 cmp a,#$d5 ; set instrument +0d6d: 90 19 bcc $0d88 +0d6f: 68 d6 cmp a,#$d6 ; call subroutine +0d71: f0 09 beq $0d7c +0d73: 68 fe cmp a,#$fe +0d75: f0 08 beq $0d7f +0d77: 3f 12 10 call $1012 +0d7a: 2f dd bra $0d59 +0d7c: 5f b7 0e jmp $0eb7 +0d7f: 3f 25 0e call $0e25 +0d82: 5f eb 0d jmp $0deb + +0d85: 5f e6 0e jmp $0ee6 + +0d88: 3f 13 0a call $0a13 +0d8b: d0 24 bne $0db1 +0d8d: ad ca cmp y,#$ca +0d8f: 90 06 bcc $0d97 +0d91: 3f 2e 10 call $102e +0d94: 8d a4 mov y,#$a4 +0d96: dd mov a,y +0d97: ad c8 cmp y,#$c8 +0d99: f0 16 beq $0db1 +0d9b: ad c9 cmp y,#$c9 +0d9d: f0 06 beq $0da5 +0d9f: 60 clrc +0da0: 3f 28 0f call $0f28 +0da3: 2f 09 bra $0dae +0da5: ad c9 cmp y,#$c9 +0da7: 90 08 bcc $0db1 +0da9: 09 13 33 or ($33),($13) +0dac: 2f 03 bra $0db1 +0dae: 09 13 32 or ($32),($13) +0db1: f5 60 01 mov a,$0160+x +0db4: d5 61 01 mov $0161+x,a +0db7: fd mov y,a +0db8: 5f e2 0f jmp $0fe2 + +0dbb: f5 91 01 mov a,$0191+x +0dbe: f0 25 beq $0de5 +0dc0: 9c dec a +0dc1: d5 91 01 mov $0191+x,a +0dc4: d0 1f bne $0de5 +0dc6: e7 40 mov a,($40+x) +0dc8: 68 c8 cmp a,#$c8 +0dca: f0 19 beq $0de5 +0dcc: bb 40 inc $40+x +0dce: e7 40 mov a,($40+x) +0dd0: 9b 40 dec $40+x +0dd2: 68 c8 cmp a,#$c8 +0dd4: f0 0f beq $0de5 +0dd6: f5 30 05 mov a,$0530+x +0dd9: 68 01 cmp a,#$01 +0ddb: f0 08 beq $0de5 +0ddd: 3f 13 0a call $0a13 +0de0: d0 03 bne $0de5 +0de2: 09 13 33 or ($33),($13) +0de5: 3f ea 10 call $10ea +0de8: 3f 97 0a call $0a97 +0deb: 3d inc x +0dec: 3d inc x +0ded: ab 15 inc $15 +0def: 0b 13 asl $13 +0df1: d0 02 bne $0df5 +0df3: 2f 03 bra $0df8 +0df5: 5f 45 0d jmp $0d45 + +0df8: cd cf mov x,#$cf +0dfa: bd mov sp,x +0dfb: e5 20 00 mov a,$0020 +0dfe: d0 03 bne $0e03 +0e00: 5f d2 07 jmp $07d2 + +0e03: 8c 20 00 dec $0020 +0e06: e4 20 mov a,$20 +0e08: f0 18 beq $0e22 +0e0a: 78 03 20 cmp $20,#$03 +0e0d: f0 0a beq $0e19 +0e0f: 78 02 20 cmp $20,#$02 +0e12: f0 08 beq $0e1c +0e14: 78 01 20 cmp $20,#$01 +0e17: f0 06 beq $0e1f +0e19: 5f 8e 07 jmp $078e + +0e1c: 5f 9f 07 jmp $079f + +0e1f: 5f b0 07 jmp $07b0 + +0e22: 5f c1 07 jmp $07c1 + +0e25: 8f 00 b5 mov $b5,#$00 +0e28: e4 20 mov a,$20 +0e2a: d0 0b bne $0e37 +0e2c: e8 00 mov a,#$00 +0e2e: d4 40 mov $40+x,a +0e30: d4 41 mov $41+x,a +0e32: d4 70 mov $70+x,a +0e34: d4 71 mov $71+x,a +0e36: 6f ret + +0e37: fa 15 b4 mov ($b4),($15) +0e3a: cd 0e mov x,#$0e +0e3c: 8f 07 15 mov $15,#$07 +0e3f: 8f 80 13 mov $13,#$80 +0e42: f5 00 01 mov a,$0100+x +0e45: d0 40 bne $0e87 +0e47: 4c 13 00 lsr $0013 +0e4a: 8c 15 00 dec $0015 +0e4d: 1d dec x +0e4e: 1d dec x +0e4f: c8 06 cmp x,#$06 +0e51: d0 ef bne $0e42 +0e53: e8 af mov a,#$af +0e55: f8 20 mov x,$20 +0e57: d4 1b mov $1b+x,a +0e59: f4 15 mov a,$15+x +0e5b: 10 04 bpl $0e61 +0e5d: e8 7f mov a,#$7f +0e5f: 2f 02 bra $0e63 +0e61: e8 00 mov a,#$00 +0e63: d4 15 mov $15+x,a +0e65: f8 22 mov x,$22 +0e67: f4 a8 mov a,$a8+x +0e69: d0 0c bne $0e77 +0e6b: e8 00 mov a,#$00 +0e6d: d4 a4 mov $a4+x,a +0e6f: d4 a6 mov $a6+x,a +0e71: f4 00 mov a,$00+x +0e73: d4 04 mov $04+x,a +0e75: d4 08 mov $08+x,a +0e77: e8 00 mov a,#$00 +0e79: d4 a8 mov $a8+x,a +0e7b: 8f 80 13 mov $13,#$80 +0e7e: fa b4 15 mov ($15),($b4) +0e81: 8f 00 b5 mov $b5,#$00 +0e84: f8 20 mov x,$20 +0e86: 6f ret + +0e87: e4 b5 mov a,$b5 +0e89: f0 00 beq $0e8b +0e8b: f5 00 01 mov a,$0100+x +0e8e: 04 21 or a,$21 +0e90: 44 21 eor a,$21 +0e92: d5 00 01 mov $0100+x,a +0e95: d0 b0 bne $0e47 +0e97: 3f 9c 0e call $0e9c +0e9a: 2f ab bra $0e47 +0e9c: e8 00 mov a,#$00 +0e9e: d5 01 02 mov $0201+x,a +0ea1: d5 91 03 mov $0391+x,a +0ea4: d4 c0 mov $c0+x,a +0ea6: d5 01 03 mov $0301+x,a +0ea9: 09 13 33 or ($33),($13) +0eac: f5 00 02 mov a,$0200+x +0eaf: 3f 39 10 call $1039 +0eb2: 3f 53 0b call $0b53 +0eb5: 6f ret + +0eb6: 6f ret + +0eb7: f4 41 mov a,$41+x +0eb9: fd mov y,a +0eba: f4 40 mov a,$40+x +0ebc: db 71 mov $71+x,y +0ebe: d4 70 mov $70+x,a +0ec0: bb 70 inc $70+x +0ec2: d0 02 bne $0ec6 +0ec4: bb 71 inc $71+x +0ec6: bb 70 inc $70+x +0ec8: d0 02 bne $0ecc +0eca: bb 71 inc $71+x +0ecc: e7 70 mov a,($70+x) +0ece: d4 80 mov $80+x,a +0ed0: 9b 70 dec $70+x +0ed2: f4 70 mov a,$70+x +0ed4: 68 ff cmp a,#$ff +0ed6: d0 02 bne $0eda +0ed8: 9b 71 dec $71+x +0eda: 9b 70 dec $70+x +0edc: f4 70 mov a,$70+x +0ede: 68 ff cmp a,#$ff +0ee0: d0 02 bne $0ee4 +0ee2: 9b 71 dec $71+x +0ee4: 2f 06 bra $0eec +0ee6: 9b 80 dec $80+x +0ee8: f4 80 mov a,$80+x +0eea: f0 1c beq $0f08 +0eec: e7 70 mov a,($70+x) +0eee: d5 40 00 mov $0040+x,a +0ef1: bb 70 inc $70+x +0ef3: d0 02 bne $0ef7 +0ef5: bb 71 inc $71+x +0ef7: e7 70 mov a,($70+x) +0ef9: d5 41 00 mov $0041+x,a +0efc: 9b 70 dec $70+x +0efe: f4 70 mov a,$70+x +0f00: 68 ff cmp a,#$ff +0f02: d0 02 bne $0f06 +0f04: 9b 71 dec $71+x +0f06: 2f 1b bra $0f23 +0f08: bb 70 inc $70+x +0f0a: d0 02 bne $0f0e +0f0c: bb 71 inc $71+x +0f0e: bb 70 inc $70+x +0f10: d0 02 bne $0f14 +0f12: bb 71 inc $71+x +0f14: bb 70 inc $70+x +0f16: d0 02 bne $0f1a +0f18: bb 71 inc $71+x +0f1a: f4 71 mov a,$71+x +0f1c: fd mov y,a +0f1d: f4 70 mov a,$70+x +0f1f: db 41 mov $41+x,y +0f21: d4 40 mov $40+x,a +0f23: eb 15 mov y,$15 +0f25: 5f 59 0d jmp $0d59 + +0f28: dd mov a,y +0f29: 28 7f and a,#$7f +0f2b: 60 clrc +0f2c: 84 36 adc a,$36 +0f2e: 60 clrc +0f2f: 95 01 02 adc a,$0201+x +0f32: d5 30 03 mov $0330+x,a +0f35: f5 91 03 mov a,$0391+x +0f38: d5 31 03 mov $0331+x,a +0f3b: f5 90 04 mov a,$0490+x +0f3e: 5c lsr a +0f3f: e8 00 mov a,#$00 +0f41: 7c ror a +0f42: d5 30 04 mov $0430+x,a +0f45: e8 00 mov a,#$00 +0f47: d4 c1 mov $c1+x,a +0f49: d5 c0 04 mov $04c0+x,a +0f4c: 3f 23 11 call $1123 +0f4f: 2f 03 bra $0f54 +0f51: 5f e1 0f jmp $0fe1 + +; dispatch vcmd +0f54: 3f 13 0a call $0a13 +0f57: d0 f8 bne $0f51 +0f59: 8d 00 mov y,#$00 +0f5b: e4 28 mov a,$28 +0f5d: 80 setc +0f5e: a8 34 sbc a,#$34 +0f60: b0 09 bcs $0f6b +0f62: e4 28 mov a,$28 +0f64: 80 setc +0f65: a8 13 sbc a,#$13 +0f67: b0 06 bcs $0f6f +0f69: dc dec y +0f6a: 1c asl a +0f6b: 7a 27 addw ya,$27 +0f6d: da 27 movw $27,ya +0f6f: e4 28 mov a,$28 +0f71: 1c asl a +0f72: 8d 00 mov y,#$00 +0f74: cd 18 mov x,#$18 +0f76: 9e div ya,x +0f77: 5d mov x,a +0f78: f6 e2 12 mov a,$12e2+y +0f7b: c4 24 mov $24,a +0f7d: f6 e1 12 mov a,$12e1+y +0f80: c4 23 mov $23,a +0f82: f6 e4 12 mov a,$12e4+y +0f85: 2d push a +0f86: f6 e3 12 mov a,$12e3+y +0f89: ee pop y +0f8a: 9a 23 subw ya,$23 +0f8c: eb 27 mov y,$27 +0f8e: cf mul ya +0f8f: dd mov a,y +0f90: 8d 00 mov y,#$00 +0f92: 7a 23 addw ya,$23 +0f94: cb 24 mov $24,y +0f96: 1c asl a +0f97: 2b 24 rol $24 +0f99: c4 23 mov $23,a +0f9b: 2f 04 bra $0fa1 +0f9d: 4b 24 lsr $24 +0f9f: 7c ror a +0fa0: 3d inc x +0fa1: c8 06 cmp x,#$06 +0fa3: d0 f8 bne $0f9d +0fa5: c4 23 mov $23,a +0fa7: f8 14 mov x,$14 +0fa9: f5 c0 02 mov a,$02c0+x +0fac: eb 24 mov y,$24 +0fae: cf mul ya +0faf: da 25 movw $25,ya +0fb1: f5 c0 02 mov a,$02c0+x +0fb4: eb 23 mov y,$23 +0fb6: cf mul ya +0fb7: 6d push y +0fb8: f5 c1 02 mov a,$02c1+x +0fbb: eb 23 mov y,$23 +0fbd: cf mul ya +0fbe: 7a 25 addw ya,$25 +0fc0: da 25 movw $25,ya +0fc2: f5 c1 02 mov a,$02c1+x +0fc5: eb 24 mov y,$24 +0fc7: cf mul ya +0fc8: fd mov y,a +0fc9: ae pop a +0fca: 7a 25 addw ya,$25 +0fcc: da 25 movw $25,ya +0fce: e4 26 mov a,$26 +0fd0: d5 31 01 mov $0131+x,a +0fd3: 2d push a +0fd4: e4 25 mov a,$25 +0fd6: d5 30 01 mov $0130+x,a +0fd9: ce pop x +0fda: eb 15 mov y,$15 +0fdc: 3f 55 14 call $1455 +0fdf: f8 14 mov x,$14 +0fe1: 6f ret + +0fe2: f5 90 01 mov a,$0190+x +0fe5: cf mul ya +0fe6: dd mov a,y +0fe7: d0 01 bne $0fea +0fe9: bc inc a +0fea: d5 91 01 mov $0191+x,a +0fed: 5f e5 0d jmp $0de5 + +0ff0: 2d push a +0ff1: 9f xcn a +0ff2: 28 07 and a,#$07 +0ff4: fd mov y,a +0ff5: f6 00 3b mov a,$3b00+y +0ff8: d5 90 01 mov $0190+x,a ; set dur% from high nybble +0ffb: ae pop a +0ffc: 28 0f and a,#$0f +0ffe: fd mov y,a +0fff: f6 08 3b mov a,$3b08+y ; set per-note vol from low nybble +1002: d5 60 02 mov $0260+x,a +1005: d5 61 02 mov $0261+x,a +1008: 3f 13 0a call $0a13 +100b: d0 03 bne $1010 +100d: 3f 53 0b call $0b53 +1010: 2f 12 bra $1024 +1012: 1c asl a +1013: fd mov y,a +1014: f6 89 12 mov a,$1289+y +1017: 2d push a +1018: f6 88 12 mov a,$1288+y +101b: 2d push a +101c: dd mov a,y +101d: 5c lsr a +101e: fd mov y,a +101f: f6 2d 13 mov a,$132d+y +1022: f0 08 beq $102c +1024: e7 40 mov a,($40+x) +1026: bb 40 inc $40+x +1028: d0 02 bne $102c +102a: bb 41 inc $41+x +102c: fd mov y,a +102d: 6f ret + +; vcmd d5 - set instrument +102e: d5 00 02 mov $0200+x,a +1031: 3f 13 0a call $0a13 +1034: d0 3b bne $1071 +1036: f5 00 02 mov a,$0200+x +1039: fd mov y,a +103a: 10 06 bpl $1042 +103c: 80 setc +103d: a8 ca sbc a,#$ca +103f: 60 clrc +1040: 88 14 adc a,#$14 +1042: 8d 06 mov y,#$06 +1044: cf mul ya +1045: da 23 movw $23,ya +1047: 60 clrc +1048: 98 00 23 adc $23,#$00 +104b: 98 3c 24 adc $24,#$3c +104e: 4d push x +104f: e4 15 mov a,$15 +1051: 9f xcn a +1052: 08 04 or a,#$04 +1054: 5d mov x,a +1055: 8d 00 mov y,#$00 +1057: f7 23 mov a,($23)+y +1059: c9 f2 00 mov $00f2,x +105c: c5 f3 00 mov $00f3,a +105f: 3d inc x +1060: fc inc y +1061: ad 04 cmp y,#$04 +1063: d0 f2 bne $1057 +1065: ce pop x +1066: f7 23 mov a,($23)+y +1068: d5 c1 02 mov $02c1+x,a +106b: fc inc y +106c: f7 23 mov a,($23)+y +106e: d5 c0 02 mov $02c0+x,a +1071: eb 15 mov y,$15 +1073: 6f ret + +; vcmd d6 - call subroutine +1074: 8f 11 b9 mov $b9,#$11 +1077: 6f ret + +; vcmd d7 - volume +1078: d5 90 02 mov $0290+x,a +107b: d5 91 02 mov $0291+x,a +107e: 3f 13 0a call $0a13 +1081: d0 03 bne $1086 +1083: 3f 53 0b call $0b53 +1086: eb 15 mov y,$15 +1088: 6f ret + +; vcmd d8 - set ASDR +1089: 2d push a +108a: e4 15 mov a,$15 +108c: 9f xcn a +108d: 08 05 or a,#$05 +108f: fd mov y,a +1090: ae pop a +1091: 3f e9 13 call $13e9 +1094: 3f 24 10 call $1024 +1097: 2d push a +1098: e4 15 mov a,$15 +109a: 9f xcn a +109b: 08 06 or a,#$06 +109d: fd mov y,a +109e: ae pop a +109f: 3f e9 13 call $13e9 +10a2: 6f ret + +; vcmd d9 - set FIR (1) +10a3: d5 00 03 mov $0300+x,a +10a6: 3f 13 0a call $0a13 +10a9: d0 03 bne $10ae +10ab: 3f 53 0b call $0b53 +10ae: 6f ret + +; vcmd da - set FIR (2) +10af: d5 90 02 mov $0290+x,a +10b2: 3f 24 10 call $1024 +10b5: d5 91 02 mov $0291+x,a +10b8: 3f 13 0a call $0a13 +10bb: d0 03 bne $10c0 +10bd: 3f 53 0b call $0b53 +10c0: 6f ret + +; vcmd db - global transpose +10c1: c4 36 mov $36,a +10c3: 6f ret + +; vcmd dc - per-voice transpose +10c4: d5 01 02 mov $0201+x,a +10c7: 6f ret + +; vcmd dd - loop start +10c8: f4 41 mov a,$41+x +10ca: fd mov y,a +10cb: f4 40 mov a,$40+x +10cd: d5 00 05 mov $0500+x,a +10d0: dd mov a,y +10d1: d5 01 05 mov $0501+x,a +10d4: 2f 0b bra $10e1 +; vcmd de - loop end +10d6: f5 01 05 mov a,$0501+x +10d9: fd mov y,a +10da: f5 00 05 mov a,$0500+x +10dd: db 41 mov $41+x,y +10df: d4 40 mov $40+x,a +10e1: ec 15 00 mov y,$0015 +10e4: 5f 59 0d jmp $0d59 + +; vcmd df - tempo +10e7: c4 2d mov $2d,a +10e9: 6f ret + +10ea: f4 c0 mov a,$c0+x +10ec: d0 34 bne $1122 +10ee: e7 40 mov a,($40+x) +10f0: 68 e0 cmp a,#$e0 +10f2: d0 2e bne $1122 +10f4: 3f 26 10 call $1026 +10f7: 3f 24 10 call $1024 +; vcmd e0 - pitch slide +10fa: d5 01 03 mov $0301+x,a +10fd: 3f 24 10 call $1024 +1100: d4 c0 mov $c0+x,a +1102: 3f 24 10 call $1024 +1105: 60 clrc +1106: 84 36 adc a,$36 +1108: 95 01 02 adc a,$0201+x +110b: 28 7f and a,#$7f +110d: d5 90 03 mov $0390+x,a +1110: 80 setc +1111: b5 30 03 sbc a,$0330+x +1114: fb c0 mov y,$c0+x +1116: 6d push y +1117: ce pop x +1118: 3f a1 0b call $0ba1 +111b: d5 61 03 mov $0361+x,a +111e: dd mov a,y +111f: d5 60 03 mov $0360+x,a +1122: 6f ret + +1123: f5 30 03 mov a,$0330+x +1126: c4 28 mov $28,a +1128: f5 31 03 mov a,$0331+x +112b: c4 27 mov $27,a +112d: 6f ret + +; vcmd e1 - vibrato on +112e: d5 31 04 mov $0431+x,a +1131: 3f 24 10 call $1024 +1134: d5 61 04 mov $0461+x,a +1137: 3f 24 10 call $1024 +; vcmd e2 - vibrato off +113a: d5 00 04 mov $0400+x,a +113d: d5 60 04 mov $0460+x,a +1140: e8 00 mov a,#$00 +1142: d5 90 04 mov $0490+x,a +1145: 6f ret + +; vcmd e3 - vibrato fade +1146: d5 90 04 mov $0490+x,a +1149: 2d push a +114a: 8d 00 mov y,#$00 +114c: f5 00 04 mov a,$0400+x +114f: ce pop x +1150: 9e div ya,x +1151: f8 14 mov x,$14 +1153: d5 91 04 mov $0491+x,a +1156: 6f ret + +; vcmd e4 - master volume +1157: c5 b0 05 mov $05b0,a +115a: 03 b0 05 bbs0 $b0,$1162 +115d: 4c b0 05 lsr $05b0 +1160: 2f 08 bra $116a +1162: 4c b0 05 lsr $05b0 +1165: c5 b0 05 mov $05b0,a +1168: 48 ff eor a,#$ff +116a: c5 b0 05 mov $05b0,a +116d: 3f f0 13 call $13f0 +1170: 6f ret + +; vcmd e5 - tuning +1171: d5 91 03 mov $0391+x,a +1174: 6f ret + +1175: 6f ret + +1176: f6 08 3b mov a,$3b08+y +1179: d5 60 02 mov $0260+x,a +117c: d5 61 02 mov $0261+x,a +117f: 3f 13 0a call $0a13 +1182: d0 f1 bne $1175 +1184: 5f 53 0b jmp $0b53 + +; vcmd e6 - set velocity +1187: 8d 00 mov y,#$00 +1189: 2f eb bra $1176 +; vcmd e7 - set velocity +118b: 8d 01 mov y,#$01 +118d: 2f e7 bra $1176 +; vcmd e8 - set velocity +118f: 8d 02 mov y,#$02 +1191: 2f e3 bra $1176 +; vcmd e9 - set velocity +1193: 8d 03 mov y,#$03 +1195: 2f df bra $1176 +; vcmd ea - set velocity +1197: 8d 04 mov y,#$04 +1199: 2f db bra $1176 +; vcmd eb - set velocity +119b: 8d 05 mov y,#$05 +119d: 2f d7 bra $1176 +; vcmd ec - set velocity +119f: 8d 06 mov y,#$06 +11a1: 2f d3 bra $1176 +; vcmd ed - set velocity +11a3: 8d 07 mov y,#$07 +11a5: 2f cf bra $1176 +; vcmd ee - set velocity +11a7: 8d 08 mov y,#$08 +11a9: 2f cb bra $1176 +; vcmd ef - set velocity +11ab: 8d 09 mov y,#$09 +11ad: 2f c7 bra $1176 +; vcmd f0 - set velocity +11af: 8d 0a mov y,#$0a +11b1: 2f c3 bra $1176 +; vcmd f1 - set velocity +11b3: 8d 0b mov y,#$0b +11b5: 2f bf bra $1176 +; vcmd f2 - set velocity +11b7: 8d 0c mov y,#$0c +11b9: 2f bb bra $1176 +; vcmd f3 - set velocity +11bb: 8d 0d mov y,#$0d +11bd: 2f b7 bra $1176 +; vcmd f4 - set velocity +11bf: 8d 0e mov y,#$0e +11c1: 2f b3 bra $1176 +; vcmd f5 - set velocity +11c3: 8d 0f mov y,#$0f +11c5: 2f af bra $1176 +; vcmd f6 - echo vbits/volume +11c7: c4 38 mov $38,a +11c9: 3f 24 10 call $1024 +11cc: c4 30 mov $30,a +11ce: 3f 24 10 call $1024 +11d1: c4 31 mov $31,a +11d3: 6f ret + +; vcmd f7 - disable echo +11d4: e8 00 mov a,#$00 +11d6: 3f fa 13 call $13fa +11d9: e8 00 mov a,#$00 +11db: 5f ff 13 jmp $13ff + +; vcmd f8 - set echo params +11de: c4 39 mov $39,a +11e0: 3f 24 10 call $1024 +11e3: c4 3a mov $3a,a +11e5: 3f 24 10 call $1024 +11e8: c4 3b mov $3b,a +11ea: 3f ea 0b call $0bea +11ed: e8 20 mov a,#$20 +11ef: 3f 0e 14 call $140e +11f2: e4 39 mov a,$39 +11f4: 3f 2c 14 call $142c +11f7: 1c asl a +11f8: 1c asl a +11f9: 1c asl a +11fa: 48 ff eor a,#$ff +11fc: 80 setc +11fd: 88 fe adc a,#$fe +11ff: 8d 6d mov y,#$6d +1201: cb f2 mov $f2,y +1203: c4 f3 mov $f3,a +1205: e4 30 mov a,$30 +1207: 3f fa 13 call $13fa +120a: e4 31 mov a,$31 +120c: 3f ff 13 call $13ff +120f: e4 38 mov a,$38 +1211: 3f 22 14 call $1422 +1214: e4 3a mov a,$3a +1216: 3f 13 14 call $1413 +1219: 3f 1b 0c call $0c1b +121c: 6f ret + +; vcmd f9 - echo on +121d: e4 13 mov a,$13 +121f: 04 38 or a,$38 +1221: c4 38 mov $38,a +1223: 3f 22 14 call $1422 +1226: 6f ret + +; vcmd fa - echo off +1227: e4 13 mov a,$13 +1229: 04 38 or a,$38 +122b: 44 13 eor a,$13 +122d: c4 38 mov $38,a +122f: 3f 22 14 call $1422 +1232: 6f ret + +; vcmd fb - set FIR filter +1233: c4 b0 mov $b0,a +1235: 3f 24 10 call $1024 +1238: eb b0 mov y,$b0 +123a: 3f 31 14 call $1431 +123d: 6f ret + +; vcmd fc +123e: c4 b0 mov $b0,a +1240: 68 01 cmp a,#$01 +1242: d0 07 bne $124b +1244: e8 01 mov a,#$01 +1246: d5 30 05 mov $0530+x,a +1249: 2f 05 bra $1250 +124b: e8 00 mov a,#$00 +124d: d5 30 05 mov $0530+x,a +1250: 6f ret + +1251: db $00,$10,$20,$30,$40,$50,$60,$70 + +1259: db $0f,$1f,$2f,$3f,$4f,$5f,$6f,$7f + +1261: db $01,$0f,$0f,$01,$01,$01,$01,$01 +1269: db $01,$01,$f1,$f1,$f1,$01,$01,$05 +1271: db $05,$05,$f1,$01,$01,$01,$05,$05 +1279: db $01,$01,$01,$01,$01,$01,$01,$01 +1281: db $01,$01,$01,$01,$01,$01,$01 +1288: db $f1,$f1,$f1,$01,$01,$01,$01,$01,$01 +1291: db $01,$01,$01,$01,$01,$01,$01,$01 +1299: db $01,$01,$01,$01,$01,$01,$01,$01 +12a1: db $01,$01,$01,$01,$01,$01,$01,$01 +12a9: db $01,$01,$01,$01,$01,$01,$01,$01 +12b1: db $01,$01,$01,$01,$01,$01,$01,$01 +12b9: db $01,$01,$01,$01,$01,$01,$01,$01 +12c1: db $01,$01,$01,$01,$01,$01,$01,$01 +12c9: db $01,$01,$01,$01,$01,$01,$01,$01 +12d1: db $01,$01,$01,$01,$01,$01,$01,$01 +12d9: db $01,$01,$01,$01,$01,$01,$01,$01 + +; pitch table +12e1: dw $085f +12e3: dw $08de +12e5: dw $0965 +12e7: dw $09f4 +12e9: dw $0a8c +12eb: dw $0b2c +12ed: dw $0bd6 +12ef: dw $0c8b +12f1: dw $0d4a +12f3: dw $0e14 +12f5: dw $0eea +12f7: dw $0fcd +12f9: dw $10be +12fb: dw $11bd +12fd: dw $12cb +12ff: dw $13e9 +1301: dw $1518 +1303: dw $1659 +1305: dw $17ad +1307: dw $1916 +1309: dw $1a94 +130b: dw $1c28 +130d: dw $1dd5 +130f: dw $1f9b + +; version string +1311: db "== Ver1.32 Copyright K.Suemura ==" + +; vcmd dispatch table +1332: dw $102e ; d5 - set instrument +1334: dw $1074 ; d6 - call subroutine +1336: dw $1078 ; d7 - volume +1338: dw $1089 ; d8 - set ASDR +133a: dw $10a3 ; d9 - set FIR (1) +133c: dw $10af ; da - set FIR (2) +113e: dw $10c1 ; db - global transpose +1140: dw $10c4 ; dc - per-voice transpose +1142: dw $10c8 ; dd - loop start +1144: dw $10d6 ; de - loop end +1146: dw $10e7 ; df - tempo +1148: dw $10fa ; e0 - pitch slide +134a: dw $112e ; e1 - vibrato on +134c: dw $113a ; e2 - vibrato off +134e: dw $1146 ; e3 - vibrato fade +1350: dw $1157 ; e4 - master volume +1352: dw $1171 ; e5 - tuning +1354: dw $1187 ; e6 - set velocity +1356: dw $118b ; e7 - set velocity +1358: dw $118f ; e8 - set velocity +135a: dw $1193 ; e9 - set velocity +135c: dw $1197 ; ea - set velocity +135e: dw $119b ; eb - set velocity +1360: dw $119f ; ec - set velocity +1362: dw $11a3 ; ed - set velocity +1364: dw $11a7 ; ee - set velocity +1366: dw $11ab ; ef - set velocity +1368: dw $11af ; f0 - set velocity +136a: dw $11b3 ; f1 - set velocity +136c: dw $11b7 ; f2 - set velocity +136e: dw $11bb ; f3 - set velocity +1370: dw $11bf ; f4 - set velocity +1372: dw $11c3 ; f5 - set velocity +1374: dw $11c7 ; f6 - echo vbits/volume +1376: dw $11d4 ; f7 - disable echo +1378: dw $11de ; f8 - echo volume fade +137a: dw $121d ; f9 - echo on +137c: dw $1227 ; fa - echo off +137e: dw $1233 ; fb - set FIR filter +1380: dw $123e ; fc + +; vcmd lengths +1382: db $01,$00,$01,$02,$01,$02,$01,$01 ; d5-d9 +138a: db $00,$00,$01,$03,$03,$00,$01,$01 ; da-e4 +1392: db $01,$00,$00,$00,$00,$00,$00,$00 ; e5-e9 +139a: db $00,$00,$00,$00,$00,$00,$00,$00 ; ea-f4 +13a2: db $00,$03,$00,$03,$00,$00,$02,$01 ; f5-f9 + +13aa: db $00,$0c,$18,$24,$30,$3c,$48,$54 +13b2: db $60,$6c,$78,$85,$8d,$94,$98,$9b +13ba: db $9e,$9f,$a0,$a1,$b4,$a2,$a1,$a0 +13c2: db $9f,$9e,$9b,$98,$94,$8d,$85,$78 +13ca: db $6c,$60,$54,$48,$3c,$30,$24,$18 +13d2: db $0c,$b4 + +13d4: db $78,$78,$78,$78,$78,$78,$78,$78 +13dc: db $78,$78,$78,$78,$78,$78,$78,$78 +13e4: db $78,$78,$78,$78,$b4 + +13e9: cb f2 mov $f2,y +13eb: c4 f3 mov $f3,a +13ed: eb 15 mov y,$15 +13ef: 6f ret + +13f0: 8d 0c mov y,#$0c +13f2: 3f e9 13 call $13e9 +13f5: 8d 1c mov y,#$1c +13f7: 5f e9 13 jmp $13e9 + +13fa: 8d 2c mov y,#$2c +13fc: 5f e9 13 jmp $13e9 + +13ff: 8d 3c mov y,#$3c +1401: 5f e9 13 jmp $13e9 + +1404: 8d 4c mov y,#$4c +1406: 5f e9 13 jmp $13e9 + +1409: 8d 5c mov y,#$5c +140b: 5f e9 13 jmp $13e9 + +140e: 8d 6c mov y,#$6c +1410: 5f e9 13 jmp $13e9 + +1413: 8d 0d mov y,#$0d +1415: 5f e9 13 jmp $13e9 + +1418: 8d 2d mov y,#$2d +141a: 5f e9 13 jmp $13e9 + +141d: 8d 3d mov y,#$3d +141f: 5f e9 13 jmp $13e9 + +1422: 8d 4d mov y,#$4d +1424: 5f e9 13 jmp $13e9 + +1427: 8d 6d mov y,#$6d +1429: 5f e9 13 jmp $13e9 + +142c: 8d 7d mov y,#$7d +142e: 5f e9 13 jmp $13e9 + +1431: 6d push y +1432: 2d push a +1433: f6 59 12 mov a,$1259+y +1436: fd mov y,a +1437: ae pop a +1438: 3f e9 13 call $13e9 +143b: ee pop y +143c: 6f ret + +143d: 2d push a +143e: f6 51 12 mov a,$1251+y +1441: 60 clrc +1442: 88 00 adc a,#$00 +1444: fd mov y,a +1445: ae pop a +1446: 5f e9 13 jmp $13e9 +1449: 2d push a +144a: f6 51 12 mov a,$1251+y +144d: 60 clrc +144e: 88 01 adc a,#$01 +1450: fd mov y,a +1451: ae pop a +1452: 5f e9 13 jmp $13e9 +1455: 6d push y +1456: 2d push a +1457: f6 51 12 mov a,$1251+y +145a: 60 clrc +145b: 88 02 adc a,#$02 +145d: fd mov y,a +145e: ae pop a +145f: 3f e9 13 call $13e9 +1462: ee pop y +1463: f6 51 12 mov a,$1251+y +1466: 60 clrc +1467: 88 03 adc a,#$03 +1469: fd mov y,a +146a: 7d mov a,x +146b: 5f e9 13 jmp $13e9 +146e: 2d push a +146f: f6 51 12 mov a,$1251+y +1472: 60 clrc +1473: 88 04 adc a,#$04 +1475: fd mov y,a +1476: ae pop a +1477: 5f e9 13 jmp $13e9 +147a: e8 ee mov a,#$ee +147c: c5 f4 00 mov $00f4,a +147f: cd ff mov x,#$ff +1481: c9 f1 00 mov $00f1,x +1484: 5f c0 ff jmp $ffc0 +1487: e8 ca mov a,#$ca +1489: c5 f4 00 mov $00f4,a +148c: e5 f4 00 mov a,$00f4 +148f: 68 00 cmp a,#$00 +1491: d0 f9 bne $148c +1493: cd 30 mov x,#$30 +1495: c9 f1 00 mov $00f1,x +1498: 5f 00 07 jmp $0700 +149b: e8 20 mov a,#$20 +149d: 3f 0e 14 call $140e +14a0: 5f dd 0c jmp $0cdd + +; note dur%'s +3b00: db $32,$65,$7f,$98,$b2,$cb,$e5,$fc + +; per-note velocity values +3b08: db $0a,$19,$28,$3c,$50,$64,$7d,$96 +3b10: db $aa,$b9,$c8,$d4,$e1,$eb,$f5,$ff \ No newline at end of file From cdf7f02cfc29ee93e8003858d0e71b2ab0aaac30 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:47:51 -0800 Subject: [PATCH 071/116] Rename snes/NSPC/Super Bonk ($0700).bin to snes/NSPC/Kennosuke Suemura/Super Bonk ($0700).bin --- .../{ => Kennosuke Suemura}/Super Bonk ($0700).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Kennosuke Suemura}/Super Bonk ($0700).bin (100%) diff --git a/snes/NSPC/Super Bonk ($0700).bin b/snes/NSPC/Kennosuke Suemura/Super Bonk ($0700).bin similarity index 100% rename from snes/NSPC/Super Bonk ($0700).bin rename to snes/NSPC/Kennosuke Suemura/Super Bonk ($0700).bin From 9f391336ea18f37357c599dd29e4b101f5fe9415 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:48:13 -0800 Subject: [PATCH 072/116] Update and rename snes/NSPC/Super Bonk.s to snes/NSPC/Kennosuke Suemura/Super Bonk.s --- snes/NSPC/{ => Kennosuke Suemura}/Super Bonk.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Kennosuke Suemura}/Super Bonk.s (96%) diff --git a/snes/NSPC/Super Bonk.s b/snes/NSPC/Kennosuke Suemura/Super Bonk.s similarity index 96% rename from snes/NSPC/Super Bonk.s rename to snes/NSPC/Kennosuke Suemura/Super Bonk.s index c12e9a61..1213d2fb 100644 --- a/snes/NSPC/Super Bonk.s +++ b/snes/NSPC/Kennosuke Suemura/Super Bonk.s @@ -1700,4 +1700,5 @@ ; per-note velocity values 3b08: db $0a,$19,$28,$3c,$50,$64,$7d,$96 -3b10: db $aa,$b9,$c8,$d4,$e1,$eb,$f5,$ff \ No newline at end of file + +3b10: db $aa,$b9,$c8,$d4,$e1,$eb,$f5,$ff From 1166a3daa201705824c4b512d3a61274547eefd4 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:48:38 -0800 Subject: [PATCH 073/116] Add files via upload --- ... Pacific Theater of Operations ($0400).bin | Bin 0 -> 3234 bytes .../P.T.O. - Pacific Theater of Operations.s | 1511 +++++++++++++++++ 2 files changed, 1511 insertions(+) create mode 100644 snes/NSPC/P.T.O. - Pacific Theater of Operations ($0400).bin create mode 100644 snes/NSPC/P.T.O. - Pacific Theater of Operations.s diff --git a/snes/NSPC/P.T.O. - Pacific Theater of Operations ($0400).bin b/snes/NSPC/P.T.O. - Pacific Theater of Operations ($0400).bin new file mode 100644 index 0000000000000000000000000000000000000000..f725ca05cac4dc22dc38e66758d75688da0f5e50 GIT binary patch literal 3234 zcmcImYfK#16~24#u#eegXW0czFb<1NA`)k_Jn~XhG}v(hwjlx=yAI{C*m1H+1B2T} zsgND7EB}bW#aDSe(5fLpH$AbPHYBo8Q(I4VIQ2Q;I|v4z4KtTg>M<4*@vw&2qgX@iK5Jk zdj>^J_30Xgu)lZK*4pcZ#jeLFIS_t9zeXn9t`A6K@3*rf440|rD^p|>80+4R8^GhZ#~ zcP5=p5>paJGeu`RmO>2gSvt<}?xo)_zNHh){AqW}8J`WKe)nZh$yN{V_EWn(M{6&d zg=OA-MfKv8C!WmLM|ZqOEz^hod|<%L6W7M{`LQ?Jtyq)tS&Mm1D)345<%MH{`Qrry z-;4{RTbmx;9WoQ-ypX2cM~~K4RX`lR|PvG!dC*H`8Js76D;^ z8c-ZhOzYpTcf;T3WyH7fLB5r5=C|`*k<3#O?_MprpPO;$M(~CowIESK!EGbWKN#R! z!9)ZVb19pIdE3iav5c-O#a+#2$*g#S>k1>;1=97drPq%ARM#al$8IqTrJ6uR*3I0h zVi)F%fwNq!V7PUuaW((dWWMeaDxGlvg!y7M63kLPRmzvH)f&q+JtV)B3M*J(7XEMn zh*w(8!$OXXAp9VzLWzOI;0KAmECO?&hdQ%&{cHy)KX;~2=wdB~CU`1pv0y+)r2 z3E!xdI8m)u;Y5x9AC+E6aL}nN^1V@E(Ux#jG~uxdMq8qzqDz+q=OEfgZT|P!;v5y> zM4zUbaC}xUeULcfC+u)8`)hmFf#0&6jZ0Z2#9LoRiZhsjLl-E(sJN@jEK#@NqJcYS z?WJ|NP6AwoW?{1?IHerLJW-U~s`N_aEqO!xL@E1CdPUe~Q;g;bP^RYXQ& zCE*f-K8O~v846hyxx!Kov5w4&+XyGd^e_^Kb($C#r=cE-EF2k@+T!q^-# z=pdXPg5L?k@w>o1a5Rt|4!+yKB?HNWZ#Hny8gfX* z=9-SRcR)#Z;G zt5<81ZatHgJ1Z?~m35HPE5VBj8~j$e2g-P5k2dyN(ysZhNd?N5Qw0Ec74|_lnD<|V zRPaGg%=^zna{J(?jrsp1)kD9sm>2TWQRTk$utJ>~_LpDJI};V`x8FD+W>1eRjcN>Ei|tU6>BVvATIw|R=hjUkucqMicwlG>y0;pI*Um78M-uNU zDH*^G87(~?{B9tpf{FVn{UO6rOxMYr$=DZp%N#f|t=No@LRbg$ZyW)BTHOYq))98z zxtK@TL%9oix)V{wnI49F9syyWE(EvUGu(P7)uIkV9}5gcaTn*jo_E>B7CL%TE%D3l z2=b&_#^U{M;OGx7?s^_*e`070*l=@oIzHQwNj();T{sRg6Q7OGie-d@K(pi)+HF-T+D|!l<>ouTcFr*8UH9%k{0r~is{5-e@0I^} zA&un83o5#iM!}DT6~Ff;JW^LXfiO2z^l=*f)x9PtZ+rYVU0(y&b>qeox_JvF-Jq9M z5N2koF2TDUb%dz|l|Z%YE4-DraVRo(&Js0cR?e9ftkXGSaI!Q9<`l|Oi!rxm=FVZo zW>6Y9Hs!x*E^y3>(~vSiw( R24h!|HV4uyEe2~C{R`gLj>!N3 literal 0 HcmV?d00001 diff --git a/snes/NSPC/P.T.O. - Pacific Theater of Operations.s b/snes/NSPC/P.T.O. - Pacific Theater of Operations.s new file mode 100644 index 00000000..bd946532 --- /dev/null +++ b/snes/NSPC/P.T.O. - Pacific Theater of Operations.s @@ -0,0 +1,1511 @@ +0400: 20 clrp +0401: cd cf mov x,#$cf +0403: bd mov sp,x +0404: e8 00 mov a,#$00 +0406: 5d mov x,a +0407: d5 00 02 mov $0200+x,a +040a: 3d inc x +040b: d0 fa bne $0407 +040d: d5 00 03 mov $0300+x,a +0410: 3d inc x +0411: d0 fa bne $040d +0413: af mov (x)+,a +0414: c8 e0 cmp x,#$e0 +0416: d0 fb bne $0413 +0418: e8 02 mov a,#$02 +041a: 3f be 0b call $0bbe +041d: a2 48 set5 $48 +041f: e8 7f mov a,#$7f +0421: 8d 0c mov y,#$0c +0423: 3f 0f 06 call $060f +0426: 8d 1c mov y,#$1c +0428: 3f 0f 06 call $060f +042b: e8 13 mov a,#$13 +042d: 8d 5d mov y,#$5d +042f: 3f 0f 06 call $060f +0432: e8 f0 mov a,#$f0 +0434: c5 f1 00 mov $00f1,a +0437: e8 10 mov a,#$10 +0439: c5 fa 00 mov $00fa,a +043c: c4 53 mov $53,a +043e: e8 01 mov a,#$01 +0440: c5 f1 00 mov $00f1,a +0443: 8d 0a mov y,#$0a +0445: ad 05 cmp y,#$05 +0447: f0 07 beq $0450 +0449: b0 08 bcs $0453 +044b: 69 4d 4c cmp ($4c),($4d) +044e: d0 11 bne $0461 +0450: e3 4c 0e bbs7 $4c,$0461 +0453: f6 6a 0f mov a,$0f6a+y +0456: c5 f2 00 mov $00f2,a +0459: f6 74 0f mov a,$0f74+y +045c: 5d mov x,a +045d: e6 mov a,(x) +045e: c5 f3 00 mov $00f3,a +0461: fe e2 dbnz y,$0445 +0463: cb 45 mov $45,y +0465: cb 46 mov $46,y +0467: ec fd 00 mov y,$00fd +046a: f0 fb beq $0467 +046c: 6d push y +046d: e8 20 mov a,#$20 +046f: cf mul ya +0470: 60 clrc +0471: 84 43 adc a,$43 +0473: c4 43 mov $43,a +0475: 90 4b bcc $04c2 +0477: cd 01 mov x,#$01 +0479: 3f 0a 05 call $050a +047c: c4 05 mov $05,a +047e: cd 03 mov x,#$03 +0480: 3f 0a 05 call $050a +0483: c4 07 mov $07,a +0485: e4 51 mov a,$51 +0487: c4 21 mov $21,a +0489: ba 52 movw ya,$52 +048b: da 22 movw $22,ya +048d: 8d 00 mov y,#$00 +048f: e8 20 mov a,#$20 +0491: da 52 movw $52,ya +0493: e4 54 mov a,$54 +0495: c4 24 mov $24,a +0497: e4 55 mov a,$55 +0499: c4 25 mov $25,a +049b: ba 56 movw ya,$56 +049d: da 26 movw $26,ya +049f: 3f 0f 07 call $070f +04a2: ba 26 movw ya,$26 +04a4: da 56 movw $56,ya +04a6: e4 25 mov a,$25 +04a8: c4 55 mov $55,a +04aa: e4 24 mov a,$24 +04ac: c4 54 mov $54,a +04ae: ba 22 movw ya,$22 +04b0: da 52 movw $52,ya +04b2: e4 21 mov a,$21 +04b4: c4 51 mov $51,a +04b6: cd 02 mov x,#$02 +04b8: 3f 0a 05 call $050a +04bb: 69 4d 4c cmp ($4c),($4d) +04be: f0 02 beq $04c2 +04c0: ab 4c inc $4c +04c2: e4 53 mov a,$53 +04c4: ee pop y +04c5: cf mul ya +04c6: 60 clrc +04c7: 84 51 adc a,$51 +04c9: c4 51 mov $51,a +04cb: 90 0a bcc $04d7 +04cd: 3f 37 08 call $0837 +04d0: cd 00 mov x,#$00 +04d2: 3f 0a 05 call $050a +04d5: 2f 18 bra $04ef +04d7: e4 04 mov a,$04 +04d9: 04 06 or a,$06 +04db: f0 12 beq $04ef +04dd: cd 00 mov x,#$00 +04df: 8f 01 47 mov $47,#$01 +04e2: f4 33 mov a,$33+x +04e4: f0 03 beq $04e9 +04e6: 3f 93 0e call $0e93 +04e9: 3d inc x +04ea: 3d inc x +04eb: 0b 47 asl $47 +04ed: d0 f3 bne $04e2 +04ef: 5f 43 04 jmp $0443 + +04f2: e8 60 mov a,#$60 +04f4: 8d 6c mov y,#$6c +04f6: 3f 0f 06 call $060f +04f9: e8 ff mov a,#$ff +04fb: 8d 5c mov y,#$5c +04fd: 3f 0f 06 call $060f +0500: e8 00 mov a,#$00 +0502: fd mov y,a +0503: 3f 2e 0b call $0b2e +0506: 3f a4 0f call $0fa4 +0509: 6f ret + +050a: f4 04 mov a,$04+x +050c: d5 f4 00 mov $00f4+x,a +050f: f5 f4 00 mov a,$00f4+x +0512: 75 f4 00 cmp a,$00f4+x +0515: d0 f8 bne $050f +0517: d4 00 mov $00+x,a +0519: 6f ret + +051a: ad ca cmp y,#$ca +051c: 90 05 bcc $0523 +051e: 3f c9 09 call $09c9 +0521: 8d a4 mov y,#$a4 +0523: ad c8 cmp y,#$c8 +0525: b0 f2 bcs $0519 +0527: e4 16 mov a,$16 +0529: 24 47 and a,$47 +052b: d0 ec bne $0519 +052d: dd mov a,y +052e: 28 7f and a,#$7f +0530: 60 clrc +0531: 84 50 adc a,$50 +0533: 60 clrc +0534: 95 f0 02 adc a,$02f0+x +0537: d5 61 03 mov $0361+x,a +053a: f5 81 03 mov a,$0381+x +053d: d5 60 03 mov $0360+x,a +0540: f5 b1 02 mov a,$02b1+x +0543: 5c lsr a +0544: e8 00 mov a,#$00 +0546: 7c ror a +0547: d5 a0 02 mov $02a0+x,a +054a: e8 00 mov a,#$00 +054c: d4 b0 mov $b0+x,a +054e: d5 00 01 mov $0100+x,a +0551: d5 d0 02 mov $02d0+x,a +0554: d4 c0 mov $c0+x,a +0556: 09 47 5e or ($5e),($47) +0559: 09 47 45 or ($45),($47) +055c: f5 80 02 mov a,$0280+x +055f: d4 a0 mov $a0+x,a +0561: f0 1e beq $0581 +0563: f5 81 02 mov a,$0281+x +0566: d4 a1 mov $a1+x,a +0568: f5 90 02 mov a,$0290+x +056b: d0 0a bne $0577 +056d: f5 61 03 mov a,$0361+x +0570: 80 setc +0571: b5 91 02 sbc a,$0291+x +0574: d5 61 03 mov $0361+x,a +0577: f5 91 02 mov a,$0291+x +057a: 60 clrc +057b: 95 61 03 adc a,$0361+x +057e: 3f 98 0b call $0b98 +0581: 3f b0 0b call $0bb0 +0584: 8d 00 mov y,#$00 +0586: e4 0f mov a,$0f +0588: 80 setc +0589: a8 34 sbc a,#$34 +058b: b0 09 bcs $0596 +058d: e4 0f mov a,$0f +058f: 80 setc +0590: a8 13 sbc a,#$13 +0592: b0 06 bcs $059a +0594: dc dec y +0595: 1c asl a +0596: 7a 0e addw ya,$0e +0598: da 0e movw $0e,ya +059a: 4d push x +059b: e4 0f mov a,$0f +059d: 1c asl a +059e: 8d 00 mov y,#$00 +05a0: cd 18 mov x,#$18 +05a2: 9e div ya,x +05a3: 5d mov x,a +05a4: f6 80 0f mov a,$0f80+y +05a7: c4 13 mov $13,a +05a9: f6 7f 0f mov a,$0f7f+y +05ac: c4 12 mov $12,a +05ae: f6 82 0f mov a,$0f82+y +05b1: 2d push a +05b2: f6 81 0f mov a,$0f81+y +05b5: ee pop y +05b6: 9a 12 subw ya,$12 +05b8: eb 0e mov y,$0e +05ba: cf mul ya +05bb: dd mov a,y +05bc: 8d 00 mov y,#$00 +05be: 7a 12 addw ya,$12 +05c0: cb 13 mov $13,y +05c2: 1c asl a +05c3: 2b 13 rol $13 +05c5: c4 12 mov $12,a +05c7: 2f 04 bra $05cd +05c9: 4b 13 lsr $13 +05cb: 7c ror a +05cc: 3d inc x +05cd: c8 06 cmp x,#$06 +05cf: d0 f8 bne $05c9 +05d1: c4 12 mov $12,a +05d3: ce pop x +05d4: f5 20 02 mov a,$0220+x +05d7: eb 13 mov y,$13 +05d9: cf mul ya +05da: da 14 movw $14,ya +05dc: f5 20 02 mov a,$0220+x +05df: eb 12 mov y,$12 +05e1: cf mul ya +05e2: 6d push y +05e3: f5 21 02 mov a,$0221+x +05e6: eb 12 mov y,$12 +05e8: cf mul ya +05e9: 7a 14 addw ya,$14 +05eb: da 14 movw $14,ya +05ed: f5 21 02 mov a,$0221+x +05f0: eb 13 mov y,$13 +05f2: cf mul ya +05f3: fd mov y,a +05f4: ae pop a +05f5: 7a 14 addw ya,$14 +05f7: da 14 movw $14,ya +05f9: 7d mov a,x +05fa: 9f xcn a +05fb: 5c lsr a +05fc: 08 02 or a,#$02 +05fe: fd mov y,a +05ff: e4 14 mov a,$14 +0601: 3f 07 06 call $0607 +0604: fc inc y +0605: e4 15 mov a,$15 +0607: 2d push a +0608: e4 47 mov a,$47 +060a: 24 16 and a,$16 +060c: ae pop a +060d: d0 06 bne $0615 +060f: cc f2 00 mov $00f2,y +0612: c5 f3 00 mov $00f3,a +0615: 6f ret + +0616: 8d 00 mov y,#$00 +0618: f7 1d mov a,($1d)+y +061a: 3a 1d incw $1d +061c: 2d push a +061d: f7 1d mov a,($1d)+y +061f: 3a 1d incw $1d +0621: 2f 0b bra $062e +0623: 8d 00 mov y,#$00 +0625: f7 1b mov a,($1b)+y +0627: 3a 1b incw $1b +0629: 2d push a +062a: f7 1b mov a,($1b)+y +062c: 3a 1b incw $1b +062e: fd mov y,a +062f: ae pop a +0630: 6f ret + +; play song +0631: c4 04 mov $04,a +0633: 1c asl a +0634: 5d mov x,a +0635: f5 19 a0 mov a,$a019+x +0638: fd mov y,a +0639: f5 18 a0 mov a,$a018+x +063c: da 1d movw $1d,ya +063e: da 18 movw $18,ya +0640: 8f 02 0a mov $0a,#$02 +0643: e8 00 mov a,#$00 +0645: fd mov y,a +0646: 3f 2e 0b call $0b2e +0649: 3f 60 09 call $0960 +064c: e8 3f mov a,#$3f +064e: 2f 2a bra $067a +0650: c4 06 mov $06,a +0652: 1c asl a +0653: 5d mov x,a +0654: f5 ff fd mov a,$fdff+x +0657: fd mov y,a +0658: f5 fe fd mov a,$fdfe+x +065b: da 1b movw $1b,ya +065d: e4 07 mov a,$07 +065f: d0 02 bne $0663 +0661: e8 13 mov a,#$13 +0663: 8d 60 mov y,#$60 +0665: 3f 0f 06 call $060f +0668: fc inc y +0669: 3f 0f 06 call $060f +066c: 8d 70 mov y,#$70 +066e: 3f 0f 06 call $060f +0671: fc inc y +0672: 3f 0f 06 call $060f +0675: 8f 02 0b mov $0b,#$02 +0678: e8 c0 mov a,#$c0 +067a: 8d 5c mov y,#$5c +067c: 3f 0f 06 call $060f +067f: 04 16 or a,$16 +0681: c4 16 mov $16,a +0683: 6f ret + +0684: cd 00 mov x,#$00 +0686: 8f 40 47 mov $47,#$40 +0689: 8f 06 17 mov $17,#$06 +068c: 6d push y +068d: eb 00 mov y,$00 +068f: e8 ff mov a,#$ff +0691: d5 01 03 mov $0301+x,a +0694: e8 0a mov a,#$0a +0696: 3f 22 0a call $0a22 +0699: d5 11 02 mov $0211+x,a +069c: d5 81 03 mov $0381+x,a +069f: d5 f0 02 mov $02f0+x,a +06a2: d5 80 02 mov $0280+x,a +06a5: d4 b1 mov $b1+x,a +06a7: d4 c1 mov $c1+x,a +06a9: 3d inc x +06aa: 3d inc x +06ab: 0b 47 asl $47 +06ad: 6e 17 df dbnz $17,$068f +06b0: ee pop y +06b1: e8 00 mov a,#$00 +06b3: c4 5a mov $5a,a +06b5: c4 68 mov $68,a +06b7: c4 54 mov $54,a +06b9: c4 50 mov $50,a +06bb: c4 42 mov $42,a +06bd: c4 5f mov $5f,a +06bf: 8f ff 59 mov $59,#$ff +06c2: 8f 20 53 mov $53,#$20 +06c5: fd mov y,a +06c6: da 56 movw $56,ya +06c8: 6f ret + +06c9: cd 0c mov x,#$0c +06cb: 8f 40 47 mov $47,#$40 +06ce: 8f 02 17 mov $17,#$02 +06d1: e8 ff mov a,#$ff +06d3: d5 01 03 mov $0301+x,a +06d6: e8 0a mov a,#$0a +06d8: 3f 22 0a call $0a22 +06db: d5 11 02 mov $0211+x,a +06de: d5 81 03 mov $0381+x,a +06e1: d5 f0 02 mov $02f0+x,a +06e4: d5 80 02 mov $0280+x,a +06e7: d4 b1 mov $b1+x,a +06e9: d4 c1 mov $c1+x,a +06eb: 3d inc x +06ec: 3d inc x +06ed: 0b 47 asl $47 +06ef: 6e 17 df dbnz $17,$06d1 +06f2: e4 04 mov a,$04 +06f4: d0 15 bne $070b +06f6: e8 00 mov a,#$00 +06f8: c4 5a mov $5a,a +06fa: c4 68 mov $68,a +06fc: c4 50 mov $50,a +06fe: c4 5f mov $5f,a +0700: 8f ff 59 mov $59,#$ff +0703: 8f 20 53 mov $53,#$20 +0706: c4 54 mov $54,a +0708: fd mov y,a +0709: da 56 movw $56,ya +070b: 8f 00 1a mov $1a,#$00 +070e: 6f ret + +070f: eb 09 mov y,$09 +0711: e4 02 mov a,$02 +0713: c4 09 mov $09,a +0715: 7e 02 cmp y,$02 +0717: f0 07 beq $0720 +0719: ad fe cmp y,#$fe +071b: f0 1a beq $0737 +071d: 5f 50 06 jmp $0650 + +0720: e4 06 mov a,$06 +0722: f0 13 beq $0737 +0724: 68 fe cmp a,#$fe +0726: f0 0f beq $0737 +0728: e4 0b mov a,$0b +072a: d0 03 bne $072f +072c: 5f b2 07 jmp $07b2 + +072f: 6e 0b 02 dbnz $0b,$0734 +0732: 2f 04 bra $0738 +0734: 5f c9 06 jmp $06c9 + +0737: 6f ret + +0738: 3f 23 06 call $0623 +073b: d0 1f bne $075c +073d: fd mov y,a +073e: d0 04 bne $0744 +0740: 8f fe 06 mov $06,#$fe +0743: 6f ret + +0744: 8b 1a dec $1a +0746: 10 02 bpl $074a +0748: c4 1a mov $1a,a +074a: 3f 23 06 call $0623 +074d: f8 1a mov x,$1a +074f: f0 02 beq $0753 +0751: da 1b movw $1b,ya +0753: e4 1f mov a,$1f +0755: 8d 5c mov y,#$5c +0757: 3f 0f 06 call $060f +075a: 2f dc bra $0738 +075c: da 14 movw $14,ya +075e: 8f 40 47 mov $47,#$40 +0761: 8f 00 1f mov $1f,#$00 +0764: cd 0c mov x,#$0c +0766: 8d 00 mov y,#$00 +0768: f7 14 mov a,($14)+y +076a: d5 32 00 mov $0032+x,a +076d: d0 06 bne $0775 +076f: e4 47 mov a,$47 +0771: 04 1f or a,$1f +0773: c4 1f mov $1f,a +0775: fc inc y +0776: 3d inc x +0777: f7 14 mov a,($14)+y +0779: d5 32 00 mov $0032+x,a +077c: fc inc y +077d: 3d inc x +077e: 0b 47 asl $47 +0780: d0 e6 bne $0768 +0782: e4 16 mov a,$16 +0784: 28 3f and a,#$3f +0786: 04 1f or a,$1f +0788: c4 16 mov $16,a +078a: cd 0c mov x,#$0c +078c: 8f 40 47 mov $47,#$40 +078f: 8f 02 17 mov $17,#$02 +0792: f4 33 mov a,$33+x +0794: f0 0a beq $07a0 +0796: f5 11 02 mov a,$0211+x +0799: d0 05 bne $07a0 +079b: e8 00 mov a,#$00 +079d: 3f c9 09 call $09c9 +07a0: e8 00 mov a,#$00 +07a2: d4 80 mov $80+x,a +07a4: d4 90 mov $90+x,a +07a6: d4 91 mov $91+x,a +07a8: bc inc a +07a9: d4 70 mov $70+x,a +07ab: 3d inc x +07ac: 3d inc x +07ad: 0b 47 asl $47 +07af: 6e 17 e0 dbnz $17,$0792 +07b2: cd 0c mov x,#$0c +07b4: 8f 00 5e mov $5e,#$00 +07b7: 8f 40 47 mov $47,#$40 +07ba: 8f 02 17 mov $17,#$02 +07bd: d8 44 mov $44,x +07bf: f4 33 mov a,$33+x +07c1: f0 69 beq $082c +07c3: 9b 70 dec $70+x +07c5: d0 5f bne $0826 +07c7: 3f bf 09 call $09bf +07ca: d0 1a bne $07e6 +07cc: f4 80 mov a,$80+x +07ce: d0 03 bne $07d3 +07d0: 5f 38 07 jmp $0738 + +07d3: 3f de 0a call $0ade +07d6: 9b 80 dec $80+x +07d8: d0 ed bne $07c7 +07da: f5 30 02 mov a,$0230+x +07dd: d4 32 mov $32+x,a +07df: f5 31 02 mov a,$0231+x +07e2: d4 33 mov $33+x,a +07e4: 2f e1 bra $07c7 +07e6: 30 20 bmi $0808 +07e8: d5 00 02 mov $0200+x,a +07eb: 3f bf 09 call $09bf +07ee: 30 18 bmi $0808 +07f0: 2d push a +07f1: 9f xcn a +07f2: 28 07 and a,#$07 +07f4: fd mov y,a +07f5: f6 02 a0 mov a,$a002+y +07f8: d5 01 02 mov $0201+x,a +07fb: ae pop a +07fc: 28 0f and a,#$0f +07fe: fd mov y,a +07ff: f6 0a a0 mov a,$a00a+y +0802: d5 10 02 mov $0210+x,a +0805: 3f bf 09 call $09bf +; vcmd branches 80-ff +0808: 68 e0 cmp a,#$e0 +080a: 90 05 bcc $0811 +080c: 3f ad 09 call $09ad +080f: 2f b6 bra $07c7 +; vcmds 80-df - note +0811: 3f 1a 05 call $051a +0814: f5 00 02 mov a,$0200+x +0817: d4 70 mov $70+x,a +0819: fd mov y,a +081a: f5 01 02 mov a,$0201+x +081d: cf mul ya +081e: dd mov a,y +081f: d0 01 bne $0822 +0821: bc inc a +0822: d4 71 mov $71+x,a +0824: 2f 03 bra $0829 +0826: 3f a1 0d call $0da1 +0829: 3f 78 0b call $0b78 +082c: 3d inc x +082d: 3d inc x +082e: 0b 47 asl $47 +0830: 6e 17 8a dbnz $17,$07bd +0833: 3f 6f 09 call $096f +0836: 6f ret + +0837: eb 08 mov y,$08 +0839: e4 00 mov a,$00 +083b: c4 08 mov $08,a +083d: 7e 00 cmp y,$00 +083f: f0 0e beq $084f +0841: 68 ff cmp a,#$ff +0843: d0 03 bne $0848 +0845: 5f f2 04 jmp $04f2 + +0848: 68 fe cmp a,#$fe +084a: f0 1a beq $0866 +084c: 5f 31 06 jmp $0631 + +084f: e4 04 mov a,$04 +0851: f0 13 beq $0866 +0853: 68 fe cmp a,#$fe +0855: f0 0f beq $0866 +0857: e4 0a mov a,$0a +0859: d0 03 bne $085e +085b: 5f e0 08 jmp $08e0 + +085e: 6e 0a 02 dbnz $0a,$0863 +0861: 2f 04 bra $0867 +0863: 5f 84 06 jmp $0684 + +0866: 6f ret + +0867: 3f 16 06 call $0616 +086a: d0 22 bne $088e +086c: fd mov y,a +086d: d0 0e bne $087d +086f: e4 05 mov a,$05 +0871: f0 06 beq $0879 +0873: ba 18 movw ya,$18 +0875: da 1d movw $1d,ya +0877: 2f ee bra $0867 +0879: 8f fe 04 mov $04,#$fe +087c: 6f ret + +087d: 8b 42 dec $42 +087f: 10 02 bpl $0883 +0881: c4 42 mov $42,a +0883: 3f 16 06 call $0616 +0886: f8 42 mov x,$42 +0888: f0 02 beq $088c +088a: da 1d movw $1d,ya +088c: 2f d9 bra $0867 +088e: da 14 movw $14,ya +0890: 8d 0b mov y,#$0b +0892: 8f 20 47 mov $47,#$20 +0895: 8f 00 20 mov $20,#$00 +0898: f7 14 mov a,($14)+y +089a: d6 32 00 mov $0032+y,a +089d: d0 06 bne $08a5 +089f: e4 47 mov a,$47 +08a1: 04 20 or a,$20 +08a3: c4 20 mov $20,a +08a5: dc dec y +08a6: f7 14 mov a,($14)+y +08a8: d6 32 00 mov $0032+y,a +08ab: dc dec y +08ac: 4b 47 lsr $47 +08ae: d0 e8 bne $0898 +08b0: e4 16 mov a,$16 +08b2: 28 c0 and a,#$c0 +08b4: 04 20 or a,$20 +08b6: c4 16 mov $16,a +08b8: cd 00 mov x,#$00 +08ba: 8f 01 47 mov $47,#$01 +08bd: 8f 06 17 mov $17,#$06 +08c0: f4 33 mov a,$33+x +08c2: f0 0a beq $08ce +08c4: f5 11 02 mov a,$0211+x +08c7: d0 05 bne $08ce +08c9: e8 00 mov a,#$00 +08cb: 3f c9 09 call $09c9 +08ce: e8 00 mov a,#$00 +08d0: d4 80 mov $80+x,a +08d2: d4 90 mov $90+x,a +08d4: d4 91 mov $91+x,a +08d6: bc inc a +08d7: d4 70 mov $70+x,a +08d9: 3d inc x +08da: 3d inc x +08db: 0b 47 asl $47 +08dd: 6e 17 e0 dbnz $17,$08c0 +08e0: cd 00 mov x,#$00 +08e2: d8 5e mov $5e,x +08e4: 8f 01 47 mov $47,#$01 +08e7: 8f 06 17 mov $17,#$06 +08ea: d8 44 mov $44,x +08ec: f4 33 mov a,$33+x +08ee: f0 69 beq $0959 +08f0: 9b 70 dec $70+x +08f2: d0 5f bne $0953 +08f4: 3f bf 09 call $09bf +08f7: d0 1a bne $0913 +08f9: f4 80 mov a,$80+x +08fb: d0 03 bne $0900 +08fd: 5f 67 08 jmp $0867 + +0900: 3f de 0a call $0ade +0903: 9b 80 dec $80+x +0905: d0 ed bne $08f4 +0907: f5 30 02 mov a,$0230+x +090a: d4 32 mov $32+x,a +090c: f5 31 02 mov a,$0231+x +090f: d4 33 mov $33+x,a +0911: 2f e1 bra $08f4 +0913: 30 20 bmi $0935 +0915: d5 00 02 mov $0200+x,a +0918: 3f bf 09 call $09bf +091b: 30 18 bmi $0935 +091d: 2d push a +091e: 9f xcn a +091f: 28 07 and a,#$07 +0921: fd mov y,a +0922: f6 02 a0 mov a,$a002+y +0925: d5 01 02 mov $0201+x,a +0928: ae pop a +0929: 28 0f and a,#$0f +092b: fd mov y,a +092c: f6 0a a0 mov a,$a00a+y +092f: d5 10 02 mov $0210+x,a +0932: 3f bf 09 call $09bf +0935: 68 e0 cmp a,#$e0 +0937: 90 05 bcc $093e +0939: 3f ad 09 call $09ad +093c: 2f b6 bra $08f4 +093e: 3f 1a 05 call $051a +0941: f5 00 02 mov a,$0200+x +0944: d4 70 mov $70+x,a +0946: fd mov y,a +0947: f5 01 02 mov a,$0201+x +094a: cf mul ya +094b: dd mov a,y +094c: d0 01 bne $094f +094e: bc inc a +094f: d4 71 mov $71+x,a +0951: 2f 03 bra $0956 +0953: 3f a1 0d call $0da1 +0956: 3f 78 0b call $0b78 +0959: 3d inc x +095a: 3d inc x +095b: 0b 47 asl $47 +095d: 6e 17 8a dbnz $17,$08ea +0960: e4 54 mov a,$54 +0962: f0 0b beq $096f +0964: ba 56 movw ya,$56 +0966: 7a 52 addw ya,$52 +0968: 6e 54 02 dbnz $54,$096d +096b: ba 54 movw ya,$54 +096d: da 52 movw $52,ya +096f: e4 68 mov a,$68 +0971: f0 15 beq $0988 +0973: ba 64 movw ya,$64 +0975: 7a 60 addw ya,$60 +0977: da 60 movw $60,ya +0979: ba 66 movw ya,$66 +097b: 7a 62 addw ya,$62 +097d: 6e 68 06 dbnz $68,$0986 +0980: ba 68 movw ya,$68 +0982: da 60 movw $60,ya +0984: eb 6a mov y,$6a +0986: da 62 movw $62,ya +0988: e4 5a mov a,$5a +098a: f0 0e beq $099a +098c: ba 5c movw ya,$5c +098e: 7a 58 addw ya,$58 +0990: 6e 5a 02 dbnz $5a,$0995 +0993: ba 5a movw ya,$5a +0995: da 58 movw $58,ya +0997: 8f ff 5e mov $5e,#$ff +099a: cd 00 mov x,#$00 +099c: 8f 01 47 mov $47,#$01 +099f: f4 33 mov a,$33+x +09a1: f0 03 beq $09a6 +09a3: 3f d8 0c call $0cd8 +09a6: 3d inc x +09a7: 3d inc x +09a8: 0b 47 asl $47 +09aa: d0 f3 bne $099f +09ac: 6f ret + +; dispatch vcmd in A (e0-ff) +09ad: 1c asl a +09ae: fd mov y,a +09af: f6 bf 0b mov a,$0bbf+y +09b2: 2d push a +09b3: f6 be 0b mov a,$0bbe+y +09b6: 2d push a +09b7: dd mov a,y +09b8: 5c lsr a +09b9: fd mov y,a +09ba: f6 5a 0c mov a,$0c5a+y +09bd: f0 08 beq $09c7 +09bf: e7 32 mov a,($32+x) +09c1: bb 32 inc $32+x +09c3: d0 02 bne $09c7 +09c5: bb 33 inc $33+x +09c7: fd mov y,a +09c8: 6f ret + +; vcmd e0 - set instrument +09c9: d5 11 02 mov $0211+x,a +09cc: fd mov y,a +09cd: 10 06 bpl $09d5 +09cf: 80 setc +09d0: a8 ca sbc a,#$ca +09d2: 60 clrc +09d3: 84 5f adc a,$5f +09d5: 8d 06 mov y,#$06 +09d7: cf mul ya +09d8: da 12 movw $12,ya +09da: 60 clrc +09db: 98 00 12 adc $12,#$00 +09de: 98 10 13 adc $13,#$10 +09e1: e4 16 mov a,$16 +09e3: 24 47 and a,$47 +09e5: d0 3a bne $0a21 +09e7: 4d push x +09e8: 7d mov a,x +09e9: 9f xcn a +09ea: 5c lsr a +09eb: 08 04 or a,#$04 +09ed: 5d mov x,a +09ee: 8d 00 mov y,#$00 +09f0: f7 12 mov a,($12)+y +09f2: 10 0e bpl $0a02 +09f4: 28 1f and a,#$1f +09f6: 38 20 48 and $48,#$20 +09f9: 0e 48 00 tset1 $0048 +09fc: 09 47 49 or ($49),($47) +09ff: dd mov a,y +0a00: 2f 07 bra $0a09 +0a02: e4 47 mov a,$47 +0a04: 4e 49 00 tclr1 $0049 +0a07: f7 12 mov a,($12)+y +0a09: c9 f2 00 mov $00f2,x +0a0c: c5 f3 00 mov $00f3,a +0a0f: 3d inc x +0a10: fc inc y +0a11: ad 04 cmp y,#$04 +0a13: d0 f2 bne $0a07 +0a15: ce pop x +0a16: f7 12 mov a,($12)+y +0a18: d5 21 02 mov $0221+x,a +0a1b: fc inc y +0a1c: f7 12 mov a,($12)+y +0a1e: d5 20 02 mov $0220+x,a +0a21: 6f ret + +; vcmd e1 - pan +0a22: d5 51 03 mov $0351+x,a +0a25: 28 1f and a,#$1f +0a27: d5 31 03 mov $0331+x,a +0a2a: e8 00 mov a,#$00 +0a2c: d5 30 03 mov $0330+x,a +0a2f: 6f ret + +; vcmd e2 - pan fade +0a30: d4 91 mov $91+x,a +0a32: 2d push a +0a33: 3f bf 09 call $09bf +0a36: d5 50 03 mov $0350+x,a +0a39: 80 setc +0a3a: b5 31 03 sbc a,$0331+x +0a3d: ce pop x +0a3e: 3f 04 0c call $0c04 +0a41: d5 40 03 mov $0340+x,a +0a44: dd mov a,y +0a45: d5 41 03 mov $0341+x,a +0a48: 6f ret + +; vcmd e3 - vibrato on +0a49: d5 b0 02 mov $02b0+x,a +0a4c: 3f bf 09 call $09bf +0a4f: d5 a1 02 mov $02a1+x,a +0a52: 3f bf 09 call $09bf +; vcmd e4 - vibrato off +0a55: d4 b1 mov $b1+x,a +0a57: d5 c1 02 mov $02c1+x,a +0a5a: e8 00 mov a,#$00 +0a5c: d5 b1 02 mov $02b1+x,a +0a5f: 6f ret + +; vcmd e5 - master volume +0a60: e8 00 mov a,#$00 +0a62: da 58 movw $58,ya +0a64: 6f ret + +; vcmd e6 - master volume fade +0a65: c4 5a mov $5a,a +0a67: 3f bf 09 call $09bf +0a6a: c4 5b mov $5b,a +0a6c: 80 setc +0a6d: a4 59 sbc a,$59 +0a6f: f8 5a mov x,$5a +0a71: 3f 04 0c call $0c04 +0a74: da 5c movw $5c,ya +0a76: 6f ret + +; vcmd e7 - tempo +0a77: e8 00 mov a,#$00 +0a79: da 52 movw $52,ya +0a7b: 6f ret + +; vcmd e8 - tempo fade +0a7c: c4 54 mov $54,a +0a7e: 3f bf 09 call $09bf +0a81: c4 55 mov $55,a +0a83: 80 setc +0a84: a4 53 sbc a,$53 +0a86: f8 54 mov x,$54 +0a88: 3f 04 0c call $0c04 +0a8b: da 56 movw $56,ya +0a8d: 6f ret + +; vcmd e9 - global transpose +0a8e: c4 50 mov $50,a +0a90: 6f ret + +; vcmd ea - per-voice transpose +0a91: d5 f0 02 mov $02f0+x,a +0a94: 6f ret + +; vcmd eb - tremolo on +0a95: d5 e0 02 mov $02e0+x,a +0a98: 3f bf 09 call $09bf +0a9b: d5 d1 02 mov $02d1+x,a +0a9e: 3f bf 09 call $09bf +; vcmd ec - tremolo off +0aa1: d4 c1 mov $c1+x,a +0aa3: 6f ret + +; vcmd ed - volume +0aa4: d5 01 03 mov $0301+x,a +0aa7: e8 00 mov a,#$00 +0aa9: d5 00 03 mov $0300+x,a +0aac: 6f ret + +; vcmd ee - volume fade +0aad: d4 90 mov $90+x,a +0aaf: 2d push a +0ab0: 3f bf 09 call $09bf +0ab3: d5 20 03 mov $0320+x,a +0ab6: 80 setc +0ab7: b5 01 03 sbc a,$0301+x +0aba: ce pop x +0abb: 3f 04 0c call $0c04 +0abe: d5 10 03 mov $0310+x,a +0ac1: dd mov a,y +0ac2: d5 11 03 mov $0311+x,a +0ac5: 6f ret + +; vcmd ef - call subroutine +0ac6: d5 40 02 mov $0240+x,a +0ac9: 3f bf 09 call $09bf +0acc: d5 41 02 mov $0241+x,a +0acf: 3f bf 09 call $09bf +0ad2: d4 80 mov $80+x,a +0ad4: f4 32 mov a,$32+x +0ad6: d5 30 02 mov $0230+x,a +0ad9: f4 33 mov a,$33+x +0adb: d5 31 02 mov $0231+x,a +0ade: f5 40 02 mov a,$0240+x +0ae1: d4 32 mov $32+x,a +0ae3: f5 41 02 mov a,$0241+x +0ae6: d4 33 mov $33+x,a +0ae8: 6f ret + +; vcmd f0 - vibrato fade +0ae9: d5 b1 02 mov $02b1+x,a +0aec: 2d push a +0aed: 8d 00 mov y,#$00 +0aef: f4 b1 mov a,$b1+x +0af1: ce pop x +0af2: 9e div ya,x +0af3: f8 44 mov x,$44 +0af5: d5 c0 02 mov $02c0+x,a +0af8: 6f ret + +; vcmd f1 - pitch envelope (release) +0af9: e8 01 mov a,#$01 +0afb: 2f 02 bra $0aff +; vcmd f2 - pitch envelope (attack) +0afd: e8 00 mov a,#$00 +0aff: d5 90 02 mov $0290+x,a +0b02: dd mov a,y +0b03: d5 81 02 mov $0281+x,a +0b06: 3f bf 09 call $09bf +0b09: d5 80 02 mov $0280+x,a +0b0c: 3f bf 09 call $09bf +0b0f: d5 91 02 mov $0291+x,a +0b12: 6f ret + +; vcmd f3 - pitch envelope off +0b13: d5 80 02 mov $0280+x,a +0b16: 6f ret + +; vcmd f4 - tuning +0b17: d5 81 03 mov $0381+x,a +0b1a: 6f ret + +; vcmd f5 - echo vbits/volume +0b1b: c4 4a mov $4a,a +0b1d: 3f bf 09 call $09bf +0b20: e8 00 mov a,#$00 +0b22: da 60 movw $60,ya +0b24: 3f bf 09 call $09bf +0b27: e8 00 mov a,#$00 +0b29: da 62 movw $62,ya +0b2b: b2 48 clr5 $48 +0b2d: 6f ret + +; vcmd f6 - disable echo +0b2e: da 60 movw $60,ya +0b30: da 62 movw $62,ya +0b32: a2 48 set5 $48 +0b34: 6f ret + +; vcmd f7 - set echo params +0b35: 3f be 0b call $0bbe +0b38: 3f bf 09 call $09bf +0b3b: c4 4e mov $4e,a +0b3d: 3f bf 09 call $09bf +0b40: 8d 08 mov y,#$08 +0b42: cf mul ya +0b43: 5d mov x,a +0b44: 8d 0f mov y,#$0f +0b46: f5 4b 0f mov a,$0f4b+x +0b49: 3f 0f 06 call $060f +0b4c: 3d inc x +0b4d: dd mov a,y +0b4e: 60 clrc +0b4f: 88 10 adc a,#$10 +0b51: fd mov y,a +0b52: 10 f2 bpl $0b46 +0b54: f8 44 mov x,$44 +0b56: 6f ret + +; vcmd f8 - echo volume fade +0b57: c4 68 mov $68,a +0b59: 3f bf 09 call $09bf +0b5c: c4 69 mov $69,a +0b5e: 80 setc +0b5f: a4 61 sbc a,$61 +0b61: f8 68 mov x,$68 +0b63: 3f 04 0c call $0c04 +0b66: da 64 movw $64,ya +0b68: 3f bf 09 call $09bf +0b6b: c4 6a mov $6a,a +0b6d: 80 setc +0b6e: a4 63 sbc a,$63 +0b70: f8 68 mov x,$68 +0b72: 3f 04 0c call $0c04 +0b75: da 66 movw $66,ya +0b77: 6f ret + +0b78: f4 a0 mov a,$a0+x +0b7a: d0 33 bne $0baf +0b7c: e7 32 mov a,($32+x) +0b7e: 68 f9 cmp a,#$f9 +0b80: d0 2d bne $0baf +0b82: 3f c1 09 call $09c1 +0b85: 3f bf 09 call $09bf +; vcmd f9 - pitch slide +0b88: d4 a1 mov $a1+x,a +0b8a: 3f bf 09 call $09bf +0b8d: d4 a0 mov $a0+x,a +0b8f: 3f bf 09 call $09bf +0b92: 60 clrc +0b93: 84 50 adc a,$50 +0b95: 95 f0 02 adc a,$02f0+x +0b98: 28 7f and a,#$7f +0b9a: d5 80 03 mov $0380+x,a +0b9d: 80 setc +0b9e: b5 61 03 sbc a,$0361+x +0ba1: fb a0 mov y,$a0+x +0ba3: 6d push y +0ba4: ce pop x +0ba5: 3f 04 0c call $0c04 +0ba8: d5 70 03 mov $0370+x,a +0bab: dd mov a,y +0bac: d5 71 03 mov $0371+x,a +0baf: 6f ret + +0bb0: f5 61 03 mov a,$0361+x +0bb3: c4 0f mov $0f,a +0bb5: f5 60 03 mov a,$0360+x +0bb8: c4 0e mov $0e,a +0bba: 6f ret + +; vcmd fa - set perc patch base +0bbb: c4 5f mov $5f,a +0bbd: 6f ret + +0bbe: c4 4d mov $4d,a +0bc0: 8d 7d mov y,#$7d +0bc2: cc f2 00 mov $00f2,y +0bc5: e5 f3 00 mov a,$00f3 +0bc8: 64 4d cmp a,$4d +0bca: f0 2b beq $0bf7 +0bcc: 28 0f and a,#$0f +0bce: 48 ff eor a,#$ff +0bd0: f3 4c 03 bbc7 $4c,$0bd6 +0bd3: 60 clrc +0bd4: 84 4c adc a,$4c +0bd6: c4 4c mov $4c,a +0bd8: 8d 04 mov y,#$04 +0bda: f6 6a 0f mov a,$0f6a+y +0bdd: c5 f2 00 mov $00f2,a +0be0: e8 00 mov a,#$00 +0be2: c5 f3 00 mov $00f3,a +0be5: fe f3 dbnz y,$0bda +0be7: e4 48 mov a,$48 +0be9: 08 20 or a,#$20 +0beb: 8d 6c mov y,#$6c +0bed: 3f 0f 06 call $060f +0bf0: e4 4d mov a,$4d +0bf2: 8d 7d mov y,#$7d +0bf4: 3f 0f 06 call $060f +0bf7: 1c asl a +0bf8: 1c asl a +0bf9: 1c asl a +0bfa: 48 ff eor a,#$ff +0bfc: 80 setc +0bfd: 88 a0 adc a,#$a0 +0bff: 8d 6d mov y,#$6d +0c01: 5f 0f 06 jmp $060f + +0c04: ed notc +0c05: 6b 10 ror $10 +0c07: 10 03 bpl $0c0c +0c09: 48 ff eor a,#$ff +0c0b: bc inc a +0c0c: 8d 00 mov y,#$00 +0c0e: 9e div ya,x +0c0f: 2d push a +0c10: e8 00 mov a,#$00 +0c12: 9e div ya,x +0c13: ee pop y +0c14: f8 44 mov x,$44 +0c16: f3 10 06 bbc7 $10,$0c1f +0c19: da 12 movw $12,ya +0c1b: ba 0c movw ya,$0c +0c1d: 9a 12 subw ya,$12 +0c1f: 6f ret + +; vcmd fb - repeat start +0c20: 4d push x +0c21: 7d mov a,x +0c22: 5c lsr a +0c23: 5d mov x,a +0c24: e8 ff mov a,#$ff +0c26: d5 c0 03 mov $03c0+x,a +0c29: ce pop x +0c2a: f4 32 mov a,$32+x +0c2c: d5 a0 03 mov $03a0+x,a +0c2f: f4 33 mov a,$33+x +0c31: d5 a1 03 mov $03a1+x,a +0c34: 6f ret + +; vcmd fc - repeat end +0c35: 4d push x +0c36: 7d mov a,x +0c37: 5c lsr a +0c38: 5d mov x,a +0c39: f5 c0 03 mov a,$03c0+x +0c3c: 68 ff cmp a,#$ff +0c3e: d0 03 bne $0c43 +0c40: dd mov a,y +0c41: 8d ff mov y,#$ff +0c43: 9c dec a +0c44: d5 c0 03 mov $03c0+x,a +0c47: ce pop x +0c48: f0 18 beq $0c62 +0c4a: ad ff cmp y,#$ff +0c4c: d0 0a bne $0c58 +0c4e: f4 32 mov a,$32+x +0c50: d5 b0 03 mov $03b0+x,a +0c53: f4 33 mov a,$33+x +0c55: d5 b1 03 mov $03b1+x,a +0c58: f5 a0 03 mov a,$03a0+x +0c5b: d4 32 mov $32+x,a +0c5d: f5 a1 03 mov a,$03a1+x +0c60: d4 33 mov $33+x,a +0c62: 6f ret + +; vcmd fd - jump to end on final repeat +0c63: 4d push x +0c64: 7d mov a,x +0c65: 5c lsr a +0c66: 5d mov x,a +0c67: f5 c0 03 mov a,$03c0+x +0c6a: ce pop x +0c6b: 68 ff cmp a,#$ff +0c6d: f0 0e beq $0c7d +0c6f: 68 01 cmp a,#$01 +0c71: d0 0a bne $0c7d +0c73: f5 b0 03 mov a,$03b0+x +0c76: d4 32 mov $32+x,a +0c78: f5 b1 03 mov a,$03b1+x +0c7b: d4 33 mov $33+x,a +0c7d: 6f ret + +; vcmd dispatch table +0c7f: dw $09c9 ; e0 - set instrument +0c81: dw $0a22 ; e1 - pan +0c83: dw $0a30 ; e2 - pan fade +0c85: dw $0a49 ; e3 - vibrato on +0c87: dw $0a55 ; e4 - vibrato off +0c89: dw $0a60 ; e5 - master volume +0c8b: dw $0a65 ; e6 - master volume fade +0c8d: dw $0a77 ; e7 - tempo +0c8f: dw $0a7c ; e8 - tempo fade +0c91: dw $0a8e ; e9 - global transpose +0c93: dw $0a91 ; ea - per-voice transpose +0c95: dw $0a95 ; eb - tremolo on +0c97: dw $0aa1 ; ec - tremolo off +0c99: dw $0aa4 ; ed - volume +0c9b: dw $0aad ; ee - volume fade +0c9d: dw $0ac6 ; ef - call subroutine +0c9f: dw $0ae9 ; f0 - vibrato fade +0ca1: dw $0af9 ; f1 - pitch envelope (release) +0ca3: dw $0afd ; f2 - pitch envelope (attack) +0ca5: dw $0b13 ; f3 - pitch envelope off +0ca7: dw $0b17 ; f4 - tuning +0ca9: dw $0b1b ; f5 - echo vbits/volume +0cab: dw $0b2e ; f6 - disable echo +0cad: dw $0b35 ; f7 - set echo params +0caf: dw $0b57 ; f8 - echo volume fade +0cb1: dw $0b88 ; f9 - pitch slide +0cb3: dw $0bbb ; fa - set perc patch base +0cb5: dw $0c20 ; fb - repeat start +0cb7: dw $0c35 ; fc - repeat end +0cb9: dw $0c63 ; fd - jump to end on final repeat + +; vcmd lengths +0cba: db $01,$01,$02,$03,$00,$01,$02,$01 ; e0-e7 +0cc2: db $02,$01,$01,$03,$00,$01,$02,$03 ; e8-ef +0cca: db $01,$03,$03,$00,$01,$03,$00,$03 ; f0-f7 +0cb2: db $03,$03,$01,$00,$01,$00 ; f8-fd + +0cd8: f4 90 mov a,$90+x +0cda: f0 24 beq $0d00 +0cdc: 09 47 5e or ($5e),($47) +0cdf: 9b 90 dec $90+x +0ce1: d0 0a bne $0ced +0ce3: e8 00 mov a,#$00 +0ce5: d5 00 03 mov $0300+x,a +0ce8: f5 20 03 mov a,$0320+x +0ceb: 2f 10 bra $0cfd +0ced: 60 clrc +0cee: f5 00 03 mov a,$0300+x +0cf1: 95 10 03 adc a,$0310+x +0cf4: d5 00 03 mov $0300+x,a +0cf7: f5 01 03 mov a,$0301+x +0cfa: 95 11 03 adc a,$0311+x +0cfd: d5 01 03 mov $0301+x,a +0d00: fb c1 mov y,$c1+x +0d02: f0 23 beq $0d27 +0d04: f5 e0 02 mov a,$02e0+x +0d07: de c0 1b cbne $c0+x,$0d25 +0d0a: 09 47 5e or ($5e),($47) +0d0d: f5 d0 02 mov a,$02d0+x +0d10: 10 07 bpl $0d19 +0d12: fc inc y +0d13: d0 04 bne $0d19 +0d15: e8 80 mov a,#$80 +0d17: 2f 04 bra $0d1d +0d19: 60 clrc +0d1a: 95 d1 02 adc a,$02d1+x +0d1d: d5 d0 02 mov $02d0+x,a +0d20: 3f 19 0f call $0f19 +0d23: 2f 07 bra $0d2c +0d25: bb c0 inc $c0+x +0d27: e8 ff mov a,#$ff +0d29: 3f 24 0f call $0f24 +0d2c: f4 91 mov a,$91+x +0d2e: f0 24 beq $0d54 +0d30: 09 47 5e or ($5e),($47) +0d33: 9b 91 dec $91+x +0d35: d0 0a bne $0d41 +0d37: e8 00 mov a,#$00 +0d39: d5 30 03 mov $0330+x,a +0d3c: f5 50 03 mov a,$0350+x +0d3f: 2f 10 bra $0d51 +0d41: 60 clrc +0d42: f5 30 03 mov a,$0330+x +0d45: 95 40 03 adc a,$0340+x +0d48: d5 30 03 mov $0330+x,a +0d4b: f5 31 03 mov a,$0331+x +0d4e: 95 41 03 adc a,$0341+x +0d51: d5 31 03 mov $0331+x,a +0d54: e4 47 mov a,$47 +0d56: 24 5e and a,$5e +0d58: f0 46 beq $0da0 +0d5a: f5 31 03 mov a,$0331+x +0d5d: fd mov y,a +0d5e: f5 30 03 mov a,$0330+x +0d61: da 0e movw $0e,ya +0d63: 7d mov a,x +0d64: 9f xcn a +0d65: 5c lsr a +0d66: c4 10 mov $10,a +0d68: eb 0f mov y,$0f +0d6a: f6 37 0f mov a,$0f37+y +0d6d: 80 setc +0d6e: b6 36 0f sbc a,$0f36+y +0d71: eb 0e mov y,$0e +0d73: cf mul ya +0d74: dd mov a,y +0d75: eb 0f mov y,$0f +0d77: 60 clrc +0d78: 96 36 0f adc a,$0f36+y +0d7b: fd mov y,a +0d7c: f5 21 03 mov a,$0321+x +0d7f: cf mul ya +0d80: f5 51 03 mov a,$0351+x +0d83: 1c asl a +0d84: 13 10 01 bbc0 $10,$0d88 +0d87: 1c asl a +0d88: dd mov a,y +0d89: 90 03 bcc $0d8e +0d8b: 48 ff eor a,#$ff +0d8d: bc inc a +0d8e: eb 10 mov y,$10 +0d90: 3f 07 06 call $0607 +0d93: 8d 14 mov y,#$14 +0d95: e8 00 mov a,#$00 +0d97: 9a 0e subw ya,$0e +0d99: da 0e movw $0e,ya +0d9b: ab 10 inc $10 +0d9d: 33 10 c8 bbc1 $10,$0d68 +0da0: 6f ret + +0da1: f4 71 mov a,$71+x +0da3: f0 65 beq $0e0a +0da5: 9b 71 dec $71+x +0da7: f0 05 beq $0dae +0da9: e8 02 mov a,#$02 +0dab: de 70 5c cbne $70+x,$0e0a +0dae: f4 80 mov a,$80+x +0db0: c4 15 mov $15,a +0db2: f4 32 mov a,$32+x +0db4: fb 33 mov y,$33+x +0db6: da 12 movw $12,ya +0db8: 8d 00 mov y,#$00 +0dba: f7 12 mov a,($12)+y +0dbc: f0 1e beq $0ddc +0dbe: 30 07 bmi $0dc7 +0dc0: fc inc y +0dc1: 30 40 bmi $0e03 +0dc3: f7 12 mov a,($12)+y +0dc5: 10 f9 bpl $0dc0 +0dc7: 68 c8 cmp a,#$c8 +0dc9: f0 3f beq $0e0a +0dcb: 68 ef cmp a,#$ef +0dcd: f0 29 beq $0df8 +0dcf: 68 e0 cmp a,#$e0 +0dd1: 90 30 bcc $0e03 +0dd3: 6d push y +0dd4: fd mov y,a +0dd5: ae pop a +0dd6: 96 da 0b adc a,$0bda+y +0dd9: fd mov y,a +0dda: 2f de bra $0dba +0ddc: e4 15 mov a,$15 +0dde: f0 23 beq $0e03 +0de0: 8b 15 dec $15 +0de2: d0 0a bne $0dee +0de4: f5 31 02 mov a,$0231+x +0de7: 2d push a +0de8: f5 30 02 mov a,$0230+x +0deb: ee pop y +0dec: 2f c8 bra $0db6 +0dee: f5 41 02 mov a,$0241+x +0df1: 2d push a +0df2: f5 40 02 mov a,$0240+x +0df5: ee pop y +0df6: 2f be bra $0db6 +0df8: fc inc y +0df9: f7 12 mov a,($12)+y +0dfb: 2d push a +0dfc: fc inc y +0dfd: f7 12 mov a,($12)+y +0dff: fd mov y,a +0e00: ae pop a +0e01: 2f b3 bra $0db6 +0e03: e4 47 mov a,$47 +0e05: 8d 5c mov y,#$5c +0e07: 3f 07 06 call $0607 +0e0a: f2 11 clr7 $11 +0e0c: f4 a0 mov a,$a0+x +0e0e: f0 2c beq $0e3c +0e10: f4 a1 mov a,$a1+x +0e12: f0 04 beq $0e18 +0e14: 9b a1 dec $a1+x +0e16: 2f 24 bra $0e3c +0e18: e2 11 set7 $11 +0e1a: 9b a0 dec $a0+x +0e1c: d0 0b bne $0e29 +0e1e: f5 81 03 mov a,$0381+x +0e21: d5 60 03 mov $0360+x,a +0e24: f5 80 03 mov a,$0380+x +0e27: 2f 10 bra $0e39 +0e29: 60 clrc +0e2a: f5 60 03 mov a,$0360+x +0e2d: 95 70 03 adc a,$0370+x +0e30: d5 60 03 mov $0360+x,a +0e33: f5 61 03 mov a,$0361+x +0e36: 95 71 03 adc a,$0371+x +0e39: d5 61 03 mov $0361+x,a +0e3c: 3f b0 0b call $0bb0 +0e3f: f4 b1 mov a,$b1+x +0e41: f0 4c beq $0e8f +0e43: f5 b0 02 mov a,$02b0+x +0e46: de b0 44 cbne $b0+x,$0e8d +0e49: f5 00 01 mov a,$0100+x +0e4c: 75 b1 02 cmp a,$02b1+x +0e4f: d0 05 bne $0e56 +0e51: f5 c1 02 mov a,$02c1+x +0e54: 2f 0d bra $0e63 +0e56: 40 setp +0e57: bb 00 inc $00+x +0e59: 20 clrp +0e5a: fd mov y,a +0e5b: f0 02 beq $0e5f +0e5d: f4 b1 mov a,$b1+x +0e5f: 60 clrc +0e60: 95 c0 02 adc a,$02c0+x +0e63: d4 b1 mov $b1+x,a +0e65: f5 a0 02 mov a,$02a0+x +0e68: 60 clrc +0e69: 95 a1 02 adc a,$02a1+x +0e6c: d5 a0 02 mov $02a0+x,a +0e6f: c4 10 mov $10,a +0e71: 1c asl a +0e72: 1c asl a +0e73: 90 02 bcc $0e77 +0e75: 48 ff eor a,#$ff +0e77: fd mov y,a +0e78: f4 b1 mov a,$b1+x +0e7a: 68 f1 cmp a,#$f1 +0e7c: 90 05 bcc $0e83 +0e7e: 28 0f and a,#$0f +0e80: cf mul ya +0e81: 2f 04 bra $0e87 +0e83: cf mul ya +0e84: dd mov a,y +0e85: 8d 00 mov y,#$00 +0e87: 3f 04 0f call $0f04 +0e8a: 5f 84 05 jmp $0584 + +0e8d: bb b0 inc $b0+x +0e8f: e3 11 f8 bbs7 $11,$0e8a +0e92: 6f ret + +0e93: f2 11 clr7 $11 +0e95: f4 c1 mov a,$c1+x +0e97: f0 09 beq $0ea2 +0e99: f5 e0 02 mov a,$02e0+x +0e9c: de c0 03 cbne $c0+x,$0ea2 +0e9f: 3f 0c 0f call $0f0c +0ea2: f5 31 03 mov a,$0331+x +0ea5: fd mov y,a +0ea6: f5 30 03 mov a,$0330+x +0ea9: da 0e movw $0e,ya +0eab: f4 91 mov a,$91+x +0ead: f0 0a beq $0eb9 +0eaf: f5 41 03 mov a,$0341+x +0eb2: fd mov y,a +0eb3: f5 40 03 mov a,$0340+x +0eb6: 3f ee 0e call $0eee +0eb9: f3 11 03 bbc7 $11,$0ebf +0ebc: 3f 63 0d call $0d63 +0ebf: f2 11 clr7 $11 +0ec1: 3f b0 0b call $0bb0 +0ec4: f4 a0 mov a,$a0+x +0ec6: f0 0e beq $0ed6 +0ec8: f4 a1 mov a,$a1+x +0eca: d0 0a bne $0ed6 +0ecc: f5 71 03 mov a,$0371+x +0ecf: fd mov y,a +0ed0: f5 70 03 mov a,$0370+x +0ed3: 3f ee 0e call $0eee +0ed6: f4 b1 mov a,$b1+x +0ed8: f0 b5 beq $0e8f +0eda: f5 b0 02 mov a,$02b0+x +0edd: de b0 af cbne $b0+x,$0e8f +0ee0: eb 51 mov y,$51 +0ee2: f5 a1 02 mov a,$02a1+x +0ee5: cf mul ya +0ee6: dd mov a,y +0ee7: 60 clrc +0ee8: 95 a0 02 adc a,$02a0+x +0eeb: 5f 6f 0e jmp $0e6f + +0eee: e2 11 set7 $11 +0ef0: cb 10 mov $10,y +0ef2: 3f 16 0c call $0c16 +0ef5: 6d push y +0ef6: eb 51 mov y,$51 +0ef8: cf mul ya +0ef9: cb 12 mov $12,y +0efb: 8f 00 13 mov $13,#$00 +0efe: eb 51 mov y,$51 +0f00: ae pop a +0f01: cf mul ya +0f02: 7a 12 addw ya,$12 +0f04: 3f 16 0c call $0c16 +0f07: 7a 0e addw ya,$0e +0f09: da 0e movw $0e,ya +0f0b: 6f ret + +0f0c: e2 11 set7 $11 +0f0e: eb 51 mov y,$51 +0f10: f5 d1 02 mov a,$02d1+x +0f13: cf mul ya +0f14: dd mov a,y +0f15: 60 clrc +0f16: 95 d0 02 adc a,$02d0+x +0f19: 1c asl a +0f1a: 90 02 bcc $0f1e +0f1c: 48 ff eor a,#$ff +0f1e: fb c1 mov y,$c1+x +0f20: cf mul ya +0f21: dd mov a,y +0f22: 48 ff eor a,#$ff +0f24: eb 59 mov y,$59 +0f26: cf mul ya +0f27: f5 10 02 mov a,$0210+x +0f2a: cf mul ya +0f2b: f5 01 03 mov a,$0301+x +0f2e: cf mul ya +0f2f: dd mov a,y +0f30: cf mul ya +0f31: dd mov a,y +0f32: d5 21 03 mov $0321+x,a +0f35: 6f ret + +; pan table +0f36: db $00,$01,$03,$07,$0d,$15,$1e,$29 +0f3e: db $34,$42,$51,$5e,$67,$6e,$73,$77 +0f46: db $7a,$7c,$7d,$7e,$7f + +; echo FIR presets +0f4b: db $7f,$00,$00,$00,$00,$00,$00,$00 ; 00 +0f53: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c ; 01 +0f5b: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 ; 02 +0f63: db $34,$33,$00,$d9,$e5,$01,$fc,$eb ; 03 + +; EVOL(L),EVOL(R),EFB,EON,FLG,KOL,KOF,NON,PMON,KOF +; dsp shadow addrs for dsp regs +0f6b: db $2c,$3c,$0d,$4d,$6c,$4c,$5c,$3d,$2d,$5c +0f75: db $61,$63,$4e,$4a,$48,$45,$0c,$49,$4b,$46,$5f + +; pitch table +0f7f: dw $085f +0f81: dw $08de +0f83: dw $0965 +0f85: dw $09f4 +0f87: dw $0a8c +0f89: dw $0b2c +0f8b: dw $0bd6 +0f8d: dw $0c8b +0f8f: dw $0d4a +0f91: dw $0e14 + +; version text string +0f99: db "*Ver S1.20*" \ No newline at end of file From 98cbb7780b9ca12190313830d8fe215999e6baf9 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:48:55 -0800 Subject: [PATCH 074/116] Rename snes/NSPC/P.T.O. - Pacific Theater of Operations ($0400).bin to snes/NSPC/Koei/P.T.O. - Pacific Theater of Operations ($0400).bin --- ...T.O. - Pacific Theater of Operations ($0400).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Koei}/P.T.O. - Pacific Theater of Operations ($0400).bin (100%) diff --git a/snes/NSPC/P.T.O. - Pacific Theater of Operations ($0400).bin b/snes/NSPC/Koei/P.T.O. - Pacific Theater of Operations ($0400).bin similarity index 100% rename from snes/NSPC/P.T.O. - Pacific Theater of Operations ($0400).bin rename to snes/NSPC/Koei/P.T.O. - Pacific Theater of Operations ($0400).bin From b6f2d04f1359b6b7ddc5822b0d2c17bf83d8aac6 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:49:07 -0800 Subject: [PATCH 075/116] Update and rename snes/NSPC/P.T.O. - Pacific Theater of Operations.s to snes/NSPC/Koei/P.T.O. - Pacific Theater of Operations.s --- snes/NSPC/{ => Koei}/P.T.O. - Pacific Theater of Operations.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Koei}/P.T.O. - Pacific Theater of Operations.s (96%) diff --git a/snes/NSPC/P.T.O. - Pacific Theater of Operations.s b/snes/NSPC/Koei/P.T.O. - Pacific Theater of Operations.s similarity index 96% rename from snes/NSPC/P.T.O. - Pacific Theater of Operations.s rename to snes/NSPC/Koei/P.T.O. - Pacific Theater of Operations.s index bd946532..8d65cfc9 100644 --- a/snes/NSPC/P.T.O. - Pacific Theater of Operations.s +++ b/snes/NSPC/Koei/P.T.O. - Pacific Theater of Operations.s @@ -1508,4 +1508,5 @@ 0f91: dw $0e14 ; version text string -0f99: db "*Ver S1.20*" \ No newline at end of file + +0f99: db "*Ver S1.20*" From 4139c8a089d1a76df05d0e9c2704c90a66a42b3c Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:49:26 -0800 Subject: [PATCH 076/116] Add files via upload --- snes/NSPC/Doomsday Warrior ($0400).bin | Bin 0 -> 3880 bytes snes/NSPC/Doomsday Warrior.s | 1995 ++++++++++++++++++++++++ 2 files changed, 1995 insertions(+) create mode 100644 snes/NSPC/Doomsday Warrior ($0400).bin create mode 100644 snes/NSPC/Doomsday Warrior.s diff --git a/snes/NSPC/Doomsday Warrior ($0400).bin b/snes/NSPC/Doomsday Warrior ($0400).bin new file mode 100644 index 0000000000000000000000000000000000000000..d65eaaa5641f124d296619095f79cefc12883c41 GIT binary patch literal 3880 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 O#K4Y?mH%}H(f Date: Sat, 17 Jan 2026 14:49:54 -0800 Subject: [PATCH 077/116] Rename snes/NSPC/Doomsday Warrior ($0400).bin to snes/NSPC/LaserSoft/Doomsday Warrior ($0400).bin --- .../{ => LaserSoft}/Doomsday Warrior ($0400).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => LaserSoft}/Doomsday Warrior ($0400).bin (100%) diff --git a/snes/NSPC/Doomsday Warrior ($0400).bin b/snes/NSPC/LaserSoft/Doomsday Warrior ($0400).bin similarity index 100% rename from snes/NSPC/Doomsday Warrior ($0400).bin rename to snes/NSPC/LaserSoft/Doomsday Warrior ($0400).bin From 77f3cc55f84f9b12cbbf6320dfe5ebf2317ecb93 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:50:07 -0800 Subject: [PATCH 078/116] Update and rename snes/NSPC/Doomsday Warrior.s to snes/NSPC/LaserSoft/Doomsday Warrior.s --- snes/NSPC/{ => LaserSoft}/Doomsday Warrior.s | 1 + 1 file changed, 1 insertion(+) rename snes/NSPC/{ => LaserSoft}/Doomsday Warrior.s (96%) diff --git a/snes/NSPC/Doomsday Warrior.s b/snes/NSPC/LaserSoft/Doomsday Warrior.s similarity index 96% rename from snes/NSPC/Doomsday Warrior.s rename to snes/NSPC/LaserSoft/Doomsday Warrior.s index bb5af99d..5cf0c289 100644 --- a/snes/NSPC/Doomsday Warrior.s +++ b/snes/NSPC/LaserSoft/Doomsday Warrior.s @@ -1993,3 +1993,4 @@ 1322: cd 31 mov x,#$31 1324: c9 f1 00 mov $00f1,x 1327: 6f ret + From 5bfd0e4e672c438763c669a55b965bc95b026ca5 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:51:22 -0800 Subject: [PATCH 079/116] Add files via upload --- ...l Laimbeer's Combat Basketball ($0800).bin | Bin 0 -> 3021 bytes .../Bill Laimbeer's Combat Basketball.s | 1625 +++++++++++++++++ 2 files changed, 1625 insertions(+) create mode 100644 snes/NSPC/Make Software/Bill Laimbeer's Combat Basketball ($0800).bin create mode 100644 snes/NSPC/Make Software/Bill Laimbeer's Combat Basketball.s diff --git a/snes/NSPC/Make Software/Bill Laimbeer's Combat Basketball ($0800).bin b/snes/NSPC/Make Software/Bill Laimbeer's Combat Basketball ($0800).bin new file mode 100644 index 0000000000000000000000000000000000000000..1b406591688fcf720a02ffbcde665c649c8dfb13 GIT binary patch literal 3021 zcmYjT3v3hT9shi1CywK@FMg4L8Ht9pbmVkrl}S^#=)wv(K!TEzwKOEeq0qUHaG_l_ zDdJ%yI(6&3IMQelY&5A*SC!!=mAXe@U09EaH6%VdA7NfhD|)53x}-;PXIx^(`+v^* zaCHCgyZ`I{`M%%(Q9G6RtBShcysSx!O{I+_E!L`p=v9&E>6`JK^+@;5dKtwVw#FrG zPBrm5^=h*kirV=OThtFkZHac{MZ0tdsr03LNZg^C@E%3WuOZ7UeNR~>bwq9FEL!=f z^@-LNsp_K^NA@qSOYdW-`K*An#Xhw*5jysu z_+YFY%rxR`3xC9|?3e>)yVxG1`R}>;f7tlF?kU9Iva%->v*wyYgQlP!&`ADfRbyji zP+I8OXVuNJjtm_=rz0tsM8diEVitarJ$mNc<cAbgAf|JWQx4IVvNQED_0xis0^w;3gwNB!{(c8Aplah!GEft3IW8)Rr*!PvOFT-GCwl15%vS}>4 z3XUak>?7nG%?DCLVRVD!2j9J zf9evgqS-HzJ)M=^M$ug`mfWePLBbwIcbi0?va-3j*5}xa6kil|#mX5KU8}Lg^Z9dh zOq+5HMuL4;!|YMK3V0|NSb30hwT zQ3D{e!PQ6>6#F=n1F#rC$CAc8LPDfD(*$LBg<) za<^cXhf|@eqa~w%O5) zDuP?m5OHw(7GVFg1enJBIkPlBeb*z`5qY4sgdn$*^=sq+sUn#ph2#(eMwNnr~K}p;dIrC_) z6I`UaF#91v?7-|FN6zfXbzt_xg4ia=8aVl|&see@NYt9>jyjE#EA`r%9tkOGuWvC0UMA}!p0%0-j7JfYK&|EK428y8$9n zINF@gIDg@M#c4t&6G0*q0e>dEk|q)s5|JcnA`l`NzLGXLG}Dkb0+`0(X+6}{otBYh zS^(kf-G<+4&Y1>S4wErVWFZdNOk*^H7J~gUPF0g!V}T676o+W6p~VK{JG96c$WoXVBC+Ao z3F$-4{QsXG(<-2^lc!?*-|5AR+P94li5nBEpeGscMtE`10LIWQaoL+BH`warF=EEpV_qM<&Bu1r<-=dQ>fpLgNzm#GT9^t`KJ)R76J zo%Fk1CVx7HaglLBtBHD4bP~GgS=arp%L05mJo&I?q&{I-prp;zs{LJtD5qxy3-rgR7F(z*#_(UJPH>dc&V<>%)s$YdEiM z34fq%3NL9Jpb9tk72+>B9R*fWR%qOdE1=;A2*%)uId+_H&arRv?KyT7yhs*)SB`xx zpJ!j=_vP5%@dtA338>W)6gw#UEw*{LKCHR*5zTyRgsr^khEa+>|pM;v{b_Qa%T5P380@x*`!IC#bp zZn{DHYDrrnN?|Tu#Ir}{(S$)02>@jxok+`dqyQ;cPI{sbk9d4n5@rm~&_~eGi5a^$k&1&x?klhp$NY*i{)_ z${*GxN--vNz>l?hMR=6zIh<3Ar5Pex!NiyHkdb(x5dH`KoIY>> literal 0 HcmV?d00001 diff --git a/snes/NSPC/Make Software/Bill Laimbeer's Combat Basketball.s b/snes/NSPC/Make Software/Bill Laimbeer's Combat Basketball.s new file mode 100644 index 00000000..b1c06b0f --- /dev/null +++ b/snes/NSPC/Make Software/Bill Laimbeer's Combat Basketball.s @@ -0,0 +1,1625 @@ +0800: 20 clrp +0801: cd cf mov x,#$cf +0803: bd mov sp,x +0804: e8 00 mov a,#$00 +0806: 5d mov x,a +0807: af mov (x)+,a +0808: c8 f0 cmp x,#$f0 +080a: d0 fb bne $0807 +080c: 40 setp +080d: e8 00 mov a,#$00 +080f: 5d mov x,a +0810: af mov (x)+,a +0811: c8 d0 cmp x,#$d0 +0813: d0 fb bne $0810 +0815: 20 clrp +0816: e8 02 mov a,#$02 +0818: c4 15 mov $15,a +081a: e8 00 mov a,#$00 +081c: c4 14 mov $14,a +081e: 6d push y +081f: d7 14 mov ($14)+y,a +0821: ab 14 inc $14 +0823: d0 fa bne $081f +0825: ab 15 inc $15 +0827: 2d push a +0828: e4 15 mov a,$15 +082a: 68 08 cmp a,#$08 +082c: ae pop a +082d: d0 f0 bne $081f +082f: ee pop y +0830: e8 01 mov a,#$01 +0832: 3f f4 0d call $0df4 +0835: a2 48 set5 $48 +0837: e8 60 mov a,#$60 +0839: 8d 0c mov y,#$0c +083b: 3f 54 0a call $0a54 +083e: 8d 1c mov y,#$1c +0840: 3f 54 0a call $0a54 +0843: e8 4c mov a,#$4c +0845: 8d 5d mov y,#$5d +0847: 3f 54 0a call $0a54 +084a: e8 f0 mov a,#$f0 +084c: c5 f1 00 mov $00f1,a +084f: e8 10 mov a,#$10 +0851: c5 fa 00 mov $00fa,a +0854: c4 53 mov $53,a +0856: e8 01 mov a,#$01 +0858: c5 f1 00 mov $00f1,a +085b: e8 00 mov a,#$00 +085d: 8d 07 mov y,#$07 +085f: d6 00 05 mov $0500+y,a +0862: dc dec y +0863: 10 fa bpl $085f +0865: e4 1b mov a,$1b +0867: d0 54 bne $08bd +0869: 8d 0a mov y,#$0a +086b: ad 05 cmp y,#$05 +086d: f0 07 beq $0876 +086f: b0 08 bcs $0879 +0871: 69 4d 4c cmp ($4c),($4d) +0874: d0 11 bne $0887 +0876: e3 4c 0e bbs7 $4c,$0887 +0879: f6 b9 12 mov a,$12b9+y +087c: c5 f2 00 mov $00f2,a +087f: f6 c3 12 mov a,$12c3+y +0882: 5d mov x,a +0883: e6 mov a,(x) +0884: c5 f3 00 mov $00f3,a +0887: fe e2 dbnz y,$086b +0889: cb 45 mov $45,y +088b: cb 46 mov $46,y +088d: e4 18 mov a,$18 +088f: 44 19 eor a,$19 +0891: 5c lsr a +0892: 5c lsr a +0893: ed notc +0894: 6b 18 ror $18 +0896: 6b 19 ror $19 +0898: ec fd 00 mov y,$00fd +089b: f0 fb beq $0898 +089d: 6d push y +089e: e8 20 mov a,#$20 +08a0: cf mul ya +08a1: 60 clrc +08a2: 84 43 adc a,$43 +08a4: c4 43 mov $43,a +08a6: 90 07 bcc $08af +08a8: 69 4d 4c cmp ($4c),($4d) +08ab: f0 02 beq $08af +08ad: ab 4c inc $4c +08af: 3f 7f 13 call $137f +08b2: e4 53 mov a,$53 +08b4: ee pop y +08b5: cf mul ya +08b6: 60 clrc +08b7: 84 51 adc a,$51 +08b9: c4 51 mov $51,a +08bb: 90 10 bcc $08cd +08bd: 3f 35 13 call $1335 +08c0: 3f c6 0a call $0ac6 +08c3: 3f 64 13 call $1364 +08c6: cd 00 mov x,#$00 +08c8: 3f e6 08 call $08e6 +08cb: 2f 98 bra $0865 +08cd: e4 04 mov a,$04 +08cf: f0 12 beq $08e3 +08d1: cd 00 mov x,#$00 +08d3: 8f 01 47 mov $47,#$01 +08d6: f4 31 mov a,$31+x +08d8: f0 03 beq $08dd +08da: 3f e2 11 call $11e2 +08dd: 3d inc x +08de: 3d inc x +08df: 0b 47 asl $47 +08e1: d0 f3 bne $08d6 +08e3: 5f 65 08 jmp $0865 + +08e6: f4 04 mov a,$04+x +08e8: d5 f4 00 mov $00f4+x,a +08eb: f5 f4 00 mov a,$00f4+x +08ee: 75 f4 00 cmp a,$00f4+x +08f1: d0 f8 bne $08eb +08f3: d4 00 mov $00+x,a +08f5: 6f ret + +08f6: ad ca cmp y,#$ca +08f8: 90 05 bcc $08ff +08fa: 3f 45 0c call $0c45 +08fd: 8d a4 mov y,#$a4 +08ff: ad c8 cmp y,#$c8 +0901: b0 f2 bcs $08f5 +0903: e4 1a mov a,$1a +0905: 24 47 and a,$47 +0907: d0 ec bne $08f5 +0909: dd mov a,y +090a: 28 7f and a,#$7f +090c: 60 clrc +090d: 84 50 adc a,$50 +090f: 60 clrc +0910: 95 f0 02 adc a,$02f0+x +0913: d5 61 03 mov $0361+x,a +0916: f5 81 03 mov a,$0381+x +0919: d5 60 03 mov $0360+x,a +091c: f5 b1 02 mov a,$02b1+x +091f: 5c lsr a +0920: e8 00 mov a,#$00 +0922: 7c ror a +0923: d5 a0 02 mov $02a0+x,a +0926: e8 00 mov a,#$00 +0928: d4 b0 mov $b0+x,a +092a: d5 00 01 mov $0100+x,a +092d: d5 d0 02 mov $02d0+x,a +0930: d4 c0 mov $c0+x,a +0932: 09 47 5e or ($5e),($47) +0935: 09 47 45 or ($45),($47) +0938: f5 80 02 mov a,$0280+x +093b: d4 a0 mov $a0+x,a +093d: f0 1e beq $095d +093f: f5 81 02 mov a,$0281+x +0942: d4 a1 mov $a1+x,a +0944: f5 90 02 mov a,$0290+x +0947: d0 0a bne $0953 +0949: f5 61 03 mov a,$0361+x +094c: 80 setc +094d: b5 91 02 sbc a,$0291+x +0950: d5 61 03 mov $0361+x,a +0953: f5 91 02 mov a,$0291+x +0956: 60 clrc +0957: 95 61 03 adc a,$0361+x +095a: 3f 6c 0e call $0e6c +095d: 3f 84 0e call $0e84 +0960: 8d 00 mov y,#$00 +0962: e4 11 mov a,$11 +0964: 80 setc +0965: a8 34 sbc a,#$34 +0967: b0 09 bcs $0972 +0969: e4 11 mov a,$11 +096b: 80 setc +096c: a8 13 sbc a,#$13 +096e: b0 06 bcs $0976 +0970: dc dec y +0971: 1c asl a +0972: 7a 10 addw ya,$10 +0974: da 10 movw $10,ya +0976: 4d push x +0977: e4 11 mov a,$11 +0979: 1c asl a +097a: 8d 00 mov y,#$00 +097c: cd 18 mov x,#$18 +097e: 9e div ya,x +097f: 5d mov x,a +0980: f6 d1 12 mov a,$12d1+y +0983: c4 15 mov $15,a +0985: f6 d0 12 mov a,$12d0+y +0988: c4 14 mov $14,a +098a: f6 d3 12 mov a,$12d3+y +098d: 2d push a +098e: f6 d2 12 mov a,$12d2+y +0991: ee pop y +0992: 9a 14 subw ya,$14 +0994: eb 10 mov y,$10 +0996: cf mul ya +0997: dd mov a,y +0998: 8d 00 mov y,#$00 +099a: 7a 14 addw ya,$14 +099c: cb 15 mov $15,y +099e: c4 14 mov $14,a +09a0: d8 2c mov $2c,x +09a2: ce pop x +09a3: 4d push x +09a4: f5 11 02 mov a,$0211+x +09a7: 30 57 bmi $0a00 +09a9: 5d mov x,a +09aa: f5 80 50 mov a,$5080+x +09ad: f0 51 beq $0a00 +09af: c4 2d mov $2d,a +09b1: e4 11 mov a,$11 +09b3: 1c asl a +09b4: 8d 00 mov y,#$00 +09b6: cd 18 mov x,#$18 +09b8: 9e div ya,x +09b9: e4 2d mov a,$2d +09bb: 30 1c bmi $09d9 +09bd: f6 d1 12 mov a,$12d1+y +09c0: c4 17 mov $17,a +09c2: f6 d0 12 mov a,$12d0+y +09c5: c4 16 mov $16,a +09c7: f6 d3 12 mov a,$12d3+y +09ca: 2d push a +09cb: f6 d2 12 mov a,$12d2+y +09ce: ee pop y +09cf: 9a 16 subw ya,$16 +09d1: eb 2d mov y,$2d +09d3: cf mul ya +09d4: dd mov a,y +09d5: 8d 00 mov y,#$00 +09d7: 2f 21 bra $09fa +09d9: f6 cf 12 mov a,$12cf+y +09dc: c4 17 mov $17,a +09de: f6 ce 12 mov a,$12ce+y +09e1: c4 16 mov $16,a +09e3: f6 d1 12 mov a,$12d1+y +09e6: 2d push a +09e7: f6 d0 12 mov a,$12d0+y +09ea: ee pop y +09eb: 9a 16 subw ya,$16 +09ed: fd mov y,a +09ee: e4 2d mov a,$2d +09f0: 48 ff eor a,#$ff +09f2: bc inc a +09f3: cf mul ya +09f4: dd mov a,y +09f5: 48 ff eor a,#$ff +09f7: bc inc a +09f8: 8d ff mov y,#$ff +09fa: 7a 14 addw ya,$14 +09fc: cb 15 mov $15,y +09fe: c4 14 mov $14,a +0a00: f8 2c mov x,$2c +0a02: e4 14 mov a,$14 +0a04: 5f 07 0a jmp $0a07 + +0a07: 1c asl a +0a08: 2b 15 rol $15 +0a0a: c4 14 mov $14,a +0a0c: 2f 04 bra $0a12 +0a0e: 4b 15 lsr $15 +0a10: 7c ror a +0a11: 3d inc x +0a12: c8 06 cmp x,#$06 +0a14: d0 f8 bne $0a0e +0a16: c4 14 mov $14,a +0a18: ce pop x +0a19: f5 20 02 mov a,$0220+x +0a1c: eb 15 mov y,$15 +0a1e: cf mul ya +0a1f: da 16 movw $16,ya +0a21: f5 20 02 mov a,$0220+x +0a24: eb 14 mov y,$14 +0a26: cf mul ya +0a27: 6d push y +0a28: f5 21 02 mov a,$0221+x +0a2b: eb 14 mov y,$14 +0a2d: cf mul ya +0a2e: 7a 16 addw ya,$16 +0a30: da 16 movw $16,ya +0a32: f5 21 02 mov a,$0221+x +0a35: eb 15 mov y,$15 +0a37: cf mul ya +0a38: fd mov y,a +0a39: ae pop a +0a3a: 7a 16 addw ya,$16 +0a3c: da 16 movw $16,ya +0a3e: 7d mov a,x +0a3f: 9f xcn a +0a40: 5c lsr a +0a41: 08 02 or a,#$02 +0a43: fd mov y,a +0a44: e4 16 mov a,$16 +0a46: 3f 4c 0a call $0a4c +0a49: fc inc y +0a4a: e4 17 mov a,$17 +0a4c: 2d push a +0a4d: e4 47 mov a,$47 +0a4f: 24 1a and a,$1a +0a51: ae pop a +0a52: d0 06 bne $0a5a +0a54: cc f2 00 mov $00f2,y +0a57: c5 f3 00 mov $00f3,a +0a5a: 6f ret + +0a5b: 3a 40 incw $40 +0a5d: e4 40 mov a,$40 +0a5f: 2d push a +0a60: e4 41 mov a,$41 +0a62: fd mov y,a +0a63: ae pop a +0a64: 1a 40 decw $40 +0a66: 6f ret + +0a67: 3f b8 13 call $13b8 +0a6a: 3f ea 12 call $12ea +0a6d: c4 08 mov $08,a +0a6f: c4 04 mov $04,a +0a71: 1c asl a +0a72: d0 03 bne $0a77 +0a74: 5f 5a 0b jmp $0b5a + +; play song in A +0a77: 5d mov x,a +0a78: f5 ff 13 mov a,$13ff+x +0a7b: fd mov y,a +0a7c: f5 fe 13 mov a,$13fe+x +0a7f: da 40 movw $40,ya +0a81: 8f 02 0c mov $0c,#$02 +0a84: 8d 00 mov y,#$00 +0a86: f7 40 mov a,($40)+y +0a88: c4 16 mov $16,a +0a8a: e4 1a mov a,$1a +0a8c: 48 ff eor a,#$ff +0a8e: 24 16 and a,$16 +0a90: 0e 46 00 tset1 $0046 +0a93: e4 16 mov a,$16 +0a95: 8d 00 mov y,#$00 +0a97: 5c lsr a +0a98: 90 07 bcc $0aa1 +0a9a: 2d push a +0a9b: e8 00 mov a,#$00 +0a9d: d6 19 05 mov $0519+y,a +0aa0: ae pop a +0aa1: fc inc y +0aa2: fc inc y +0aa3: ad 10 cmp y,#$10 +0aa5: 90 f0 bcc $0a97 +0aa7: cd 0e mov x,#$0e +0aa9: 8f 80 47 mov $47,#$80 +0aac: 6d push y +0aad: 8d 00 mov y,#$00 +0aaf: f7 40 mov a,($40)+y +0ab1: ee pop y +0ab2: 24 47 and a,$47 +0ab4: f0 03 beq $0ab9 +0ab6: 3f 00 f8 call $f800 +0ab9: 1d dec x +0aba: 1d dec x +0abb: 4b 47 lsr $47 +0abd: d0 ed bne $0aac +0abf: 3f 2d f8 call $f82d +0ac2: 5f fa 0a jmp $0afa + +0ac5: 6f ret + +0ac6: eb 08 mov y,$08 +0ac8: e4 00 mov a,$00 +0aca: c4 08 mov $08,a +0acc: d0 07 bne $0ad5 +0ace: 7e 00 cmp y,$00 +0ad0: f0 03 beq $0ad5 +0ad2: 5f b2 13 jmp $13b2 + +0ad5: 68 ff cmp a,#$ff +0ad7: f0 8e beq $0a67 +0ad9: 68 f0 cmp a,#$f0 +0adb: d0 06 bne $0ae3 +0add: e8 ff mov a,#$ff +0adf: c4 16 mov $16,a +0ae1: 2f a7 bra $0a8a +0ae3: 68 f1 cmp a,#$f1 +0ae5: f0 0c beq $0af3 +0ae7: 65 ff 13 cmp a,$13ff +0aea: b0 07 bcs $0af3 +0aec: 7e 00 cmp y,$00 +0aee: f0 03 beq $0af3 +0af0: 5f 6f 0a jmp $0a6f + +0af3: e4 04 mov a,$04 +0af5: f0 ce beq $0ac5 +0af7: 5f 5a 0b jmp $0b5a + +0afa: 3f 5b 0a call $0a5b +0afd: da 16 movw $16,ya +0aff: 8d 0f mov y,#$0f +0b01: 8f 80 47 mov $47,#$80 +0b04: 6d push y +0b05: 8d 00 mov y,#$00 +0b07: f7 40 mov a,($40)+y +0b09: ee pop y +0b0a: 24 47 and a,$47 +0b0c: d0 08 bne $0b16 +0b0e: 4b 47 lsr $47 +0b10: dc dec y +0b11: dc dec y +0b12: 10 f0 bpl $0b04 +0b14: 2f 16 bra $0b2c +0b16: f7 16 mov a,($16)+y +0b18: d6 30 00 mov $0030+y,a +0b1b: d6 08 05 mov $0508+y,a +0b1e: dc dec y +0b1f: f7 16 mov a,($16)+y +0b21: d6 30 00 mov $0030+y,a +0b24: d6 08 05 mov $0508+y,a +0b27: 4b 47 lsr $47 +0b29: dc dec y +0b2a: 10 d8 bpl $0b04 +0b2c: cd 00 mov x,#$00 +0b2e: 8f 01 47 mov $47,#$01 +0b31: 6d push y +0b32: 8d 00 mov y,#$00 +0b34: f7 40 mov a,($40)+y +0b36: ee pop y +0b37: 24 47 and a,$47 +0b39: f0 19 beq $0b54 +0b3b: f4 31 mov a,$31+x +0b3d: f0 0a beq $0b49 +0b3f: f5 11 02 mov a,$0211+x +0b42: d0 05 bne $0b49 +0b44: e8 00 mov a,#$00 +0b46: 3f 45 0c call $0c45 +0b49: e8 00 mov a,#$00 +0b4b: d4 80 mov $80+x,a +0b4d: d4 90 mov $90+x,a +0b4f: d4 91 mov $91+x,a +0b51: bc inc a +0b52: d4 70 mov $70+x,a +0b54: 3d inc x +0b55: 3d inc x +0b56: 0b 47 asl $47 +0b58: d0 d7 bne $0b31 +0b5a: cd 00 mov x,#$00 +0b5c: d8 5e mov $5e,x +0b5e: 8f 01 47 mov $47,#$01 +0b61: d8 44 mov $44,x +0b63: f4 31 mov a,$31+x +0b65: f0 6f beq $0bd6 +0b67: 9b 70 dec $70+x +0b69: d0 61 bne $0bcc +0b6b: 3f 3b 0c call $0c3b +0b6e: d0 0d bne $0b7d +0b70: e8 00 mov a,#$00 +0b72: d4 31 mov $31+x,a +0b74: e4 47 mov a,$47 +0b76: 8d 5c mov y,#$5c +0b78: 3f 54 0a call $0a54 +0b7b: 2f 59 bra $0bd6 +; vcmd branches +0b7d: 30 20 bmi $0b9f +0b7f: d5 00 02 mov $0200+x,a +0b82: 3f 3b 0c call $0c3b +0b85: 30 18 bmi $0b9f +0b87: 2d push a +0b88: 9f xcn a +0b89: 28 07 and a,#$07 +0b8b: fd mov y,a +0b8c: f6 00 50 mov a,$5000+y +0b8f: d5 01 02 mov $0201+x,a +0b92: ae pop a +0b93: 28 0f and a,#$0f +0b95: fd mov y,a +0b96: f6 08 50 mov a,$5008+y +0b99: d5 10 02 mov $0210+x,a +0b9c: 3f 3b 0c call $0c3b +; vcmd branches 80-ff +0b9f: 68 de cmp a,#$de +0ba1: 90 05 bcc $0ba8 +0ba3: 3f 29 0c call $0c29 +0ba6: 2f c3 bra $0b6b +; vcmds 80-dd - note +0ba8: f5 00 04 mov a,$0400+x +0bab: 04 1b or a,$1b +0bad: d0 04 bne $0bb3 +0baf: dd mov a,y +0bb0: 3f f6 08 call $08f6 +0bb3: f5 00 02 mov a,$0200+x +0bb6: d4 70 mov $70+x,a +0bb8: fd mov y,a +0bb9: 2d push a +0bba: f5 19 05 mov a,$0519+x +0bbd: ae pop a +0bbe: d0 08 bne $0bc8 +0bc0: f5 01 02 mov a,$0201+x +0bc3: cf mul ya +0bc4: dd mov a,y +0bc5: d0 01 bne $0bc8 +0bc7: bc inc a +0bc8: d4 71 mov $71+x,a +0bca: 2f 07 bra $0bd3 +0bcc: e4 1b mov a,$1b +0bce: d0 06 bne $0bd6 +0bd0: 3f e6 10 call $10e6 +0bd3: 3f 4c 0e call $0e4c +0bd6: 3d inc x +0bd7: 3d inc x +0bd8: 0b 47 asl $47 +0bda: d0 85 bne $0b61 +0bdc: e4 54 mov a,$54 +0bde: f0 0b beq $0beb +0be0: ba 56 movw ya,$56 +0be2: 7a 52 addw ya,$52 +0be4: 6e 54 02 dbnz $54,$0be9 +0be7: ba 54 movw ya,$54 +0be9: da 52 movw $52,ya +0beb: e4 68 mov a,$68 +0bed: f0 15 beq $0c04 +0bef: ba 64 movw ya,$64 +0bf1: 7a 60 addw ya,$60 +0bf3: da 60 movw $60,ya +0bf5: ba 66 movw ya,$66 +0bf7: 7a 62 addw ya,$62 +0bf9: 6e 68 06 dbnz $68,$0c02 +0bfc: ba 68 movw ya,$68 +0bfe: da 60 movw $60,ya +0c00: eb 6a mov y,$6a +0c02: da 62 movw $62,ya +0c04: e4 5a mov a,$5a +0c06: f0 0e beq $0c16 +0c08: ba 5c movw ya,$5c +0c0a: 7a 58 addw ya,$58 +0c0c: 6e 5a 02 dbnz $5a,$0c11 +0c0f: ba 5a movw ya,$5a +0c11: da 58 movw $58,ya +0c13: 8f ff 5e mov $5e,#$ff +0c16: cd 00 mov x,#$00 +0c18: 8f 01 47 mov $47,#$01 +0c1b: f4 31 mov a,$31+x +0c1d: f0 03 beq $0c22 +0c1f: 3f 2f 10 call $102f +0c22: 3d inc x +0c23: 3d inc x +0c24: 0b 47 asl $47 +0c26: d0 f3 bne $0c1b +0c28: 6f ret + +; dispatch vcmd in A (de-ff) +0c29: 1c asl a +0c2a: fd mov y,a +0c2b: f6 f0 0d mov a,$0df0+y +0c2e: 2d push a +0c2f: f6 ef 0d mov a,$0def+y +0c32: 2d push a +0c33: dd mov a,y +0c34: 5c lsr a +0c35: fd mov y,a +0c36: f6 8f 0e mov a,$0e8f+y +0c39: f0 08 beq $0c43 +; read new argument to A and Y +0c3b: e7 30 mov a,($30+x) +; advance reading pointer +0c3d: bb 30 inc $30+x +0c3f: d0 02 bne $0c43 +0c41: bb 31 inc $31+x +0c43: fd mov y,a +0c44: 6f ret + +; vcmd e0 - set instrument +0c45: d5 11 02 mov $0211+x,a +0c48: fd mov y,a +0c49: 10 06 bpl $0c51 +0c4b: 80 setc +0c4c: a8 ca sbc a,#$ca +0c4e: 60 clrc +0c4f: 84 5f adc a,$5f +0c51: 8d 06 mov y,#$06 +0c53: cf mul ya +0c54: da 14 movw $14,ya +0c56: 60 clrc +0c57: 98 00 14 adc $14,#$00 +0c5a: 98 4e 15 adc $15,#$4e +0c5d: e4 1a mov a,$1a +0c5f: 24 47 and a,$47 +0c61: d0 3a bne $0c9d +0c63: 4d push x +0c64: 7d mov a,x +0c65: 9f xcn a +0c66: 5c lsr a +0c67: 08 04 or a,#$04 +0c69: 5d mov x,a +0c6a: 8d 00 mov y,#$00 +0c6c: f7 14 mov a,($14)+y +0c6e: 10 0e bpl $0c7e +0c70: 28 1f and a,#$1f +0c72: 38 20 48 and $48,#$20 +0c75: 0e 48 00 tset1 $0048 +0c78: 09 47 49 or ($49),($47) +0c7b: dd mov a,y +0c7c: 2f 07 bra $0c85 +0c7e: e4 47 mov a,$47 +0c80: 4e 49 00 tclr1 $0049 +0c83: f7 14 mov a,($14)+y +0c85: c9 f2 00 mov $00f2,x +0c88: c5 f3 00 mov $00f3,a +0c8b: 3d inc x +0c8c: fc inc y +0c8d: ad 04 cmp y,#$04 +0c8f: d0 f2 bne $0c83 +0c91: ce pop x +0c92: f7 14 mov a,($14)+y +0c94: d5 21 02 mov $0221+x,a +0c97: fc inc y +0c98: f7 14 mov a,($14)+y +0c9a: d5 20 02 mov $0220+x,a +0c9d: 6f ret + +; vcmd e1 - pan +0c9e: d5 51 03 mov $0351+x,a +0ca1: 28 1f and a,#$1f +0ca3: d5 31 03 mov $0331+x,a +0ca6: e8 00 mov a,#$00 +0ca8: d5 30 03 mov $0330+x,a +0cab: 6f ret + +; vcmd e2 - pan fade +0cac: d4 91 mov $91+x,a +0cae: 2d push a +0caf: 3f 3b 0c call $0c3b +0cb2: d5 50 03 mov $0350+x,a +0cb5: 80 setc +0cb6: b5 31 03 sbc a,$0331+x +0cb9: ce pop x +0cba: 3f 8f 0e call $0e8f +0cbd: d5 40 03 mov $0340+x,a +0cc0: dd mov a,y +0cc1: d5 41 03 mov $0341+x,a +0cc4: 6f ret + +; vcmd e3 - vibrato on +0cc5: d5 b0 02 mov $02b0+x,a +0cc8: 3f 3b 0c call $0c3b +0ccb: d5 a1 02 mov $02a1+x,a +0cce: 3f 3b 0c call $0c3b +; vcmd e4 - vibrato off +0cd1: d4 b1 mov $b1+x,a +0cd3: d5 c1 02 mov $02c1+x,a +0cd6: e8 00 mov a,#$00 +0cd8: d5 b1 02 mov $02b1+x,a +0cdb: 6f ret + +; vcmd f0 - vibrato fade +0cdc: d5 b1 02 mov $02b1+x,a +0cdf: 2d push a +0ce0: 8d 00 mov y,#$00 +0ce2: f4 b1 mov a,$b1+x +0ce4: ce pop x +0ce5: 9e div ya,x +0ce6: f8 44 mov x,$44 +0ce8: d5 c0 02 mov $02c0+x,a +0ceb: 6f ret + +; vcmd e5 - master volume +0cec: e8 00 mov a,#$00 +0cee: da 58 movw $58,ya +0cf0: 6f ret + +; vcmd e6 - master volume fade +0cf1: c4 5a mov $5a,a +0cf3: 3f 3b 0c call $0c3b +0cf6: c4 5b mov $5b,a +0cf8: 80 setc +0cf9: a4 59 sbc a,$59 +0cfb: f8 5a mov x,$5a +0cfd: 3f 8f 0e call $0e8f +0d00: da 5c movw $5c,ya +0d02: 6f ret + +; vcmd e7 - tempo +0d03: e8 00 mov a,#$00 +0d05: da 52 movw $52,ya +0d07: 6f ret + +; vcmd e8 - tempo fade +0d08: c4 54 mov $54,a +0d0a: 3f 3b 0c call $0c3b +0d0d: c4 55 mov $55,a +0d0f: 80 setc +0d10: a4 53 sbc a,$53 +0d12: f8 54 mov x,$54 +0d14: 3f 8f 0e call $0e8f +0d17: da 56 movw $56,ya +0d19: 6f ret + +; vcmd e9 - global transpose +0d1a: c4 50 mov $50,a +0d1c: 6f ret + +; vcmd ea - per-voice transpose +0d1d: d5 f0 02 mov $02f0+x,a +0d20: 6f ret + +; vcmd eb - tremolo on +0d21: d5 e0 02 mov $02e0+x,a +0d24: 3f 3b 0c call $0c3b +0d27: d5 d1 02 mov $02d1+x,a +0d2a: 3f 3b 0c call $0c3b +; vcmd ec - tremolo off +0d2d: d4 c1 mov $c1+x,a +0d2f: 6f ret + +; vcmd f1 - pitch envelope (release) +0d30: e8 01 mov a,#$01 +0d32: 2f 02 bra $0d36 +; vcmd f2 - pitch envelope (attack) +0d34: e8 00 mov a,#$00 +0d36: d5 90 02 mov $0290+x,a +0d39: dd mov a,y +0d3a: d5 81 02 mov $0281+x,a +0d3d: 3f 3b 0c call $0c3b +0d40: d5 80 02 mov $0280+x,a +0d43: 3f 3b 0c call $0c3b +0d46: d5 91 02 mov $0291+x,a +0d49: 6f ret + +; vcmd f3 - pitch envelope off +0d4a: d5 80 02 mov $0280+x,a +0d4d: 6f ret + +; vcmd ed - volume +0d4e: d5 01 03 mov $0301+x,a +0d51: e8 00 mov a,#$00 +0d53: d5 00 03 mov $0300+x,a +0d56: 6f ret + +; vcmd ee - volume fade +0d57: d4 90 mov $90+x,a +0d59: 2d push a +0d5a: 3f 3b 0c call $0c3b +0d5d: d5 20 03 mov $0320+x,a +0d60: 80 setc +0d61: b5 01 03 sbc a,$0301+x +0d64: ce pop x +0d65: 3f 8f 0e call $0e8f +0d68: d5 10 03 mov $0310+x,a +0d6b: dd mov a,y +0d6c: d5 11 03 mov $0311+x,a +0d6f: 6f ret + +; vcmd f4 - tuning +0d70: d5 81 03 mov $0381+x,a +0d73: 6f ret + +; vcmd ef - call subroutine +0d74: d5 40 02 mov $0240+x,a +0d77: 3f 3b 0c call $0c3b +0d7a: d5 41 02 mov $0241+x,a +0d7d: 3f 3b 0c call $0c3b +0d80: d4 80 mov $80+x,a +0d82: f4 30 mov a,$30+x +0d84: d5 30 02 mov $0230+x,a +0d87: f4 31 mov a,$31+x +0d89: d5 31 02 mov $0231+x,a +0d8c: f5 40 02 mov a,$0240+x +0d8f: d4 30 mov $30+x,a +0d91: f5 41 02 mov a,$0241+x +0d94: d4 31 mov $31+x,a +0d96: 6f ret + +; vcmd f5 - echo vbits/volume +0d97: c4 4a mov $4a,a +0d99: 3f 3b 0c call $0c3b +0d9c: e8 00 mov a,#$00 +0d9e: da 60 movw $60,ya +0da0: 3f 3b 0c call $0c3b +0da3: e8 00 mov a,#$00 +0da5: da 62 movw $62,ya +0da7: b2 48 clr5 $48 +0da9: 6f ret + +; vcmd f8 - echo volume fade +0daa: c4 68 mov $68,a +0dac: 3f 3b 0c call $0c3b +0daf: c4 69 mov $69,a +0db1: 80 setc +0db2: a4 61 sbc a,$61 +0db4: f8 68 mov x,$68 +0db6: 3f 8f 0e call $0e8f +0db9: da 64 movw $64,ya +0dbb: 3f 3b 0c call $0c3b +0dbe: c4 6a mov $6a,a +0dc0: 80 setc +0dc1: a4 63 sbc a,$63 +0dc3: f8 68 mov x,$68 +0dc5: 3f 8f 0e call $0e8f +0dc8: da 66 movw $66,ya +0dca: 6f ret + +; vcmd f6 - disable echo +0dcb: da 60 movw $60,ya +0dcd: da 62 movw $62,ya +0dcf: a2 48 set5 $48 +0dd1: 6f ret + +; vcmd f7 - set echo params +0dd2: 3f f4 0d call $0df4 +0dd5: 3f 3b 0c call $0c3b +0dd8: c4 4e mov $4e,a +0dda: 3f 3b 0c call $0c3b +0ddd: 8d 08 mov y,#$08 +0ddf: cf mul ya +0de0: 5d mov x,a +0de1: 8d 0f mov y,#$0f +0de3: f5 9a 12 mov a,$129a+x +0de6: 3f 54 0a call $0a54 +0de9: 3d inc x +0dea: dd mov a,y +0deb: 60 clrc +0dec: 88 10 adc a,#$10 +0dee: fd mov y,a +0def: 10 f2 bpl $0de3 +0df1: f8 44 mov x,$44 +0df3: 6f ret + +0df4: c4 4d mov $4d,a +0df6: 8d 7d mov y,#$7d +0df8: cc f2 00 mov $00f2,y +0dfb: e5 f3 00 mov a,$00f3 +0dfe: 64 4d cmp a,$4d +0e00: f0 2b beq $0e2d +0e02: 28 0f and a,#$0f +0e04: 48 ff eor a,#$ff +0e06: f3 4c 03 bbc7 $4c,$0e0c +0e09: 60 clrc +0e0a: 84 4c adc a,$4c +0e0c: c4 4c mov $4c,a +0e0e: 8d 04 mov y,#$04 +0e10: f6 b9 12 mov a,$12b9+y +0e13: c5 f2 00 mov $00f2,a +0e16: e8 00 mov a,#$00 +0e18: c5 f3 00 mov $00f3,a +0e1b: fe f3 dbnz y,$0e10 +0e1d: e4 48 mov a,$48 +0e1f: 08 20 or a,#$20 +0e21: 8d 6c mov y,#$6c +0e23: 3f 54 0a call $0a54 +0e26: e4 4d mov a,$4d +0e28: 8d 7d mov y,#$7d +0e2a: 3f 54 0a call $0a54 +0e2d: 1c asl a +0e2e: 1c asl a +0e2f: 1c asl a +0e30: 48 ff eor a,#$ff +0e32: 80 setc +0e33: 88 f0 adc a,#$f0 +0e35: 8d 6d mov y,#$6d +0e37: 5f 54 0a jmp $0a54 + +; vcmd fa - set perc patch base +0e3a: c4 5f mov $5f,a +0e3c: 6f ret + +0e3d: 3f 3d 0c call $0c3d +0e40: 6f ret + +0e41: bc inc a +0e42: d5 00 04 mov $0400+x,a +0e45: 6f ret + +0e46: bc inc a +0e47: c4 1b mov $1b,a +0e49: 5f 8a 0a jmp $0a8a + +0e4c: f4 a0 mov a,$a0+x +0e4e: d0 33 bne $0e83 +0e50: e7 30 mov a,($30+x) +0e52: 68 f9 cmp a,#$f9 +0e54: d0 2d bne $0e83 +0e56: 3f 3d 0c call $0c3d +0e59: 3f 3b 0c call $0c3b +; vcmd f9 - pitch slide +0e5c: d4 a1 mov $a1+x,a +0e5e: 3f 3b 0c call $0c3b +0e61: d4 a0 mov $a0+x,a +0e63: 3f 3b 0c call $0c3b +0e66: 60 clrc +0e67: 84 50 adc a,$50 +0e69: 95 f0 02 adc a,$02f0+x +0e6c: 28 7f and a,#$7f +0e6e: d5 80 03 mov $0380+x,a +0e71: 80 setc +0e72: b5 61 03 sbc a,$0361+x +0e75: fb a0 mov y,$a0+x +0e77: 6d push y +0e78: ce pop x +0e79: 3f 8f 0e call $0e8f +0e7c: d5 70 03 mov $0370+x,a +0e7f: dd mov a,y +0e80: d5 71 03 mov $0371+x,a +0e83: 6f ret + +0e84: f5 61 03 mov a,$0361+x +0e87: c4 11 mov $11,a +0e89: f5 60 03 mov a,$0360+x +0e8c: c4 10 mov $10,a +0e8e: 6f ret + +0e8f: ed notc +0e90: 6b 12 ror $12 +0e92: 10 03 bpl $0e97 +0e94: 48 ff eor a,#$ff +0e96: bc inc a +0e97: 8d 00 mov y,#$00 +0e99: 9e div ya,x +0e9a: 2d push a +0e9b: e8 00 mov a,#$00 +0e9d: 9e div ya,x +0e9e: ee pop y +0e9f: f8 44 mov x,$44 +0ea1: f3 12 06 bbc7 $12,$0eaa +0ea4: da 14 movw $14,ya +0ea6: ba 0e movw ya,$0e +0ea8: 9a 14 subw ya,$14 +0eaa: 6f ret + +; vcmd dispatch table +0eab: dw $0f0e ; de - repeat start +0ead: dw $0f2c ; df - repeat end +0eaf: dw $0c45 ; e0 - set instrument +0eb1: dw $0c9e ; e1 - pan +0eb3: dw $0cac ; e2 - pan fade +0eb5: dw $0cc5 ; e3 - vibrato on +0eb7: dw $0cd1 ; e4 - vibrato off +0eb9: dw $0cec ; e5 - master volume +0ebb: dw $0cf1 ; e6 - master volume fade +0ebd: dw $0d03 ; e7 - tempo +0ebf: dw $0d08 ; e8 - tempo fade +0ec1: dw $0d1a ; e9 - global transpose +0ec3: dw $0d1d ; ea - per-voice transposes +0ec5: dw $0d21 ; eb - tremolo on +0ec7: dw $0d2d ; ec - tremolo off +0ec9: dw $0d4e ; ed - volume +0ecb: dw $0d57 ; ee - volume fade +0ecd: dw $0d74 ; ef - call subroutine +0ecf: dw $0cdc ; f0 - vibrato fade +0ed1: dw $0d30 ; f1 - pitch envelope (release) +0ed3: dw $0d34 ; f2 - pitch envelope (attack) +0ed5: dw $0d4a ; f3 - pitch envelope off +0ed7: dw $0d70 ; f4 - tuning +0ed9: dw $0d97 ; f5 - echo vbits/volume +0edb: dw $0dcb ; f6 - disable echo +0edd: dw $0dd2 ; f7 - set echo params +0edf: dw $0daa ; f8 - echo volume fade +0ee1: dw $0e5c ; f9 - pitch slide +0ee3: dw $0e3a ; fa - set perc patch base +0ee5: dw $0f50 ; fb - call subroutine (2) +0ee7: dw $0f72 ; fc - return from subroutine (2) +0ee9: dw $0f89 ; fd - song loop marker +0eeb: dw $0f9f ; fe - subcmd + +; vcmd lengths +0eed: db $01,$00,$01,$01,$02,$03,$00,$01 ; de-e5 +0ef5: db $02,$01,$02,$01,$01,$03,$00,$01 ; e6-ed +0efd: db $02,$03,$01,$03,$03,$00,$01,$03 ; ee-f5 +0f05: db $00,$03,$03,$03,$01,$02,$00,$00 ; f6-fd +0f0d: db $02 ; fe + +; vcmd de - repeat start +0f0e: 2d push a +0f0f: 3f 0b 10 call $100b +0f12: f5 30 00 mov a,$0030+x +0f15: d7 2c mov ($2c)+y,a +0f17: fc inc y +0f18: f5 31 00 mov a,$0031+x +0f1b: d7 2c mov ($2c)+y,a +0f1d: fc inc y +0f1e: ae pop a +0f1f: d7 2c mov ($2c)+y,a +0f21: fc inc y +0f22: 4d push x +0f23: 7d mov a,x +0f24: 5c lsr a +0f25: 5d mov x,a +0f26: dd mov a,y +0f27: d5 00 05 mov $0500+x,a +0f2a: ce pop x +0f2b: 6f ret + +; vcmd df - repeat end +0f2c: 3f 0b 10 call $100b +0f2f: dc dec y +0f30: f7 2c mov a,($2c)+y +0f32: 9c dec a +0f33: f0 0f beq $0f44 +0f35: d7 2c mov ($2c)+y,a +0f37: dc dec y +0f38: f7 2c mov a,($2c)+y +0f3a: d5 31 00 mov $0031+x,a +0f3d: dc dec y +0f3e: f7 2c mov a,($2c)+y +0f40: d5 30 00 mov $0030+x,a +0f43: 6f ret + +0f44: dc dec y +0f45: dc dec y +0f46: 4d push x +0f47: 7d mov a,x +0f48: 5c lsr a +0f49: 5d mov x,a +0f4a: dd mov a,y +0f4b: d5 00 05 mov $0500+x,a +0f4e: ce pop x +0f4f: 6f ret + +; vcmd fb - call subroutine (2) +0f50: 2d push a +0f51: 3f 3b 0c call $0c3b +0f54: 2d push a +0f55: 3f 0b 10 call $100b +0f58: f4 30 mov a,$30+x +0f5a: d7 2c mov ($2c)+y,a +0f5c: fc inc y +0f5d: f4 31 mov a,$31+x +0f5f: d7 2c mov ($2c)+y,a +0f61: fc inc y +0f62: ae pop a +0f63: d4 31 mov $31+x,a +0f65: ae pop a +0f66: d4 30 mov $30+x,a +0f68: 4d push x +0f69: 7d mov a,x +0f6a: 5c lsr a +0f6b: 5d mov x,a +0f6c: dd mov a,y +0f6d: d5 00 05 mov $0500+x,a +0f70: ce pop x +0f71: 6f ret + +; vcmd fc - return from subroutine (2) +0f72: 3f 0b 10 call $100b +0f75: dc dec y +0f76: f7 2c mov a,($2c)+y +0f78: d4 31 mov $31+x,a +0f7a: dc dec y +0f7b: f7 2c mov a,($2c)+y +0f7d: d4 30 mov $30+x,a +0f7f: 4d push x +0f80: 7d mov a,x +0f81: 5c lsr a +0f82: 5d mov x,a +0f83: dd mov a,y +0f84: d5 00 05 mov $0500+x,a +0f87: ce pop x +0f88: 6f ret + +; vcmd fd - song loop marker +0f89: f4 30 mov a,$30+x +0f8b: d5 08 05 mov $0508+x,a +0f8e: f4 31 mov a,$31+x +0f90: d5 09 05 mov $0509+x,a +0f93: 6f ret + +; subcmd 00 - go to song loop +0f94: f5 08 05 mov a,$0508+x +0f97: d4 30 mov $30+x,a +0f99: f5 09 05 mov a,$0509+x +0f9c: d4 31 mov $31+x,a +0f9e: 6f ret + +; vcmd fe - subcmd +0f9f: 1c asl a +0fa0: fd mov y,a +0fa1: f6 ae 0f mov a,$0fae+y +0fa4: 2d push a +0fa5: f6 ad 0f mov a,$0fad+y +0fa8: 2d push a +0fa9: 3f 3b 0c call $0c3b +0fac: 6f ret + +; subcmd dispatch table +0fad: dw $0f94 ; 00 - go to song loop +0faf: dw $0fb7 ; 01 +0fb1: dw $0fd4 ; 02 +0fb3: dw $0fff ; 03 +0fb5: dw $1005 ; 04 + +; subcmd 01 +0fb7: fd mov y,a +0fb8: 30 0c bmi $0fc6 +0fba: 60 clrc +0fbb: 95 f0 02 adc a,$02f0+x +0fbe: 68 19 cmp a,#$19 +0fc0: 90 0e bcc $0fd0 +0fc2: e8 18 mov a,#$18 +0fc4: 2f 0a bra $0fd0 +0fc6: 60 clrc +0fc7: 95 f0 02 adc a,$02f0+x +0fca: 68 e8 cmp a,#$e8 +0fcc: b0 02 bcs $0fd0 +0fce: e8 18 mov a,#$18 +0fd0: d5 f0 02 mov $02f0+x,a +0fd3: 6f ret + +; subcmd 02 +0fd4: fd mov y,a +0fd5: 30 0a bmi $0fe1 +0fd7: 60 clrc +0fd8: 95 01 03 adc a,$0301+x +0fdb: 90 19 bcc $0ff6 +0fdd: e8 ff mov a,#$ff +0fdf: 2f 15 bra $0ff6 +0fe1: 48 ff eor a,#$ff +0fe3: bc inc a +0fe4: 2d push a +0fe5: f5 01 03 mov a,$0301+x +0fe8: fd mov y,a +0fe9: ae pop a +0fea: d5 01 03 mov $0301+x,a +0fed: dd mov a,y +0fee: 80 setc +0fef: b5 01 03 sbc a,$0301+x +0ff2: b0 02 bcs $0ff6 +0ff4: e8 00 mov a,#$00 +0ff6: d5 01 03 mov $0301+x,a +0ff9: e8 00 mov a,#$00 +0ffb: d5 00 03 mov $0300+x,a +0ffe: 6f ret + +; subcmd 03 +0fff: e8 01 mov a,#$01 +1001: d5 19 05 mov $0519+x,a +1004: 6f ret + +; subcmd 04 +1005: e8 00 mov a,#$00 +1007: d5 19 05 mov $0519+x,a +100a: 6f ret + +100b: 4d push x +100c: 7d mov a,x +100d: 5c lsr a +100e: 5d mov x,a +100f: f5 1f 10 mov a,$101f+x +1012: c4 2c mov $2c,a +1014: f5 27 10 mov a,$1027+x +1017: c4 2d mov $2d,a +1019: f5 00 05 mov a,$0500+x +101c: fd mov y,a +101d: ce pop x +101e: 6f ret + +101f: 80 setc +1020: 90 a0 bcc $0fc2 +1022: b0 c0 bcs $0fe4 +1024: d0 e0 bne $1006 +1026: f0 04 beq $102c +1028: 04 04 or a,$04 +102a: 04 04 or a,$04 +102c: 04 04 or a,$04 +102e: 04 f4 or a,$f4 +1030: 90 f0 bcc $1022 +1032: 09 e8 00 or ($00),($e8) +1035: 8d 03 mov y,#$03 +1037: 9b 90 dec $90+x +1039: 3f c2 10 call $10c2 +103c: fb c1 mov y,$c1+x +103e: f0 23 beq $1063 +1040: f5 e0 02 mov a,$02e0+x +1043: de c0 1b cbne $c0+x,$1061 +1046: 09 47 5e or ($5e),($47) +1049: f5 d0 02 mov a,$02d0+x +104c: 10 07 bpl $1055 +104e: fc inc y +104f: d0 04 bne $1055 +1051: e8 80 mov a,#$80 +1053: 2f 04 bra $1059 +1055: 60 clrc +1056: 95 d1 02 adc a,$02d1+x +1059: d5 d0 02 mov $02d0+x,a +105c: 3f 68 12 call $1268 +105f: 2f 07 bra $1068 +1061: bb c0 inc $c0+x +1063: e8 ff mov a,#$ff +1065: 3f 73 12 call $1273 +1068: f4 91 mov a,$91+x +106a: f0 09 beq $1075 +106c: e8 30 mov a,#$30 +106e: 8d 03 mov y,#$03 +1070: 9b 91 dec $91+x +1072: 3f c2 10 call $10c2 +1075: e4 47 mov a,$47 +1077: 24 5e and a,$5e +1079: f0 46 beq $10c1 +107b: f5 31 03 mov a,$0331+x +107e: fd mov y,a +107f: f5 30 03 mov a,$0330+x +1082: da 10 movw $10,ya +1084: 7d mov a,x +1085: 9f xcn a +1086: 5c lsr a +1087: c4 12 mov $12,a +1089: eb 11 mov y,$11 +108b: f6 86 12 mov a,$1286+y +108e: 80 setc +108f: b6 85 12 sbc a,$1285+y +1092: eb 10 mov y,$10 +1094: cf mul ya +1095: dd mov a,y +1096: eb 11 mov y,$11 +1098: 60 clrc +1099: 96 85 12 adc a,$1285+y +109c: fd mov y,a +109d: f5 21 03 mov a,$0321+x +10a0: cf mul ya +10a1: f5 51 03 mov a,$0351+x +10a4: 1c asl a +10a5: 13 12 01 bbc0 $12,$10a9 +10a8: 1c asl a +10a9: dd mov a,y +10aa: 90 03 bcc $10af +10ac: 48 ff eor a,#$ff +10ae: bc inc a +10af: eb 12 mov y,$12 +10b1: 3f 4c 0a call $0a4c +10b4: 8d 14 mov y,#$14 +10b6: e8 00 mov a,#$00 +10b8: 9a 10 subw ya,$10 +10ba: da 10 movw $10,ya +10bc: ab 12 inc $12 +10be: 33 12 c8 bbc1 $12,$1089 +10c1: 6f ret + +10c2: 09 47 5e or ($5e),($47) +10c5: da 14 movw $14,ya +10c7: da 16 movw $16,ya +10c9: 4d push x +10ca: ee pop y +10cb: 60 clrc +10cc: d0 0a bne $10d8 +10ce: 98 1f 16 adc $16,#$1f +10d1: e8 00 mov a,#$00 +10d3: d7 14 mov ($14)+y,a +10d5: fc inc y +10d6: 2f 09 bra $10e1 +10d8: 98 10 16 adc $16,#$10 +10db: 3f df 10 call $10df +10de: fc inc y +10df: f7 14 mov a,($14)+y +10e1: 97 16 adc a,($16)+y +10e3: d7 14 mov ($14)+y,a +10e5: 6f ret + +10e6: f4 71 mov a,$71+x +10e8: d0 03 bne $10ed +10ea: 5f 72 11 jmp $1172 + +10ed: 9b 71 dec $71+x +10ef: f0 05 beq $10f6 +10f1: e8 02 mov a,#$02 +10f3: de 70 7c cbne $70+x,$1172 +10f6: f4 80 mov a,$80+x +10f8: c4 17 mov $17,a +10fa: f4 30 mov a,$30+x +10fc: fb 31 mov y,$31+x +10fe: da 14 movw $14,ya +1100: 8d 00 mov y,#$00 +1102: f7 14 mov a,($14)+y +1104: f0 2c beq $1132 +1106: 30 05 bmi $110d +1108: fc inc y +1109: f7 14 mov a,($14)+y +110b: 10 fb bpl $1108 +110d: 68 c8 cmp a,#$c8 +110f: f0 61 beq $1172 +1111: 68 ef cmp a,#$ef +1113: f0 34 beq $1149 +1115: 68 fb cmp a,#$fb +1117: f0 4d beq $1166 +1119: 68 fc cmp a,#$fc +111b: f0 49 beq $1166 +111d: 68 df cmp a,#$df +111f: f0 45 beq $1166 +1121: 68 fe cmp a,#$fe +1123: f0 41 beq $1166 +1125: 68 de cmp a,#$de +1127: 90 3d bcc $1166 +1129: 6d push y +112a: fd mov y,a +112b: ae pop a +112c: 96 0f 0e adc a,$0e0f+y +112f: fd mov y,a +1130: 2f d0 bra $1102 +1132: e4 17 mov a,$17 +1134: f0 30 beq $1166 +1136: 8b 17 dec $17 +1138: d0 0a bne $1144 +113a: f5 31 02 mov a,$0231+x +113d: 2d push a +113e: f5 30 02 mov a,$0230+x +1141: ee pop y +1142: 2f ba bra $10fe +1144: 3f 48 f8 call $f848 +1147: 2f b5 bra $10fe +1149: 3f 51 f8 call $f851 +114c: 2f b0 bra $10fe +114e: fc inc y +114f: f7 14 mov a,($14)+y +1151: d0 05 bne $1158 +1153: 3f 5b f8 call $f85b +1156: 2f a6 bra $10fe +1158: fc inc y +1159: fc inc y +115a: 2f a6 bra $1102 +115c: 3f 65 f8 call $f865 +115f: 2f 9d bra $10fe +1161: 3f 71 f8 call $f871 +1164: 2f 98 bra $10fe +1166: f5 19 05 mov a,$0519+x +1169: d0 07 bne $1172 +116b: e4 47 mov a,$47 +116d: 8d 5c mov y,#$5c +116f: 3f 4c 0a call $0a4c +1172: f2 13 clr7 $13 +1174: f4 a0 mov a,$a0+x +1176: f0 13 beq $118b +1178: f4 a1 mov a,$a1+x +117a: f0 04 beq $1180 +117c: 9b a1 dec $a1+x +117e: 2f 0b bra $118b +1180: e2 13 set7 $13 +1182: e8 60 mov a,#$60 +1184: 8d 03 mov y,#$03 +1186: 9b a0 dec $a0+x +1188: 3f c5 10 call $10c5 +118b: 3f 84 0e call $0e84 +118e: f4 b1 mov a,$b1+x +1190: f0 4c beq $11de +1192: f5 b0 02 mov a,$02b0+x +1195: de b0 44 cbne $b0+x,$11dc +1198: f5 00 01 mov a,$0100+x +119b: 75 b1 02 cmp a,$02b1+x +119e: d0 05 bne $11a5 +11a0: f5 c1 02 mov a,$02c1+x +11a3: 2f 0d bra $11b2 +11a5: 40 setp +11a6: bb 00 inc $00+x +11a8: 20 clrp +11a9: fd mov y,a +11aa: f0 02 beq $11ae +11ac: f4 b1 mov a,$b1+x +11ae: 60 clrc +11af: 95 c0 02 adc a,$02c0+x +11b2: d4 b1 mov $b1+x,a +11b4: f5 a0 02 mov a,$02a0+x +11b7: 60 clrc +11b8: 95 a1 02 adc a,$02a1+x +11bb: d5 a0 02 mov $02a0+x,a +11be: c4 12 mov $12,a +11c0: 1c asl a +11c1: 1c asl a +11c2: 90 02 bcc $11c6 +11c4: 48 ff eor a,#$ff +11c6: fd mov y,a +11c7: f4 b1 mov a,$b1+x +11c9: 68 f1 cmp a,#$f1 +11cb: 90 05 bcc $11d2 +11cd: 28 0f and a,#$0f +11cf: cf mul ya +11d0: 2f 04 bra $11d6 +11d2: cf mul ya +11d3: dd mov a,y +11d4: 8d 00 mov y,#$00 +11d6: 3f 53 12 call $1253 +11d9: 5f 60 09 jmp $0960 + +11dc: bb b0 inc $b0+x +11de: e3 13 f8 bbs7 $13,$11d9 +11e1: 6f ret + +11e2: f2 13 clr7 $13 +11e4: f4 c1 mov a,$c1+x +11e6: f0 09 beq $11f1 +11e8: f5 e0 02 mov a,$02e0+x +11eb: de c0 03 cbne $c0+x,$11f1 +11ee: 3f 5b 12 call $125b +11f1: f5 31 03 mov a,$0331+x +11f4: fd mov y,a +11f5: f5 30 03 mov a,$0330+x +11f8: da 10 movw $10,ya +11fa: f4 91 mov a,$91+x +11fc: f0 0a beq $1208 +11fe: f5 41 03 mov a,$0341+x +1201: fd mov y,a +1202: f5 40 03 mov a,$0340+x +1205: 3f 3d 12 call $123d +1208: f3 13 03 bbc7 $13,$120e +120b: 3f 84 10 call $1084 +120e: f2 13 clr7 $13 +1210: 3f 84 0e call $0e84 +1213: f4 a0 mov a,$a0+x +1215: f0 0e beq $1225 +1217: f4 a1 mov a,$a1+x +1219: d0 0a bne $1225 +121b: f5 71 03 mov a,$0371+x +121e: fd mov y,a +121f: f5 70 03 mov a,$0370+x +1222: 3f 3d 12 call $123d +1225: f4 b1 mov a,$b1+x +1227: f0 b5 beq $11de +1229: f5 b0 02 mov a,$02b0+x +122c: de b0 af cbne $b0+x,$11de +122f: eb 51 mov y,$51 +1231: f5 a1 02 mov a,$02a1+x +1234: cf mul ya +1235: dd mov a,y +1236: 60 clrc +1237: 95 a0 02 adc a,$02a0+x +123a: 5f be 11 jmp $11be + +123d: e2 13 set7 $13 +123f: cb 12 mov $12,y +1241: 3f a1 0e call $0ea1 +1244: 6d push y +1245: eb 51 mov y,$51 +1247: cf mul ya +1248: cb 14 mov $14,y +124a: 8f 00 15 mov $15,#$00 +124d: eb 51 mov y,$51 +124f: ae pop a +1250: cf mul ya +1251: 7a 14 addw ya,$14 +1253: 3f a1 0e call $0ea1 +1256: 7a 10 addw ya,$10 +1258: da 10 movw $10,ya +125a: 6f ret + +125b: e2 13 set7 $13 +125d: eb 51 mov y,$51 +125f: f5 d1 02 mov a,$02d1+x +1262: cf mul ya +1263: dd mov a,y +1264: 60 clrc +1265: 95 d0 02 adc a,$02d0+x +1268: 1c asl a +1269: 90 02 bcc $126d +126b: 48 ff eor a,#$ff +126d: fb c1 mov y,$c1+x +126f: cf mul ya +1270: dd mov a,y +1271: 48 ff eor a,#$ff +1273: eb 59 mov y,$59 +1275: cf mul ya +1276: f5 10 02 mov a,$0210+x +1279: cf mul ya +127a: f5 01 03 mov a,$0301+x +127d: cf mul ya +127e: dd mov a,y +127f: cf mul ya +1280: dd mov a,y +1281: d5 21 03 mov $0321+x,a +1284: 6f ret + +; pan table +1285: db $00,$01,$03,$07,$0d,$15,$1e,$29 +128d: db $34,$42,$51,$5e,$67,$6e,$73,$77 +1295: db $7a,$7c,$7d,$7e,$7f + +; echo FIR presets +129a: db $7f,$00,$00,$00,$00,$00,$00,$00 ; 00 +12a2: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c ; 01 +12aa: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 ; 02 +12b2: db $34,$33,$00,$d9,$e5,$01,$fc,$eb ; 03 + +; EVOL(L),EVOL(R),EFB,EON,FLG,KOL,KOF,NON,PMON,KOF +; dsp shadow addrs for dsp rgs +12ba: db $2c,$3c,$0d,$4d,$6c,$4c,$5c,$3d,$2d,$5c +12c4: db $61,$63,$4e,$4a,$48,$45,$0e,$49,$4b,$46 + +; pitch table +12ce: dw $0756 +12d0: dw $085f +12d2: dw $08de +12d4: dw $0965 +12d6: dw $09f4 +12d8: dw $0a8c +12da: dw $0b2c +12dc: dw $0bd6 +12de: dw $0c8b +12e0: dw $0d4a +12e2: dw $0e14 +12e4: dw $0eea +12e6: dw $0fcd +12e8: dw $10be +12ea: dw $0fcd + +12ec: e8 00 mov a,#$00 +12ee: d5 30 00 mov $0030+x,a +12f1: 1d dec x +12f2: 10 fa bpl $12ee +12f4: 3f b8 13 call $13b8 +12f7: e8 aa mov a,#$aa +12f9: c4 f4 mov $f4,a +12fb: e8 bb mov a,#$bb +12fd: c4 f5 mov $f5,a +12ff: e4 f4 mov a,$f4 +1301: 68 cc cmp a,#$cc +1303: d0 fa bne $12ff +1305: 2f 1b bra $1322 +1307: eb f4 mov y,$f4 +1309: d0 fc bne $1307 +130b: 7e f4 cmp y,$f4 +130d: d0 0d bne $131c +130f: e4 f5 mov a,$f5 +1311: cb f4 mov $f4,y +1313: d7 14 mov ($14)+y,a +1315: fc inc y +1316: d0 f3 bne $130b +1318: ab 15 inc $15 +131a: 2f ef bra $130b +131c: 10 ed bpl $130b +131e: 7e f4 cmp y,$f4 +1320: 10 e9 bpl $130b +1322: e4 f6 mov a,$f6 +1324: eb f7 mov y,$f7 +1326: da 14 movw $14,ya +1328: eb f4 mov y,$f4 +132a: e4 f5 mov a,$f5 +132c: cb f4 mov $f4,y +132e: d0 d7 bne $1307 +1330: cd 31 mov x,#$31 +1332: d8 f1 mov $f1,x +1334: 6f ret + +1335: e4 00 mov a,$00 +1337: 64 08 cmp a,$08 +1339: f0 0d beq $1348 +133b: e8 fe mov a,#$fe +133d: 64 00 cmp a,$00 +133f: d0 07 bne $1348 +1341: e4 00 mov a,$00 +1343: c4 08 mov $08,a +1345: 3f 49 13 call $1349 +1348: 6f ret + +1349: cd 01 mov x,#$01 +134b: 3f e6 08 call $08e6 +134e: c4 5a mov $5a,a +1350: e8 00 mov a,#$00 +1352: c4 5b mov $5b,a +1354: 80 setc +1355: a4 59 sbc a,$59 +1357: f8 5a mov x,$5a +1359: 3f 8f 0e call $0e8f +135c: da 5c movw $5c,ya +135e: e8 01 mov a,#$01 +1360: c5 18 05 mov $0518,a +1363: 6f ret + +1364: e5 18 05 mov a,$0518 +1367: f0 15 beq $137e +1369: e4 5a mov a,$5a +136b: d0 11 bne $137e +136d: e8 00 mov a,#$00 +136f: c5 18 05 mov $0518,a +1372: 3f b8 13 call $13b8 +1375: e8 00 mov a,#$00 +1377: cd 0f mov x,#$0f +1379: d4 30 mov $30+x,a +137b: 1d dec x +137c: 10 fb bpl $1379 +137e: 6f ret + +137f: 8d 0f mov y,#$0f +1381: 8f 80 47 mov $47,#$80 +1384: e8 00 mov a,#$00 +1386: 2d push a +1387: f6 30 00 mov a,$0030+y +138a: ae pop a +138b: f0 02 beq $138f +138d: 04 47 or a,$47 +138f: 4b 47 lsr $47 +1391: dc dec y +1392: dc dec y +1393: 10 f1 bpl $1386 +1395: 8d 00 mov y,#$00 +1397: 2d push a +1398: 28 2f and a,#$2f +139a: ae pop a +139b: f0 01 beq $139e +139d: fc inc y +139e: cc 29 05 mov $0529,y +13a1: cc f6 00 mov $00f6,y +13a4: 8d 00 mov y,#$00 +13a6: 28 c0 and a,#$c0 +13a8: f0 01 beq $13ab +13aa: fc inc y +13ab: cc 2a 05 mov $052a,y +13ae: cc f7 00 mov $00f7,y +13b1: 6f ret + +13b2: 3f b8 13 call $13b8 +13b5: 5f 7e f8 jmp $f87e + +13b8: e8 ff mov a,#$ff +13ba: 8d 5c mov y,#$5c +13bc: 3f 54 0a call $0a54 +13bf: 8d 09 mov y,#$09 +13c1: 2d push a +13c2: ae pop a +13c3: fe fc dbnz y,$13c1 +13c5: e8 00 mov a,#$00 +13c7: 8d 5c mov y,#$5c +13c9: 3f 54 0a call $0a54 +13cc: 6f ret + +; note dur%'s +5000: db $23,$42,$61,$80,$9f,$be,$dd,$ff +; per-note velocity values +5008: db $0c,$1c,$2c,$3c,$4c,$5c,$6c,$7c +5010: db $8c,$9c,$ac,$bc,$cc,$dc,$ec,$fc \ No newline at end of file From e1ccbfab2280c88154c77c9c61be28d3d8a9a3d4 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:51:58 -0800 Subject: [PATCH 080/116] Add files via upload --- ...hodai Nekketsu Kouha Kunio-kun ($0440).bin | Bin 0 -> 3328 bytes snes/NSPC/Shodai Nekketsu Kouha Kunio-kun.s | 1698 +++++++++++++++++ 2 files changed, 1698 insertions(+) create mode 100644 snes/NSPC/Shodai Nekketsu Kouha Kunio-kun ($0440).bin create mode 100644 snes/NSPC/Shodai Nekketsu Kouha Kunio-kun.s diff --git a/snes/NSPC/Shodai Nekketsu Kouha Kunio-kun ($0440).bin b/snes/NSPC/Shodai Nekketsu Kouha Kunio-kun ($0440).bin new file mode 100644 index 0000000000000000000000000000000000000000..2cfbc6df1ea40b53100d5d3ed30b19e074b18b6a GIT binary patch literal 3328 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 literal 0 HcmV?d00001 diff --git a/snes/NSPC/Shodai Nekketsu Kouha Kunio-kun.s b/snes/NSPC/Shodai Nekketsu Kouha Kunio-kun.s new file mode 100644 index 00000000..09472854 --- /dev/null +++ b/snes/NSPC/Shodai Nekketsu Kouha Kunio-kun.s @@ -0,0 +1,1698 @@ +0440: 20 clrp +0441: cd cf mov x,#$cf +0443: bd mov sp,x +0444: e8 e0 mov a,#$e0 +0446: 8d 6c mov y,#$6c +0448: 3f 3a 10 call $103a +044b: e8 28 mov a,#$28 +044d: 8d 5d mov y,#$5d +044f: 3f 3a 10 call $103a +0452: e8 00 mov a,#$00 +0454: 5d mov x,a +0455: af mov (x)+,a +0456: c8 e0 cmp x,#$e0 +0458: d0 fb bne $0455 +045a: e8 20 mov a,#$20 +045c: c4 13 mov $13,a +045e: 8d 6c mov y,#$6c +0460: 3f 3a 10 call $103a +0463: 3f 65 0c call $0c65 +0466: e8 20 mov a,#$20 +0468: c5 fa 00 mov $00fa,a +046b: e8 01 mov a,#$01 +046d: c5 f1 00 mov $00f1,a +0470: 8d 50 mov y,#$50 +0472: e5 fd 00 mov a,$00fd +0475: f0 fb beq $0472 +0477: dc dec y +0478: d0 f8 bne $0472 +047a: 3f 23 0d call $0d23 +047d: 3f 57 0d call $0d57 +0480: e8 30 mov a,#$30 +0482: c5 f1 00 mov $00f1,a +0485: e8 20 mov a,#$20 +0487: c5 fa 00 mov $00fa,a +048a: e8 01 mov a,#$01 +048c: c5 f1 00 mov $00f1,a +048f: ec fd 00 mov y,$00fd +0492: f0 fb beq $048f +0494: 6d push y +0495: 3f c9 0c call $0cc9 +0498: 3f cd 04 call $04cd +049b: e4 18 mov a,$18 +049d: 48 ff eor a,#$ff +049f: 24 15 and a,$15 +04a1: 04 17 or a,$17 +04a3: 8d 5c mov y,#$5c +04a5: 3f 3a 10 call $103a +04a8: e8 00 mov a,#$00 +04aa: c4 15 mov $15,a +04ac: c4 17 mov $17,a +04ae: 3f bd 0c call $0cbd +04b1: 3f db 0f call $0fdb +04b4: e4 18 mov a,$18 +04b6: 48 ff eor a,#$ff +04b8: 24 14 and a,$14 +04ba: 04 16 or a,$16 +04bc: 8d 4c mov y,#$4c +04be: 3f 3a 10 call $103a +04c1: e8 00 mov a,#$00 +04c3: c4 14 mov $14,a +04c5: c4 16 mov $16,a +04c7: ee pop y +04c8: dc dec y +04c9: d0 c9 bne $0494 +04cb: 2f c2 bra $048f +04cd: 3f 52 0f call $0f52 +04d0: e4 0c mov a,$0c +04d2: f0 1c beq $04f0 +04d4: e4 24 mov a,$24 +04d6: 60 clrc +04d7: 84 25 adc a,$25 +04d9: c4 25 mov $25,a +04db: 90 13 bcc $04f0 +04dd: 03 0f 10 bbs0 $0f,$04f0 +04e0: cd 00 mov x,#$00 +04e2: 8f 01 12 mov $12,#$01 +04e5: 3f 41 05 call $0541 +04e8: 3d inc x +04e9: 0b 12 asl $12 +04eb: d0 f8 bne $04e5 +04ed: 3f 0c 0a call $0a0c +04f0: cd 08 mov x,#$08 +04f2: 8f 01 12 mov $12,#$01 +04f5: 3f 11 05 call $0511 +04f8: 3d inc x +04f9: 0b 12 asl $12 +04fb: d0 f8 bne $04f5 +04fd: cd 00 mov x,#$00 +04ff: 8f 01 12 mov $12,#$01 +0502: 3f 18 07 call $0718 +0505: 3d inc x +0506: 0b 12 asl $12 +0508: d0 f8 bne $0502 +050a: e8 00 mov a,#$00 +050c: c4 1a mov $1a,a +050e: c4 19 mov $19,a +0510: 6f ret + +0511: f5 00 02 mov a,$0200+x +0514: f0 08 beq $051e +0516: f4 80 mov a,$80+x +0518: 30 05 bmi $051f +051a: 9b 80 dec $80+x +051c: f0 47 beq $0565 +051e: 6f ret + +051f: e8 7c mov a,#$7c +0521: c5 f2 00 mov $00f2,a +0524: e5 f3 00 mov a,$00f3 +0527: 24 12 and a,$12 +0529: f0 15 beq $0540 +052b: 09 12 17 or ($17),($12) +052e: e4 12 mov a,$12 +0530: 4e 18 00 tclr1 $0018 +0533: e8 00 mov a,#$00 +0535: d5 20 02 mov $0220+x,a +0538: d5 00 02 mov $0200+x,a +053b: e8 ff mov a,#$ff +053d: d5 30 02 mov $0230+x,a +0540: 6f ret + +0541: f5 00 02 mov a,$0200+x +0544: f0 1e beq $0564 +0546: f4 a8 mov a,$a8+x +0548: f0 07 beq $0551 +054a: 9b a8 dec $a8+x +054c: d0 03 bne $0551 +054e: 09 12 15 or ($15),($12) +0551: 9b 80 dec $80+x +0553: d0 03 bne $0558 +0555: 3f 65 05 call $0565 +0558: 3f 8a 0a call $0a8a +055b: 3f be 0a call $0abe +055e: 3f 32 0a call $0a32 +0561: 3f 5e 0a call $0a5e +0564: 6f ret + +0565: f5 60 00 mov a,$0060+x +0568: c4 0a mov $0a,a +056a: f5 70 00 mov a,$0070+x +056d: c4 0b mov $0b,a +056f: 3f 5e 07 call $075e +0572: d0 13 bne $0587 +0574: f4 90 mov a,$90+x +0576: d0 03 bne $057b +0578: 5f 00 07 jmp $0700 + +057b: 3f 11 09 call $0911 +057e: c4 0b mov $0b,a +0580: 3f 11 09 call $0911 +0583: c4 0a mov $0a,a +0585: 2f e8 bra $056f +0587: 30 27 bmi $05b0 +0589: c8 08 cmp x,#$08 +058b: 90 04 bcc $0591 +058d: d4 80 mov $80+x,a +058f: 2f 62 bra $05f3 +0591: d5 a0 02 mov $02a0+x,a +0594: 3f 5e 07 call $075e +0597: 30 17 bmi $05b0 +0599: 2d push a +059a: 9f xcn a +059b: 28 07 and a,#$07 +059d: fd mov y,a +059e: f6 08 11 mov a,$1108+y +05a1: d5 a8 02 mov $02a8+x,a ; set dur% from high nybble +05a4: ae pop a +05a5: 28 0f and a,#$0f +05a7: fd mov y,a +05a8: f6 10 11 mov a,$1110+y +05ab: d5 38 03 mov $0338+x,a ; set per-note vol from low nybble +05ae: 2f bf bra $056f +; vcmd branches 80-ff +05b0: 68 d0 cmp a,#$d0 +05b2: 90 05 bcc $05b9 +05b4: 3f 49 07 call $0749 +05b7: 2f b6 bra $056f +05b9: c8 08 cmp x,#$08 +05bb: 90 0a bcc $05c7 +05bd: 28 7f and a,#$7f +05bf: d5 40 02 mov $0240+x,a +05c2: 09 12 19 or ($19),($12) +05c5: 2f a8 bra $056f +05c7: 2d push a +05c8: f5 a0 02 mov a,$02a0+x +05cb: d4 80 mov $80+x,a +05cd: fd mov y,a +05ce: f5 a8 02 mov a,$02a8+x +05d1: cf mul ya +05d2: dd mov a,y +05d3: d0 01 bne $05d6 +05d5: bc inc a +05d6: d4 a8 mov $a8+x,a +05d8: 3f a6 06 call $06a6 +05db: ae pop a +05dc: 68 be cmp a,#$be +05de: f0 10 beq $05f0 +05e0: 68 bf cmp a,#$bf +05e2: f0 0c beq $05f0 +05e4: 3f fc 05 call $05fc +05e7: 3f b2 06 call $06b2 +05ea: 3f ca 06 call $06ca +05ed: 09 12 14 or ($14),($12) +05f0: 3f 92 06 call $0692 +05f3: e4 0a mov a,$0a +05f5: d4 60 mov $60+x,a +05f7: e4 0b mov a,$0b +05f9: d4 70 mov $70+x,a +05fb: 6f ret + +; handle a note vcmd (80-bf) +05fc: 68 c0 cmp a,#$c0 +05fe: 90 0d bcc $060d +0600: 80 setc +0601: a8 c0 sbc a,#$c0 +0603: 60 clrc +0604: 84 21 adc a,$21 +0606: 3f 45 0b call $0b45 +0609: e8 24 mov a,#$24 +060b: 2f 08 bra $0615 +060d: 2d push a +060e: f5 30 02 mov a,$0230+x +0611: 3f 45 0b call $0b45 +0614: ae pop a +0615: 28 7f and a,#$7f +0617: 60 clrc +0618: 84 22 adc a,$22 +061a: 60 clrc +061b: 95 b8 02 adc a,$02b8+x +061e: d5 40 02 mov $0240+x,a +0621: f5 b0 02 mov a,$02b0+x +0624: d5 50 02 mov $0250+x,a +0627: e8 00 mov a,#$00 +0629: d5 08 03 mov $0308+x,a +062c: d5 10 03 mov $0310+x,a +062f: d4 d0 mov $d0+x,a +0631: d4 a0 mov $a0+x,a +0633: d4 d8 mov $d8+x,a +0635: d4 c0 mov $c0+x,a +0637: 8d 00 mov y,#$00 +0639: f7 0a mov a,($0a)+y +063b: 68 ea cmp a,#$ea +063d: d0 07 bne $0646 +063f: 3a 0a incw $0a +0641: f5 d0 02 mov a,$02d0+x +0644: 2f 05 bra $064b +0646: f5 d0 02 mov a,$02d0+x +0649: 10 46 bpl $0691 +064b: 28 7f and a,#$7f +064d: f0 0e beq $065d +064f: f5 40 02 mov a,$0240+x +0652: 2d push a +0653: 60 clrc +0654: 95 d8 02 adc a,$02d8+x +0657: d5 40 02 mov $0240+x,a +065a: ae pop a +065b: 2f 07 bra $0664 +065d: f5 d8 02 mov a,$02d8+x +0660: 60 clrc +0661: 95 40 02 adc a,$0240+x +0664: fd mov y,a +0665: f5 c0 02 mov a,$02c0+x +0668: d4 c0 mov $c0+x,a +066a: f5 c8 02 mov a,$02c8+x +066d: d4 c8 mov $c8+x,a +066f: f5 b0 02 mov a,$02b0+x +0672: d5 e8 02 mov $02e8+x,a +0675: 75 50 02 cmp a,$0250+x +0678: dd mov a,y +0679: 28 7f and a,#$7f +067b: d5 e0 02 mov $02e0+x,a +067e: b5 40 02 sbc a,$0240+x +0681: 4d push x +0682: fb c0 mov y,$c0+x +0684: 6d push y +0685: ce pop x +0686: 3f c3 0f call $0fc3 +0689: ce pop x +068a: d5 f0 02 mov $02f0+x,a +068d: dd mov a,y +068e: d5 f8 02 mov $02f8+x,a +0691: 6f ret + +0692: 8d 00 mov y,#$00 +0694: f7 0a mov a,($0a)+y +0696: f0 0d beq $06a5 +0698: 30 03 bmi $069d +069a: fc inc y +069b: 2f f7 bra $0694 +069d: 68 be cmp a,#$be +069f: d0 04 bne $06a5 +06a1: e8 ff mov a,#$ff +06a3: d4 a8 mov $a8+x,a +06a5: 6f ret + +06a6: f5 20 02 mov a,$0220+x +06a9: 75 28 02 cmp a,$0228+x +06ac: 90 03 bcc $06b1 +06ae: d5 28 02 mov $0228+x,a +06b1: 6f ret + +06b2: f5 20 02 mov a,$0220+x +06b5: 75 28 02 cmp a,$0228+x +06b8: d0 0f bne $06c9 +06ba: f5 40 02 mov a,$0240+x +06bd: d5 48 02 mov $0248+x,a +06c0: f5 50 02 mov a,$0250+x +06c3: d5 58 02 mov $0258+x,a +06c6: 09 12 1a or ($1a),($12) +06c9: 6f ret + +06ca: f5 20 02 mov a,$0220+x +06cd: 75 28 02 cmp a,$0228+x +06d0: d0 2d bne $06ff +06d2: eb 2b mov y,$2b +06d4: f5 90 02 mov a,$0290+x +06d7: cf mul ya +06d8: f5 38 03 mov a,$0338+x +06db: cf mul ya +06dc: dd mov a,y +06dd: cf mul ya +06de: dd mov a,y +06df: d5 98 02 mov $0298+x,a +06e2: f5 20 02 mov a,$0220+x +06e5: 75 28 02 cmp a,$0228+x +06e8: d0 15 bne $06ff +06ea: f5 60 02 mov a,$0260+x +06ed: d5 68 02 mov $0268+x,a +06f0: f5 70 02 mov a,$0270+x +06f3: d5 78 02 mov $0278+x,a +06f6: f5 10 02 mov a,$0210+x +06f9: d5 18 02 mov $0218+x,a +06fc: 09 12 19 or ($19),($12) +06ff: 6f ret + +0700: c8 08 cmp x,#$08 +0702: b0 0f bcs $0713 +0704: 09 12 15 or ($15),($12) +0707: e8 00 mov a,#$00 +0709: d5 00 02 mov $0200+x,a +070c: d5 20 02 mov $0220+x,a +070f: 3f 8a 0f call $0f8a +0712: 6f ret + +0713: e8 ff mov a,#$ff +0715: d4 80 mov $80+x,a +0717: 6f ret + +0718: 8f 00 07 mov $07,#$00 +071b: f5 00 03 mov a,$0300+x +071e: 1c asl a +071f: 2b 07 rol $07 +0721: 1c asl a +0722: 2b 07 rol $07 +0724: 1c asl a +0725: 2b 07 rol $07 +0727: 60 clrc +0728: 95 08 03 adc a,$0308+x +072b: d5 08 03 mov $0308+x,a +072e: e4 07 mov a,$07 +0730: 95 10 03 adc a,$0310+x +0733: d5 10 03 mov $0310+x,a +0736: e4 12 mov a,$12 +0738: 24 19 and a,$19 +073a: f0 03 beq $073f +073c: 3f a4 0b call $0ba4 +073f: e4 12 mov a,$12 +0741: 24 1a and a,$1a +0743: f0 03 beq $0748 +0745: 3f 01 0c call $0c01 +0748: 6f ret + +; dispatch vcmd in A (d0-ff) +0749: 80 setc +074a: a8 d0 sbc a,#$d0 +074c: 1c asl a +074d: fd mov y,a +074e: f6 98 09 mov a,$0998+y +0751: 2d push a +0752: f6 97 09 mov a,$0997+y +0755: 2d push a +0756: dd mov a,y +0757: 5c lsr a +0758: fd mov y,a +0759: f6 e5 09 mov a,$09e5+y +075c: f0 06 beq $0764 +075e: 8d 00 mov y,#$00 +0760: f7 0a mov a,($0a)+y +0762: 3a 0a incw $0a +0764: fd mov y,a +0765: 6f ret + +; vcmd d1 - set instrument +0766: d5 30 02 mov $0230+x,a +0769: 6f ret + +; vcmd d2 - pan (1) +076a: d5 10 02 mov $0210+x,a +076d: 28 1f and a,#$1f +; vcmd d3 - pan (2) +076f: d5 70 02 mov $0270+x,a +0772: e8 00 mov a,#$00 +0774: d5 60 02 mov $0260+x,a +0777: 6f ret + +; vcmd d4 - pan fade +0778: 4d push x +0779: d4 b8 mov $b8+x,a +077b: 2d push a +077c: 3f 5e 07 call $075e +077f: d5 40 03 mov $0340+x,a +0782: 80 setc +0783: b5 70 02 sbc a,$0270+x +0786: ce pop x +0787: 3f c3 0f call $0fc3 +078a: ce pop x +078b: d5 48 03 mov $0348+x,a +078e: dd mov a,y +078f: d5 50 03 mov $0350+x,a +0792: 6f ret + +0793: 4d push x +0794: 1c asl a +0795: d5 18 03 mov $0318+x,a +0798: 3f 5e 07 call $075e +079b: 1c asl a +079c: d5 20 03 mov $0320+x,a +079f: 2d push a +07a0: 3f 5e 07 call $075e +07a3: 1c asl a +07a4: d5 00 03 mov $0300+x,a +07a7: 3f 5e 07 call $075e +07aa: d5 28 03 mov $0328+x,a +07ad: d4 d8 mov $d8+x,a +07af: 8d 00 mov y,#$00 +07b1: ce pop x +07b2: 9e div ya,x +07b3: ce pop x +07b4: d5 30 03 mov $0330+x,a +07b7: 6f ret + +; vcmd d5 - vibrato +07b8: d4 d8 mov $d8+x,a +07ba: d5 28 03 mov $0328+x,a +07bd: d5 20 03 mov $0320+x,a +07c0: 6f ret + +; vcmd d6 - master volume +07c1: e8 00 mov a,#$00 +07c3: da 2a movw $2a,ya +07c5: 6f ret + +; vcmd d7 - master volume fade +07c6: 4d push x +07c7: c4 2c mov $2c,a +07c9: 2d push a +07ca: 3f 5e 07 call $075e +07cd: c4 2d mov $2d,a +07cf: 80 setc +07d0: a4 2b sbc a,$2b +07d2: ce pop x +07d3: 3f c3 0f call $0fc3 +07d6: ce pop x +07d7: da 2e movw $2e,ya +07d9: 6f ret + +; vcmd d8 - tempo +07da: dd mov a,y +07db: 1c asl a +07dc: fd mov y,a +07dd: e8 00 mov a,#$00 +07df: da 23 movw $23,ya +07e1: 6f ret + +; vcmd e0 - vibrato fade +07e2: d5 20 02 mov $0220+x,a +07e5: 3f a6 06 call $06a6 +07e8: 6f ret + +; vcmd d9 - tempo fade +07e9: 4d push x +07ea: c4 26 mov $26,a +07ec: 2d push a +07ed: 3f 5e 07 call $075e +07f0: c4 27 mov $27,a +07f2: 80 setc +07f3: a4 24 sbc a,$24 +07f5: ce pop x +07f6: 3f c3 0f call $0fc3 +07f9: ce pop x +07fa: da 28 movw $28,ya +07fc: 6f ret + +; vcmd da - global transpose +07fd: c4 22 mov $22,a +07ff: 6f ret + +; vcmd db - per-voice transpose +0800: d5 b8 02 mov $02b8+x,a +0803: 6f ret + +; vcmd dc - tremolo on +0804: 3f 5e 07 call $075e +0807: 3f 5e 07 call $075e +; vcmd dd - tremolo off +080a: e8 00 mov a,#$00 +080c: 6f ret + +; vcmd e1 - pitch envelope (release) +080d: f5 d0 02 mov a,$02d0+x +0810: 28 80 and a,#$80 +0812: 2f 07 bra $081b +; vcmd e2 - pitch envelope (attack) +0814: f5 d0 02 mov a,$02d0+x +0817: 28 80 and a,#$80 +0819: 08 01 or a,#$01 +081b: d5 d0 02 mov $02d0+x,a +081e: dd mov a,y +081f: d5 c8 02 mov $02c8+x,a +0822: 3f 5e 07 call $075e +0825: d5 c0 02 mov $02c0+x,a +0828: 3f 5e 07 call $075e +082b: d5 d8 02 mov $02d8+x,a +082e: 6f ret + +; vcmd e3/ea - pitch envelope off +082f: f5 d0 02 mov a,$02d0+x +0832: 08 80 or a,#$80 +0834: d5 d0 02 mov $02d0+x,a +0837: 6f ret + +; vcmd e4 - pitch envelope off (2) +0838: f5 d0 02 mov a,$02d0+x +083b: 28 7f and a,#$7f +083d: d5 d0 02 mov $02d0+x,a +0840: 6f ret + +; vcmd de - volume +0841: d5 90 02 mov $0290+x,a +0844: e8 00 mov a,#$00 +0846: d5 80 02 mov $0280+x,a +0849: c8 08 cmp x,#$08 +084b: 90 03 bcc $0850 +084d: 09 12 19 or ($19),($12) +0850: 6f ret + +; vcmd df - volume fade +0851: 4d push x +0852: d4 b0 mov $b0+x,a +0854: 2d push a +0855: 3f 5e 07 call $075e +0858: d5 58 03 mov $0358+x,a +085b: 80 setc +085c: b5 90 02 sbc a,$0290+x +085f: ce pop x +0860: 3f c3 0f call $0fc3 +0863: ce pop x +0864: d5 60 03 mov $0360+x,a +0867: dd mov a,y +0868: d5 68 03 mov $0368+x,a +086b: 6f ret + +; vcmd e5 - tuning +086c: d5 b0 02 mov $02b0+x,a +086f: 6f ret + +; vcmd e6 - echo volume +0870: 09 12 1c or ($1c),($12) +0873: 6f ret + +; vcmd e7 - disable echo +0874: e4 12 mov a,$12 +0876: 4e 1c 00 tclr1 $001c +0879: 6f ret + +; vcmd e8 - set echo params +087a: 4d push x +087b: 3f 74 0c call $0c74 +087e: 3f 5e 07 call $075e +0881: c4 34 mov $34,a +0883: 3f 15 10 call $1015 +0886: 3f 5e 07 call $075e +0889: c4 1e mov $1e,a +088b: 3f 5e 07 call $075e +088e: 1c asl a +088f: 1c asl a +0890: 1c asl a +0891: 5d mov x,a +0892: 8d 0f mov y,#$0f +0894: f5 e8 10 mov a,$10e8+x +0897: 3f 3a 10 call $103a +089a: 3d inc x +089b: dd mov a,y +089c: 60 clrc +089d: 88 10 adc a,#$10 +089f: fd mov y,a +08a0: 10 f2 bpl $0894 +08a2: ce pop x +08a3: b2 13 clr5 $13 +08a5: 6f ret + +; vcmd eb - set perc patch base +08a6: c4 21 mov $21,a +08a8: 6f ret + +; vcmd ed - echo (1) +08a9: 2d push a +08aa: 3f 5e 07 call $075e +08ad: ae pop a +08ae: 60 clrc +08af: 84 0a adc a,$0a +08b1: c4 0a mov $0a,a +08b3: dd mov a,y +08b4: 84 0b adc a,$0b +08b6: c4 0b mov $0b,a +08b8: 6f ret + +; vcmd ee - echo (2) +08b9: 2d push a +08ba: 3f 5e 07 call $075e +08bd: 2d push a +08be: e4 0a mov a,$0a +08c0: 3f fe 08 call $08fe +08c3: e4 0b mov a,$0b +08c5: 3f fe 08 call $08fe +08c8: ae pop a +08c9: c4 0b mov $0b,a +08cb: ae pop a +08cc: c4 0a mov $0a,a +08ce: 6f ret + +; vcmd ef - echo (3) +08cf: 3f fe 08 call $08fe +08d2: e4 0a mov a,$0a +08d4: 3f fe 08 call $08fe +08d7: e4 0b mov a,$0b +08d9: 3f fe 08 call $08fe +08dc: 6f ret + +; vcmd f0 - echo (4) +08dd: 3f 11 09 call $0911 +08e0: 2d push a +08e1: 3f 11 09 call $0911 +08e4: 2d push a +08e5: 3f 11 09 call $0911 +08e8: 9c dec a +08e9: f0 10 beq $08fb +08eb: 3f fe 08 call $08fe +08ee: ae pop a +08ef: c4 0a mov $0a,a +08f1: 3f fe 08 call $08fe +08f4: ae pop a +08f5: c4 0b mov $0b,a +08f7: 3f fe 08 call $08fe +08fa: 6f ret + +08fb: ae pop a +08fc: ae pop a +08fd: 6f ret + +08fe: fd mov y,a +08ff: f5 20 11 mov a,$1120+x +0902: c4 02 mov $02,a +0904: f5 30 11 mov a,$1130+x +0907: c4 03 mov $03,a +0909: dd mov a,y +090a: fb 90 mov y,$90+x +090c: d7 02 mov ($02)+y,a +090e: bb 90 inc $90+x +0910: 6f ret + +0911: f5 20 11 mov a,$1120+x +0914: c4 02 mov $02,a +0916: f5 30 11 mov a,$1130+x +0919: c4 03 mov $03,a +091b: 9b 90 dec $90+x +091d: fb 90 mov y,$90+x +091f: f7 02 mov a,($02)+y +0921: 6f ret + +; vcmd f1 - echo (5) +0922: 60 clrc +0923: 95 40 02 adc a,$0240+x +0926: d5 40 02 mov $0240+x,a +0929: 09 12 1a or ($1a),($12) +092c: 6f ret + +; vcmd f2 - echo (6) +092d: 28 ff and a,#$ff +092f: 30 13 bmi $0944 +0931: 60 clrc +0932: 95 50 02 adc a,$0250+x +0935: d5 50 02 mov $0250+x,a +0938: f5 40 02 mov a,$0240+x +093b: 88 00 adc a,#$00 +093d: d5 40 02 mov $0240+x,a +0940: 09 12 1a or ($1a),($12) +0943: 6f ret + +0944: 60 clrc +0945: 95 50 02 adc a,$0250+x +0948: d5 50 02 mov $0250+x,a +094b: f5 40 02 mov a,$0240+x +094e: a8 00 sbc a,#$00 +0950: d5 40 02 mov $0240+x,a +0953: 09 12 1a or ($1a),($12) +0956: 6f ret + +; vcmd f3 - echo (7) +0957: f5 30 02 mov a,$0230+x +095a: 3f 5a 0b call $0b5a +095d: 09 12 16 or ($16),($12) +0960: 09 12 19 or ($19),($12) +0963: 09 12 1a or ($1a),($12) +0966: 6f ret + +; vcmd f4 - echo (8) +0967: 09 12 17 or ($17),($12) +096a: 6f ret + +; vcmd f5 - echo (9) +096b: 60 clrc +096c: 95 90 02 adc a,$0290+x +096f: d5 90 02 mov $0290+x,a +0972: 09 12 19 or ($19),($12) +0975: 6f ret + +; vcmd f6 - echo (10) +0976: d5 30 02 mov $0230+x,a +0979: 3f 5a 0b call $0b5a +097c: 3f 5e 07 call $075e +097f: d5 40 02 mov $0240+x,a +0982: 3f 5e 07 call $075e +0985: d5 90 02 mov $0290+x,a +0988: 09 12 16 or ($16),($12) +098b: 09 12 19 or ($19),($12) +098e: 09 12 1a or ($1a),($12) +0991: e8 01 mov a,#$01 +0993: d5 80 00 mov $0080+x,a +0996: 6f ret + +; vcmd dispatch table +0997: dw $0000 ; d0 - undefined +0999: dw $0766 ; d1 - set instrument +099b: dw $076a ; d2 - pan (1) +099d: dw $0778 ; d3 - pan (2) +099f: dw $0793 ; d4 - pan fade +09a1: dw $07b8 ; d5 - vibrato +09a3: dw $07c1 ; d6 - master volume +09a5: dw $07c6 ; d7 - master volume fade +09a7: dw $07da ; d8 - tempo +09a9: dw $07e9 ; d9 - tempo fade +09ab: dw $07fd ; da - global transpose +09ad: dw $0800 ; db - per-voice transpose +09af: dw $0804 ; dc - tremolo on +09b1: dw $080a ; dd - tremolo off +09b3: dw $0841 ; de - volume +09b5: dw $0851 ; df - volume fade +09b7: dw $07e2 ; e0 - vibrato fade +09b9: dw $080d ; e1 - pitch envelope (release) +09bb: dw $0814 ; e2 - pitch envelope (attack) +09bd: dw $082f ; e3 - pitch envelope off (1) +09bf: dw $0838 ; e4 - pitch envelope off (2) +09c1: dw $086c ; e5 - set tuning +09c3: dw $0870 ; e6 - echo volume +09c5: dw $0874 ; e7 - disable echo +09c7: dw $087a ; e8 - set echo params +09c9: dw $0000 ; e9 - undefined +09cb: dw $082f ; ea - pitch envelope off +09cd: dw $08a6 ; eb - set perc patch base +09cf: dw $0000 ; ec - undefined +09d1: dw $08a9 ; ed - echo (1) +09d3: dw $08b9 ; ee - echo (2) +09d5: dw $08cf ; ef - echo (3) +09d7: dw $08dd ; f0 - echo (4) +09d9: dw $0922 ; f1 - echo (5) +09db: dw $092d ; f2 - echo (6) +09dd: dw $0957 ; f3 - echo (7) +09df: dw $0967 ; f4 - echo (8) +09e1: dw $096b ; f5 - echo (9) +09e3: dw $0976 ; f6 - echo (10) + +; vcmd lengths +09e5: db $00,$01,$01,$02,$03,$00,$01,$02 ; d0-d7 +09ed: db $01,$02,$01,$01,$03,$00,$01,$02 ; d8-df +09f5: db $01,$03,$03,$00,$00,$01,$00,$00 ; e0-e7 +09fd: db $04,$00,$00,$01,$02,$02,$02,$01 ; e8-ef +0a05: db $00,$01,$01,$00,$00,$01,$03 ; f0-f6 + +0a0c: e4 26 mov a,$26 +0a0e: f0 0d beq $0a1d +0a10: ba 28 movw ya,$28 +0a12: 7a 23 addw ya,$23 +0a14: 6e 26 04 dbnz $26,$0a1b +0a17: eb 27 mov y,$27 +0a19: e8 00 mov a,#$00 +0a1b: da 23 movw $23,ya +0a1d: e4 2c mov a,$2c +0a1f: f0 10 beq $0a31 +0a21: ba 2e movw ya,$2e +0a23: 7a 2a addw ya,$2a +0a25: 6e 2c 04 dbnz $2c,$0a2c +0a28: eb 2d mov y,$2d +0a2a: e8 00 mov a,#$00 +0a2c: da 2a movw $2a,ya +0a2e: 8f ff 19 mov $19,#$ff +0a31: 6f ret + +0a32: f4 b0 mov a,$b0+x +0a34: f0 27 beq $0a5d +0a36: 9b b0 dec $b0+x +0a38: d0 0d bne $0a47 +0a3a: e8 00 mov a,#$00 +0a3c: d5 80 02 mov $0280+x,a +0a3f: f5 58 03 mov a,$0358+x +0a42: d5 90 02 mov $0290+x,a +0a45: 2f 13 bra $0a5a +0a47: 60 clrc +0a48: f5 60 03 mov a,$0360+x +0a4b: 95 80 02 adc a,$0280+x +0a4e: d5 80 02 mov $0280+x,a +0a51: f5 68 03 mov a,$0368+x +0a54: 95 90 02 adc a,$0290+x +0a57: d5 90 02 mov $0290+x,a +0a5a: 3f ca 06 call $06ca +0a5d: 6f ret + +0a5e: f4 b8 mov a,$b8+x +0a60: f0 27 beq $0a89 +0a62: 9b b8 dec $b8+x +0a64: d0 0d bne $0a73 +0a66: e8 00 mov a,#$00 +0a68: d5 60 02 mov $0260+x,a +0a6b: f5 40 03 mov a,$0340+x +0a6e: d5 70 02 mov $0270+x,a +0a71: 2f 13 bra $0a86 +0a73: 60 clrc +0a74: f5 48 03 mov a,$0348+x +0a77: 95 60 02 adc a,$0260+x +0a7a: d5 60 02 mov $0260+x,a +0a7d: f5 50 03 mov a,$0350+x +0a80: 95 70 02 adc a,$0270+x +0a83: d5 70 02 mov $0270+x,a +0a86: 3f e2 06 call $06e2 +0a89: 6f ret + +0a8a: f4 c0 mov a,$c0+x +0a8c: f0 2f beq $0abd +0a8e: f4 c8 mov a,$c8+x +0a90: f0 03 beq $0a95 +0a92: 9b c8 dec $c8+x +0a94: 6f ret + +0a95: 9b c0 dec $c0+x +0a97: d0 0e bne $0aa7 +0a99: f5 e8 02 mov a,$02e8+x +0a9c: d5 50 02 mov $0250+x,a +0a9f: f5 e0 02 mov a,$02e0+x +0aa2: d5 40 02 mov $0240+x,a +0aa5: 2f 13 bra $0aba +0aa7: 60 clrc +0aa8: f5 f0 02 mov a,$02f0+x +0aab: 95 50 02 adc a,$0250+x +0aae: d5 50 02 mov $0250+x,a +0ab1: f5 f8 02 mov a,$02f8+x +0ab4: 95 40 02 adc a,$0240+x +0ab7: d5 40 02 mov $0240+x,a +0aba: 3f b2 06 call $06b2 +0abd: 6f ret + +0abe: f5 28 03 mov a,$0328+x +0ac1: f0 6b beq $0b2e +0ac3: f5 18 03 mov a,$0318+x +0ac6: de d0 63 cbne $d0+x,$0b2c +0ac9: f5 40 02 mov a,$0240+x +0acc: 2d push a +0acd: f5 50 02 mov a,$0250+x +0ad0: 2d push a +0ad1: f5 20 03 mov a,$0320+x +0ad4: de a0 05 cbne $a0+x,$0adc +0ad7: f5 28 03 mov a,$0328+x +0ada: 2f 08 bra $0ae4 +0adc: bb a0 inc $a0+x +0ade: f4 d8 mov a,$d8+x +0ae0: 60 clrc +0ae1: 95 30 03 adc a,$0330+x +0ae4: d4 d8 mov $d8+x,a +0ae6: f5 10 03 mov a,$0310+x +0ae9: 1c asl a +0aea: b0 1b bcs $0b07 +0aec: 1c asl a +0aed: 90 02 bcc $0af1 +0aef: 48 ff eor a,#$ff +0af1: 3f 2f 0b call $0b2f +0af4: 60 clrc +0af5: f5 50 02 mov a,$0250+x +0af8: 84 06 adc a,$06 +0afa: d5 50 02 mov $0250+x,a +0afd: f5 40 02 mov a,$0240+x +0b00: 84 07 adc a,$07 +0b02: d5 40 02 mov $0240+x,a +0b05: 2f 19 bra $0b20 +0b07: 1c asl a +0b08: 90 02 bcc $0b0c +0b0a: 48 ff eor a,#$ff +0b0c: 3f 2f 0b call $0b2f +0b0f: 80 setc +0b10: f5 50 02 mov a,$0250+x +0b13: a4 06 sbc a,$06 +0b15: d5 50 02 mov $0250+x,a +0b18: f5 40 02 mov a,$0240+x +0b1b: a4 07 sbc a,$07 +0b1d: d5 40 02 mov $0240+x,a +0b20: 3f b2 06 call $06b2 +0b23: ae pop a +0b24: d5 50 02 mov $0250+x,a +0b27: ae pop a +0b28: d5 40 02 mov $0240+x,a +0b2b: 6f ret + +0b2c: bb d0 inc $d0+x +0b2e: 6f ret + +0b2f: fd mov y,a +0b30: f4 d8 mov a,$d8+x +0b32: cf mul ya +0b33: cb 06 mov $06,y +0b35: 8f 00 07 mov $07,#$00 +0b38: 0b 06 asl $06 +0b3a: 2b 07 rol $07 +0b3c: 0b 06 asl $06 +0b3e: 2b 07 rol $07 +0b40: 0b 06 asl $06 +0b42: 2b 07 rol $07 +0b44: 6f ret + +0b45: 2d push a +0b46: f5 20 02 mov a,$0220+x +0b49: 75 28 02 cmp a,$0228+x +0b4c: ae pop a +0b4d: d0 0a bne $0b59 +0b4f: 75 38 02 cmp a,$0238+x +0b52: f0 05 beq $0b59 +0b54: d5 38 02 mov $0238+x,a +0b57: 2f 01 bra $0b5a +0b59: 6f ret + +0b5a: 4d push x +0b5b: 8d 06 mov y,#$06 +0b5d: cf mul ya +0b5e: da 06 movw $06,ya +0b60: 60 clrc +0b61: 98 00 06 adc $06,#$00 +0b64: 98 12 07 adc $07,#$12 +0b67: 7d mov a,x +0b68: 28 07 and a,#$07 +0b6a: 2d push a +0b6b: 9f xcn a +0b6c: 08 04 or a,#$04 +0b6e: 5d mov x,a +0b6f: 8d 00 mov y,#$00 +0b71: f7 06 mov a,($06)+y +0b73: 10 0e bpl $0b83 +0b75: 28 1f and a,#$1f +0b77: 38 20 13 and $13,#$20 +0b7a: 0e 13 00 tset1 $0013 +0b7d: 09 12 1b or ($1b),($12) +0b80: dd mov a,y +0b81: 2f 07 bra $0b8a +0b83: e4 12 mov a,$12 +0b85: 4e 1b 00 tclr1 $001b +0b88: f7 06 mov a,($06)+y +0b8a: c9 f2 00 mov $00f2,x +0b8d: c5 f3 00 mov $00f3,a +0b90: 3d inc x +0b91: fc inc y +0b92: ad 04 cmp y,#$04 +0b94: d0 f2 bne $0b88 +0b96: ce pop x +0b97: f7 06 mov a,($06)+y +0b99: d5 78 03 mov $0378+x,a +0b9c: fc inc y +0b9d: f7 06 mov a,($06)+y +0b9f: d5 70 03 mov $0370+x,a +0ba2: ce pop x +0ba3: 6f ret + +0ba4: f5 78 02 mov a,$0278+x +0ba7: fd mov y,a +0ba8: f5 68 02 mov a,$0268+x +0bab: da 08 movw $08,ya +0bad: 7d mov a,x +0bae: 9f xcn a +0baf: 2d push a +0bb0: 3f dd 0b call $0bdd +0bb3: f5 18 02 mov a,$0218+x +0bb6: 1c asl a +0bb7: dd mov a,y +0bb8: 90 03 bcc $0bbd +0bba: 48 ff eor a,#$ff +0bbc: bc inc a +0bbd: ee pop y +0bbe: 3f 3a 10 call $103a +0bc1: fc inc y +0bc2: 6d push y +0bc3: 8d 14 mov y,#$14 +0bc5: e8 00 mov a,#$00 +0bc7: 9a 08 subw ya,$08 +0bc9: da 08 movw $08,ya +0bcb: 3f dd 0b call $0bdd +0bce: f5 18 02 mov a,$0218+x +0bd1: 1c asl a +0bd2: 1c asl a +0bd3: dd mov a,y +0bd4: 90 03 bcc $0bd9 +0bd6: 48 ff eor a,#$ff +0bd8: bc inc a +0bd9: ee pop y +0bda: 5f 3a 10 jmp $103a + +0bdd: 33 0f 19 bbc1 $0f,$0bf9 +0be0: eb 09 mov y,$09 +0be2: f6 d4 10 mov a,$10d4+y +0be5: 80 setc +0be6: b6 d3 10 sbc a,$10d3+y +0be9: eb 08 mov y,$08 +0beb: cf mul ya +0bec: dd mov a,y +0bed: eb 09 mov y,$09 +0bef: 60 clrc +0bf0: 96 d3 10 adc a,$10d3+y +0bf3: fd mov y,a +0bf4: f5 98 02 mov a,$0298+x +0bf7: cf mul ya +0bf8: 6f ret + +0bf9: f5 98 02 mov a,$0298+x +0bfc: ec dd 10 mov y,$10dd +0bff: cf mul ya +0c00: 6f ret + +0c01: f5 48 02 mov a,$0248+x +0c04: 1c asl a +0c05: fd mov y,a +0c06: f6 42 10 mov a,$1042+y +0c09: c4 07 mov $07,a +0c0b: f6 41 10 mov a,$1041+y +0c0e: c4 06 mov $06,a +0c10: f6 44 10 mov a,$1044+y +0c13: 2d push a +0c14: f6 43 10 mov a,$1043+y +0c17: ee pop y +0c18: 9a 06 subw ya,$06 +0c1a: 6d push y +0c1b: fd mov y,a +0c1c: f5 58 02 mov a,$0258+x +0c1f: cf mul ya +0c20: cb 08 mov $08,y +0c22: 8f 00 09 mov $09,#$00 +0c25: ee pop y +0c26: f5 58 02 mov a,$0258+x +0c29: cf mul ya +0c2a: 7a 08 addw ya,$08 +0c2c: 7a 06 addw ya,$06 +0c2e: da 06 movw $06,ya +0c30: f5 70 03 mov a,$0370+x +0c33: eb 07 mov y,$07 +0c35: cf mul ya +0c36: da 08 movw $08,ya +0c38: f5 78 03 mov a,$0378+x +0c3b: eb 06 mov y,$06 +0c3d: cf mul ya +0c3e: 7a 08 addw ya,$08 +0c40: da 08 movw $08,ya +0c42: f5 70 03 mov a,$0370+x +0c45: eb 06 mov y,$06 +0c47: cf mul ya +0c48: 6d push y +0c49: f5 78 03 mov a,$0378+x +0c4c: eb 07 mov y,$07 +0c4e: cf mul ya +0c4f: fd mov y,a +0c50: ae pop a +0c51: 7a 08 addw ya,$08 +0c53: da 08 movw $08,ya +0c55: 7d mov a,x +0c56: 9f xcn a +0c57: 08 02 or a,#$02 +0c59: fd mov y,a +0c5a: e4 08 mov a,$08 +0c5c: 3f 3a 10 call $103a +0c5f: fc inc y +0c60: e4 09 mov a,$09 +0c62: 5f 3a 10 jmp $103a + +0c65: e8 01 mov a,#$01 +0c67: 3f 74 0c call $0c74 +0c6a: e8 00 mov a,#$00 +0c6c: c4 34 mov $34,a +0c6e: 3f 15 10 call $1015 +0c71: a2 13 set5 $13 +0c73: 6f ret + +0c74: 68 03 cmp a,#$03 +0c76: 90 02 bcc $0c7a +0c78: e8 02 mov a,#$02 +0c7a: c4 1f mov $1f,a +0c7c: 8d 7d mov y,#$7d +0c7e: cc f2 00 mov $00f2,y +0c81: e5 f3 00 mov a,$00f3 +0c84: 64 1f cmp a,$1f +0c86: f0 2e beq $0cb6 +0c88: 28 0f and a,#$0f +0c8a: 48 ff eor a,#$ff +0c8c: e8 c8 mov a,#$c8 +0c8e: c4 20 mov $20,a +0c90: e8 00 mov a,#$00 +0c92: 8d 4d mov y,#$4d +0c94: 3f 3a 10 call $103a +0c97: 8d 0d mov y,#$0d +0c99: 3f 3a 10 call $103a +0c9c: 8d 3c mov y,#$3c +0c9e: 3f 3a 10 call $103a +0ca1: 8d 2c mov y,#$2c +0ca3: 3f 3a 10 call $103a +0ca6: e4 13 mov a,$13 +0ca8: 08 20 or a,#$20 +0caa: 8d 6c mov y,#$6c +0cac: 3f 3a 10 call $103a +0caf: e4 1f mov a,$1f +0cb1: 8d 7d mov y,#$7d +0cb3: 3f 3a 10 call $103a +0cb6: e8 f0 mov a,#$f0 +0cb8: 8d 6d mov y,#$6d +0cba: 5f 3a 10 jmp $103a + +0cbd: e4 20 mov a,$20 +0cbf: f0 07 beq $0cc8 +0cc1: 8b 20 dec $20 +0cc3: d0 03 bne $0cc8 +0cc5: 3f 15 10 call $1015 +0cc8: 6f ret + +0cc9: e4 0c mov a,$0c +0ccb: 04 10 or a,$10 +0ccd: c5 f4 00 mov $00f4,a +0cd0: e5 f4 00 mov a,$00f4 +0cd3: 65 f4 00 cmp a,$00f4 +0cd6: d0 f8 bne $0cd0 +0cd8: c4 0e mov $0e,a +0cda: 28 ff and a,#$ff +0cdc: f0 05 beq $0ce3 +0cde: e8 11 mov a,#$11 +0ce0: c5 f1 00 mov $00f1,a +0ce3: e4 0e mov a,$0e +0ce5: f0 31 beq $0d18 +0ce7: 30 03 bmi $0cec +0ce9: 5f a6 0d jmp $0da6 + +0cec: 68 fe cmp a,#$fe +0cee: f0 33 beq $0d23 +0cf0: 68 f0 cmp a,#$f0 +0cf2: f0 5c beq $0d50 +0cf4: 68 ff cmp a,#$ff +0cf6: f0 21 beq $0d19 +0cf8: 68 f1 cmp a,#$f1 +0cfa: f0 50 beq $0d4c +0cfc: 68 f3 cmp a,#$f3 +0cfe: f0 63 beq $0d63 +0d00: 68 f4 cmp a,#$f4 +0d02: f0 6d beq $0d71 +0d04: 68 f5 cmp a,#$f5 +0d06: f0 79 beq $0d81 +0d08: 68 f6 cmp a,#$f6 +0d0a: f0 4b beq $0d57 +0d0c: 68 f7 cmp a,#$f7 +0d0e: f0 4b beq $0d5b +0d10: 68 f8 cmp a,#$f8 +0d12: f0 4b beq $0d5f +0d14: 68 f2 cmp a,#$f2 +0d16: f0 73 beq $0d8b +0d18: 6f ret + +0d19: e8 ff mov a,#$ff +0d1b: 8d 5c mov y,#$5c +0d1d: 3f 3a 10 call $103a +0d20: 3f 06 0f call $0f06 +0d23: e8 00 mov a,#$00 +0d25: c4 32 mov $32,a +0d27: c4 33 mov $33,a +0d29: c4 30 mov $30,a +0d2b: c4 31 mov $31,a +0d2d: c4 34 mov $34,a +0d2f: 3f 7d 0f call $0f7d +0d32: 3f 95 0e call $0e95 +0d35: e8 ff mov a,#$ff +0d37: c4 30 mov $30,a +0d39: e8 7f mov a,#$7f +0d3b: c4 31 mov $31,a +0d3d: 3f 7d 0f call $0f7d +0d40: 3f 4c 0d call $0d4c +0d43: e8 00 mov a,#$00 +0d45: c4 19 mov $19,a +0d47: c4 1a mov $1a,a +0d49: c4 0c mov $0c,a +0d4b: 6f ret + +0d4c: 38 fe 0f and $0f,#$fe +0d4f: 6f ret + +0d50: 8f ff 15 mov $15,#$ff +0d53: 18 01 0f or $0f,#$01 +0d56: 6f ret + +0d57: 18 02 0f or $0f,#$02 +0d5a: 6f ret + +0d5b: 38 fd 0f and $0f,#$fd +0d5e: 6f ret + +0d5f: 3f 7c 0e call $0e7c +0d62: 6f ret + +0d63: e8 00 mov a,#$00 +0d65: c4 32 mov $32,a +0d67: c4 33 mov $33,a +0d69: e5 f6 00 mov a,$00f6 +0d6c: c4 31 mov $31,a +0d6e: 5f 7d 0f jmp $0f7d + +0d71: e5 f6 00 mov a,$00f6 +0d74: c4 32 mov $32,a +0d76: e8 00 mov a,#$00 +0d78: 0b 32 asl $32 +0d7a: 3c rol a +0d7b: c4 33 mov $33,a +0d7d: fa 80 10 mov ($10),($80) +0d80: 6f ret + +0d81: 3f 71 0d call $0d71 +0d84: ba 00 movw ya,$00 +0d86: 9a 32 subw ya,$32 +0d88: da 32 movw $32,ya +0d8a: 6f ret + +0d8b: e5 f6 00 mov a,$00f6 +0d8e: 3f 4d 0e call $0e4d +0d91: 90 12 bcc $0da5 +0d93: e5 f7 00 mov a,$00f7 +0d96: d5 70 02 mov $0270+x,a +0d99: e8 00 mov a,#$00 +0d9b: d5 60 02 mov $0260+x,a +0d9e: 3f b4 0f call $0fb4 +0da1: 04 19 or a,$19 +0da3: c4 19 mov $19,a +0da5: 6f ret + +0da6: 1c asl a +0da7: fd mov y,a +0da8: f6 fe 13 mov a,$13fe+y +0dab: c4 04 mov $04,a +0dad: f6 ff 13 mov a,$13ff+y +0db0: c4 05 mov $05,a +0db2: 8d 00 mov y,#$00 +0db4: f7 04 mov a,($04)+y +0db6: 3a 04 incw $04 +0db8: 68 ff cmp a,#$ff +0dba: f0 51 beq $0e0d +0dbc: fa 0e 0d mov ($0d),($0e) +0dbf: 8d 00 mov y,#$00 +0dc1: f7 04 mov a,($04)+y +0dc3: 68 ff cmp a,#$ff +0dc5: f0 45 beq $0e0c +0dc7: c4 11 mov $11,a +0dc9: 28 ff and a,#$ff +0dcb: 10 0e bpl $0ddb +0dcd: 3f 5d 0e call $0e5d +0dd0: b0 15 bcs $0de7 +0dd2: e4 0d mov a,$0d +0dd4: 3f 4d 0e call $0e4d +0dd7: 90 33 bcc $0e0c +0dd9: 2f 0c bra $0de7 +0ddb: e4 0d mov a,$0d +0ddd: 3f 4d 0e call $0e4d +0de0: b0 05 bcs $0de7 +0de2: 3f 5d 0e call $0e5d +0de5: 90 25 bcc $0e0c +0de7: 3a 04 incw $04 +0de9: 3f b4 0f call $0fb4 +0dec: c4 12 mov $12,a +0dee: 09 12 18 or ($18),($12) +0df1: 3f b6 0e call $0eb6 +0df4: e5 f7 00 mov a,$00f7 +0df7: d5 70 02 mov $0270+x,a +0dfa: e4 0d mov a,$0d +0dfc: d5 00 02 mov $0200+x,a +0dff: e4 11 mov a,$11 +0e01: 28 7f and a,#$7f +0e03: d5 20 02 mov $0220+x,a +0e06: 3a 04 incw $04 +0e08: 3a 04 incw $04 +0e0a: 2f b3 bra $0dbf +0e0c: 6f ret + +0e0d: fa 0e 0c mov ($0c),($0e) +0e10: 3f 4c 0d call $0d4c +0e13: 3f 95 0e call $0e95 +0e16: e8 00 mov a,#$00 +0e18: c4 2c mov $2c,a +0e1a: c4 26 mov $26,a +0e1c: c4 22 mov $22,a +0e1e: c4 21 mov $21,a +0e20: c4 1c mov $1c,a +0e22: 8f c8 2b mov $2b,#$c8 +0e25: 8f 20 24 mov $24,#$20 +0e28: 8d 00 mov y,#$00 +0e2a: f7 04 mov a,($04)+y +0e2c: 30 1c bmi $0e4a +0e2e: 3a 04 incw $04 +0e30: 5d mov x,a +0e31: 3f b6 0e call $0eb6 +0e34: 3f f0 0e call $0ef0 +0e37: e4 0c mov a,$0c +0e39: d5 00 02 mov $0200+x,a +0e3c: e8 32 mov a,#$32 +0e3e: d5 20 02 mov $0220+x,a +0e41: 3f a6 06 call $06a6 +0e44: 3a 04 incw $04 +0e46: 3a 04 incw $04 +0e48: 2f de bra $0e28 +0e4a: 5f 65 0c jmp $0c65 + +0e4d: cd 0f mov x,#$0f +0e4f: 75 00 02 cmp a,$0200+x +0e52: f0 07 beq $0e5b +0e54: 1d dec x +0e55: c8 08 cmp x,#$08 +0e57: d0 f6 bne $0e4f +0e59: 60 clrc +0e5a: 6f ret + +0e5b: 80 setc +0e5c: 6f ret + +0e5d: cd 00 mov x,#$00 +0e5f: e8 ff mov a,#$ff +0e61: 75 28 02 cmp a,$0228+x +0e64: 90 05 bcc $0e6b +0e66: f5 28 02 mov a,$0228+x +0e69: 4d push x +0e6a: ee pop y +0e6b: 3d inc x +0e6c: c8 08 cmp x,#$08 +0e6e: d0 f1 bne $0e61 +0e70: 6d push y +0e71: ce pop x +0e72: 2d push a +0e73: 7d mov a,x +0e74: 08 08 or a,#$08 +0e76: 5d mov x,a +0e77: ae pop a +0e78: 64 11 cmp a,$11 +0e7a: ed notc +0e7b: 6f ret + +0e7c: cd 08 mov x,#$08 +0e7e: e8 01 mov a,#$01 +0e80: c4 12 mov $12,a +0e82: f5 00 02 mov a,$0200+x +0e85: f0 08 beq $0e8f +0e87: 09 12 17 or ($17),($12) +0e8a: e8 ff mov a,#$ff +0e8c: d5 80 00 mov $0080+x,a +0e8f: 3d inc x +0e90: 0b 12 asl $12 +0e92: d0 ee bne $0e82 +0e94: 6f ret + +0e95: e8 00 mov a,#$00 +0e97: c4 18 mov $18,a +0e99: cd 0f mov x,#$0f +0e9b: e8 00 mov a,#$00 +0e9d: d5 00 02 mov $0200+x,a +0ea0: d5 20 02 mov $0220+x,a +0ea3: 9c dec a +0ea4: d5 30 02 mov $0230+x,a +0ea7: 1d dec x +0ea8: 10 f1 bpl $0e9b +0eaa: e8 ff mov a,#$ff +0eac: 8d 5c mov y,#$5c +0eae: 3f 3a 10 call $103a +0eb1: 8d 7c mov y,#$7c +0eb3: 5f 3a 10 jmp $103a + +0eb6: ba 04 movw ya,$04 +0eb8: da 02 movw $02,ya +0eba: 8d 01 mov y,#$01 +0ebc: f7 02 mov a,($02)+y +0ebe: 2d push a +0ebf: dc dec y +0ec0: f7 02 mov a,($02)+y +0ec2: ee pop y +0ec3: 7a 02 addw ya,$02 +0ec5: d5 60 00 mov $0060+x,a +0ec8: dd mov a,y +0ec9: d5 70 00 mov $0070+x,a +0ecc: e8 00 mov a,#$00 +0ece: d4 90 mov $90+x,a +0ed0: d5 80 02 mov $0280+x,a +0ed3: d5 60 02 mov $0260+x,a +0ed6: d5 50 02 mov $0250+x,a +0ed9: e8 01 mov a,#$01 +0edb: d4 80 mov $80+x,a +0edd: e8 ff mov a,#$ff +0edf: d5 30 02 mov $0230+x,a +0ee2: e8 0a mov a,#$0a +0ee4: d5 10 02 mov $0210+x,a +0ee7: d5 70 02 mov $0270+x,a +0eea: e8 ff mov a,#$ff +0eec: d5 90 02 mov $0290+x,a +0eef: 6f ret + +0ef0: e8 00 mov a,#$00 +0ef2: d5 b8 02 mov $02b8+x,a +0ef5: d5 c0 02 mov $02c0+x,a +0ef8: d5 d0 02 mov $02d0+x,a +0efb: d5 b0 02 mov $02b0+x,a +0efe: d5 28 03 mov $0328+x,a +0f01: d4 b0 mov $b0+x,a +0f03: d4 b8 mov $b8+x,a +0f05: 6f ret + +0f06: e8 aa mov a,#$aa +0f08: c5 f4 00 mov $00f4,a +0f0b: e8 bb mov a,#$bb +0f0d: c5 f5 00 mov $00f5,a +0f10: e5 f4 00 mov a,$00f4 +0f13: 68 cc cmp a,#$cc +0f15: d0 f9 bne $0f10 +0f17: 2f 20 bra $0f39 +0f19: ec f4 00 mov y,$00f4 +0f1c: d0 fb bne $0f19 +0f1e: 5e f4 00 cmp y,$00f4 +0f21: 30 11 bmi $0f34 +0f23: d0 f9 bne $0f1e +0f25: e5 f5 00 mov a,$00f5 +0f28: cc f4 00 mov $00f4,y +0f2b: d7 06 mov ($06)+y,a +0f2d: fc inc y +0f2e: d0 ee bne $0f1e +0f30: ab 07 inc $07 +0f32: 2f ea bra $0f1e +0f34: 5e f4 00 cmp y,$00f4 +0f37: 10 e5 bpl $0f1e +0f39: e5 f6 00 mov a,$00f6 +0f3c: ec f7 00 mov y,$00f7 +0f3f: da 06 movw $06,ya +0f41: ec f4 00 mov y,$00f4 +0f44: e5 f5 00 mov a,$00f5 +0f47: cc f4 00 mov $00f4,y +0f4a: d0 cd bne $0f19 +0f4c: cd 31 mov x,#$31 +0f4e: c9 f1 00 mov $00f1,x +0f51: 6f ret + +0f52: ba 32 movw ya,$32 +0f54: f0 26 beq $0f7c +0f56: 30 11 bmi $0f69 +0f58: 7a 30 addw ya,$30 +0f5a: 10 1a bpl $0f76 +0f5c: e8 00 mov a,#$00 +0f5e: c4 32 mov $32,a +0f60: c4 33 mov $33,a +0f62: c4 10 mov $10,a +0f64: 9c dec a +0f65: 8d 7f mov y,#$7f +0f67: 2f 0d bra $0f76 +0f69: 7a 30 addw ya,$30 +0f6b: 10 09 bpl $0f76 +0f6d: e8 00 mov a,#$00 +0f6f: c4 32 mov $32,a +0f71: c4 33 mov $33,a +0f73: c4 10 mov $10,a +0f75: fd mov y,a +0f76: da 30 movw $30,ya +0f78: dd mov a,y +0f79: 3f 7d 0f call $0f7d +0f7c: 6f ret + +0f7d: 8d 0c mov y,#$0c +0f7f: 3f 3a 10 call $103a +0f82: 8d 1c mov y,#$1c +0f84: 3f 3a 10 call $103a +0f87: 5f 15 10 jmp $1015 + +0f8a: e4 12 mov a,$12 +0f8c: 2d push a +0f8d: 4d push x +0f8e: 4d push x +0f8f: cd 00 mov x,#$00 +0f91: 8d 00 mov y,#$00 +0f93: e8 01 mov a,#$01 +0f95: c4 12 mov $12,a +0f97: ae pop a +0f98: 75 08 02 cmp a,$0208+x +0f9b: d0 0d bne $0faa +0f9d: 2d push a +0f9e: 09 12 15 or ($15),($12) +0fa1: e8 00 mov a,#$00 +0fa3: d5 08 02 mov $0208+x,a +0fa6: d5 28 02 mov $0228+x,a +0fa9: ae pop a +0faa: 3d inc x +0fab: 0b 12 asl $12 +0fad: d0 e9 bne $0f98 +0faf: ce pop x +0fb0: ae pop a +0fb1: c4 12 mov $12,a +0fb3: 6f ret + +0fb4: 4d push x +0fb5: 7d mov a,x +0fb6: 28 07 and a,#$07 +0fb8: 5d mov x,a +0fb9: e8 01 mov a,#$01 +0fbb: 1d dec x +0fbc: 30 03 bmi $0fc1 +0fbe: 1c asl a +0fbf: 2f fa bra $0fbb +0fc1: ce pop x +0fc2: 6f ret + +0fc3: b0 0d bcs $0fd2 +0fc5: 48 ff eor a,#$ff +0fc7: bc inc a +0fc8: 3f d2 0f call $0fd2 +0fcb: da 06 movw $06,ya +0fcd: ba 00 movw ya,$00 +0fcf: 9a 06 subw ya,$06 +0fd1: 6f ret + +0fd2: 8d 00 mov y,#$00 +0fd4: 9e div ya,x +0fd5: 2d push a +0fd6: e8 00 mov a,#$00 +0fd8: 9e div ya,x +0fd9: ee pop y +0fda: 6f ret + +0fdb: e4 18 mov a,$18 +0fdd: 48 ff eor a,#$ff +0fdf: c4 02 mov $02,a +0fe1: e4 1d mov a,$1d +0fe3: 24 02 and a,$02 +0fe5: 8d 2d mov y,#$2d +0fe7: 3f 3a 10 call $103a +0fea: e4 1b mov a,$1b +0fec: 24 02 and a,$02 +0fee: 8d 3d mov y,#$3d +0ff0: 3f 3a 10 call $103a +0ff3: e4 20 mov a,$20 +0ff5: f0 02 beq $0ff9 +0ff7: e8 20 mov a,#$20 +0ff9: 04 13 or a,$13 +0ffb: 8d 6c mov y,#$6c +0ffd: 3f 3a 10 call $103a +1000: e4 20 mov a,$20 +1002: d0 10 bne $1014 +1004: e4 1c mov a,$1c +1006: 24 02 and a,$02 +1008: 8d 4d mov y,#$4d +100a: 3f 3a 10 call $103a +100d: e4 1e mov a,$1e +100f: 8d 0d mov y,#$0d +1011: 3f 3a 10 call $103a +1014: 6f ret + +1015: e4 20 mov a,$20 +1017: f0 04 beq $101d +1019: e8 00 mov a,#$00 +101b: 2f 13 bra $1030 +101d: e4 34 mov a,$34 +101f: 10 03 bpl $1024 +1021: 48 ff eor a,#$ff +1023: bc inc a +1024: eb 31 mov y,$31 +1026: cf mul ya +1027: dd mov a,y +1028: 1c asl a +1029: eb 34 mov y,$34 +102b: 10 03 bpl $1030 +102d: 48 ff eor a,#$ff +102f: bc inc a +1030: 8d 3c mov y,#$3c +1032: 3f 3a 10 call $103a +1035: 8d 2c mov y,#$2c +1037: 5f 3a 10 jmp $103a + +103a: cc f2 00 mov $00f2,y +103d: c5 f3 00 mov $00f3,a +1040: 6f ret + +; pitch table +1041: dw $0042 +1043: dw $0046 +1045: dw $004b +1047: dw $004f +1049: dw $0054 +104b: dw $0059 +104d: dw $005e +104f: dw $0064 +1051: dw $006a +1053: dw $0070 +1055: dw $0077 +1057: dw $007e +1059: dw $0085 +105b: dw $008d +105d: dw $0096 +105f: dw $009f +1061: dw $00a8 +1063: dw $00b2 +1065: dw $00bd +1067: dw $00c8 +1069: dw $00d4 +106b: dw $00e1 +106d: dw $00ee +106f: dw $00fc +1071: dw $010b +1073: dw $011b +1075: dw $012c +1077: dw $013e +1079: dw $0151 +107b: dw $0165 +107d: dw $017a +107f: dw $0191 +1081: dw $01a9 +1083: dw $01c2 +1085: dw $01dd +1087: dw $01f9 +1089: dw $0217 +108b: dw $0237 +108d: dw $0259 +108f: dw $027d +1091: dw $02a3 +1093: dw $02cb +1095: dw $02f5 +1097: dw $0322 +1099: dw $0352 +109b: dw $0385 +109d: dw $03ba +109f: dw $03f3 +10a1: dw $042f +10a3: dw $046f +10a5: dw $04b2 +10a7: dw $04fa +10a9: dw $0546 +10ab: dw $0596 +10ad: dw $05eb +10af: dw $0645 +10b1: dw $06a5 +10b3: dw $070a +10b5: dw $0775 +10b7: dw $07e6 +10b9: dw $085f +10bb: dw $08de +10bd: dw $0965 +10bf: dw $09f4 +10c1: dw $0a8c +10c3: dw $0b2c +10c5: dw $0bd6 +10c7: dw $0c8b +10c9: dw $0d4a +10cb: dw $0e14 +10cd: dw $0eea +10cf: dw $0fcd +10d1: dw $10be + +10d3: db $7f,$7e,$7d,$7c,$7a,$77,$73,$6e +10db: db $69,$67,$64,$50,$46,$3c,$32,$28 +10e3: db $1e,$14,$0a,$05,$00 + +; echo FIR presets +10e8: db $7f,$00,$00,$00,$00,$00,$00,$00 +10f0: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +10f8: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +1100: db $34,$33,$00,$d9,$e5,$01,$fc,$eb + +; note dur%'s +1108: db $32,$65,$7f,$98,$b2,$cb,$e5,$fc +; per-note velocity values +1110: db $19,$32,$4c,$65,$72,$7f,$8c,$98 +1118: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$ff + +1120: db $80,$90,$a0,$b0,$c0,$d0,$e0,$f0 +1128: db $00,$08,$10,$18,$20,$28,$30,$38 + +1130: db $03,$03,$03,$03,$03,$03,$03,$03 +1138: db $04,$04,$04,$04,$04,$04,$04,$04 \ No newline at end of file From 9111029073b675da30482cd3981e7ce5e0ca0202 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:52:18 -0800 Subject: [PATCH 081/116] Rename snes/NSPC/Shodai Nekketsu Kouha Kunio-kun ($0440).bin to snes/NSPC/Mint/Shodai Nekketsu Kouha Kunio-kun ($0440).bin --- .../Shodai Nekketsu Kouha Kunio-kun ($0440).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Mint}/Shodai Nekketsu Kouha Kunio-kun ($0440).bin (100%) diff --git a/snes/NSPC/Shodai Nekketsu Kouha Kunio-kun ($0440).bin b/snes/NSPC/Mint/Shodai Nekketsu Kouha Kunio-kun ($0440).bin similarity index 100% rename from snes/NSPC/Shodai Nekketsu Kouha Kunio-kun ($0440).bin rename to snes/NSPC/Mint/Shodai Nekketsu Kouha Kunio-kun ($0440).bin From 91697efab5ed1e007ae1840b8061586adff6fc76 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:52:31 -0800 Subject: [PATCH 082/116] Update and rename snes/NSPC/Shodai Nekketsu Kouha Kunio-kun.s to snes/NSPC/Mint/Shodai Nekketsu Kouha Kunio-kun.s --- snes/NSPC/{ => Mint}/Shodai Nekketsu Kouha Kunio-kun.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Mint}/Shodai Nekketsu Kouha Kunio-kun.s (96%) diff --git a/snes/NSPC/Shodai Nekketsu Kouha Kunio-kun.s b/snes/NSPC/Mint/Shodai Nekketsu Kouha Kunio-kun.s similarity index 96% rename from snes/NSPC/Shodai Nekketsu Kouha Kunio-kun.s rename to snes/NSPC/Mint/Shodai Nekketsu Kouha Kunio-kun.s index 09472854..67e17837 100644 --- a/snes/NSPC/Shodai Nekketsu Kouha Kunio-kun.s +++ b/snes/NSPC/Mint/Shodai Nekketsu Kouha Kunio-kun.s @@ -1695,4 +1695,5 @@ 1128: db $00,$08,$10,$18,$20,$28,$30,$38 1130: db $03,$03,$03,$03,$03,$03,$03,$03 -1138: db $04,$04,$04,$04,$04,$04,$04,$04 \ No newline at end of file + +1138: db $04,$04,$04,$04,$04,$04,$04,$04 From 26db20ac0b9bd30c36eff9539416ce1b367acb74 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:52:53 -0800 Subject: [PATCH 083/116] Add files via upload --- snes/NSPC/Fatal Fury Special ($0800).bin | Bin 0 -> 2964 bytes snes/NSPC/Fatal Fury Special.s | 1526 ++++++++++++++++++++++ 2 files changed, 1526 insertions(+) create mode 100644 snes/NSPC/Fatal Fury Special ($0800).bin create mode 100644 snes/NSPC/Fatal Fury Special.s diff --git a/snes/NSPC/Fatal Fury Special ($0800).bin b/snes/NSPC/Fatal Fury Special ($0800).bin new file mode 100644 index 0000000000000000000000000000000000000000..34dbd2823d97abadafdd6f5c7762bdb817b93fa1 GIT binary patch literal 2964 zcma)84{Q_H8GnAyB(~$TFZMa1#f6|U$rX5KtKBqpjm}V7yCtc}U=w9da-q<ev-jqR0M�@2zImcszq=d!>h_Xc5m~kChq*f0*9%*ipYCmuClqnt_o_}zDlcV}JPr%pJj;#ZrL z4VQu0BDQ2}xMZLdIu5S>a`B{V!p3~aKH3&`@9*X)C!017GVFYjZf=v*;_x|#7naAiPbSo^xb(~T#q zq*;+Uqc`BGK(0_{j!dpoUv3WFb-;jGAZHAj^Jfku9oSInxKqw~r9Q00SKK@#Rh^zj zVC3{<8Eq?r8Mb1Hw7=mJajIfXCa_9RpzvfqP(tJX=mEYqwI`zZ;vk|2K-hVcV z&X`j7#Kd?BffK;CLOz@CJ)ZAk8)0Rc>Uc$^Us0E{Y{@2WRtVQdu`3h;IFc5XT-+5m zr~!Cl=?Rp4Cp7hW5*;a3-JiOmdMu;<)%7e=N&EXQ0OsEnx7xbh-N(J@ zlD=br#ou?O1hp!)OR6d%aS3~I?;0A5YhZbHjan$g*t3PYjQ46CSnV@<_6Dk5dMySk ze8X-Q&i^riK4}B&f3g0$19w^XkQ>I+K7zckKlYnkK%lkRU!>C!muH- zID8;fZIlrs+whR-QwJl{=1S^(wwim&J&f76b!4|Mk?cjT=+F_)cNw}3=Zcc;czy?4 z4RKw?eZQ95;8WNraa>nl~f}ZgQ?gRD*RunYOAF)f*XRb2x zay$>T0jDnkzHrGUw~){>ISM&Tju8Gj*Ou=MgGp{|Sr4HeC1<$bdF2=>%Bx|YJZ#!b z9yDowL>`5dA&+3-kKk|yX(MO$&#skE0HcHooA|W&Q{m8qvztLeA!+e`1iX!KR{XJW zXv6GAbKxhzS`QLbQ_Oiw{D+qKQ8-~^%`aqeQQl>(2o{CRlLpKJ0VE?Cfnxcrskz($ zD%%!Rra|ReQ{`PIiCG6%TY?2GB1ftZ_ZB|!?yot(86XAC^iA@>%LXm(P0u^FLNjMrZkHcvNPQVZh1``!wPbJgY z{*hB`hYMv1dM*TjhOTL4xR(r9f@}6igu}LB+#eOv#sYFm0YFyIDW=CC zxDKM?*YINk>f4aRr<=nNmR|?s0ty?4t{(w~zBxO?r?mm;_KT6!H7U&Pb;FkYph*UR zKp}!U6xt~Z;I$4iH_&NetqUBtgQTI-h_yOTL^}QDV?LTBD#tTuf4GG9U!Gk%Y>Wj~S+f_CY~@_5VBG`>n@s^^x`wI<4(c zxApH(7nSh2uB0Z2^;%>uT3}50s7oW&^N|=NrfaE_Dwq1VdK;wJNT)IM(lW2Xo>S`8 zTldyOBN4@6$kdnFlMsGkh{Mb5yO5&7@Hd9oHSHtECo-0)f**`6GMN}`WqmWmxi4Tg%f5x(yP z&X4E=(7y~~XnRCoFqp-OilL39u4EU5ygAlxwkF(feeH4QvEk4CvuRLdRCQWDCfuO! ze?9?ky7blHpcvtv^Ue4P_eXl#Zz?gMdbB~f=MGrxG8aLuw=A_@n`+Sqp|bFO1GwGp zyWk)9ac_G&r&@C3Ob-f7wG8FD8Q_>LRQiG+c7JH?mawJf+-R0l3vvVCijltZ8Zc+4i45)&2A{&+gob7M@M-{Z0L<+U<5PU%Ar%)y%a!ZbzR^ z+UBQL-9 Date: Sat, 17 Jan 2026 14:53:13 -0800 Subject: [PATCH 084/116] Rename snes/NSPC/Fatal Fury Special ($0800).bin to snes/NSPC/Monolith/Fatal Fury Special ($0800).bin --- .../{ => Monolith}/Fatal Fury Special ($0800).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Monolith}/Fatal Fury Special ($0800).bin (100%) diff --git a/snes/NSPC/Fatal Fury Special ($0800).bin b/snes/NSPC/Monolith/Fatal Fury Special ($0800).bin similarity index 100% rename from snes/NSPC/Fatal Fury Special ($0800).bin rename to snes/NSPC/Monolith/Fatal Fury Special ($0800).bin From 5b53525bcf3dd28304facb90be62b92a3aa45a48 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:53:27 -0800 Subject: [PATCH 085/116] Update and rename snes/NSPC/Fatal Fury Special.s to snes/NSPC/Monolith/Fatal Fury Special.s --- snes/NSPC/{ => Monolith}/Fatal Fury Special.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Monolith}/Fatal Fury Special.s (96%) diff --git a/snes/NSPC/Fatal Fury Special.s b/snes/NSPC/Monolith/Fatal Fury Special.s similarity index 96% rename from snes/NSPC/Fatal Fury Special.s rename to snes/NSPC/Monolith/Fatal Fury Special.s index 629d0090..3dca58b3 100644 --- a/snes/NSPC/Fatal Fury Special.s +++ b/snes/NSPC/Monolith/Fatal Fury Special.s @@ -1523,4 +1523,5 @@ 138c: e4 1a mov a,$1a 138e: 48 ff eor a,#$ff 1390: 0e 46 00 tset1 $0046 -1393: 6f ret \ No newline at end of file + +1393: 6f ret From 73ab8bdd1d03de635749ef6098a67b60b27c826c Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:53:46 -0800 Subject: [PATCH 086/116] Add files via upload --- ... Pro Yakyuu News! Jitsumei Han ($07a0).bin | Bin 0 -> 3912 bytes ...a Hatch no Pro Yakyuu News! Jitsumei Han.s | 1906 +++++++++++++++++ 2 files changed, 1906 insertions(+) create mode 100644 snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han ($07a0).bin create mode 100644 snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s diff --git a/snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han ($07a0).bin b/snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han ($07a0).bin new file mode 100644 index 0000000000000000000000000000000000000000..c88e61960a250406647053f88d9ad5a1621ae6cb GIT binary patch literal 3912 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 Date: Sat, 17 Jan 2026 14:54:04 -0800 Subject: [PATCH 087/116] Rename snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han ($07a0).bin to snes/NSPC/MSQ/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han ($07a0).bin --- ...tch no Pro Yakyuu News! Jitsumei Han ($07a0).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => MSQ}/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han ($07a0).bin (100%) diff --git a/snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han ($07a0).bin b/snes/NSPC/MSQ/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han ($07a0).bin similarity index 100% rename from snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han ($07a0).bin rename to snes/NSPC/MSQ/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han ($07a0).bin From 57fbe73987b032cb4f3de84d311a19c287f1fa92 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:54:16 -0800 Subject: [PATCH 088/116] Update and rename snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s to snes/NSPC/MSQ/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s --- .../Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => MSQ}/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s (96%) diff --git a/snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s b/snes/NSPC/MSQ/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s similarity index 96% rename from snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s rename to snes/NSPC/MSQ/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s index 15d594fd..ecb26177 100644 --- a/snes/NSPC/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s +++ b/snes/NSPC/MSQ/Hatayama Hatch no Pro Yakyuu News! Jitsumei Han.s @@ -1903,4 +1903,5 @@ 16ca: db $cc,$16,$d0,$16,$00,$00,$e0,$16 16d2: db $e0,$16,$e0,$16,$e0,$16,$e0,$16 16da: db $e0,$16,$e0,$16,$e0,$16,$e5,$64 -16e2: db $ed,$00,$e1,$0f,$60,$c9 \ No newline at end of file + +16e2: db $ed,$00,$e1,$0f,$60,$c9 From ee417ef6ded7375daa76023b229f738be35a2e72 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:55:02 -0800 Subject: [PATCH 089/116] Add files via upload --- .../Naohisa Morota/Sunset Riders ($0420).bin | Bin 0 -> 3668 bytes snes/NSPC/Naohisa Morota/Sunset Riders.s | 1862 +++++++++++++++++ 2 files changed, 1862 insertions(+) create mode 100644 snes/NSPC/Naohisa Morota/Sunset Riders ($0420).bin create mode 100644 snes/NSPC/Naohisa Morota/Sunset Riders.s diff --git a/snes/NSPC/Naohisa Morota/Sunset Riders ($0420).bin b/snes/NSPC/Naohisa Morota/Sunset Riders ($0420).bin new file mode 100644 index 0000000000000000000000000000000000000000..3381de789dfea5a794077cc5d00c360910e8621b GIT binary patch literal 3668 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 literal 0 HcmV?d00001 diff --git a/snes/NSPC/Naohisa Morota/Sunset Riders.s b/snes/NSPC/Naohisa Morota/Sunset Riders.s new file mode 100644 index 00000000..589b8fa5 --- /dev/null +++ b/snes/NSPC/Naohisa Morota/Sunset Riders.s @@ -0,0 +1,1862 @@ +0420: 20 clrp +0421: cd cf mov x,#$cf +0423: bd mov sp,x +0424: e8 00 mov a,#$00 +0426: 5d mov x,a +0427: af mov (x)+,a +0428: c8 e0 cmp x,#$e0 +042a: d0 fb bne $0427 +042c: 8d 02 mov y,#$02 +042e: da 14 movw $14,ya +0430: fd mov y,a +0431: d7 14 mov ($14)+y,a +0433: fc inc y +0434: d0 fb bne $0431 +0436: ab 15 inc $15 +0438: f8 15 mov x,$15 +043a: c8 04 cmp x,#$04 +043c: d0 f3 bne $0431 +043e: e8 3f mov a,#$3f +0440: 8d 5d mov y,#$5d +0442: 3f 5e 06 call $065e +0445: a2 48 set5 $48 +0447: 8d ff mov y,#$ff +0449: cd 00 mov x,#$00 +044b: 1d dec x +044c: d0 fd bne $044b +044e: dc dec y +044f: d0 fa bne $044b +0451: 8d ff mov y,#$ff +0453: cd 00 mov x,#$00 +0455: 1d dec x +0456: d0 fd bne $0455 +0458: dc dec y +0459: d0 fa bne $0455 +045b: e8 00 mov a,#$00 +045d: 8d 6d mov y,#$6d +045f: 3f 5e 06 call $065e +0462: 8d 7d mov y,#$7d +0464: 3f 5e 06 call $065e +0467: 8d 4d mov y,#$4d +0469: 3f 5e 06 call $065e +046c: 8d 0d mov y,#$0d +046e: 3f 5e 06 call $065e +0471: 8d 2c mov y,#$2c +0473: 3f 5e 06 call $065e +0476: 8d 3c mov y,#$3c +0478: 3f 5e 06 call $065e +047b: 8d 71 mov y,#$71 +047d: e8 00 mov a,#$00 +047f: 3f 5e 06 call $065e +0482: dc dec y +0483: 3f 5e 06 call $065e +0486: dd mov a,y +0487: 80 setc +0488: a8 0f sbc a,#$0f +048a: fd mov y,a +048b: 10 f0 bpl $047d +048d: e8 ff mov a,#$ff +048f: c4 46 mov $46,a +0491: 8d 5c mov y,#$5c +0493: 3f 5e 06 call $065e +0496: e8 7f mov a,#$7f +0498: 8d 0c mov y,#$0c +049a: 3f 5e 06 call $065e +049d: 8d 1c mov y,#$1c +049f: 3f 5e 06 call $065e +04a2: e8 f0 mov a,#$f0 +04a4: c5 f1 00 mov $00f1,a +04a7: e8 10 mov a,#$10 +04a9: c5 fa 00 mov $00fa,a +04ac: c4 53 mov $53,a +04ae: e8 01 mov a,#$01 +04b0: c5 f1 00 mov $00f1,a +04b3: e8 07 mov a,#$07 +04b5: c5 d0 00 mov $00d0,a +04b8: e8 00 mov a,#$00 +04ba: c4 31 mov $31,a +04bc: c4 33 mov $33,a +04be: c4 35 mov $35,a +04c0: c4 37 mov $37,a +04c2: c4 39 mov $39,a +04c4: c4 3b mov $3b,a +04c6: c4 3d mov $3d,a +04c8: c4 3e mov $3e,a +04ca: c4 3f mov $3f,a +04cc: c4 e3 mov $e3,a +04ce: c4 e4 mov $e4,a +04d0: c4 e2 mov $e2,a +04d2: 9c dec a +04d3: c4 e5 mov $e5,a +04d5: e8 80 mov a,#$80 +04d7: c4 e0 mov $e0,a +04d9: ab e1 inc $e1 +04db: 8d 0a mov y,#$0a +04dd: ad 05 cmp y,#$05 +04df: f0 07 beq $04e8 +04e1: b0 08 bcs $04eb +04e3: 69 4d 4c cmp ($4c),($4d) +04e6: d0 11 bne $04f9 +04e8: e3 4c 0e bbs7 $4c,$04f9 +04eb: f6 02 11 mov a,$1102+y +04ee: c5 f2 00 mov $00f2,a +04f1: f6 0c 11 mov a,$110c+y +04f4: 5d mov x,a +04f5: e6 mov a,(x) +04f6: c5 f3 00 mov $00f3,a +04f9: fe e2 dbnz y,$04dd +04fb: cb 45 mov $45,y +04fd: cb 46 mov $46,y +04ff: e4 18 mov a,$18 +0501: 44 19 eor a,$19 +0503: 5c lsr a +0504: 5c lsr a +0505: ed notc +0506: 6b 18 ror $18 +0508: 6b 19 ror $19 +050a: ec fd 00 mov y,$00fd +050d: f0 fb beq $050a +050f: 6d push y +0510: ee pop y +0511: 6d push y +0512: e8 20 mov a,#$20 +0514: cf mul ya +0515: 60 clrc +0516: 84 43 adc a,$43 +0518: c4 43 mov $43,a +051a: 90 0d bcc $0529 +051c: 3f 4f 08 call $084f +051f: 3f 65 06 call $0665 +0522: 69 4d 4c cmp ($4c),($4d) +0525: f0 02 beq $0529 +0527: ab 4c inc $4c +0529: e4 53 mov a,$53 +052b: ee pop y +052c: cf mul ya +052d: 60 clrc +052e: 84 51 adc a,$51 +0530: c4 51 mov $51,a +0532: 90 06 bcc $053a +0534: 3f 8e 09 call $098e +0537: 5f d9 04 jmp $04d9 + +053a: e4 04 mov a,$04 +053c: f0 18 beq $0556 +053e: cd 00 mov x,#$00 +0540: 8f 01 47 mov $47,#$01 +0543: e4 d0 mov a,$d0 +0545: c4 d1 mov $d1,a +0547: f4 31 mov a,$31+x +0549: f0 03 beq $054e +054b: 3f 2b 10 call $102b +054e: 3d inc x +054f: 3d inc x +0550: 0b 47 asl $47 +0552: 8b d1 dec $d1 +0554: 10 f1 bpl $0547 +0556: 5f d9 04 jmp $04d9 + +0559: f4 04 mov a,$04+x +055b: d5 f4 00 mov $00f4+x,a +055e: f5 f4 00 mov a,$00f4+x +0561: 75 f4 00 cmp a,$00f4+x +0564: d0 f8 bne $055e +0566: d4 1b mov $1b+x,a +0568: 6f ret + +0569: ad ca cmp y,#$ca +056b: 90 05 bcc $0572 +056d: 3f 31 0b call $0b31 +0570: 8d a4 mov y,#$a4 +0572: ad c8 cmp y,#$c8 +0574: b0 f2 bcs $0568 +0576: e4 1a mov a,$1a +0578: 24 47 and a,$47 +057a: d0 ec bne $0568 +057c: dd mov a,y +057d: 28 7f and a,#$7f +057f: 60 clrc +0580: 84 50 adc a,$50 +0582: 60 clrc +0583: 95 f0 02 adc a,$02f0+x +0586: d5 61 03 mov $0361+x,a +0589: f5 81 03 mov a,$0381+x +058c: d5 60 03 mov $0360+x,a +058f: f5 b1 02 mov a,$02b1+x +0592: 5c lsr a +0593: e8 00 mov a,#$00 +0595: 7c ror a +0596: d5 a0 02 mov $02a0+x,a +0599: e8 00 mov a,#$00 +059b: d4 b0 mov $b0+x,a +059d: d5 00 01 mov $0100+x,a +05a0: d5 d0 02 mov $02d0+x,a +05a3: d4 c0 mov $c0+x,a +05a5: 09 47 5e or ($5e),($47) +05a8: 09 47 45 or ($45),($47) +05ab: f5 80 02 mov a,$0280+x +05ae: d4 a0 mov $a0+x,a +05b0: f0 1e beq $05d0 +05b2: f5 81 02 mov a,$0281+x +05b5: d4 a1 mov $a1+x,a +05b7: f5 90 02 mov a,$0290+x +05ba: d0 0a bne $05c6 +05bc: f5 61 03 mov a,$0361+x +05bf: 80 setc +05c0: b5 91 02 sbc a,$0291+x +05c3: d5 61 03 mov $0361+x,a +05c6: f5 91 02 mov a,$0291+x +05c9: 60 clrc +05ca: 95 61 03 adc a,$0361+x +05cd: 3f d7 0d call $0dd7 +05d0: 3f ef 0d call $0def +05d3: 8d 00 mov y,#$00 +05d5: e4 11 mov a,$11 +05d7: 80 setc +05d8: a8 34 sbc a,#$34 +05da: b0 09 bcs $05e5 +05dc: e4 11 mov a,$11 +05de: 80 setc +05df: a8 13 sbc a,#$13 +05e1: b0 06 bcs $05e9 +05e3: dc dec y +05e4: 1c asl a +05e5: 7a 10 addw ya,$10 +05e7: da 10 movw $10,ya +05e9: 4d push x +05ea: e4 11 mov a,$11 +05ec: 1c asl a +05ed: 8d 00 mov y,#$00 +05ef: cd 18 mov x,#$18 +05f1: 9e div ya,x +05f2: 5d mov x,a +05f3: f6 18 11 mov a,$1118+y +05f6: c4 15 mov $15,a +05f8: f6 17 11 mov a,$1117+y +05fb: c4 14 mov $14,a +05fd: f6 1a 11 mov a,$111a+y +0600: 2d push a +0601: f6 19 11 mov a,$1119+y +0604: ee pop y +0605: 9a 14 subw ya,$14 +0607: eb 10 mov y,$10 +0609: cf mul ya +060a: dd mov a,y +060b: 8d 00 mov y,#$00 +060d: 7a 14 addw ya,$14 +060f: cb 15 mov $15,y +0611: 1c asl a +0612: 2b 15 rol $15 +0614: c4 14 mov $14,a +0616: 2f 04 bra $061c +0618: 4b 15 lsr $15 +061a: 7c ror a +061b: 3d inc x +061c: c8 06 cmp x,#$06 +061e: d0 f8 bne $0618 +0620: c4 14 mov $14,a +0622: ce pop x +0623: f5 20 02 mov a,$0220+x +0626: eb 15 mov y,$15 +0628: cf mul ya +0629: da 16 movw $16,ya +062b: f5 20 02 mov a,$0220+x +062e: eb 14 mov y,$14 +0630: cf mul ya +0631: 6d push y +0632: f5 21 02 mov a,$0221+x +0635: eb 14 mov y,$14 +0637: cf mul ya +0638: 7a 16 addw ya,$16 +063a: da 16 movw $16,ya +063c: f5 21 02 mov a,$0221+x +063f: eb 15 mov y,$15 +0641: cf mul ya +0642: fd mov y,a +0643: ae pop a +0644: 7a 16 addw ya,$16 +0646: da 16 movw $16,ya +0648: 7d mov a,x +0649: 9f xcn a +064a: 5c lsr a +064b: 08 02 or a,#$02 +064d: fd mov y,a +064e: e4 16 mov a,$16 +0650: 3f 56 06 call $0656 +0653: fc inc y +0654: e4 17 mov a,$17 +0656: 2d push a +0657: e4 47 mov a,$47 +0659: 24 1a and a,$1a +065b: ae pop a +065c: d0 06 bne $0664 +065e: cc f2 00 mov $00f2,y +0661: c5 f3 00 mov $00f3,a +0664: 6f ret + +0665: eb d0 mov y,$d0 +0667: ad 07 cmp y,#$07 +0669: b0 03 bcs $066e +066b: 3f 4c 07 call $074c +066e: 6f ret + +066f: 8d 00 mov y,#$00 +0671: f7 40 mov a,($40)+y +0673: 3a 40 incw $40 +0675: 2d push a +0676: f7 40 mov a,($40)+y +0678: 3a 40 incw $40 +067a: fd mov y,a +067b: ae pop a +067c: 6f ret + +067d: 3f a4 11 call $11a4 +0680: c4 08 mov $08,a +0682: 6f ret + +0683: 2d push a +0684: f4 d3 mov a,$d3+x +0686: 60 clrc +0687: 88 01 adc a,#$01 +0689: d4 d3 mov $d3+x,a +068b: e8 00 mov a,#$00 +068d: 94 d4 adc a,$d4+x +068f: d4 d4 mov $d4+x,a +0691: ae pop a +0692: 6f ret + +0693: c4 04 mov $04,a +0695: f8 d0 mov x,$d0 +0697: c8 07 cmp x,#$07 +0699: b0 06 bcs $06a1 +069b: 80 setc +069c: a8 10 sbc a,#$10 +069e: 3f a2 06 call $06a2 +06a1: 6f ret + +06a2: c4 05 mov $05,a +06a4: 1c asl a +06a5: 5d mov x,a +06a6: f5 1f 19 mov a,$191f+x +06a9: 2d push a +06aa: f5 20 19 mov a,$1920+x +06ad: fd mov y,a +06ae: ae pop a +06af: da d3 movw $d3,ya +06b1: cd 00 mov x,#$00 +06b3: c9 13 00 mov $0013,x +06b6: e7 d3 mov a,($d3+x) +06b8: 30 c8 bmi $0682 +06ba: c5 10 00 mov $0010,a +06bd: 28 01 and a,#$01 +06bf: fd mov y,a +06c0: e4 d0 mov a,$d0 +06c2: 68 06 cmp a,#$06 +06c4: d0 07 bne $06cd +06c6: ad 00 cmp y,#$00 +06c8: d0 03 bne $06cd +06ca: ac 13 00 inc $0013 +06cd: f6 e3 00 mov a,$00e3+y +06d0: c5 11 00 mov $0011,a +06d3: 3f 83 06 call $0683 +06d6: e7 d3 mov a,($d3+x) +06d8: 64 11 cmp a,$11 +06da: 90 a6 bcc $0682 +06dc: d6 e3 00 mov $00e3+y,a +06df: 3f 83 06 call $0683 +06e2: e7 d3 mov a,($d3+x) +06e4: fd mov y,a +06e5: 3f 83 06 call $0683 +06e8: e7 d3 mov a,($d3+x) +06ea: 3f 83 06 call $0683 +06ed: da d9 movw $d9,ya +06ef: e5 13 00 mov a,$0013 +06f2: d0 43 bne $0737 +06f4: e5 10 00 mov a,$0010 +06f7: 68 00 cmp a,#$00 +06f9: d0 0c bne $0707 +06fb: e4 d9 mov a,$d9 +06fd: c4 3d mov $3d,a +06ff: e4 da mov a,$da +0701: c4 3c mov $3c,a +0703: cd 0c mov x,#$0c +0705: 2f 0a bra $0711 +0707: e4 d9 mov a,$d9 +0709: c4 3f mov $3f,a +070b: e4 da mov a,$da +070d: c4 3e mov $3e,a +070f: cd 0e mov x,#$0e +0711: e8 0a mov a,#$0a +0713: 3f 8f 0b call $0b8f +0716: d5 11 02 mov $0211+x,a +0719: d5 81 03 mov $0381+x,a +071c: d5 f0 02 mov $02f0+x,a +071f: d5 80 02 mov $0280+x,a +0722: d4 b1 mov $b1+x,a +0724: d4 c1 mov $c1+x,a +0726: d5 e0 03 mov $03e0+x,a +0729: d5 d0 03 mov $03d0+x,a +072c: e8 ff mov a,#$ff +072e: d5 01 03 mov $0301+x,a +0731: 8f ff 59 mov $59,#$ff +0734: 3f eb 07 call $07eb +0737: 5f b1 06 jmp $06b1 + +073a: 7d mov a,x +073b: 5c lsr a +073c: 28 01 and a,#$01 +073e: fd mov y,a +073f: e8 00 mov a,#$00 +0741: d6 e3 00 mov $00e3+y,a +0744: 6f ret + +0745: 00 nop +0746: 00 nop +0747: 00 nop +0748: 00 nop +0749: 00 nop +074a: 40 setp +074b: 80 setc +074c: e9 d0 00 mov x,$00d0 +074f: f5 45 07 mov a,$0745+x +0752: c4 47 mov $47,a +0754: e5 d0 00 mov a,$00d0 +0757: bc inc a +0758: 1c asl a +0759: 5d mov x,a +075a: f4 31 mov a,$31+x +075c: f0 62 beq $07c0 +075e: 9b 70 dec $70+x +0760: d0 58 bne $07ba +0762: 3f 1f 0b call $0b1f +0765: d0 09 bne $0770 +0767: 3f e4 07 call $07e4 +076a: 3f 3a 07 call $073a +076d: 5f c0 07 jmp $07c0 + +0770: 30 28 bmi $079a +0772: d5 00 02 mov $0200+x,a +0775: 3f 1f 0b call $0b1f +0778: 30 20 bmi $079a +077a: 2d push a +077b: 9f xcn a +077c: 28 07 and a,#$07 +077e: fd mov y,a +077f: ad 07 cmp y,#$07 +0781: d0 04 bne $0787 +0783: e8 00 mov a,#$00 +0785: 2f 03 bra $078a +0787: f6 1c 22 mov a,$221c+y +078a: d5 01 02 mov $0201+x,a +078d: ae pop a +078e: 28 0f and a,#$0f +0790: fd mov y,a +0791: f6 24 22 mov a,$2224+y +0794: d5 10 02 mov $0210+x,a +0797: 3f 1f 0b call $0b1f +079a: 68 e0 cmp a,#$e0 +079c: 90 05 bcc $07a3 +079e: 3f 0d 0b call $0b0d +07a1: 2f bf bra $0762 +07a3: 3f 69 05 call $0569 +07a6: f5 00 02 mov a,$0200+x +07a9: d4 70 mov $70+x,a +07ab: fd mov y,a +07ac: f5 01 02 mov a,$0201+x +07af: f0 05 beq $07b6 +07b1: cf mul ya +07b2: dd mov a,y +07b3: d0 01 bne $07b6 +07b5: bc inc a +07b6: d4 71 mov $71+x,a +07b8: 2f 03 bra $07bd +07ba: 3f 36 0f call $0f36 +07bd: 3f b7 0d call $0db7 +07c0: 0b 47 asl $47 +07c2: 3d inc x +07c3: 3d inc x +07c4: c8 10 cmp x,#$10 +07c6: d0 92 bne $075a +07c8: e9 d0 00 mov x,$00d0 +07cb: f5 45 07 mov a,$0745+x +07ce: c4 47 mov $47,a +07d0: e5 d0 00 mov a,$00d0 +07d3: bc inc a +07d4: 1c asl a +07d5: 5d mov x,a +07d6: f4 31 mov a,$31+x +07d8: f0 03 beq $07dd +07da: 3f 73 0e call $0e73 +07dd: 3d inc x +07de: 3d inc x +07df: 0b 47 asl $47 +07e1: d0 f3 bne $07d6 +07e3: 6f ret + +07e4: e8 00 mov a,#$00 +07e6: d4 31 mov $31+x,a +07e8: 3f 31 0b call $0b31 +07eb: e8 00 mov a,#$00 +07ed: d4 80 mov $80+x,a +07ef: d4 90 mov $90+x,a +07f1: d4 91 mov $91+x,a +07f3: d5 e0 03 mov $03e0+x,a +07f6: d5 d0 03 mov $03d0+x,a +07f9: bc inc a +07fa: d4 70 mov $70+x,a +07fc: 2d push a +07fd: 6d push y +07fe: 8d 40 mov y,#$40 +0800: c8 0c cmp x,#$0c +0802: f0 02 beq $0806 +0804: 8d 80 mov y,#$80 +0806: dd mov a,y +0807: 8d 5c mov y,#$5c +0809: 3f 56 06 call $0656 +080c: ee pop y +080d: ae pop a +080e: 6f ret + +080f: e5 d0 00 mov a,$00d0 +0812: 68 06 cmp a,#$06 +0814: f0 08 beq $081e +0816: cd 0c mov x,#$0c +0818: 3f e4 07 call $07e4 +081b: 3f 3a 07 call $073a +081e: cd 0e mov x,#$0e +0820: 3f e4 07 call $07e4 +0823: 3f 3a 07 call $073a +0826: 6f ret + +0827: c4 04 mov $04,a +0829: e4 1a mov a,$1a +082b: 48 ff eor a,#$ff +082d: 0e 46 00 tset1 $0046 +0830: e8 00 mov a,#$00 +0832: c4 e3 mov $e3,a +0834: c4 e4 mov $e4,a +0836: cd 10 mov x,#$10 +0838: d4 31 mov $31+x,a +083a: d5 01 03 mov $0301+x,a +083d: 1d dec x +083e: 1d dec x +083f: 10 f7 bpl $0838 +0841: e4 e0 mov a,$e0 +0843: 08 80 or a,#$80 +0845: c4 e0 mov $e0,a +0847: 6f ret + +0848: e5 f6 00 mov a,$00f6 +084b: c5 1a 00 mov $001a,a +084e: 6f ret + +084f: cd 00 mov x,#$00 +0851: 3f 59 05 call $0559 +0854: e5 f4 00 mov a,$00f4 +0857: 65 f4 00 cmp a,$00f4 +085a: d0 f3 bne $084f +085c: c4 04 mov $04,a +085e: d5 f4 00 mov $00f4+x,a +0861: 64 e5 cmp a,$e5 +0863: f0 e2 beq $0847 +0865: c4 e5 mov $e5,a +0867: 68 11 cmp a,#$11 +0869: 90 dc bcc $0847 +086b: 68 f0 cmp a,#$f0 +086d: b0 03 bcs $0872 +086f: 5f 93 06 jmp $0693 + +0872: 68 fe cmp a,#$fe +0874: f0 0c beq $0882 +0876: 68 ff cmp a,#$ff +0878: d0 10 bne $088a +087a: e8 00 mov a,#$00 +087c: 3f 7d 06 call $067d +087f: 5f e7 08 jmp $08e7 + +0882: e8 00 mov a,#$00 +0884: 3f 5b 11 call $115b +0887: 5f e7 08 jmp $08e7 + +088a: 68 f2 cmp a,#$f2 +088c: d0 06 bne $0894 +088e: 3f fa 11 call $11fa +0891: 5f e7 08 jmp $08e7 + +0894: 68 f3 cmp a,#$f3 +0896: d0 06 bne $089e +0898: 3f 0c 12 call $120c +089b: 5f e7 08 jmp $08e7 + +089e: 68 f4 cmp a,#$f4 +08a0: d0 06 bne $08a8 +08a2: 3f 0f 08 call $080f +08a5: 5f e7 08 jmp $08e7 + +08a8: 68 f5 cmp a,#$f5 +08aa: d0 05 bne $08b1 +08ac: 3f 27 08 call $0827 +08af: 2f 36 bra $08e7 +08b1: 68 f6 cmp a,#$f6 +08b3: d0 05 bne $08ba +08b5: 3f 15 12 call $1215 +08b8: 2f 2d bra $08e7 +08ba: 68 f7 cmp a,#$f7 +08bc: d0 07 bne $08c5 +08be: 8d 01 mov y,#$01 +08c0: 3f 71 12 call $1271 +08c3: 2f 22 bra $08e7 +08c5: 68 f8 cmp a,#$f8 +08c7: d0 05 bne $08ce +08c9: 3f 6f 12 call $126f +08cc: 2f 19 bra $08e7 +08ce: 68 f9 cmp a,#$f9 +08d0: d0 05 bne $08d7 +08d2: 3f 04 12 call $1204 +08d5: 2f 10 bra $08e7 +08d7: 68 fa cmp a,#$fa +08d9: d0 05 bne $08e0 +08db: 3f 22 12 call $1222 +08de: 2f 07 bra $08e7 +08e0: 68 fc cmp a,#$fc +08e2: d0 03 bne $08e7 +08e4: 3f 48 08 call $0848 +08e7: 6f ret + +08e8: 00 nop +08e9: 00 nop +08ea: 00 nop +08eb: 00 nop +08ec: 00 nop +08ed: 3f 7f ff call $ff7f +08f0: c4 04 mov $04,a +08f2: 1c asl a +08f3: f0 15 beq $090a +08f5: 5d mov x,a +08f6: f5 73 12 mov a,$1273+x +08f9: fd mov y,a +08fa: f5 72 12 mov a,$1272+x +08fd: da 40 movw $40,ya +08ff: 8f 02 0c mov $0c,#$02 +0902: e4 e0 mov a,$e0 +0904: 28 7c and a,#$7c +0906: c4 e0 mov $e0,a +0908: 2f 06 bra $0910 +090a: e4 e0 mov a,$e0 +090c: 08 80 or a,#$80 +090e: c4 e0 mov $e0,a +0910: f8 d0 mov x,$d0 +0912: f5 e8 08 mov a,$08e8+x +0915: c4 11 mov $11,a +0917: e4 1a mov a,$1a +0919: 44 11 eor a,$11 +091b: 0e 46 00 tset1 $0046 +091e: 6f ret + +091f: 2d push a +0920: e8 00 mov a,#$00 +0922: 3f 6b 0d call $0d6b +0925: e8 00 mov a,#$00 +0927: fd mov y,a +0928: da 60 movw $60,ya +092a: da 62 movw $62,ya +092c: a2 48 set5 $48 +092e: ae pop a +092f: 8f 80 47 mov $47,#$80 +0932: e4 d0 mov a,$d0 +0934: c4 d1 mov $d1,a +0936: 1c asl a +0937: 5d mov x,a +0938: e8 e0 mov a,#$e0 +093a: d5 01 03 mov $0301+x,a +093d: e8 ff mov a,#$ff +093f: d5 51 00 mov $0051+x,a +0942: e8 0a mov a,#$0a +0944: 3f 8f 0b call $0b8f +0947: e8 00 mov a,#$00 +0949: d5 30 03 mov $0330+x,a +094c: d5 81 03 mov $0381+x,a +094f: d5 f0 02 mov $02f0+x,a +0952: d5 80 02 mov $0280+x,a +0955: d5 b1 00 mov $00b1+x,a +0958: d5 c1 00 mov $00c1+x,a +095b: d5 e0 03 mov $03e0+x,a +095e: d5 d0 03 mov $03d0+x,a +0961: d6 80 00 mov $0080+y,a +0964: d6 90 00 mov $0090+y,a +0967: d6 91 00 mov $0091+y,a +096a: bc inc a +096b: d6 70 00 mov $0070+y,a +096e: d6 01 02 mov $0201+y,a +0971: 1d dec x +0972: 1d dec x +0973: 4b 47 lsr $47 +0975: 8b d1 dec $d1 +0977: 10 bf bpl $0938 +0979: e8 00 mov a,#$00 +097b: c4 5a mov $5a,a +097d: c4 68 mov $68,a +097f: c4 54 mov $54,a +0981: c4 50 mov $50,a +0983: c4 42 mov $42,a +0985: c4 5f mov $5f,a +0987: 8f ff 59 mov $59,#$ff +098a: 8f 20 53 mov $53,#$20 +098d: 6f ret + +098e: eb 08 mov y,$08 +0990: e4 1b mov a,$1b +0992: c4 08 mov $08,a +0994: 68 11 cmp a,#$11 +0996: 90 20 bcc $09b8 +0998: 68 f0 cmp a,#$f0 +099a: b0 02 bcs $099e +099c: c4 04 mov $04,a +099e: 68 f0 cmp a,#$f0 +09a0: d0 05 bne $09a7 +09a2: c4 04 mov $04,a +09a4: 5f 10 09 jmp $0910 + +09a7: 68 f1 cmp a,#$f1 +09a9: d0 05 bne $09b0 +09ab: c4 04 mov $04,a +09ad: 5f c2 09 jmp $09c2 + +09b0: 68 fb cmp a,#$fb +09b2: d0 0e bne $09c2 +09b4: c4 04 mov $04,a +09b6: 2f 0a bra $09c2 +09b8: 7e 1b cmp y,$1b +09ba: f0 06 beq $09c2 +09bc: 5f f0 08 jmp $08f0 + +09bf: 5f 1f 09 jmp $091f + +09c2: 3f 2f 12 call $122f +09c5: e4 e0 mov a,$e0 +09c7: 10 03 bpl $09cc +09c9: 5f 8d 09 jmp $098d + +09cc: e4 0c mov a,$0c +09ce: f0 5e beq $0a2e +09d0: 6e 0c ec dbnz $0c,$09bf +09d3: 3f 6f 06 call $066f +09d6: d0 17 bne $09ef +09d8: fd mov y,a +09d9: d0 03 bne $09de +09db: 5f f0 08 jmp $08f0 + +09de: 8b 42 dec $42 +09e0: 10 02 bpl $09e4 +09e2: c4 42 mov $42,a +09e4: 3f 6f 06 call $066f +09e7: f8 42 mov x,$42 +09e9: f0 e8 beq $09d3 +09eb: da 40 movw $40,ya +09ed: 2f e4 bra $09d3 +09ef: da 16 movw $16,ya +09f1: e4 d0 mov a,$d0 +09f3: 1c asl a +09f4: bc inc a +09f5: fd mov y,a +09f6: f7 16 mov a,($16)+y +09f8: d6 30 00 mov $0030+y,a +09fb: dc dec y +09fc: 10 f8 bpl $09f6 +09fe: cd 00 mov x,#$00 +0a00: 8f 01 47 mov $47,#$01 +0a03: e4 d0 mov a,$d0 +0a05: c4 d1 mov $d1,a +0a07: f4 31 mov a,$31+x +0a09: f0 0a beq $0a15 +0a0b: f5 11 02 mov a,$0211+x +0a0e: d0 05 bne $0a15 +0a10: e8 00 mov a,#$00 +0a12: 3f 31 0b call $0b31 +0a15: e8 00 mov a,#$00 +0a17: d4 80 mov $80+x,a +0a19: d4 90 mov $90+x,a +0a1b: d4 91 mov $91+x,a +0a1d: d5 e0 03 mov $03e0+x,a +0a20: d5 d0 03 mov $03d0+x,a +0a23: bc inc a +0a24: d4 70 mov $70+x,a +0a26: 3d inc x +0a27: 3d inc x +0a28: 0b 47 asl $47 +0a2a: 8b d1 dec $d1 +0a2c: 10 d9 bpl $0a07 +0a2e: cd 00 mov x,#$00 +0a30: d8 5e mov $5e,x +0a32: 8f 01 47 mov $47,#$01 +0a35: e4 d0 mov a,$d0 +0a37: c4 d1 mov $d1,a +0a39: d8 44 mov $44,x +0a3b: f4 31 mov a,$31+x +0a3d: f0 70 beq $0aaf +0a3f: 9b 70 dec $70+x +0a41: d0 66 bne $0aa9 +0a43: 3f 1f 0b call $0b1f +0a46: d0 17 bne $0a5f +0a48: f4 80 mov a,$80+x +0a4a: f0 87 beq $09d3 +0a4c: 3f fe 0c call $0cfe +0a4f: 9b 80 dec $80+x +0a51: d0 f0 bne $0a43 +0a53: f5 30 02 mov a,$0230+x +0a56: d4 30 mov $30+x,a +0a58: f5 31 02 mov a,$0231+x +0a5b: d4 31 mov $31+x,a +0a5d: 2f e4 bra $0a43 +0a5f: 30 28 bmi $0a89 +0a61: d5 00 02 mov $0200+x,a +0a64: 3f 1f 0b call $0b1f +0a67: 30 20 bmi $0a89 +0a69: 2d push a +0a6a: 9f xcn a +0a6b: 28 07 and a,#$07 +0a6d: fd mov y,a +0a6e: ad 07 cmp y,#$07 +0a70: d0 04 bne $0a76 +0a72: e8 00 mov a,#$00 +0a74: 2f 03 bra $0a79 +0a76: f6 1c 22 mov a,$221c+y +0a79: d5 01 02 mov $0201+x,a +0a7c: ae pop a +0a7d: 28 0f and a,#$0f +0a7f: fd mov y,a +0a80: f6 24 22 mov a,$2224+y +0a83: d5 10 02 mov $0210+x,a +0a86: 3f 1f 0b call $0b1f +0a89: 68 e0 cmp a,#$e0 +0a8b: 90 05 bcc $0a92 +0a8d: 3f 0d 0b call $0b0d +0a90: 2f b1 bra $0a43 +0a92: 3f 69 05 call $0569 +0a95: f5 00 02 mov a,$0200+x +0a98: d4 70 mov $70+x,a +0a9a: fd mov y,a +0a9b: f5 01 02 mov a,$0201+x +0a9e: f0 05 beq $0aa5 +0aa0: cf mul ya +0aa1: dd mov a,y +0aa2: d0 01 bne $0aa5 +0aa4: bc inc a +0aa5: d4 71 mov $71+x,a +0aa7: 2f 03 bra $0aac +0aa9: 3f 36 0f call $0f36 +0aac: 3f b7 0d call $0db7 +0aaf: 3d inc x +0ab0: 3d inc x +0ab1: 0b 47 asl $47 +0ab3: 8b d1 dec $d1 +0ab5: 30 03 bmi $0aba +0ab7: 5f 39 0a jmp $0a39 + +0aba: e4 54 mov a,$54 +0abc: f0 0b beq $0ac9 +0abe: ba 56 movw ya,$56 +0ac0: 7a 52 addw ya,$52 +0ac2: 6e 54 02 dbnz $54,$0ac7 +0ac5: ba 54 movw ya,$54 +0ac7: da 52 movw $52,ya +0ac9: e4 68 mov a,$68 +0acb: f0 15 beq $0ae2 +0acd: ba 64 movw ya,$64 +0acf: 7a 60 addw ya,$60 +0ad1: da 60 movw $60,ya +0ad3: ba 66 movw ya,$66 +0ad5: 7a 62 addw ya,$62 +0ad7: 6e 68 06 dbnz $68,$0ae0 +0ada: ba 68 movw ya,$68 +0adc: da 60 movw $60,ya +0ade: eb 6a mov y,$6a +0ae0: da 62 movw $62,ya +0ae2: e4 5a mov a,$5a +0ae4: f0 0e beq $0af4 +0ae6: ba 5c movw ya,$5c +0ae8: 7a 58 addw ya,$58 +0aea: 6e 5a 02 dbnz $5a,$0aef +0aed: ba 5a movw ya,$5a +0aef: da 58 movw $58,ya +0af1: 8f ff 5e mov $5e,#$ff +0af4: cd 00 mov x,#$00 +0af6: 8f 01 47 mov $47,#$01 +0af9: e4 d0 mov a,$d0 +0afb: c4 d1 mov $d1,a +0afd: f4 31 mov a,$31+x +0aff: f0 03 beq $0b04 +0b01: 3f 73 0e call $0e73 +0b04: 3d inc x +0b05: 3d inc x +0b06: 0b 47 asl $47 +0b08: 8b d1 dec $d1 +0b0a: 10 f1 bpl $0afd +0b0c: 6f ret + +; dispatch vcmd in A (e0-ff) +0b0d: 1c asl a +0b0e: fd mov y,a +0b0f: f6 57 0d mov a,$0d57+y +0b12: 2d push a +0b13: f6 56 0d mov a,$0d56+y +0b16: 2d push a +0b17: dd mov a,y +0b18: 5c lsr a +0b19: fd mov y,a +0b1a: f6 f4 0d mov a,$0df4+y +0b1d: f0 08 beq $0b27 +0b1f: e7 30 mov a,($30+x) +0b21: bb 30 inc $30+x +0b23: d0 02 bne $0b27 +0b25: bb 31 inc $31+x +0b27: fd mov y,a +0b28: 6f ret +0b29: 9b 30 dec $30+x +0b2b: b0 02 bcs $0b2f +0b2d: 9b 31 dec $31+x +0b2f: fd mov y,a +0b30: 6f ret + +; vcmd e0 - set instrument +0b31: d5 11 02 mov $0211+x,a +0b34: fd mov y,a +0b35: 10 06 bpl $0b3d +0b37: 80 setc +0b38: a8 ca sbc a,#$ca +0b3a: 60 clrc +0b3b: 84 5f adc a,$5f +0b3d: 8d 06 mov y,#$06 +0b3f: cf mul ya +0b40: da 14 movw $14,ya +0b42: 60 clrc +0b43: 98 49 14 adc $14,#$49 +0b46: 98 16 15 adc $15,#$16 +0b49: e4 1a mov a,$1a +0b4b: 24 47 and a,$47 +0b4d: d0 3b bne $0b8a +0b4f: 4d push x +0b50: 7d mov a,x +0b51: 9f xcn a +0b52: 5c lsr a +0b53: 08 04 or a,#$04 +0b55: 5d mov x,a +0b56: 8d 00 mov y,#$00 +0b58: f7 14 mov a,($14)+y +0b5a: 10 0f bpl $0b6b +0b5c: 28 1f and a,#$1f +0b5e: 38 20 48 and $48,#$20 +0b61: 0e 48 00 tset1 $0048 +0b64: 09 47 49 or ($49),($47) +0b67: e8 02 mov a,#$02 +0b69: 2f 07 bra $0b72 +0b6b: e4 47 mov a,$47 +0b6d: 4e 49 00 tclr1 $0049 +0b70: f7 14 mov a,($14)+y +0b72: c9 f2 00 mov $00f2,x +0b75: c5 f3 00 mov $00f3,a +0b78: 3d inc x +0b79: fc inc y +0b7a: ad 04 cmp y,#$04 +0b7c: d0 f2 bne $0b70 +0b7e: ce pop x +0b7f: f7 14 mov a,($14)+y +0b81: d5 21 02 mov $0221+x,a +0b84: fc inc y +0b85: f7 14 mov a,($14)+y +0b87: d5 20 02 mov $0220+x,a +0b8a: 6f ret + +; vcmd e1 - pan +0b8b: eb e2 mov y,$e2 +0b8d: d0 0d bne $0b9c +0b8f: d5 51 03 mov $0351+x,a +0b92: 28 1f and a,#$1f +0b94: d5 31 03 mov $0331+x,a +0b97: e8 00 mov a,#$00 +0b99: d5 30 03 mov $0330+x,a +0b9c: 6f ret + +; vcmd e2 - pan fade +0b9d: eb e2 mov y,$e2 +0b9f: d0 fb bne $0b9c +0ba1: d4 91 mov $91+x,a +0ba3: 2d push a +0ba4: 3f 1f 0b call $0b1f +0ba7: d5 50 03 mov $0350+x,a +0baa: 80 setc +0bab: b5 31 03 sbc a,$0331+x +0bae: ce pop x +0baf: 3f fa 0d call $0dfa +0bb2: d5 40 03 mov $0340+x,a +0bb5: dd mov a,y +0bb6: d5 41 03 mov $0341+x,a +0bb9: 6f ret + +; vcmd e3 - vibrato on +0bba: d5 b0 02 mov $02b0+x,a +0bbd: 3f 1f 0b call $0b1f +0bc0: d5 a1 02 mov $02a1+x,a +0bc3: 3f 1f 0b call $0b1f +; vcmd e4 - vibrato off +0bc6: d4 b1 mov $b1+x,a +0bc8: d5 c1 02 mov $02c1+x,a +0bcb: e8 00 mov a,#$00 +0bcd: d5 b1 02 mov $02b1+x,a +0bd0: 6f ret + +; vcmd f0 - vibrato fade+ +0bd1: d5 b1 02 mov $02b1+x,a +0bd4: 2d push a +0bd5: 8d 00 mov y,#$00 +0bd7: f4 b1 mov a,$b1+x +0bd9: ce pop x +0bda: 9e div ya,x +0bdb: f8 44 mov x,$44 +0bdd: d5 c0 02 mov $02c0+x,a +0be0: 6f ret + +; vcmd e5 - master volume +0be1: e4 d0 mov a,$d0 +0be3: 68 07 cmp a,#$07 +0be5: f0 04 beq $0beb +0be7: c8 0c cmp x,#$0c +0be9: b0 05 bcs $0bf0 +0beb: e8 00 mov a,#$00 +0bed: da 58 movw $58,ya +0bef: 6f ret + +0bf0: 3f 29 0b call $0b29 +0bf3: 3f 1f 0b call $0b1f +0bf6: 2d push a +0bf7: 3f 1f 0b call $0b1f +0bfa: fd mov y,a +0bfb: ae pop a +0bfc: d4 30 mov $30+x,a +0bfe: dd mov a,y +0bff: d4 31 mov $31+x,a +0c01: 6f ret + +; vcmd fd - repeat section +0c02: f5 e0 03 mov a,$03e0+x +0c05: d0 0a bne $0c11 +0c07: 3f 1f 0b call $0b1f +0c0a: fd mov y,a +0c0b: dd mov a,y +0c0c: d5 e0 03 mov $03e0+x,a +0c0f: 2f 0c bra $0c1d +0c11: f5 e0 03 mov a,$03e0+x +0c14: 9c dec a +0c15: d5 e0 03 mov $03e0+x,a +0c18: f0 12 beq $0c2c +0c1a: 3f 21 0b call $0b21 +0c1d: 3f 1f 0b call $0b1f +0c20: 2d push a +0c21: 3f 1f 0b call $0b1f +0c24: fd mov y,a +0c25: ae pop a +0c26: d4 30 mov $30+x,a +0c28: dd mov a,y +0c29: d4 31 mov $31+x,a +0c2b: 6f ret + +0c2c: 3f 21 0b call $0b21 +0c2f: 3f 21 0b call $0b21 +0c32: 3f 21 0b call $0b21 +0c35: 6f ret + +; vcmd fc - jump to position +0c36: f5 d0 03 mov a,$03d0+x +0c39: d0 fb bne $0c36 +0c3b: f4 30 mov a,$30+x +0c3d: d5 d0 03 mov $03d0+x,a +0c40: f4 31 mov a,$31+x +0c42: d5 d1 03 mov $03d1+x,a +0c45: 5f f3 0b jmp $0bf3 + +; vcmd fe - return from jump +0c48: f5 d0 03 mov a,$03d0+x +0c4b: f0 0d beq $0c5a +0c4d: d4 30 mov $30+x,a +0c4f: f5 d1 03 mov a,$03d1+x +0c52: d4 31 mov $31+x,a +0c54: 3f 21 0b call $0b21 +0c57: 3f 21 0b call $0b21 +0c5a: e8 00 mov a,#$00 +0c5c: d5 d0 03 mov $03d0+x,a +0c5f: d5 d1 03 mov $03d1+x,a +0c62: 6f ret + +; vcmd e6 - master volume fade +0c63: c4 5a mov $5a,a +0c65: 3f 1f 0b call $0b1f +0c68: c4 5b mov $5b,a +0c6a: 80 setc +0c6b: a4 59 sbc a,$59 +0c6d: f8 5a mov x,$5a +0c6f: 3f fa 0d call $0dfa +0c72: da 5c movw $5c,ya +0c74: 6f ret + +; vcmd e7 - tempo +0c75: e8 00 mov a,#$00 +0c77: da 52 movw $52,ya +0c79: 6f ret + +; vcmd e8 - tempo fade +0c7a: c4 54 mov $54,a +0c7c: 3f 1f 0b call $0b1f +0c7f: c4 55 mov $55,a +0c81: 80 setc +0c82: a4 53 sbc a,$53 +0c84: f8 54 mov x,$54 +0c86: 3f fa 0d call $0dfa +0c89: da 56 movw $56,ya +0c8b: 6f ret + +; vcmd e9 - global transpose +0c8c: c4 50 mov $50,a +0c8e: 6f ret + +; vcmd ea - per-voice transpose +0c8f: d5 f0 02 mov $02f0+x,a +0c92: 6f ret + +; vcmd eb - tremolo on +0c93: d5 e0 02 mov $02e0+x,a +0c96: 3f 1f 0b call $0b1f +0c99: d5 d1 02 mov $02d1+x,a +0c9c: 3f 1f 0b call $0b1f +; vcmd ec - tremolo off +0c9f: d4 c1 mov $c1+x,a +0ca1: 6f ret + +; vcmd f1 - pitch envelope (release) +0ca2: e8 01 mov a,#$01 +0ca4: 2f 02 bra $0ca8 +; vcmd f2 - pitch envelope (attack) +0ca6: e8 00 mov a,#$00 +0ca8: d5 90 02 mov $0290+x,a +0cab: dd mov a,y +0cac: d5 81 02 mov $0281+x,a +0caf: 3f 1f 0b call $0b1f +0cb2: d5 80 02 mov $0280+x,a +0cb5: 3f 1f 0b call $0b1f +0cb8: d5 91 02 mov $0291+x,a +0cbb: 6f ret + +; vcmd f3 - pitch envelope off +0cbc: d5 80 02 mov $0280+x,a +0cbf: 6f ret + +; vcmd ed - volume +0cc0: d5 01 03 mov $0301+x,a +0cc3: e8 00 mov a,#$00 +0cc5: d5 00 03 mov $0300+x,a +0cc8: 6f ret + +; vcmd ee - volume fade +0cc9: d4 90 mov $90+x,a +0ccb: 2d push a +0ccc: 3f 1f 0b call $0b1f +0ccf: d5 20 03 mov $0320+x,a +0cd2: 80 setc +0cd3: b5 01 03 sbc a,$0301+x +0cd6: ce pop x +0cd7: 3f fa 0d call $0dfa +0cda: d5 10 03 mov $0310+x,a +0cdd: dd mov a,y +0cde: d5 11 03 mov $0311+x,a +0ce1: 6f ret + +; vcmd f4 - tuning +0ce2: d5 81 03 mov $0381+x,a +0ce5: 6f ret + +; vcmd ef - call subroutine +0ce6: d5 40 02 mov $0240+x,a +0ce9: 3f 1f 0b call $0b1f +0cec: d5 41 02 mov $0241+x,a +0cef: 3f 1f 0b call $0b1f +0cf2: d4 80 mov $80+x,a +0cf4: f4 30 mov a,$30+x +0cf6: d5 30 02 mov $0230+x,a +0cf9: f4 31 mov a,$31+x +0cfb: d5 31 02 mov $0231+x,a +0cfe: f5 40 02 mov a,$0240+x +0d01: d4 30 mov $30+x,a +0d03: f5 41 02 mov a,$0241+x +0d06: d4 31 mov $31+x,a +0d08: 6f ret + +; vcmd f5 - echo vbits/volume +0d09: c4 4a mov $4a,a +0d0b: 3f 1f 0b call $0b1f +0d0e: e8 00 mov a,#$00 +0d10: da 60 movw $60,ya +0d12: 3f 1f 0b call $0b1f +0d15: e8 00 mov a,#$00 +0d17: da 62 movw $62,ya +0d19: b2 48 clr5 $48 +0d1b: 6f ret + +; vcmd f8 - echo volume fade +0d1c: c4 68 mov $68,a +0d1e: 3f 1f 0b call $0b1f +0d21: c4 69 mov $69,a +0d23: 80 setc +0d24: a4 61 sbc a,$61 +0d26: f8 68 mov x,$68 +0d28: 3f fa 0d call $0dfa +0d2b: da 64 movw $64,ya +0d2d: 3f 1f 0b call $0b1f +0d30: c4 6a mov $6a,a +0d32: 80 setc +0d33: a4 63 sbc a,$63 +0d35: f8 68 mov x,$68 +0d37: 3f fa 0d call $0dfa +0d3a: da 66 movw $66,ya +0d3c: 6f ret + +; vcmd f6 - disable echo +0d3d: da 60 movw $60,ya +0d3f: da 62 movw $62,ya +0d41: e8 00 mov a,#$00 +0d43: 3f 6b 0d call $0d6b +0d46: a2 48 set5 $48 +0d48: 6f ret + +; vcmd f7 - set echo params +0d49: 3f 6b 0d call $0d6b +0d4c: 3f 1f 0b call $0b1f +0d4f: c4 4e mov $4e,a +0d51: 3f 1f 0b call $0b1f +0d54: 8d 08 mov y,#$08 +0d56: cf mul ya +0d57: 5d mov x,a +0d58: 8d 0f mov y,#$0f +0d5a: f5 e3 10 mov a,$10e3+x +0d5d: 3f 5e 06 call $065e +0d60: 3d inc x +0d61: dd mov a,y +0d62: 60 clrc +0d63: 88 10 adc a,#$10 +0d65: fd mov y,a +0d66: 10 f2 bpl $0d5a +0d68: f8 44 mov x,$44 +0d6a: 6f ret + +0d6b: c4 4d mov $4d,a +0d6d: 8d 7d mov y,#$7d +0d6f: cc f2 00 mov $00f2,y +0d72: e5 f3 00 mov a,$00f3 +0d75: 64 4d cmp a,$4d +0d77: f0 2b beq $0da4 +0d79: 28 0f and a,#$0f +0d7b: 48 ff eor a,#$ff +0d7d: f3 4c 03 bbc7 $4c,$0d83 +0d80: 60 clrc +0d81: 84 4c adc a,$4c +0d83: c4 4c mov $4c,a +0d85: 8d 04 mov y,#$04 +0d87: f6 02 11 mov a,$1102+y +0d8a: c5 f2 00 mov $00f2,a +0d8d: e8 00 mov a,#$00 +0d8f: c5 f3 00 mov $00f3,a +0d92: fe f3 dbnz y,$0d87 +0d94: e4 48 mov a,$48 +0d96: 08 20 or a,#$20 +0d98: 8d 6c mov y,#$6c +0d9a: 3f 5e 06 call $065e +0d9d: e4 4d mov a,$4d +0d9f: 8d 7d mov y,#$7d +0da1: 3f 5e 06 call $065e +0da4: 1c asl a +0da5: 1c asl a +0da6: 1c asl a +0da7: 48 ff eor a,#$ff +0da9: 80 setc +0daa: 88 ff adc a,#$ff +0dac: 8d 6d mov y,#$6d +0dae: 5f 5e 06 jmp $065e + +; vcmd fa - set perc patch base +0db1: c4 5f mov $5f,a +0db3: 6f ret + +; vcmd fb +0db4: 3f 21 0b call $0b21 +0db7: f4 a0 mov a,$a0+x +0db9: d0 33 bne $0dee +0dbb: e7 30 mov a,($30+x) +0dbd: 68 f9 cmp a,#$f9 +0dbf: d0 2d bne $0dee +0dc1: 3f 21 0b call $0b21 +0dc4: 3f 1f 0b call $0b1f + +; vcmd f9 - pitch slide +0dc7: d4 a1 mov $a1+x,a +0dc9: 3f 1f 0b call $0b1f +0dcc: d4 a0 mov $a0+x,a +0dce: 3f 1f 0b call $0b1f +0dd1: 60 clrc +0dd2: 84 50 adc a,$50 +0dd4: 95 f0 02 adc a,$02f0+x +0dd7: 28 7f and a,#$7f +0dd9: d5 80 03 mov $0380+x,a +0ddc: 80 setc +0ddd: b5 61 03 sbc a,$0361+x +0de0: fb a0 mov y,$a0+x +0de2: 6d push y +0de3: ce pop x +0de4: 3f fa 0d call $0dfa +0de7: d5 70 03 mov $0370+x,a +0dea: dd mov a,y +0deb: d5 71 03 mov $0371+x,a +0dee: 6f ret + +0def: f5 61 03 mov a,$0361+x +0df2: c4 11 mov $11,a +0df4: f5 60 03 mov a,$0360+x +0df7: c4 10 mov $10,a +0df9: 6f ret + +0dfa: ed notc +0dfb: 6b 12 ror $12 +0dfd: 10 03 bpl $0e02 +0dff: 48 ff eor a,#$ff +0e01: bc inc a +0e02: 8d 00 mov y,#$00 +0e04: 9e div ya,x +0e05: 2d push a +0e06: e8 00 mov a,#$00 +0e08: 9e div ya,x +0e09: ee pop y +0e0a: f8 44 mov x,$44 +0e0c: f3 12 06 bbc7 $12,$0e15 +0e0f: da 14 movw $14,ya +0e11: ba 0e movw ya,$0e +0e13: 9a 14 subw ya,$14 +0e15: 6f ret + +; vcmd dispatch table +0e16: dw $0b31 ; e0 - set instrument +0e18: dw $0b8b ; e1 - pan +0e1a: dw $0b9d ; e2 - pan fade +0e1c: dw $0bba ; e3 - vibrato on +0e1e: dw $0bc6 ; e4 - vibrato off +0e20: dw $0be1 ; e5 - master volume +0e22: dw $0c63 ; e6 - master volume fade +0e24: dw $0c75 ; e7 - tempo +0e26: dw $0c7a ; e8 - tempo fade +0e28: dw $0c8c ; e9 - global transpose +0e2a: dw $0c8f ; ea - per-voice transpose +0e2c: dw $0c93 ; eb - tremolo on +0e2e: dw $0c9f ; ec - tremolo off +0e30: dw $0cc0 ; ed - volume +0e32: dw $0cc9 ; ee - volume fade +0e34: dw $0ce6 ; ef - call subroutine +0e36: dw $0bd1 ; f0 - vibrato fade +0e38: dw $0ca2 ; f1 - pitch envelope (release) +0e3a: dw $0ca6 ; f2 - pitch envelope (attack) +0e3c: dw $0cbc ; f3 - pitch envelope off +0e3e: dw $0ce2 ; f4 - tuning +0e40: dw $0d09 ; f5 - echo vbits/volume +0e42: dw $0d3d ; f6 - disable echo +0e44: dw $0d49 ; f7 - set echo params +0e46: dw $0d1c ; f8 - echo volume fade +0e48: dw $0dc7 ; f9 - pitch slide +0e4a: dw $0db1 ; fa - set perc patch base +0e4c: dw $0db4 ; fb +0e4e: dw $0c36 ; fc - jump to position +0e50: dw $0c02 ; fd - repeat section +0e52: dw $0c48 ; fe - return from jump + +; vcmd lengths +0e54: db $01,$01,$02,$03,$00,$01,$02,$01 ; e0-e7 +0e5c: db $02,$01,$01,$03,$00,$01,$02,$03 ; e8-ef +0e64: db $01,$03,$03,$00,$01,$03,$00,$03 ; f0-f7 +0e6d: db $03,$03,$01,$02,$00,$00,$00 ; f8-fe + +0e73: f4 90 mov a,$90+x +0e75: f0 24 beq $0e9b +0e77: 09 47 5e or ($5e),($47) +0e7a: 9b 90 dec $90+x +0e7c: d0 0a bne $0e88 +0e7e: e8 00 mov a,#$00 +0e80: d5 00 03 mov $0300+x,a +0e83: f5 20 03 mov a,$0320+x +0e86: 2f 10 bra $0e98 +0e88: 60 clrc +0e89: f5 00 03 mov a,$0300+x +0e8c: 95 10 03 adc a,$0310+x +0e8f: d5 00 03 mov $0300+x,a +0e92: f5 01 03 mov a,$0301+x +0e95: 95 11 03 adc a,$0311+x +0e98: d5 01 03 mov $0301+x,a +0e9b: fb c1 mov y,$c1+x +0e9d: f0 23 beq $0ec2 +0e9f: f5 e0 02 mov a,$02e0+x +0ea2: de c0 1b cbne $c0+x,$0ec0 +0ea5: 09 47 5e or ($5e),($47) +0ea8: f5 d0 02 mov a,$02d0+x +0eab: 10 07 bpl $0eb4 +0ead: fc inc y +0eae: d0 04 bne $0eb4 +0eb0: e8 80 mov a,#$80 +0eb2: 2f 04 bra $0eb8 +0eb4: 60 clrc +0eb5: 95 d1 02 adc a,$02d1+x +0eb8: d5 d0 02 mov $02d0+x,a +0ebb: 3f b1 10 call $10b1 +0ebe: 2f 07 bra $0ec7 +0ec0: bb c0 inc $c0+x +0ec2: e8 ff mov a,#$ff +0ec4: 3f bc 10 call $10bc +0ec7: f4 91 mov a,$91+x +0ec9: f0 24 beq $0eef +0ecb: 09 47 5e or ($5e),($47) +0ece: 9b 91 dec $91+x +0ed0: d0 0a bne $0edc +0ed2: e8 00 mov a,#$00 +0ed4: d5 30 03 mov $0330+x,a +0ed7: f5 50 03 mov a,$0350+x +0eda: 2f 10 bra $0eec +0edc: 60 clrc +0edd: f5 30 03 mov a,$0330+x +0ee0: 95 40 03 adc a,$0340+x +0ee3: d5 30 03 mov $0330+x,a +0ee6: f5 31 03 mov a,$0331+x +0ee9: 95 41 03 adc a,$0341+x +0eec: d5 31 03 mov $0331+x,a +0eef: f5 31 03 mov a,$0331+x +0ef2: fd mov y,a +0ef3: f5 30 03 mov a,$0330+x +0ef6: da 10 movw $10,ya +0ef8: 7d mov a,x +0ef9: 9f xcn a +0efa: 5c lsr a +0efb: c4 12 mov $12,a +0efd: eb 11 mov y,$11 +0eff: f6 cf 10 mov a,$10cf+y +0f02: 80 setc +0f03: b6 ce 10 sbc a,$10ce+y +0f06: eb 10 mov y,$10 +0f08: cf mul ya +0f09: dd mov a,y +0f0a: eb 11 mov y,$11 +0f0c: 60 clrc +0f0d: 96 ce 10 adc a,$10ce+y +0f10: fd mov y,a +0f11: f5 21 03 mov a,$0321+x +0f14: cf mul ya +0f15: f5 51 03 mov a,$0351+x +0f18: 1c asl a +0f19: 13 12 01 bbc0 $12,$0f1d +0f1c: 1c asl a +0f1d: dd mov a,y +0f1e: 90 03 bcc $0f23 +0f20: 48 ff eor a,#$ff +0f22: bc inc a +0f23: eb 12 mov y,$12 +0f25: 3f 56 06 call $0656 +0f28: 8d 14 mov y,#$14 +0f2a: e8 00 mov a,#$00 +0f2c: 9a 10 subw ya,$10 +0f2e: da 10 movw $10,ya +0f30: ab 12 inc $12 +0f32: 33 12 c8 bbc1 $12,$0efd +0f35: 6f ret + +0f36: f5 01 02 mov a,$0201+x +0f39: f0 08 beq $0f43 +0f3b: f4 71 mov a,$71+x +0f3d: f0 63 beq $0fa2 +0f3f: 9b 71 dec $71+x +0f41: f0 03 beq $0f46 +0f43: 5f a2 0f jmp $0fa2 + +0f46: f4 80 mov a,$80+x +0f48: c4 17 mov $17,a +0f4a: f4 30 mov a,$30+x +0f4c: fb 31 mov y,$31+x +0f4e: da 14 movw $14,ya +0f50: 8d 00 mov y,#$00 +0f52: f7 14 mov a,($14)+y +0f54: f0 1e beq $0f74 +0f56: 30 07 bmi $0f5f +0f58: fc inc y +0f59: 30 40 bmi $0f9b +0f5b: f7 14 mov a,($14)+y +0f5d: 10 f9 bpl $0f58 +0f5f: 68 c8 cmp a,#$c8 +0f61: f0 3f beq $0fa2 +0f63: 68 ef cmp a,#$ef +0f65: f0 29 beq $0f90 +0f67: 68 e0 cmp a,#$e0 +0f69: 90 30 bcc $0f9b +0f6b: 6d push y +0f6c: fd mov y,a +0f6d: ae pop a +0f6e: 96 74 0d adc a,$0d74+y +0f71: fd mov y,a +0f72: 2f de bra $0f52 +0f74: e4 17 mov a,$17 +0f76: f0 23 beq $0f9b +0f78: 8b 17 dec $17 +0f7a: d0 0a bne $0f86 +0f7c: f5 31 02 mov a,$0231+x +0f7f: 2d push a +0f80: f5 30 02 mov a,$0230+x +0f83: ee pop y +0f84: 2f c8 bra $0f4e +0f86: f5 41 02 mov a,$0241+x +0f89: 2d push a +0f8a: f5 40 02 mov a,$0240+x +0f8d: ee pop y +0f8e: 2f be bra $0f4e +0f90: fc inc y +0f91: f7 14 mov a,($14)+y +0f93: 2d push a +0f94: fc inc y +0f95: f7 14 mov a,($14)+y +0f97: fd mov y,a +0f98: ae pop a +0f99: 2f b3 bra $0f4e +0f9b: e4 47 mov a,$47 +0f9d: 8d 5c mov y,#$5c +0f9f: 3f 56 06 call $0656 +0fa2: f2 13 clr7 $13 +0fa4: f4 a0 mov a,$a0+x +0fa6: f0 2c beq $0fd4 +0fa8: f4 a1 mov a,$a1+x +0faa: f0 04 beq $0fb0 +0fac: 9b a1 dec $a1+x +0fae: 2f 24 bra $0fd4 +0fb0: e2 13 set7 $13 +0fb2: 9b a0 dec $a0+x +0fb4: d0 0b bne $0fc1 +0fb6: f5 81 03 mov a,$0381+x +0fb9: d5 60 03 mov $0360+x,a +0fbc: f5 80 03 mov a,$0380+x +0fbf: 2f 10 bra $0fd1 +0fc1: 60 clrc +0fc2: f5 60 03 mov a,$0360+x +0fc5: 95 70 03 adc a,$0370+x +0fc8: d5 60 03 mov $0360+x,a +0fcb: f5 61 03 mov a,$0361+x +0fce: 95 71 03 adc a,$0371+x +0fd1: d5 61 03 mov $0361+x,a +0fd4: 3f ef 0d call $0def +0fd7: f4 b1 mov a,$b1+x +0fd9: f0 4c beq $1027 +0fdb: f5 b0 02 mov a,$02b0+x +0fde: de b0 44 cbne $b0+x,$1025 +0fe1: f5 00 01 mov a,$0100+x +0fe4: 75 b1 02 cmp a,$02b1+x +0fe7: d0 05 bne $0fee +0fe9: f5 c1 02 mov a,$02c1+x +0fec: 2f 0d bra $0ffb +0fee: 40 setp +0fef: bb 00 inc $00+x +0ff1: 20 clrp +0ff2: fd mov y,a +0ff3: f0 02 beq $0ff7 +0ff5: f4 b1 mov a,$b1+x +0ff7: 60 clrc +0ff8: 95 c0 02 adc a,$02c0+x +0ffb: d4 b1 mov $b1+x,a +0ffd: f5 a0 02 mov a,$02a0+x +1000: 60 clrc +1001: 95 a1 02 adc a,$02a1+x +1004: d5 a0 02 mov $02a0+x,a +1007: c4 12 mov $12,a +1009: 1c asl a +100a: 1c asl a +100b: 90 02 bcc $100f +100d: 48 ff eor a,#$ff +100f: fd mov y,a +1010: f4 b1 mov a,$b1+x +1012: 68 f1 cmp a,#$f1 +1014: 90 05 bcc $101b +1016: 28 0f and a,#$0f +1018: cf mul ya +1019: 2f 04 bra $101f +101b: cf mul ya +101c: dd mov a,y +101d: 8d 00 mov y,#$00 +101f: 3f 9c 10 call $109c +1022: 5f d3 05 jmp $05d3 + +1025: bb b0 inc $b0+x +1027: e3 13 f8 bbs7 $13,$1022 +102a: 6f ret + +102b: f2 13 clr7 $13 +102d: f4 c1 mov a,$c1+x +102f: f0 09 beq $103a +1031: f5 e0 02 mov a,$02e0+x +1034: de c0 03 cbne $c0+x,$103a +1037: 3f a4 10 call $10a4 +103a: f5 31 03 mov a,$0331+x +103d: fd mov y,a +103e: f5 30 03 mov a,$0330+x +1041: da 10 movw $10,ya +1043: f4 91 mov a,$91+x +1045: f0 0a beq $1051 +1047: f5 41 03 mov a,$0341+x +104a: fd mov y,a +104b: f5 40 03 mov a,$0340+x +104e: 3f 86 10 call $1086 +1051: f3 13 03 bbc7 $13,$1057 +1054: 3f f8 0e call $0ef8 +1057: f2 13 clr7 $13 +1059: 3f ef 0d call $0def +105c: f4 a0 mov a,$a0+x +105e: f0 0e beq $106e +1060: f4 a1 mov a,$a1+x +1062: d0 0a bne $106e +1064: f5 71 03 mov a,$0371+x +1067: fd mov y,a +1068: f5 70 03 mov a,$0370+x +106b: 3f 86 10 call $1086 +106e: f4 b1 mov a,$b1+x +1070: f0 b5 beq $1027 +1072: f5 b0 02 mov a,$02b0+x +1075: de b0 af cbne $b0+x,$1027 +1078: eb 51 mov y,$51 +107a: f5 a1 02 mov a,$02a1+x +107d: cf mul ya +107e: dd mov a,y +107f: 60 clrc +1080: 95 a0 02 adc a,$02a0+x +1083: 5f 07 10 jmp $1007 + +1086: e2 13 set7 $13 +1088: cb 12 mov $12,y +108a: 3f 0c 0e call $0e0c +108d: 6d push y +108e: eb 51 mov y,$51 +1090: cf mul ya +1091: cb 14 mov $14,y +1093: 8f 00 15 mov $15,#$00 +1096: eb 51 mov y,$51 +1098: ae pop a +1099: cf mul ya +109a: 7a 14 addw ya,$14 +109c: 3f 0c 0e call $0e0c +109f: 7a 10 addw ya,$10 +10a1: da 10 movw $10,ya +10a3: 6f ret + +10a4: e2 13 set7 $13 +10a6: eb 51 mov y,$51 +10a8: f5 d1 02 mov a,$02d1+x +10ab: cf mul ya +10ac: dd mov a,y +10ad: 60 clrc +10ae: 95 d0 02 adc a,$02d0+x +10b1: 1c asl a +10b2: 90 02 bcc $10b6 +10b4: 48 ff eor a,#$ff +10b6: fb c1 mov y,$c1+x +10b8: cf mul ya +10b9: dd mov a,y +10ba: 48 ff eor a,#$ff +10bc: eb 59 mov y,$59 +10be: cf mul ya +10bf: f5 10 02 mov a,$0210+x +10c2: cf mul ya +10c3: f5 01 03 mov a,$0301+x +10c6: cf mul ya +10c7: dd mov a,y +10c8: cf mul ya +10c9: dd mov a,y +10ca: d5 21 03 mov $0321+x,a +10cd: 6f ret + +; pan table +10ce: db $00,$01,$03,$07,$0d,$15,$1e,$29 +10d6: db $34,$42,$51,$5e,$67,$6e,$73,$77 +10de: db $7a,$7c,$7d,$7e,$7f + +; echo FIR presets +10e3: db $7f,$00,$00,$00,$00,$00,$00,$00 ; 00 +10ec: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c ; 01 +10f3: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 ; 02 +10fb: db $34,$33,$00,$d9,$e5,$01,$fc,$eb ; 03 + +; EVOL(L),EVOL(R),EFB,EON,FLG,KOL,KOF,NON,PMON,KOF +; dsp shadow addrs for dsp regs +1103: db $2c,$3c,$0d,$4d,$6c,$4c,$5c,$3d,$2d,$5c +110d: db $61,$63,$4e,$4a,$48,$45,$0e,$49,$4b,$46 + +; pitch table +1117: dw $085f +1119: dw $08de +111b: dw $0965 +111d: dw $09f4 +111f: dw $0a8c +1121: dw $0b2c +1123: dw $0bd6 +1125: dw $0c8b +1127: dw $0d4a +1129: dw $0e14 +112b: dw $0eea +112d: dw $0fcd +112f: dw $10be + +; version number text +1131: db "*Ver S1.20*" + +113c: fc inc y +113d: e5 f7 00 mov a,$00f7 +1140: 65 f7 00 cmp a,$00f7 +1143: d0 f8 bne $113d +1145: c5 f7 00 mov $00f7,a +1148: d7 10 mov ($10)+y,a +114a: dc dec y +114b: e5 f6 00 mov a,$00f6 +114e: 65 f6 00 cmp a,$00f6 +1151: d0 f8 bne $114b +1153: c5 f6 00 mov $00f6,a +1156: d7 10 mov ($10)+y,a +1158: fc inc y +1159: fc inc y +115a: 6f ret + +115b: e5 f4 00 mov a,$00f4 +115e: c5 f4 00 mov $00f4,a +1161: e8 11 mov a,#$11 +1163: c5 f6 00 mov $00f6,a +1166: e8 22 mov a,#$22 +1168: c5 f7 00 mov $00f7,a +116b: e5 f4 00 mov a,$00f4 +116e: 68 cc cmp a,#$cc +1170: d0 f9 bne $116b +1172: c5 f4 00 mov $00f4,a +1175: e5 f7 00 mov a,$00f7 +1178: 65 f7 00 cmp a,$00f7 +117b: d0 f8 bne $1175 +117d: c5 f7 00 mov $00f7,a +1180: fd mov y,a +1181: e5 f6 00 mov a,$00f6 +1184: 65 f6 00 cmp a,$00f6 +1187: d0 f8 bne $1181 +1189: c5 f6 00 mov $00f6,a +118c: da 10 movw $10,ya +118e: e5 f4 00 mov a,$00f4 +1191: 68 ff cmp a,#$ff +1193: d0 f9 bne $118e +1195: 8d 00 mov y,#$00 +1197: 3f 3c 11 call $113c +119a: e5 f4 00 mov a,$00f4 +119d: 68 00 cmp a,#$00 +119f: d0 f9 bne $119a +11a1: 3f 3c 11 call $113c +11a4: e8 aa mov a,#$aa +11a6: c5 f4 00 mov $00f4,a +11a9: e8 bb mov a,#$bb +11ab: c5 f5 00 mov $00f5,a +11ae: e9 f4 00 mov x,$00f4 +11b1: 1e f4 00 cmp x,$00f4 +11b4: d0 f8 bne $11ae +11b6: c8 cc cmp x,#$cc +11b8: d0 f4 bne $11ae +11ba: 2f 20 bra $11dc +11bc: ec f4 00 mov y,$00f4 +11bf: d0 fb bne $11bc +11c1: 5e f4 00 cmp y,$00f4 +11c4: d0 0f bne $11d5 +11c6: e5 f5 00 mov a,$00f5 +11c9: cc f4 00 mov $00f4,y +11cc: d7 10 mov ($10)+y,a +11ce: fc inc y +11cf: d0 f0 bne $11c1 +11d1: ab 11 inc $11 +11d3: 2f ec bra $11c1 +11d5: 10 ea bpl $11c1 +11d7: 5e f4 00 cmp y,$00f4 +11da: 10 e5 bpl $11c1 +11dc: e5 f6 00 mov a,$00f6 +11df: ec f7 00 mov y,$00f7 +11e2: da 10 movw $10,ya +11e4: e5 f4 00 mov a,$00f4 +11e7: ec f5 00 mov y,$00f5 +11ea: c5 f4 00 mov $00f4,a +11ed: dd mov a,y +11ee: 5d mov x,a +11ef: cc f5 00 mov $00f5,y +11f2: d0 c8 bne $11bc +11f4: e8 31 mov a,#$31 +11f6: c5 f1 00 mov $00f1,a +11f9: 6f ret + +11fa: e8 00 mov a,#$00 +11fc: c4 3d mov $3d,a +11fe: c4 3f mov $3f,a +1200: e8 05 mov a,#$05 +1202: 2f 0d bra $1211 +1204: e8 00 mov a,#$00 +1206: c4 3f mov $3f,a +1208: e8 06 mov a,#$06 +120a: 2f 05 bra $1211 +120c: 3f 0f 08 call $080f +120f: e8 07 mov a,#$07 +1211: c5 d0 00 mov $00d0,a +1214: 6f ret + +1215: e4 e0 mov a,$e0 +1217: 28 03 and a,#$03 +1219: d0 06 bne $1221 +121b: e4 e0 mov a,$e0 +121d: 08 01 or a,#$01 +121f: c4 e0 mov $e0,a +1221: 6f ret + +1222: e4 e0 mov a,$e0 +1224: 28 03 and a,#$03 +1226: d0 06 bne $122e +1228: e4 e0 mov a,$e0 +122a: 08 02 or a,#$02 +122c: c4 e0 mov $e0,a +122e: 6f ret + +122f: e4 e0 mov a,$e0 +1231: 28 03 and a,#$03 +1233: f0 ec beq $1221 +1235: 28 02 and a,#$02 +1237: d0 06 bne $123f +1239: e4 e1 mov a,$e1 +123b: 28 01 and a,#$01 +123d: f0 e2 beq $1221 +123f: e8 00 mov a,#$00 +1241: c4 11 mov $11,a +1243: e4 d0 mov a,$d0 +1245: 1c asl a +1246: 5d mov x,a +1247: f5 01 03 mov a,$0301+x +124a: f0 0a beq $1256 +124c: 80 setc +124d: a8 01 sbc a,#$01 +124f: d5 01 03 mov $0301+x,a +1252: d0 02 bne $1256 +1254: e8 00 mov a,#$00 +1256: d5 01 03 mov $0301+x,a +1259: 04 11 or a,$11 +125b: c4 11 mov $11,a +125d: 1d dec x +125e: 1d dec x +125f: 10 e6 bpl $1247 +1261: e4 11 mov a,$11 +1263: f0 01 beq $1266 +1265: 6f ret + +1266: e4 e0 mov a,$e0 +1268: 28 fe and a,#$fe +126a: c4 e0 mov $e0,a +126c: 5f 0a 09 jmp $090a + +126f: 8d 00 mov y,#$00 +1271: cb e2 mov $e2,y +1273: 6f ret \ No newline at end of file From 76c12e0ea1ed5083696112916f74c760750368f9 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:55:38 -0800 Subject: [PATCH 090/116] Add files via upload --- snes/NSPC/Ocean/RoboCop 3 ($0400).bin | Bin 0 -> 3606 bytes snes/NSPC/Ocean/RoboCop 3.s | 1876 +++++++++++++++++++++++++ 2 files changed, 1876 insertions(+) create mode 100644 snes/NSPC/Ocean/RoboCop 3 ($0400).bin create mode 100644 snes/NSPC/Ocean/RoboCop 3.s diff --git a/snes/NSPC/Ocean/RoboCop 3 ($0400).bin b/snes/NSPC/Ocean/RoboCop 3 ($0400).bin new file mode 100644 index 0000000000000000000000000000000000000000..0d2a1e5cd2a5356f3676b8caf076615754e1e97c GIT binary patch literal 3606 zcma)9eNYtV8Q*>1`@X$n5B7*LM>r>$4vx9mvvJy_6S4xP5*3P(q-u_Ep@L`CY|_-2 zFdEK|O+mdv{xG3tM)N^t{HO%;(H5}9O!qnp!MjX%8@&cY$X?wPbym1NNZ_Q;-f1vMNyO3p`%;@Iw`xbJ>rV%Bj$! z>ir=yj_b>fA*4PR!Z1B#3>kn77(+%NW5$pPh}{&r281((%s?tkp*htMZNt2fQo@lf zdZDUF!dEgHfS-^vZcye}9HC>;CvkU4afs@>FyWRuCBACh4pVA(hk! zp%#>dN5frfrfazwN8&LB-|&&+SL^(rguAMyt95>jqQ?;3n}ebISFIsZbpRR{|8qYq^GDTJ|mP_%hsOdYMhGchJQFH z*sGkLP1d4s;hQ}E_+W>LTWG)ZIzE27=c+va?y~r})`eA`2>Oq3~N~F-cfqm6rUEDvzix;yJLw$ zoieel+5(+47s3L}+_6lzKHqsLU_lwVkPDe-<=cF6+1>NIUsFqX{@|1;=pu1NASvB9F^`nxRrFmY}z*gIFA+5|8Cn04oCZNPZj%Drfd zhhR`k;CZ-V+ct?m*ReL~aHZ#TQQ-RElk#_qY&~h!H~;3==VmFtYKPq6foEm{k$S~^ zvDl}xj_K#)?G}sK)AfhU{zAyFV9M`Q_jx25!M2eIkqIrE{eP6IS z@Kl4TuOYF1d_y82*Q$Aak2OECw>FOYY7>vN&#k?gSZ{OY5-b0*t(f{DRYL`+?bHtH zw^S!}lsZoRk@_noQB5{{r)f(dpKOsCtOO)x)Az65vmOe?O7 zkW-BB(<$akf{~eEt3e_d+1*M=Bm+;33GOEt2{E%%%zl!QFf;pQE1qHk0m+MC4d?=- zKVU-!>|hoiMfwYS^mUxR zUq3mdYk?F+xyvGQmrPBl> z)#=N|km=T=oaI_=w^Cku1C-G$CV(UCgPi1aez zB^v7tQXj=ZX#pf{$%SF}urETS2G1UxE|01rJ$;hqMv_drPx!7H8cgZU9pO!{_?@g0!QLR{_r`d>}PJJwd#9B#ZiKK)pJL zItUt1g2cy&7ajr?@V!1q0`FGvLIcc&pM|>~pKj0#>l6Cd4dJf3+}9wVSf2>IS;0e# zpmQFEA!3QuMe?+M8hVG)kzgyGp(m!xd7(106HYfo6KQW{>6+1o>fh3os8AQgCTKNTB)4oAYU0Id?Kb9P}x~!7J0{ zlli6u)8{R!AEd+ z3y=@kLWTULUJu^NgL62DQ|ydCkfVsc&(4Mj}<6Au)V$9Cr;>WQiJLWjm8(wlxqiwZ7v))Y6~!H z?>~@HQED)_-;2dTjexF-#Lz$q`5sRPs+`ND218dnj3s$7)}VJe+^^{Rq^bYR7X{Ni zcuT0(>~Ujg0RMYcP=vAGmKIpwZ1m-E737|g6f_i6s zrAFe|2qarve>rcgU?`t+IJb_kj14jEgnN8tcdVI#6}=nd#|l7taaP)ovoL28v60HT z@ij4xhO4j|#U5HD z^loQME-#V3yx?(2&+Y~ z6l@Jc%RcNp7t*$2zp*ih)%%Nz9&C!M`kE3JHtOrPRNID)JqBUpxloolJ{{7{>9 z`S34?S>70`=^%MnqnAKRuY$f>^x;JE8P^hdvaX(BM3EZ2;EyI)ce Qv?XF2Y>YA33Y)_J2hQVcg8%>k literal 0 HcmV?d00001 diff --git a/snes/NSPC/Ocean/RoboCop 3.s b/snes/NSPC/Ocean/RoboCop 3.s new file mode 100644 index 00000000..30aacf13 --- /dev/null +++ b/snes/NSPC/Ocean/RoboCop 3.s @@ -0,0 +1,1876 @@ +0400: 20 clrp +0401: cd cf mov x,#$cf +0403: bd mov sp,x +0404: e8 00 mov a,#$00 +0406: 5d mov x,a +0407: af mov (x)+,a +0408: c8 f0 cmp x,#$f0 +040a: d0 fb bne $0407 +040c: 5d mov x,a +040d: d5 00 01 mov $0100+x,a +0410: d5 00 02 mov $0200+x,a +0413: d5 00 03 mov $0300+x,a +0416: 3d inc x +0417: d0 f4 bne $040d +0419: bc inc a +041a: 3f 67 0d call $0d67 +041d: a2 43 set5 $43 +041f: e8 60 mov a,#$60 +0421: 8d 0c mov y,#$0c +0423: 3f 70 07 call $0770 +0426: 8d 1c mov y,#$1c +0428: 3f 70 07 call $0770 +042b: 3f e8 07 call $07e8 +042e: e8 14 mov a,#$14 +0430: 8d 5d mov y,#$5d +0432: 3f 70 07 call $0770 +0435: e8 90 mov a,#$90 +0437: c5 f1 00 mov $00f1,a +043a: e8 10 mov a,#$10 +043c: c5 fa 00 mov $00fa,a +043f: c4 4d mov $4d,a +0441: e8 81 mov a,#$81 +0443: c5 f1 00 mov $00f1,a +0446: e8 00 mov a,#$00 +0448: c4 f4 mov $f4,a +044a: 8d 0a mov y,#$0a +044c: ad 05 cmp y,#$05 +044e: f0 07 beq $0457 +0450: b0 08 bcs $045a +0452: 69 48 47 cmp ($47),($48) +0455: d0 11 bne $0468 +0457: e3 47 0e bbs7 $47,$0468 +045a: f6 bf 04 mov a,$04bf+y +045d: c5 f2 00 mov $00f2,a +0460: f6 c9 04 mov a,$04c9+y +0463: 5d mov x,a +0464: e6 mov a,(x) +0465: c5 f3 00 mov $00f3,a +0468: fe e2 dbnz y,$044c +046a: cb 3f mov $3f,y +046c: cb 40 mov $40,y +046e: 3f d4 04 call $04d4 +0471: ec fd 00 mov y,$00fd +0474: f0 f8 beq $046e +0476: 6d push y +0477: e8 20 mov a,#$20 +0479: cf mul ya +047a: 60 clrc +047b: 84 1b adc a,$1b +047d: c4 1b mov $1b,a +047f: 90 07 bcc $0488 +0481: 69 48 47 cmp ($47),($48) +0484: f0 02 beq $0488 +0486: ab 47 inc $47 +0488: ee pop y +0489: e4 4d mov a,$4d +048b: cf mul ya +048c: 60 clrc +048d: 84 4b adc a,$4b +048f: c4 4b mov $4b,a +0491: 90 0b bcc $049e +0493: 3f df 08 call $08df +0496: 3f e9 08 call $08e9 +0499: 3f d4 04 call $04d4 +049c: 2f ac bra $044a +049e: f0 fc beq $049c +04a0: cd 00 mov x,#$00 +04a2: 8f 01 41 mov $41,#$01 +04a5: f4 69 mov a,$69+x +04a7: f0 03 beq $04ac +04a9: 3f 11 10 call $1011 +04ac: 3d inc x +04ad: 3d inc x +04ae: 0b 41 asl $41 +04b0: d0 f3 bne $04a5 +04b2: 2f e8 bra $049c +04b4: e4 18 mov a,$18 +04b6: 44 19 eor a,$19 +04b8: 5c lsr a +04b9: 5c lsr a +04ba: ed notc +04bb: 6b 18 ror $18 +04bd: 6b 19 ror $19 +04bf: 6f ret + +04c0: 2c 3c 0d rol $0d3c +04c3: 4d push x +04c4: 6c 4c 5c ror $5c4c +04c7: 3d inc x +04c8: 2d push a +04c9: 5c lsr a +04ca: 5b 5d lsr $5d+x +04cc: 49 45 43 eor ($43),($45) +04cf: 3f 0e 44 call $440e +04d2: 46 eor a,(x) +04d3: 40 setp +04d4: e4 f4 mov a,$f4 +04d6: 68 55 cmp a,#$55 +04d8: f0 39 beq $0513 +04da: 68 01 cmp a,#$01 +04dc: d0 03 bne $04e1 +04de: 5f 42 05 jmp $0542 + +04e1: 68 02 cmp a,#$02 +04e3: f0 76 beq $055b +04e5: 68 03 cmp a,#$03 +04e7: d0 03 bne $04ec +04e9: 5f 9f 05 jmp $059f + +04ec: 68 04 cmp a,#$04 +04ee: d0 03 bne $04f3 +04f0: 5f bf 05 jmp $05bf + +04f3: 68 05 cmp a,#$05 +04f5: d0 03 bne $04fa +04f7: 5f e2 05 jmp $05e2 + +04fa: 68 06 cmp a,#$06 +04fc: d0 03 bne $0501 +04fe: 5f 0b 06 jmp $060b + +0501: 68 fe cmp a,#$fe +0503: d0 03 bne $0508 +0505: 5f 3f 06 jmp $063f + +0508: 68 07 cmp a,#$07 +050a: d0 03 bne $050f +050c: 5f 43 06 jmp $0643 + +050f: 68 ff cmp a,#$ff +0511: f0 04 beq $0517 +0513: c5 89 03 mov $0389,a +0516: 6f ret + +0517: c4 f4 mov $f4,a +0519: e8 80 mov a,#$80 +051b: 8d 6c mov y,#$6c +051d: 3f 70 07 call $0770 +0520: e8 00 mov a,#$00 +0522: 3f 67 0d call $0d67 +0525: a2 43 set5 $43 +0527: 8f 00 14 mov $14,#$00 +052a: 8f 80 15 mov $15,#$80 +052d: 8d 00 mov y,#$00 +052f: e8 00 mov a,#$00 +0531: d7 14 mov ($14)+y,a +0533: ab 14 inc $14 +0535: d0 f8 bne $052f +0537: ab 15 inc $15 +0539: e4 15 mov a,$15 +053b: 68 f0 cmp a,#$f0 +053d: d0 f0 bne $052f +053f: 5f c0 ff jmp $ffc0 + +0542: c4 f4 mov $f4,a +0544: e4 f5 mov a,$f5 +0546: c4 00 mov $00,a +0548: eb f6 mov y,$f6 +054a: 3f 77 0c call $0c77 +054d: e4 f7 mov a,$f7 +054f: c4 65 mov $65,a +0551: e8 01 mov a,#$01 +0553: c5 89 03 mov $0389,a +0556: e8 55 mov a,#$55 +0558: c4 f4 mov $f4,a +055a: 6f ret + +055b: e5 89 03 mov a,$0389 +055e: 68 02 cmp a,#$02 +0560: f0 3c beq $059e +0562: c4 f4 mov $f4,a +0564: e4 f5 mov a,$f5 +0566: c5 60 03 mov $0360,a +0569: e5 f6 00 mov a,$00f6 +056c: 2d push a +056d: 28 e0 and a,#$e0 +056f: 5c lsr a +0570: 5c lsr a +0571: 5c lsr a +0572: 5c lsr a +0573: 68 0e cmp a,#$0e +0575: d0 04 bne $057b +0577: e8 ff mov a,#$ff +0579: 2f 03 bra $057e +057b: 8d 10 mov y,#$10 +057d: cf mul ya +057e: c5 61 03 mov $0361,a +0581: ae pop a +0582: 28 1f and a,#$1f +0584: 68 14 cmp a,#$14 +0586: 90 02 bcc $058a +0588: e8 14 mov a,#$14 +058a: c5 62 03 mov $0362,a +058d: e4 f7 mov a,$f7 +058f: c5 8a 03 mov $038a,a +0592: e8 02 mov a,#$02 +0594: c5 89 03 mov $0389,a +0597: 3f f3 10 call $10f3 +059a: e8 55 mov a,#$55 +059c: c4 f4 mov $f4,a +059e: 6f ret + +059f: c4 f4 mov $f4,a +05a1: e5 f5 00 mov a,$00f5 +05a4: c4 54 mov $54,a +05a6: e5 f6 00 mov a,$00f6 +05a9: c4 55 mov $55,a +05ab: 80 setc +05ac: a4 53 sbc a,$53 +05ae: f8 54 mov x,$54 +05b0: 3f fb 0d call $0dfb +05b3: da 56 movw $56,ya +05b5: e8 03 mov a,#$03 +05b7: c5 89 03 mov $0389,a +05ba: e8 55 mov a,#$55 +05bc: c4 f4 mov $f4,a +05be: 6f ret + +05bf: c4 f4 mov $f4,a +05c1: e5 f5 00 mov a,$00f5 +05c4: c4 4e mov $4e,a +05c6: e5 f6 00 mov a,$00f6 +05c9: c4 4f mov $4f,a +05cb: 80 setc +05cc: a4 4d sbc a,$4d +05ce: f8 4e mov x,$4e +05d0: 3f fb 0d call $0dfb +05d3: da 50 movw $50,ya +05d5: e8 04 mov a,#$04 +05d7: c5 89 03 mov $0389,a +05da: c5 8b 03 mov $038b,a +05dd: e8 55 mov a,#$55 +05df: c4 f4 mov $f4,a +05e1: 6f ret + +05e2: c4 f4 mov $f4,a +05e4: e4 f5 mov a,$f5 +05e6: f0 09 beq $05f1 +05e8: 68 01 cmp a,#$01 +05ea: f0 0d beq $05f9 +05ec: 68 02 cmp a,#$02 +05ee: f0 11 beq $0601 +05f0: 6f ret + +05f1: fa 4d f5 mov ($f5),($4d) +05f4: e8 55 mov a,#$55 +05f6: c4 f4 mov $f4,a +05f8: 6f ret + +05f9: fa 53 f5 mov ($f5),($53) +05fc: e8 55 mov a,#$55 +05fe: c4 f4 mov $f4,a +0600: 6f ret + +0601: e5 8c 03 mov a,$038c +0604: c4 f5 mov $f5,a +0606: e8 55 mov a,#$55 +0608: c4 f4 mov $f4,a +060a: 6f ret + +060b: c4 f4 mov $f4,a +060d: e5 89 03 mov a,$0389 +0610: 68 06 cmp a,#$06 +0612: f0 26 beq $063a +0614: e9 9f 03 mov x,$039f +0617: e4 f6 mov a,$f6 +0619: 3f e4 0c call $0ce4 +061c: 3f 8a 10 call $108a +061f: e4 f5 mov a,$f5 +0621: 3f 1f 0c call $0c1f +0624: 4d push x +0625: e8 01 mov a,#$01 +0627: 1c asl a +0628: 1d dec x +0629: 1d dec x +062a: d0 fb bne $0627 +062c: c4 41 mov $41,a +062e: 09 41 58 or ($58),($41) +0631: ce pop x +0632: 3f 50 0e call $0e50 +0635: e8 06 mov a,#$06 +0637: c5 89 03 mov $0389,a +063a: e8 55 mov a,#$55 +063c: c4 f4 mov $f4,a +063e: 6f ret + +063f: 3f e9 08 call $08e9 +0642: 6f ret + +0643: c4 f4 mov $f4,a +0645: e5 89 03 mov a,$0389 +0648: 68 06 cmp a,#$06 +064a: f0 0a beq $0656 +064c: e4 f5 mov a,$f5 +064e: c5 a3 03 mov $03a3,a +0651: e8 06 mov a,#$06 +0653: c5 89 03 mov $0389,a +0656: e8 55 mov a,#$55 +0658: c4 f4 mov $f4,a +065a: 6f ret + +065b: 6f ret + +065c: ad ca cmp y,#$ca +065e: 90 06 bcc $0666 +0660: 3f 29 0b call $0b29 +0663: ec a0 03 mov y,$03a0 +0666: ad c8 cmp y,#$c8 +0668: b0 f1 bcs $065b +066a: e4 1a mov a,$1a +066c: 24 41 and a,$41 +066e: d0 eb bne $065b +0670: f5 a4 03 mov a,$03a4+x +0673: f0 11 beq $0686 +0675: e4 18 mov a,$18 +0677: 68 14 cmp a,#$14 +0679: 90 05 bcc $0680 +067b: 80 setc +067c: a8 14 sbc a,#$14 +067e: 2f f7 bra $0677 +0680: 3f 1f 0c call $0c1f +0683: 3f b4 04 call $04b4 +0686: dd mov a,y +0687: 28 7f and a,#$7f +0689: 60 clrc +068a: 84 4a adc a,$4a +068c: 60 clrc +068d: 95 41 03 adc a,$0341+x +0690: 60 clrc +0691: 95 50 03 adc a,$0350+x +0694: d5 b1 02 mov $02b1+x,a +0697: e8 00 mov a,#$00 +0699: d5 50 03 mov $0350+x,a +069c: f5 d1 02 mov a,$02d1+x +069f: d5 b0 02 mov $02b0+x,a +06a2: f5 11 03 mov a,$0311+x +06a5: 5c lsr a +06a6: e8 00 mov a,#$00 +06a8: 7c ror a +06a9: d5 00 03 mov $0300+x,a +06ac: e8 00 mov a,#$00 +06ae: d4 c9 mov $c9+x,a +06b0: d4 9a mov $9a+x,a +06b2: d5 30 03 mov $0330+x,a +06b5: d4 d9 mov $d9+x,a +06b7: 09 41 58 or ($58),($41) +06ba: 09 41 3f or ($3f),($41) +06bd: f5 e0 02 mov a,$02e0+x +06c0: d4 b9 mov $b9+x,a +06c2: f0 1e beq $06e2 +06c4: f5 e1 02 mov a,$02e1+x +06c7: d4 ba mov $ba+x,a +06c9: f5 f0 02 mov a,$02f0+x +06cc: d0 0a bne $06d8 +06ce: f5 b1 02 mov a,$02b1+x +06d1: 80 setc +06d2: b5 f1 02 sbc a,$02f1+x +06d5: d5 b1 02 mov $02b1+x,a +06d8: f5 f1 02 mov a,$02f1+x +06db: 60 clrc +06dc: 95 b1 02 adc a,$02b1+x +06df: 3f d3 0d call $0dd3 +06e2: 3f f0 0d call $0df0 +06e5: 8d 00 mov y,#$00 +06e7: e4 11 mov a,$11 +06e9: 80 setc +06ea: a8 34 sbc a,#$34 +06ec: b0 09 bcs $06f7 +06ee: e4 11 mov a,$11 +06f0: 80 setc +06f1: a8 13 sbc a,#$13 +06f3: b0 06 bcs $06fb +06f5: dc dec y +06f6: 1c asl a +06f7: 7a 10 addw ya,$10 +06f9: da 10 movw $10,ya +06fb: 4d push x +06fc: e4 11 mov a,$11 +06fe: 1c asl a +06ff: 8d 00 mov y,#$00 +0701: cd 18 mov x,#$18 +0703: 9e div ya,x +0704: 5d mov x,a +0705: f6 78 07 mov a,$0778+y +0708: c4 15 mov $15,a +070a: f6 77 07 mov a,$0777+y +070d: c4 14 mov $14,a +070f: f6 7a 07 mov a,$077a+y +0712: 2d push a +0713: f6 79 07 mov a,$0779+y +0716: ee pop y +0717: 9a 14 subw ya,$14 +0719: eb 10 mov y,$10 +071b: cf mul ya +071c: dd mov a,y +071d: 8d 00 mov y,#$00 +071f: 7a 14 addw ya,$14 +0721: cb 15 mov $15,y +0723: 1c asl a +0724: 2b 15 rol $15 +0726: c4 14 mov $14,a +0728: 2f 04 bra $072e +072a: 4b 15 lsr $15 +072c: 7c ror a +072d: 3d inc x +072e: c8 06 cmp x,#$06 +0730: d0 f8 bne $072a +0732: c4 14 mov $14,a +0734: ce pop x +0735: f5 20 02 mov a,$0220+x +0738: eb 15 mov y,$15 +073a: cf mul ya +073b: da 16 movw $16,ya +073d: f5 20 02 mov a,$0220+x +0740: eb 14 mov y,$14 +0742: cf mul ya +0743: 6d push y +0744: f5 21 02 mov a,$0221+x +0747: eb 14 mov y,$14 +0749: cf mul ya +074a: 7a 16 addw ya,$16 +074c: da 16 movw $16,ya +074e: f5 21 02 mov a,$0221+x +0751: eb 15 mov y,$15 +0753: cf mul ya +0754: fd mov y,a +0755: ae pop a +0756: 7a 16 addw ya,$16 +0758: da 16 movw $16,ya +075a: 7d mov a,x +075b: 9f xcn a +075c: 5c lsr a +075d: 08 02 or a,#$02 +075f: fd mov y,a +0760: e4 16 mov a,$16 +0762: 3f 68 07 call $0768 +0765: fc inc y +0766: e4 17 mov a,$17 +0768: 2d push a +0769: e4 41 mov a,$41 +076b: 24 1a and a,$1a +076d: ae pop a +076e: d0 06 bne $0776 +0770: cc f2 00 mov $00f2,y +0773: c5 f3 00 mov $00f3,a +0776: 6f ret + +0777: dw $085f +0779: dw $08de +077b: dw $0965 +077d: dw $09f4 +077f: dw $0a8c +0781: dw $0b2c +0783: dw $0bd6 +0785: dw $0c8b +0787: dw $0d4a +0789: dw $0e14 +078b: dw $0eea +078d: dw $0fcd +078f: dw $10be + +0791: 8d 00 mov y,#$00 +0793: f7 1c mov a,($1c)+y +0795: 3a 1c incw $1c +0797: 2d push a +0798: f7 1c mov a,($1c)+y +079a: 3a 1c incw $1c +079c: fd mov y,a +079d: ae pop a +079e: 6f ret + +079f: 8d 0f mov y,#$0f +07a1: cd 0f mov x,#$0f +07a3: f7 1c mov a,($1c)+y +07a5: f0 04 beq $07ab +07a7: d4 1f mov $1f+x,a +07a9: d4 69 mov $69+x,a +07ab: dc dec y +07ac: 1d dec x +07ad: 10 f4 bpl $07a3 +07af: f8 66 mov x,$66 +07b1: 1d dec x +07b2: 1d dec x +07b3: 8f 01 41 mov $41,#$01 +07b6: e7 1f mov a,($1f+x) +07b8: d4 2f mov $2f+x,a +07ba: f0 06 beq $07c2 +07bc: bb 1f inc $1f+x +07be: d0 02 bne $07c2 +07c0: bb 20 inc $20+x +07c2: e7 1f mov a,($1f+x) +07c4: d4 30 mov $30+x,a +07c6: f0 06 beq $07ce +07c8: bb 1f inc $1f+x +07ca: d0 02 bne $07ce +07cc: bb 20 inc $20+x +07ce: f5 11 02 mov a,$0211+x +07d1: d0 05 bne $07d8 +07d3: e8 00 mov a,#$00 +07d5: 3f 29 0b call $0b29 +07d8: e8 00 mov a,#$00 +07da: d4 99 mov $99+x,a +07dc: d4 a9 mov $a9+x,a +07de: d4 aa mov $aa+x,a +07e0: bc inc a +07e1: d4 89 mov $89+x,a +07e3: 1d dec x +07e4: 1d dec x +07e5: 10 cf bpl $07b6 +07e7: 6f ret + +07e8: e4 1a mov a,$1a +07ea: 48 ff eor a,#$ff +07ec: 0e 40 00 tset1 $0040 +07ef: e8 00 mov a,#$00 +07f1: c5 8c 03 mov $038c,a +07f4: cd 0e mov x,#$0e +07f6: d4 69 mov $69+x,a +07f8: 1d dec x +07f9: 10 fb bpl $07f6 +07fb: c4 66 mov $66,a +07fd: c4 54 mov $54,a +07ff: c4 62 mov $62,a +0801: c4 4e mov $4e,a +0803: c4 4a mov $4a,a +0805: c4 1e mov $1e,a +0807: c4 59 mov $59,a +0809: e8 01 mov a,#$01 +080b: c4 4e mov $4e,a +080d: e8 2d mov a,#$2d +080f: c4 4f mov $4f,a +0811: 80 setc +0812: a4 4d sbc a,$4d +0814: f8 4e mov x,$4e +0816: 3f fb 0d call $0dfb +0819: da 50 movw $50,ya +081b: e8 00 mov a,#$00 +081d: 3f 67 0d call $0d67 +0820: a2 43 set5 $43 +0822: 6f ret + +; load song +0823: c4 08 mov $08,a +0825: c5 8c 03 mov $038c,a +0828: 1c asl a +0829: 1c asl a +082a: f0 bc beq $07e8 +082c: 5d mov x,a +082d: f5 fd 7f mov a,$7ffd+x +0830: fd mov y,a +0831: f5 fc 7f mov a,$7ffc+x +0834: da 1c movw $1c,ya +0836: f5 fe 7f mov a,$7ffe+x +0839: c4 66 mov $66,a +083b: e4 1a mov a,$1a +083d: 48 ff eor a,#$ff +083f: 0e 40 00 tset1 $0040 +0842: cd 0e mov x,#$0e +0844: 8f 80 41 mov $41,#$80 +0847: e8 ff mov a,#$ff +0849: d5 51 02 mov $0251+x,a +084c: e8 0a mov a,#$0a +084e: 3f 1f 0c call $0c1f +0851: d5 11 02 mov $0211+x,a +0854: d5 d1 02 mov $02d1+x,a +0857: d5 41 03 mov $0341+x,a +085a: d4 79 mov $79+x,a +085c: d5 a4 03 mov $03a4+x,a +085f: d5 e0 02 mov $02e0+x,a +0862: d4 ca mov $ca+x,a +0864: d4 da mov $da+x,a +0866: c5 9f 03 mov $039f,a +0869: d5 65 03 mov $0365+x,a +086c: d5 75 03 mov $0375+x,a +086f: d4 69 mov $69+x,a +0871: 1d dec x +0872: d4 69 mov $69+x,a +0874: 1d dec x +0875: 4b 41 lsr $41 +0877: d0 ce bne $0847 +0879: e8 00 mov a,#$00 +087b: c5 8b 03 mov $038b,a +087e: c4 54 mov $54,a +0880: c4 62 mov $62,a +0882: c4 4e mov $4e,a +0884: c4 4a mov $4a,a +0886: c4 1e mov $1e,a +0888: c4 59 mov $59,a +088a: 8f 20 4d mov $4d,#$20 +088d: 8d 0f mov y,#$0f +088f: cd 0f mov x,#$0f +0891: f7 1c mov a,($1c)+y +0893: d4 1f mov $1f+x,a +0895: d4 69 mov $69+x,a +0897: dc dec y +0898: 1d dec x +0899: 10 f6 bpl $0891 +089b: cd 0e mov x,#$0e +089d: 8f 01 41 mov $41,#$01 +08a0: e7 1f mov a,($1f+x) +08a2: d4 2f mov $2f+x,a +08a4: f0 06 beq $08ac +08a6: bb 1f inc $1f+x +08a8: d0 02 bne $08ac +08aa: bb 20 inc $20+x +08ac: e7 1f mov a,($1f+x) +08ae: d4 30 mov $30+x,a +08b0: f0 06 beq $08b8 +08b2: bb 1f inc $1f+x +08b4: d0 02 bne $08b8 +08b6: bb 20 inc $20+x +08b8: 1d dec x +08b9: 1d dec x +08ba: 0b 41 asl $41 +08bc: d0 e2 bne $08a0 +08be: cd 00 mov x,#$00 +08c0: 8f 01 41 mov $41,#$01 +08c3: f5 11 02 mov a,$0211+x +08c6: d0 05 bne $08cd +08c8: e8 00 mov a,#$00 +08ca: 3f 29 0b call $0b29 +08cd: e8 00 mov a,#$00 +08cf: d4 99 mov $99+x,a +08d1: d4 a9 mov $a9+x,a +08d3: d4 aa mov $aa+x,a +08d5: bc inc a +08d6: d4 89 mov $89+x,a +08d8: 3d inc x +08d9: 3d inc x +08da: 0b 41 asl $41 +08dc: d0 e5 bne $08c3 +08de: 6f ret + +08df: e4 00 mov a,$00 +08e1: 64 08 cmp a,$08 +08e3: f0 03 beq $08e8 +08e5: 5f 23 08 jmp $0823 + +08e8: 6f ret + +08e9: cd 00 mov x,#$00 +08eb: d8 58 mov $58,x +08ed: 8f 01 41 mov $41,#$01 +08f0: d8 42 mov $42,x +08f2: f4 69 mov a,$69+x +08f4: d0 03 bne $08f9 +08f6: 5f ab 09 jmp $09ab + +08f9: 7d mov a,x +08fa: 9b 89 dec $89+x +08fc: f0 03 beq $0901 +08fe: 5f a5 09 jmp $09a5 + +; dispatch voice bytes +0901: 3f 7e 0a call $0a7e ; read vcmd +0904: d0 68 bne $096e +; vcmd 00 +0906: 3f 7e 0a call $0a7e +0909: f0 28 beq $0933 ; vcmd 00 00 - end pattern +090b: 68 02 cmp a,#$02 +090d: f0 15 beq $0924 +; vcmd 00 xx - ? +090f: e8 00 mov a,#$00 +0911: d4 69 mov $69+x,a +0913: d4 6a mov $6a+x,a +0915: d5 65 03 mov $0365+x,a +0918: d5 66 03 mov $0366+x,a +091b: d5 75 03 mov $0375+x,a +091e: d5 76 03 mov $0376+x,a +0921: 5f ab 09 jmp $09ab + +; vcmd 00 02 - goto +0924: 3f 7e 0a call $0a7e +0927: 2d push a +0928: 3f 7e 0a call $0a7e +092b: f4 30 mov a,$30+x +092d: ae pop a +092e: d4 2f mov $2f+x,a ; goto arg1/2 +0930: 5f 01 09 jmp $0901 + +; dispatch pattern event +; note: each tracks has the corresponding pattern sequence +; (incompatible with standard N-SPC, which has only a single global pattern sequence) +0933: e7 1f mov a,($1f+x) +0935: d4 2f mov $2f+x,a +0937: bb 1f inc $1f+x +0939: d0 02 bne $093d +093b: bb 20 inc $20+x +093d: e7 1f mov a,($1f+x) +093f: d4 30 mov $30+x,a ; read new start address for the track +0941: bb 1f inc $1f+x +0943: d0 02 bne $0947 +0945: bb 20 inc $20+x +0947: f4 30 mov a,$30+x +0949: f0 0b beq $0956 ; if $00xx: end of pattern? +094b: 68 ff cmp a,#$ff +094d: f0 1c beq $096b ; if $ffxx: loop? +094f: 68 01 cmp a,#$01 +0951: f0 06 beq $0959 ; if $01xx (usually 00 01): goto +0953: 5f 01 09 jmp $0901 ; else: start dispatching the new pattern + +0956: 5f e8 07 jmp $07e8 + +; goto for the pattern sequence +0959: e7 1f mov a,($1f+x) +095b: 2d push a +095c: bb 1f inc $1f+x +095e: d0 02 bne $0962 +0960: ab 20 inc $20 +0962: e7 1f mov a,($1f+x) +0964: d4 20 mov $20+x,a +0966: ae pop a +0967: d4 1f mov $1f+x,a +0969: 2f c8 bra $0933 +096b: 5f 9f 07 jmp $079f + +096e: 30 16 bmi $0986 ; vcmds 01-7f - note info: +0970: d5 00 02 mov $0200+x,a ; set cmd as duration +0973: 3f 7e 0a call $0a7e ; read next byte +0976: 30 0e bmi $0986 ; branch if not a note +0978: f0 8c beq $0906 ; branch if zero (end pattern) + +; process the second note param (velocity) +; (incompatible with standard N-SPC) +097a: 1c asl a ; extend 7-bit value to 8-bit +097b: d5 10 02 mov $0210+x,a ; set per-note volume (velocity) +097e: e8 ff mov a,#$ff +0980: d5 01 02 mov $0201+x,a ; maximize dur% +0983: 5f 01 09 jmp $0901 + +; vcmd branches 80-ff +0986: 68 e0 cmp a,#$e0 +0988: 90 06 bcc $0990 +098a: 3f 6c 0a call $0a6c +098d: 5f 01 09 jmp $0901 + +; vcmds 80-df - note +0990: 3f 5c 06 call $065c +0993: f5 00 02 mov a,$0200+x +0996: d4 89 mov $89+x,a +0998: fd mov y,a +0999: f5 01 02 mov a,$0201+x +099c: cf mul ya +099d: dd mov a,y +099e: d0 01 bne $09a1 +09a0: bc inc a +09a1: d4 8a mov $8a+x,a +09a3: 2f 03 bra $09a8 +09a5: 3f 08 0f call $0f08 +09a8: 3f b0 0d call $0db0 +09ab: 3d inc x +09ac: 3d inc x +09ad: 0b 41 asl $41 +09af: f0 03 beq $09b4 +09b1: 5f f0 08 jmp $08f0 + +09b4: e4 53 mov a,$53 +09b6: 68 20 cmp a,#$20 +09b8: b0 04 bcs $09be +09ba: e8 00 mov a,#$00 +09bc: c4 00 mov $00,a +09be: e4 4e mov a,$4e +09c0: f0 0b beq $09cd +09c2: ba 50 movw ya,$50 +09c4: 7a 4c addw ya,$4c +09c6: 6e 4e 02 dbnz $4e,$09cb +09c9: ba 4e movw ya,$4e +09cb: da 4c movw $4c,ya +09cd: e4 62 mov a,$62 +09cf: f0 15 beq $09e6 +09d1: ba 5e movw ya,$5e +09d3: 7a 5a addw ya,$5a +09d5: da 5a movw $5a,ya +09d7: ba 60 movw ya,$60 +09d9: 7a 5c addw ya,$5c +09db: 6e 62 06 dbnz $62,$09e4 +09de: ba 62 movw ya,$62 +09e0: da 5a movw $5a,ya +09e2: eb 64 mov y,$64 +09e4: da 5c movw $5c,ya +09e6: e4 54 mov a,$54 +09e8: f0 0f beq $09f9 +09ea: ba 56 movw ya,$56 +09ec: 7a 52 addw ya,$52 +09ee: 8b 54 dec $54 +09f0: d0 02 bne $09f4 +09f2: ba 54 movw ya,$54 +09f4: da 52 movw $52,ya +09f6: 8f ff 58 mov $58,#$ff +09f9: cd 00 mov x,#$00 +09fb: 8f 01 41 mov $41,#$01 +09fe: f4 69 mov a,$69+x +0a00: f0 03 beq $0a05 +0a02: 3f 17 0e call $0e17 +0a05: 3d inc x +0a06: 3d inc x +0a07: 0b 41 asl $41 +0a09: d0 f3 bne $09fe +0a0b: 6f ret + +; vcmd dispatch table +0a0c: dw $0a91 ; e0 - set instrument +0a0e: dw $0c1f ; e1 - pan +0a10: dw $0c37 ; e2 - pan fade +0a12: dw $0c50 ; e3 - vibrato on +0a14: dw $0c5c ; e4 - vibrato off +0a16: dw $0c77 ; e5 - master volume +0a18: dw $0c7c ; e6 - master volume fade +0a1a: dw $0c8e ; e7 - tempo +0a1c: dw $0c98 ; e8 - tempo fade +0a1e: dw $0caa ; e9 - global transpose +0a20: dw $0cad ; ea - per-voice transpose +0a22: dw $0cb7 ; eb - tremolo on +0a24: dw $0cc3 ; ec - tremolo off +0a26: dw $0ce4 ; ed - volume +0a28: dw $0ced ; ee - volume fade +0a2a: dw $0d0a ; ef - echo vbits/volume +0a2c: dw $0c67 ; f0 - vibrato fade +0a2e: dw $0cc6 ; f1 - pitch envelope (release) +0a30: dw $0cca ; f2 - pitch envelope (attack) +0a32: dw $0ce0 ; f3 - pitch envelope off +0a34: dw $0d06 ; f4 - tuning +0a36: dw $0d0a ; f5 - echo vbits/volume +0a38: dw $0d3e ; f6 - disable echo +0a3a: dw $0d45 ; f7 - set echo params +0a3c: dw $0d1d ; f8 - echo volume fade +0a3e: dw $0dc0 ; f9 - pitch slide +0a40: dw $0dad ; fa - set perc patch base +0a42: dw $0cb1 ; fb +0a44: dw $0b29 ; fc - set instrument (alternate) +0a46: dw $0c02 ; fd +0a48: dw $0c2d ; fe - GAIN on +0a4a: dw $0c31 ; ff - GAIN off + +; vcmd lengths +0a4c: db $01,$01,$02,$03,$00,$01,$02,$01 ; e0-e7 +0a55: db $02,$01,$01,$03,$00,$01,$02,$03 ; e8-ef +0a5c: db $01,$03,$03,$00,$01,$03,$00,$03 ; f0-f7 +0a5e: db $03,$03,$01,$01,$01,$03,$00,$00 ; f8-ff + +0a6c: 1c asl a +0a6d: fd mov y,a +0a6e: f6 4d 09 mov a,$094d+y +0a71: 2d push a +0a72: f6 4c 09 mov a,$094c+y +0a75: 2d push a +0a76: dd mov a,y +0a77: 5c lsr a +0a78: fd mov y,a +0a79: f6 ec 09 mov a,$09ec+y +0a7c: f0 08 beq $0a86 +0a7e: e7 2f mov a,($2f+x) +0a80: bb 2f inc $2f+x +0a82: d0 02 bne $0a86 +0a84: bb 30 inc $30+x +0a86: fd mov y,a +0a87: 6f ret + +0a88: e7 2f mov a,($2f+x) +0a8a: bb 2f inc $2f+x +0a8c: d0 02 bne $0a90 +0a8e: bb 30 inc $30+x +0a90: 6f ret + +; vcmd e0 - set instrument +0a91: d5 11 02 mov $0211+x,a +0a94: fd mov y,a +0a95: ad ff cmp y,#$ff +0a97: f0 0a beq $0aa3 +0a99: 10 1a bpl $0ab5 +0a9b: 80 setc +0a9c: a8 ca sbc a,#$ca +0a9e: 60 clrc +0a9f: 84 59 adc a,$59 +0aa1: 2f 12 bra $0ab5 +0aa3: 3f 7e 0a call $0a7e +0aa6: 28 1f and a,#$1f +0aa8: 38 20 43 and $43,#$20 +0aab: 0e 43 00 tset1 $0043 +0aae: 09 41 44 or ($44),($41) +0ab1: e8 13 mov a,#$13 +0ab3: 2f 07 bra $0abc +0ab5: 2d push a +0ab6: e4 41 mov a,$41 +0ab8: 4e 44 00 tclr1 $0044 +0abb: ae pop a +0abc: c5 86 03 mov $0386,a +0abf: 8d 02 mov y,#$02 +0ac1: cf mul ya +0ac2: da 14 movw $14,ya +0ac4: 60 clrc +0ac5: 98 00 14 adc $14,#$00 +0ac8: 98 15 15 adc $15,#$15 +0acb: e4 1a mov a,$1a +0acd: 24 41 and a,$41 +0acf: d0 57 bne $0b28 +0ad1: e5 86 03 mov a,$0386 +0ad4: 1c asl a +0ad5: 1c asl a +0ad6: c9 88 03 mov $0388,x +0ad9: 5d mov x,a +0ada: 8d 01 mov y,#$01 +0adc: f7 14 mov a,($14)+y +0ade: 2d push a +0adf: dc dec y +0ae0: f7 14 mov a,($14)+y +0ae2: ee pop y +0ae3: da 14 movw $14,ya +0ae5: e4 14 mov a,$14 +0ae7: 60 clrc +0ae8: 88 04 adc a,#$04 +0aea: d5 00 14 mov $1400+x,a +0aed: e4 15 mov a,$15 +0aef: 88 00 adc a,#$00 +0af1: d5 01 14 mov $1401+x,a +0af4: 8d 00 mov y,#$00 +0af6: f7 14 mov a,($14)+y +0af8: 60 clrc +0af9: 95 00 14 adc a,$1400+x +0afc: d5 02 14 mov $1402+x,a +0aff: fc inc y +0b00: f7 14 mov a,($14)+y +0b02: 95 01 14 adc a,$1401+x +0b05: d5 03 14 mov $1403+x,a +0b08: fc inc y +0b09: e9 88 03 mov x,$0388 +0b0c: f7 14 mov a,($14)+y +0b0e: 5c lsr a +0b0f: 5c lsr a +0b10: d5 20 02 mov $0220+x,a +0b13: fc inc y +0b14: f7 14 mov a,($14)+y +0b16: 5c lsr a +0b17: 5c lsr a +0b18: d5 21 02 mov $0221+x,a +0b1b: 7d mov a,x +0b1c: 9f xcn a +0b1d: 5c lsr a +0b1e: 08 04 or a,#$04 +0b20: fd mov y,a +0b21: e5 86 03 mov a,$0386 +0b24: cb f2 mov $f2,y +0b26: c4 f3 mov $f3,a +0b28: 6f ret + +; vcmd fc +0b29: d5 11 02 mov $0211+x,a +0b2c: fd mov y,a +0b2d: 10 40 bpl $0b6f +0b2f: 80 setc +0b30: a8 ca sbc a,#$ca +0b32: c5 86 03 mov $0386,a +0b35: 1c asl a +0b36: 60 clrc +0b37: 85 86 03 adc a,$0386 +0b3a: 1c asl a +0b3b: 2d push a +0b3c: c9 88 03 mov $0388,x +0b3f: 7d mov a,x +0b40: 9f xcn a +0b41: 5c lsr a +0b42: 08 05 or a,#$05 +0b44: 5d mov x,a +0b45: ee pop y +0b46: f6 df 0b mov a,$0bdf+y +0b49: d8 f2 mov $f2,x +0b4b: c4 f3 mov $f3,a +0b4d: 3d inc x +0b4e: f6 e0 0b mov a,$0be0+y +0b51: d8 f2 mov $f2,x +0b53: c4 f3 mov $f3,a +0b55: 3d inc x +0b56: f6 e0 0b mov a,$0be0+y +0b59: d8 f2 mov $f2,x +0b5b: c4 f3 mov $f3,a +0b5d: f6 e2 0b mov a,$0be2+y +0b60: e9 88 03 mov x,$0388 +0b63: 3f 1f 0c call $0c1f +0b66: f6 e3 0b mov a,$0be3+y +0b69: c5 a0 03 mov $03a0,a +0b6c: f6 de 0b mov a,$0bde+y +0b6f: c5 86 03 mov $0386,a +0b72: 8d 02 mov y,#$02 +0b74: cf mul ya +0b75: da 14 movw $14,ya +0b77: 60 clrc +0b78: 98 80 14 adc $14,#$80 +0b7b: 98 97 15 adc $15,#$97 +0b7e: e4 1a mov a,$1a +0b80: 24 41 and a,$41 +0b82: d0 59 bne $0bdd +0b84: 8d 01 mov y,#$01 +0b86: f7 14 mov a,($14)+y +0b88: 2d push a +0b89: dc dec y +0b8a: f7 14 mov a,($14)+y +0b8c: ee pop y +0b8d: da 14 movw $14,ya +0b8f: e5 86 03 mov a,$0386 +0b92: 60 clrc +0b93: 88 20 adc a,#$20 +0b95: c5 86 03 mov $0386,a +0b98: 1c asl a +0b99: 1c asl a +0b9a: c9 88 03 mov $0388,x +0b9d: 5d mov x,a +0b9e: e4 14 mov a,$14 +0ba0: 60 clrc +0ba1: 88 04 adc a,#$04 +0ba3: d5 00 14 mov $1400+x,a +0ba6: e4 15 mov a,$15 +0ba8: 88 00 adc a,#$00 +0baa: d5 01 14 mov $1401+x,a +0bad: 8d 00 mov y,#$00 +0baf: f7 14 mov a,($14)+y +0bb1: 60 clrc +0bb2: 95 00 14 adc a,$1400+x +0bb5: d5 02 14 mov $1402+x,a +0bb8: fc inc y +0bb9: f7 14 mov a,($14)+y +0bbb: 95 01 14 adc a,$1401+x +0bbe: d5 03 14 mov $1403+x,a +0bc1: fc inc y +0bc2: e9 88 03 mov x,$0388 +0bc5: f7 14 mov a,($14)+y +0bc7: d5 20 02 mov $0220+x,a +0bca: fc inc y +0bcb: f7 14 mov a,($14)+y +0bcd: d5 21 02 mov $0221+x,a +0bd0: 7d mov a,x +0bd1: 9f xcn a +0bd2: 5c lsr a +0bd3: 08 04 or a,#$04 +0bd5: fd mov y,a +0bd6: e5 86 03 mov a,$0386 +0bd9: cb f2 mov $f2,y +0bdb: c4 f3 mov $f3,a +0bdd: 6f ret + +0bde: db $01,$8f,$e0,$b8,$0a,$a4,$02,$8f +0be6: db $e0,$b8,$0a,$a4,$04,$8f,$e0,$b8 +0bee: db $14,$98,$03,$8f,$e0,$b8,$0a,$b0 +0bf6: db $05,$8f,$e0,$b8,$08,$98,$06,$8f +0bfe: db $e0,$b8,$0c,$98 + +; vcmd fd +0c02: 2d push a +0c03: 7d mov a,x +0c04: 9f xcn a +0c05: 5c lsr a +0c06: 08 05 or a,#$05 +0c08: fd mov y,a +0c09: ae pop a +0c0a: cb f2 mov $f2,y +0c0c: c4 f3 mov $f3,a +0c0e: fc inc y +0c0f: 3f 88 0a call $0a88 +0c12: cb f2 mov $f2,y +0c14: c4 f3 mov $f3,a +0c16: fc inc y +0c17: 3f 88 0a call $0a88 +0c1a: cb f2 mov $f2,y +0c1c: c4 f3 mov $f3,a +0c1e: 6f ret + +; vcmd e1 - pan +0c1f: d5 a1 02 mov $02a1+x,a +0c22: 28 1f and a,#$1f +0c24: d5 81 02 mov $0281+x,a +0c27: e8 00 mov a,#$00 +0c29: d5 80 02 mov $0280+x,a +0c2c: 6f ret + +; vcmd fe - GAIN on +0c2d: e8 01 mov a,#$01 +0c2f: 2f 02 bra $0c33 +; vcmd ff - GAIN off +0c31: e8 00 mov a,#$00 +0c33: d5 a4 03 mov $03a4+x,a +0c36: 6f ret + +; vcmd e2 - pan fade +0c37: d4 aa mov $aa+x,a +0c39: 2d push a +0c3a: 3f 7e 0a call $0a7e +0c3d: d5 a0 02 mov $02a0+x,a +0c40: 80 setc +0c41: b5 81 02 sbc a,$0281+x +0c44: ce pop x +0c45: 3f fb 0d call $0dfb +0c48: d5 90 02 mov $0290+x,a +0c4b: dd mov a,y +0c4c: d5 91 02 mov $0291+x,a +0c4f: 6f ret + +; vcmd e3 - vibrato on +0c50: d5 10 03 mov $0310+x,a +0c53: 3f 7e 0a call $0a7e +0c56: d5 01 03 mov $0301+x,a +0c59: 3f 7e 0a call $0a7e +; vcmd e4 - vibrato off +0c5c: d4 ca mov $ca+x,a +0c5e: d5 21 03 mov $0321+x,a +0c61: e8 00 mov a,#$00 +0c63: d5 11 03 mov $0311+x,a +0c66: 6f ret + +; vcmd f0 - vibrato fade +0c67: d5 11 03 mov $0311+x,a +0c6a: 2d push a +0c6b: 8d 00 mov y,#$00 +0c6d: f4 ca mov a,$ca+x +0c6f: ce pop x +0c70: 9e div ya,x +0c71: f8 42 mov x,$42 +0c73: d5 20 03 mov $0320+x,a +0c76: 6f ret + +; vcmd e5 - master volume +0c77: e8 00 mov a,#$00 +0c79: da 52 movw $52,ya +0c7b: 6f ret + +; vcmd e6 - master volume fade +0c7c: c4 54 mov $54,a +0c7e: 3f 7e 0a call $0a7e +0c81: c4 55 mov $55,a +0c83: 80 setc +0c84: a4 53 sbc a,$53 +0c86: f8 54 mov x,$54 +0c88: 3f fb 0d call $0dfb +0c8b: da 56 movw $56,ya +0c8d: 6f ret + +; vcmd e7 - tempo +0c8e: e5 8b 03 mov a,$038b +0c91: d0 04 bne $0c97 +0c93: e8 00 mov a,#$00 +0c95: da 4c movw $4c,ya +0c97: 6f ret + +; vcmd e8 - tempo fade +0c98: c4 4e mov $4e,a +0c9a: 3f 7e 0a call $0a7e +0c9d: c4 4f mov $4f,a +0c9f: 80 setc +0ca0: a4 4d sbc a,$4d +0ca2: f8 4e mov x,$4e +0ca4: 3f fb 0d call $0dfb +0ca7: da 50 movw $50,ya +0ca9: 6f ret + +; vcmd e9 - global transpose +0caa: c4 4a mov $4a,a +0cac: 6f ret + +; vcmd ea - per-voice transpose +0cad: d5 41 03 mov $0341+x,a +0cb0: 6f ret + +; vcmd fb +0cb1: d4 79 mov $79+x,a +0cb3: d5 8d 03 mov $038d+x,a +0cb6: 6f ret + +; vcmd eb - tremolo on +0cb7: d5 40 03 mov $0340+x,a +0cba: 3f 7e 0a call $0a7e +0cbd: d5 31 03 mov $0331+x,a +0cc0: 3f 7e 0a call $0a7e +; vcmd ec - tremolo off +0cc3: d4 da mov $da+x,a +0cc5: 6f ret + +; vcmd f1 - pitch envelope (release) +0cc6: e8 01 mov a,#$01 +0cc8: 2f 02 bra $0ccc +; vcmd f2 - pitch envelope (attack) +0cca: e8 00 mov a,#$00 +0ccc: d5 f0 02 mov $02f0+x,a +0ccf: dd mov a,y +0cd0: d5 e1 02 mov $02e1+x,a +0cd3: 3f 7e 0a call $0a7e +0cd6: d5 e0 02 mov $02e0+x,a +0cd9: 3f 7e 0a call $0a7e +0cdc: d5 f1 02 mov $02f1+x,a +0cdf: 6f ret + +; vcmd f3 - pitch envelope off +0ce0: d5 e0 02 mov $02e0+x,a +0ce3: 6f ret + +; vcmd ed - volume +0ce4: d5 51 02 mov $0251+x,a +0ce7: e8 00 mov a,#$00 +0ce9: d5 50 02 mov $0250+x,a +0cec: 6f ret + +; vcmd ee - volume fade +0ced: d4 a9 mov $a9+x,a +0cef: 2d push a +0cf0: 3f 7e 0a call $0a7e +0cf3: d5 70 02 mov $0270+x,a +0cf6: 80 setc +0cf7: b5 51 02 sbc a,$0251+x +0cfa: ce pop x +0cfb: 3f fb 0d call $0dfb +0cfe: d5 60 02 mov $0260+x,a +0d01: dd mov a,y +0d02: d5 61 02 mov $0261+x,a +0d05: 6f ret + +; vcmd f4 - tuning +0d06: d5 d1 02 mov $02d1+x,a +0d09: 6f ret + +; vcmd ef/f5 - echo vbits/volume +0d0a: c4 45 mov $45,a +0d0c: 3f 7e 0a call $0a7e +0d0f: e8 00 mov a,#$00 +0d11: da 5a movw $5a,ya +0d13: 3f 7e 0a call $0a7e +0d16: e8 00 mov a,#$00 +0d18: da 5c movw $5c,ya +0d1a: b2 43 clr5 $43 +0d1c: 6f ret + +; vcmd f8 - echo volume fade +0d1d: c4 62 mov $62,a +0d1f: 3f 7e 0a call $0a7e +0d22: c4 63 mov $63,a +0d24: 80 setc +0d25: a4 5b sbc a,$5b +0d27: f8 62 mov x,$62 +0d29: 3f fb 0d call $0dfb +0d2c: da 5e movw $5e,ya +0d2e: 3f 7e 0a call $0a7e +0d31: c4 64 mov $64,a +0d33: 80 setc +0d34: a4 5d sbc a,$5d +0d36: f8 62 mov x,$62 +0d38: 3f fb 0d call $0dfb +0d3b: da 60 movw $60,ya +0d3d: 6f ret + +; vcmd f6 - disable echo +0d3e: da 5a movw $5a,ya +0d40: da 5c movw $5c,ya +0d42: a2 43 set5 $43 +0d44: 6f ret + +; vcmd f7 - set echo params +0d45: 3f 67 0d call $0d67 +0d48: 3f 7e 0a call $0a7e +0d4b: c4 49 mov $49,a +0d4d: 3f 7e 0a call $0a7e +0d50: 8d 08 mov y,#$08 +0d52: cf mul ya +0d53: 5d mov x,a +0d54: 8d 0f mov y,#$0f +0d56: f5 bb 10 mov a,$10bb+x +0d59: 3f 70 07 call $0770 +0d5c: 3d inc x +0d5d: dd mov a,y +0d5e: 60 clrc +0d5f: 88 10 adc a,#$10 +0d61: fd mov y,a +0d62: 10 f2 bpl $0d56 +0d64: f8 42 mov x,$42 +0d66: 6f ret + +0d67: c4 48 mov $48,a +0d69: 8d 7d mov y,#$7d +0d6b: cc f2 00 mov $00f2,y +0d6e: e5 f3 00 mov a,$00f3 +0d71: 64 48 cmp a,$48 +0d73: f0 2b beq $0da0 +0d75: 28 0f and a,#$0f +0d77: 48 ff eor a,#$ff +0d79: f3 47 03 bbc7 $47,$0d7f +0d7c: 60 clrc +0d7d: 84 47 adc a,$47 +0d7f: c4 47 mov $47,a +0d81: 8d 04 mov y,#$04 +0d83: f6 bf 04 mov a,$04bf+y +0d86: c5 f2 00 mov $00f2,a +0d89: e8 00 mov a,#$00 +0d8b: c5 f3 00 mov $00f3,a +0d8e: fe f3 dbnz y,$0d83 +0d90: e4 43 mov a,$43 +0d92: 08 20 or a,#$20 +0d94: 8d 6c mov y,#$6c +0d96: 3f 70 07 call $0770 +0d99: e4 48 mov a,$48 +0d9b: 8d 7d mov y,#$7d +0d9d: 3f 70 07 call $0770 +0da0: 1c asl a +0da1: 1c asl a +0da2: 1c asl a +0da3: 48 ff eor a,#$ff +0da5: 80 setc +0da6: 88 f8 adc a,#$f8 +0da8: 8d 6d mov y,#$6d +0daa: 5f 70 07 jmp $0770 + +; vcmd fa - set perc patch base +0dad: c4 59 mov $59,a +0daf: 6f ret + +0db0: f4 b9 mov a,$b9+x +0db2: d0 36 bne $0dea +0db4: e7 2f mov a,($2f+x) +0db6: 68 f9 cmp a,#$f9 +0db8: d0 30 bne $0dea +0dba: 3f 80 0a call $0a80 +0dbd: 3f 7e 0a call $0a7e +; vcmd f9 - pitch slide +0dc0: d4 ba mov $ba+x,a +0dc2: 3f 7e 0a call $0a7e +0dc5: d4 b9 mov $b9+x,a +0dc7: 3f 7e 0a call $0a7e +0dca: 60 clrc +0dcb: 84 4a adc a,$4a +0dcd: 95 41 03 adc a,$0341+x +0dd0: 95 50 03 adc a,$0350+x +0dd3: 28 7f and a,#$7f +0dd5: d5 d0 02 mov $02d0+x,a +0dd8: 80 setc +0dd9: b5 b1 02 sbc a,$02b1+x +0ddc: fb b9 mov y,$b9+x +0dde: 6d push y +0ddf: ce pop x +0de0: 3f fb 0d call $0dfb +0de3: d5 c0 02 mov $02c0+x,a +0de6: dd mov a,y +0de7: d5 c1 02 mov $02c1+x,a +0dea: e8 00 mov a,#$00 +0dec: d5 50 03 mov $0350+x,a +0def: 6f ret + +0df0: f5 b1 02 mov a,$02b1+x +0df3: c4 11 mov $11,a +0df5: f5 b0 02 mov a,$02b0+x +0df8: c4 10 mov $10,a +0dfa: 6f ret + +0dfb: ed notc +0dfc: 6b 12 ror $12 +0dfe: 10 03 bpl $0e03 +0e00: 48 ff eor a,#$ff +0e02: bc inc a +0e03: 8d 00 mov y,#$00 +0e05: 9e div ya,x +0e06: 2d push a +0e07: e8 00 mov a,#$00 +0e09: 9e div ya,x +0e0a: ee pop y +0e0b: f8 42 mov x,$42 +0e0d: f3 12 06 bbc7 $12,$0e16 +0e10: da 14 movw $14,ya +0e12: ba 0e movw ya,$0e +0e14: 9a 14 subw ya,$14 +0e16: 6f ret + +0e17: f4 a9 mov a,$a9+x +0e19: f0 09 beq $0e24 +0e1b: e8 50 mov a,#$50 +0e1d: 8d 02 mov y,#$02 +0e1f: 9b a9 dec $a9+x +0e21: 3f d4 0e call $0ed4 +0e24: fb da mov y,$da+x +0e26: f0 23 beq $0e4b +0e28: f5 40 03 mov a,$0340+x +0e2b: de d9 1b cbne $d9+x,$0e49 +0e2e: 09 41 58 or ($58),($41) +0e31: f5 30 03 mov a,$0330+x +0e34: 10 07 bpl $0e3d +0e36: fc inc y +0e37: d0 04 bne $0e3d +0e39: e8 80 mov a,#$80 +0e3b: 2f 04 bra $0e41 +0e3d: 60 clrc +0e3e: 95 31 03 adc a,$0331+x +0e41: d5 30 03 mov $0330+x,a +0e44: 3f 97 10 call $1097 +0e47: 2f 07 bra $0e50 +0e49: bb d9 inc $d9+x +0e4b: e8 ff mov a,#$ff +0e4d: 3f a2 10 call $10a2 +0e50: f4 aa mov a,$aa+x +0e52: f0 09 beq $0e5d +0e54: e8 80 mov a,#$80 +0e56: 8d 02 mov y,#$02 +0e58: 9b aa dec $aa+x +0e5a: 3f d4 0e call $0ed4 +0e5d: e4 41 mov a,$41 +0e5f: 24 58 and a,$58 +0e61: f0 5b beq $0ebe +0e63: f5 81 02 mov a,$0281+x +0e66: fd mov y,a +0e67: f5 80 02 mov a,$0280+x +0e6a: da 10 movw $10,ya +0e6c: 7d mov a,x +0e6d: 9f xcn a +0e6e: 5c lsr a +0e6f: c4 12 mov $12,a +0e71: eb 11 mov y,$11 +0e73: e5 a3 03 mov a,$03a3 +0e76: f0 04 beq $0e7c +0e78: e8 7f mov a,#$7f +0e7a: 2f 03 bra $0e7f +0e7c: f6 c0 0e mov a,$0ec0+y +0e7f: 80 setc +0e80: b6 bf 0e sbc a,$0ebf+y +0e83: eb 10 mov y,$10 +0e85: cf mul ya +0e86: dd mov a,y +0e87: eb 11 mov y,$11 +0e89: 2d push a +0e8a: e5 a3 03 mov a,$03a3 +0e8d: f0 05 beq $0e94 +0e8f: ae pop a +0e90: e8 78 mov a,#$78 +0e92: 2f 05 bra $0e99 +0e94: ae pop a +0e95: 60 clrc +0e96: 96 bf 0e adc a,$0ebf+y +0e99: fd mov y,a +0e9a: f5 71 02 mov a,$0271+x +0e9d: cf mul ya +0e9e: f5 a1 02 mov a,$02a1+x +0ea1: 1c asl a +0ea2: 13 12 01 bbc0 $12,$0ea6 +0ea5: 1c asl a +0ea6: dd mov a,y +0ea7: 90 03 bcc $0eac +0ea9: 48 ff eor a,#$ff +0eab: bc inc a +0eac: eb 12 mov y,$12 +0eae: 3f 68 07 call $0768 +0eb1: 8d 14 mov y,#$14 +0eb3: e8 00 mov a,#$00 +0eb5: 9a 10 subw ya,$10 +0eb7: da 10 movw $10,ya +0eb9: ab 12 inc $12 +0ebb: 33 12 b3 bbc1 $12,$0e71 +0ebe: 6f ret + +0ebf: 00 nop +0ec0: 01 tcall 0 +0ec1: 03 07 0d bbs0 $07,$0ed1 +0ec4: 15 1e 29 or a,$291e+x +0ec7: 34 42 and a,$42+x +0ec9: 51 tcall 5 +0eca: 5e 67 6e cmp y,$6e67 +0ecd: 73 77 7a bbc3 $77,$0f4a +0ed0: 7c ror a +0ed1: 7d mov a,x +0ed2: 7e 7f cmp y,$7f +0ed4: 09 41 58 or ($58),($41) +0ed7: da 14 movw $14,ya +0ed9: da 16 movw $16,ya +0edb: 4d push x +0edc: ee pop y +0edd: 60 clrc +0ede: d0 0a bne $0eea +0ee0: 98 1f 16 adc $16,#$1f +0ee3: e8 00 mov a,#$00 +0ee5: d7 14 mov ($14)+y,a +0ee7: fc inc y +0ee8: 2f 09 bra $0ef3 +0eea: 98 10 16 adc $16,#$10 +0eed: 3f f1 0e call $0ef1 +0ef0: fc inc y +0ef1: f7 14 mov a,($14)+y +0ef3: 97 16 adc a,($16)+y +0ef5: d7 14 mov ($14)+y,a +0ef7: 6f ret + +0ef8: fc inc y +0ef9: f7 14 mov a,($14)+y +0efb: 2d push a +0efc: fc inc y +0efd: f7 14 mov a,($14)+y +0eff: c4 15 mov $15,a +0f01: ae pop a +0f02: c4 14 mov $14,a +0f04: 8d 00 mov y,#$00 +0f06: 2f 16 bra $0f1e +0f08: e8 01 mov a,#$01 +0f0a: 74 89 cmp a,$89+x +0f0c: f0 03 beq $0f11 +0f0e: 5f a3 0f jmp $0fa3 + +0f11: e8 00 mov a,#$00 +0f13: c5 9e 03 mov $039e,a +0f16: f4 2f mov a,$2f+x +0f18: fb 30 mov y,$30+x +0f1a: da 14 movw $14,ya +0f1c: 8d 00 mov y,#$00 +0f1e: f7 14 mov a,($14)+y +0f20: f0 18 beq $0f3a +0f22: 30 05 bmi $0f29 +0f24: fc inc y +0f25: f7 14 mov a,($14)+y +0f27: 10 fb bpl $0f24 +0f29: 68 c8 cmp a,#$c8 +0f2b: f0 76 beq $0fa3 +0f2d: 68 e0 cmp a,#$e0 +0f2f: 90 6b bcc $0f9c +0f31: 6d push y +0f32: fd mov y,a +0f33: ae pop a +0f34: 96 6c 09 adc a,$096c+y +0f37: fd mov y,a +0f38: 2f e4 bra $0f1e +0f3a: fc inc y +0f3b: f7 14 mov a,($14)+y +0f3d: f0 06 beq $0f45 +0f3f: 68 01 cmp a,#$01 +0f41: f0 59 beq $0f9c +0f43: 2f b3 bra $0ef8 +0f45: f4 20 mov a,$20+x +0f47: 2d push a +0f48: f4 1f mov a,$1f+x +0f4a: ee pop y +0f4b: da 14 movw $14,ya +0f4d: ec 9e 03 mov y,$039e +0f50: f7 14 mov a,($14)+y +0f52: 2d push a +0f53: fc inc y +0f54: f7 14 mov a,($14)+y +0f56: fc inc y +0f57: cc 9e 03 mov $039e,y +0f5a: fd mov y,a +0f5b: ae pop a +0f5c: da 14 movw $14,ya +0f5e: 8d 00 mov y,#$00 +0f60: e4 15 mov a,$15 +0f62: f0 38 beq $0f9c +0f64: 68 ff cmp a,#$ff +0f66: f0 06 beq $0f6e +0f68: 68 01 cmp a,#$01 +0f6a: f0 15 beq $0f81 +0f6c: 2f b0 bra $0f1e +0f6e: 4d push x +0f6f: ee pop y +0f70: f7 1c mov a,($1c)+y +0f72: 2d push a +0f73: fc inc y +0f74: f7 1c mov a,($1c)+y +0f76: fd mov y,a +0f77: ae pop a +0f78: da 14 movw $14,ya +0f7a: 8d 00 mov y,#$00 +0f7c: cc 9e 03 mov $039e,y +0f7f: 2f cf bra $0f50 +0f81: f4 20 mov a,$20+x +0f83: 2d push a +0f84: f4 1f mov a,$1f+x +0f86: ee pop y +0f87: da 14 movw $14,ya +0f89: 8d 02 mov y,#$02 +0f8b: f7 14 mov a,($14)+y +0f8d: 2d push a +0f8e: fc inc y +0f8f: f7 14 mov a,($14)+y +0f91: fd mov y,a +0f92: ae pop a +0f93: da 14 movw $14,ya +0f95: 8d 00 mov y,#$00 +0f97: cc 9e 03 mov $039e,y +0f9a: 2f b4 bra $0f50 +0f9c: e4 41 mov a,$41 +0f9e: 8d 5c mov y,#$5c +0fa0: 3f 68 07 call $0768 +0fa3: f2 13 clr7 $13 +0fa5: f4 b9 mov a,$b9+x +0fa7: f0 13 beq $0fbc +0fa9: f4 ba mov a,$ba+x +0fab: f0 04 beq $0fb1 +0fad: 9b ba dec $ba+x +0faf: 2f 0b bra $0fbc +0fb1: e2 13 set7 $13 +0fb3: e8 b0 mov a,#$b0 +0fb5: 8d 02 mov y,#$02 +0fb7: 9b b9 dec $b9+x +0fb9: 3f d7 0e call $0ed7 +0fbc: 3f f0 0d call $0df0 +0fbf: f4 ca mov a,$ca+x +0fc1: f0 4a beq $100d +0fc3: f5 10 03 mov a,$0310+x +0fc6: de c9 42 cbne $c9+x,$100b +0fc9: f5 9a 00 mov a,$009a+x +0fcc: 75 11 03 cmp a,$0311+x +0fcf: d0 05 bne $0fd6 +0fd1: f5 21 03 mov a,$0321+x +0fd4: 2f 0b bra $0fe1 +0fd6: bb 9a inc $9a+x +0fd8: fd mov y,a +0fd9: f0 02 beq $0fdd +0fdb: f4 ca mov a,$ca+x +0fdd: 60 clrc +0fde: 95 20 03 adc a,$0320+x +0fe1: d4 ca mov $ca+x,a +0fe3: f5 00 03 mov a,$0300+x +0fe6: 60 clrc +0fe7: 95 01 03 adc a,$0301+x +0fea: d5 00 03 mov $0300+x,a +0fed: c4 12 mov $12,a +0fef: 1c asl a +0ff0: 1c asl a +0ff1: 90 02 bcc $0ff5 +0ff3: 48 ff eor a,#$ff +0ff5: fd mov y,a +0ff6: f4 ca mov a,$ca+x +0ff8: 68 f1 cmp a,#$f1 +0ffa: 90 05 bcc $1001 +0ffc: 28 0f and a,#$0f +0ffe: cf mul ya +0fff: 2f 04 bra $1005 +1001: cf mul ya +1002: dd mov a,y +1003: 8d 00 mov y,#$00 +1005: 3f 82 10 call $1082 +1008: 5f e5 06 jmp $06e5 + +100b: bb c9 inc $c9+x +100d: e3 13 f8 bbs7 $13,$1008 +1010: 6f ret + +1011: f2 13 clr7 $13 +1013: f4 da mov a,$da+x +1015: f0 09 beq $1020 +1017: f5 40 03 mov a,$0340+x +101a: de d9 03 cbne $d9+x,$1020 +101d: 3f 8a 10 call $108a +1020: f5 81 02 mov a,$0281+x +1023: fd mov y,a +1024: f5 80 02 mov a,$0280+x +1027: da 10 movw $10,ya +1029: f4 aa mov a,$aa+x +102b: f0 0a beq $1037 +102d: f5 91 02 mov a,$0291+x +1030: fd mov y,a +1031: f5 90 02 mov a,$0290+x +1034: 3f 6c 10 call $106c +1037: f3 13 03 bbc7 $13,$103d +103a: 3f 6c 0e call $0e6c +103d: f2 13 clr7 $13 +103f: 3f f0 0d call $0df0 +1042: f4 b9 mov a,$b9+x +1044: f0 0e beq $1054 +1046: f4 ba mov a,$ba+x +1048: d0 0a bne $1054 +104a: f5 c1 02 mov a,$02c1+x +104d: fd mov y,a +104e: f5 c0 02 mov a,$02c0+x +1051: 3f 6c 10 call $106c +1054: f4 ca mov a,$ca+x +1056: f0 b5 beq $100d +1058: f5 10 03 mov a,$0310+x +105b: de c9 af cbne $c9+x,$100d +105e: eb 4b mov y,$4b +1060: f5 01 03 mov a,$0301+x +1063: cf mul ya +1064: dd mov a,y +1065: 60 clrc +1066: 95 00 03 adc a,$0300+x +1069: 5f ed 0f jmp $0fed + +106c: e2 13 set7 $13 +106e: cb 12 mov $12,y +1070: 3f 0d 0e call $0e0d +1073: 6d push y +1074: eb 4b mov y,$4b +1076: cf mul ya +1077: cb 14 mov $14,y +1079: 8f 00 15 mov $15,#$00 +107c: eb 4b mov y,$4b +107e: ae pop a +107f: cf mul ya +1080: 7a 14 addw ya,$14 +1082: 3f 0d 0e call $0e0d +1085: 7a 10 addw ya,$10 +1087: da 10 movw $10,ya +1089: 6f ret + +108a: e2 13 set7 $13 +108c: eb 4b mov y,$4b +108e: f5 31 03 mov a,$0331+x +1091: cf mul ya +1092: dd mov a,y +1093: 60 clrc +1094: 95 30 03 adc a,$0330+x +1097: 1c asl a +1098: 90 02 bcc $109c +109a: 48 ff eor a,#$ff +109c: fb da mov y,$da+x +109e: cf mul ya +109f: dd mov a,y +10a0: 48 ff eor a,#$ff +10a2: eb 53 mov y,$53 +10a4: cf mul ya +10a5: f5 10 02 mov a,$0210+x +10a8: cf mul ya +10a9: f5 51 02 mov a,$0251+x +10ac: cf mul ya +10ad: 3e 66 cmp x,$66 +10af: b0 03 bcs $10b4 +10b1: e4 65 mov a,$65 +10b3: cf mul ya +10b4: dd mov a,y +10b5: cf mul ya +10b6: dd mov a,y +10b7: d5 71 02 mov $0271+x,a +10ba: 6f ret + + +10bb: db $7f,$00,$00,$00,$00,$00,$00,$00 +10c3: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +10cb: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +10d3: db $34,$33,$00,$d9,$e5,$01,$fc,$eb +10dd: db $fc,$e5,$cb,$b2,$98,$7f,$65,$33 +10e3: db $19,$32,$4c,$65,$72,$7f,$8c,$98 +10ed: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc + +10f3: e4 66 mov a,$66 +10f5: f0 09 beq $1100 +10f7: 68 10 cmp a,#$10 +10f9: f0 bf beq $10ba +10fb: 80 setc +10fc: a8 02 sbc a,#$02 +10fe: c4 66 mov $66,a +1100: e5 60 03 mov a,$0360 +1103: 30 17 bmi $111c +1105: fd mov y,a +1106: f6 47 12 mov a,$1247+y +1109: f0 11 beq $111c +110b: 68 01 cmp a,#$01 +110d: f0 21 beq $1130 +110f: 68 03 cmp a,#$03 +1111: f0 1d beq $1130 +1113: e5 60 03 mov a,$0360 +1116: 60 clrc +1117: 88 80 adc a,#$80 +1119: c5 60 03 mov $0360,a +111c: cd 0e mov x,#$0e +111e: d8 68 mov $68,x +1120: f5 75 03 mov a,$0375+x +1123: 30 05 bmi $112a +1125: 65 60 03 cmp a,$0360 +1128: f0 39 beq $1163 +112a: 1d dec x +112b: 1d dec x +112c: 3e 66 cmp x,$66 +112e: d0 f0 bne $1120 +1130: cd 0e mov x,#$0e +1132: d8 68 mov $68,x +1134: e8 80 mov a,#$80 +1136: c4 67 mov $67,a +1138: f5 75 03 mov a,$0375+x +113b: 30 0a bmi $1147 +113d: f4 89 mov a,$89+x +113f: 64 67 cmp a,$67 +1141: b0 04 bcs $1147 +1143: c4 67 mov $67,a +1145: d8 68 mov $68,x +1147: 1d dec x +1148: 1d dec x +1149: 3e 66 cmp x,$66 +114b: d0 eb bne $1138 +114d: f8 68 mov x,$68 +114f: e5 60 03 mov a,$0360 +1152: 30 0f bmi $1163 +1154: fd mov y,a +1155: f6 48 12 mov a,$1248+y +1158: 68 03 cmp a,#$03 +115a: d0 07 bne $1163 +115c: e4 67 mov a,$67 +115e: 68 50 cmp a,#$50 +1160: 90 01 bcc $1163 +1162: 6f ret + +1163: e5 60 03 mov a,$0360 +1166: 10 34 bpl $119c +1168: c5 86 03 mov $0386,a +116b: 4d push x +116c: e9 9f 03 mov x,$039f +116f: f0 20 beq $1191 +1171: e8 00 mov a,#$00 +1173: d4 69 mov $69+x,a +1175: d4 6a mov $6a+x,a +1177: d5 75 03 mov $0375+x,a +117a: e8 01 mov a,#$01 +117c: 1c asl a +117d: 1d dec x +117e: 1d dec x +117f: d0 fb bne $117c +1181: c5 87 03 mov $0387,a +1184: 8d 5c mov y,#$5c +1186: cb f2 mov $f2,y +1188: e4 f3 mov a,$f3 +118a: 05 87 03 or a,$0387 +118d: cb f2 mov $f2,y +118f: c4 f3 mov $f3,a +1191: ce pop x +1192: e5 86 03 mov a,$0386 +1195: 28 7f and a,#$7f +1197: f0 73 beq $120c +1199: c9 9f 03 mov $039f,x +119c: 1c asl a +119d: f0 6d beq $120c +119f: fd mov y,a +11a0: f6 14 12 mov a,$1214+y +11a3: d4 2f mov $2f+x,a +11a5: f6 15 12 mov a,$1215+y +11a8: d4 30 mov $30+x,a +11aa: e8 01 mov a,#$01 +11ac: d4 69 mov $69+x,a +11ae: d4 6a mov $6a+x,a +11b0: e5 60 03 mov a,$0360 +11b3: d5 75 03 mov $0375+x,a +11b6: 7d mov a,x +11b7: c9 88 03 mov $0388,x +11ba: e8 01 mov a,#$01 +11bc: 1c asl a +11bd: 1d dec x +11be: 1d dec x +11bf: d0 fb bne $11bc +11c1: c5 87 03 mov $0387,a +11c4: 8d 5c mov y,#$5c +11c6: cb f2 mov $f2,y +11c8: e4 f3 mov a,$f3 +11ca: 05 87 03 or a,$0387 +11cd: cb f2 mov $f2,y +11cf: c4 f3 mov $f3,a +11d1: e9 88 03 mov x,$0388 +11d4: e5 61 03 mov a,$0361 +11d7: d5 51 02 mov $0251+x,a +11da: e5 8a 03 mov a,$038a +11dd: d5 41 03 mov $0341+x,a +11e0: e5 62 03 mov a,$0362 +11e3: 3f 1f 0c call $0c1f +11e6: d5 11 02 mov $0211+x,a +11e9: d5 d1 02 mov $02d1+x,a +11ec: d5 e0 02 mov $02e0+x,a +11ef: d4 ca mov $ca+x,a +11f1: d4 da mov $da+x,a +11f3: f5 11 02 mov a,$0211+x +11f6: d0 05 bne $11fd +11f8: e8 00 mov a,#$00 +11fa: 3f 29 0b call $0b29 +11fd: e8 00 mov a,#$00 +11ff: d4 99 mov $99+x,a +1201: d4 a9 mov $a9+x,a +1203: d4 aa mov $aa+x,a +1205: e8 02 mov a,#$02 +1207: d5 00 02 mov $0200+x,a +120a: d4 89 mov $89+x,a +120c: e4 66 mov a,$66 +120e: f0 05 beq $1215 +1210: 60 clrc +1211: 88 02 adc a,#$02 +1213: c4 66 mov $66,a +1215: 6f ret \ No newline at end of file From 39a04c2fa86f0725803c68f6536da182aa3bf214 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:56:20 -0800 Subject: [PATCH 091/116] Add files via upload --- snes/NSPC/The 7th Saga ($0600).bin | Bin 0 -> 2779 bytes snes/NSPC/The 7th Saga.s | 1391 ++++++++++++++++++++++++++++ 2 files changed, 1391 insertions(+) create mode 100644 snes/NSPC/The 7th Saga ($0600).bin create mode 100644 snes/NSPC/The 7th Saga.s diff --git a/snes/NSPC/The 7th Saga ($0600).bin b/snes/NSPC/The 7th Saga ($0600).bin new file mode 100644 index 0000000000000000000000000000000000000000..8c147c3440a901fc33a3a9c159f3e1bc8396659a GIT binary patch literal 2779 zcmai0e{2)?6@T~3zO!Td!ViV1j!5&PN(PZp5@}Szy^fG70}TD44ki)s3T#28yX}we zN0T@vArca`994}pm58b)kv32nnpSBVRO^zvDJaCgKkmv(=ly{5IGPL{#Aiwq$9rEp zVb%VbEq#B!_wK!SpZ9rJH<$TX`h}RNlhT2O6|k3P+spy&+b1rhZ2D5l0>xBvNh+3v z!5%Z#*k|+7QP(IV4Y|VM=r6@VZ%nhy{B^z>o zu8>1_(5RHcYEU~C%x$o`DesYH;GPTv(hGaenOv=@uAF-SKZBn#t$s}f>yXBTU9vCdA$=w$E-$5`Vv#$Z^3X65*=W}>H0Nwe+*Z^12)J`1esS2X2d zvG6BXYvB`DtNeR+fZvS&5WkI=_{029_@D7HeuRIUzsP^W|CzsA{#(3Xs1Ys-mxPan zyTUq8(1Xz%G>wi6U&WxM4{S~ zu0I5I5yH!7L3@zKy`i$pWKvj?`JmdxS)lIXlBHaEZ*L&rawrqj~1zO+FzS%YE9(mNS)SzjI-7#US@#3OY#SFu(Rn<`JmW+@mnQcU*! zLx-9f;{ro6j(`f6L1FA-QIVKyBnzX7CFXD}yD`BMH<}0I9}O|aBwKOhG@CU>*s|Zs z2D}ccK#&tuDf+kKye9{AX103Xo1<`Eht`y8WnD@v8X4gN3uNdRYx5$UrK z9ZNCBZN?d5PD6BLHy0h7W};&k7~>8j#7z0_(A6Q0zB*i#ofK_v=q_E0j&;&k5NAe; zMtmW(oZGbBGLBf%d}VYwcW4A!XuU(Dp(z^i<}l3IG&w}+nd&Qb`2%)vTtA?BNHX#V z^^VX_^Ig$*+i~;4yB&Im8E=efl#Ic+%Ej%^t2TR14Y`Dv?>kt(O{^_AU98QHlRBPY z$>S$j&F4(ASjXrD&63Bn(XrE{svU+M8zDCskki1RZYM)@I~h5*mqSdbd%4k`+>4z3 z%(#lL?b zz1HqDvI#L09YX>;#%9Nkv&L~&fnacy?k*KkEMrw=7J-r4e5ib*VJ-Y`V)$B|82E=rs5iwnO#?xA8^4xz9=Gja(0Yt$ITc{AXhk6~tGcN5>+ELhfDszi=RCXRR zZ_&8I6Ue+l4ya7=G9D5BMHh1Ru0#pJz~;KRqEk<2oK8BE+rxF2GP7U~Dzr0A2NlW$ z)U!r1*--{zI!}{=q`FHA6}?2a)Blv^Tkr?|J&+Yx1WqI}2{_+s!TI}(;99*i`_%%N zed;5~<>7c9wEM?4+8dRPY94w^_U8AS1HHl(F4(jAluw@bE%^NY_5K=vyZ`mTJAre7 z)gHRwvo4~7byanUncf@P<51lK8e2MyLm=nCjXd0hWzD`sg%-pw@Kns@3b62qBsLEf z0c~!s?fL_dzJ~;Y?AEXJSp $VtdA=r)qveQf>7k`Ft!oGcB5@<|ww?-f9!!q;CU z&_x}36zLyT!M%rC!zZ`y@I`t8n?ut6Bl2Lv`=Q%*kMj7rrv>h$stWf= zLn;X6j$|gGDhWOrTNpMdIT|J1u8s^l);eFpTWAqK6=3Ddgiy$rbvs1T%^o63NdJ6J zoD-3+kgRY&>wdyT5AeR{H#3&DG)Mo1D&B;Z&I@_zs=@|9Nr literal 0 HcmV?d00001 diff --git a/snes/NSPC/The 7th Saga.s b/snes/NSPC/The 7th Saga.s new file mode 100644 index 00000000..43cd51d9 --- /dev/null +++ b/snes/NSPC/The 7th Saga.s @@ -0,0 +1,1391 @@ +0600: 20 clrp +0601: cd cf mov x,#$cf +0603: bd mov sp,x +0604: 3f 79 10 call $1079 +0607: 8d 20 mov y,#$20 +0609: 3f ce 0f call $0fce +060c: ec fe 00 mov y,$00fe +060f: f0 fb beq $060c +0611: cb 32 mov $32,y +0613: e4 7d mov a,$7d +0615: d0 41 bne $0658 +0617: 69 a3 a2 cmp ($a2),($a3) +061a: f0 02 beq $061e +061c: ab a2 inc $a2 +061e: e8 00 mov a,#$00 +0620: c4 e4 mov $e4,a +0622: c4 e5 mov $e5,a +0624: 8f 01 7e mov $7e,#$01 +0627: 8f 00 7f mov $7f,#$00 +062a: 5d mov x,a +062b: e4 7e mov a,$7e +062d: 24 7b and a,$7b +062f: f0 08 beq $0639 +0631: 3f 63 06 call $0663 +0634: 90 03 bcc $0639 +0636: 3f 82 06 call $0682 +0639: 3d inc x +063a: 3d inc x +063b: 60 clrc +063c: 98 10 7f adc $7f,#$10 +063f: 0b 7e asl $7e +0641: d0 e8 bne $062b +0643: e4 7c mov a,$7c +0645: f0 08 beq $064f +0647: 3f 63 06 call $0663 +064a: 90 03 bcc $064f +064c: 3f 6e 06 call $066e +064f: e4 7c mov a,$7c +0651: 04 7b or a,$7b +0653: f0 03 beq $0658 +0655: 3f ae 0b call $0bae +0658: 3f fe 0f call $0ffe +065b: 3f 55 0d call $0d55 +065e: 3f 45 0b call $0b45 +0661: 2f a9 bra $060c +0663: f4 34 mov a,$34+x +0665: eb 32 mov y,$32 +0667: cf mul ya +0668: 60 clrc +0669: 94 69 adc a,$69+x +066b: d4 69 mov $69+x,a +066d: 6f ret + +066e: 8f 01 7e mov $7e,#$01 +0671: 8f 00 7f mov $7f,#$00 +0674: 3f 82 06 call $0682 +0677: 3d inc x +0678: 3d inc x +0679: 60 clrc +067a: 98 10 7f adc $7f,#$10 +067d: 0b 7e asl $7e +067f: d0 f3 bne $0674 +0681: 6f ret + +0682: f4 83 mov a,$83+x +0684: f0 0e beq $0694 +0686: f4 a5 mov a,$a5+x +0688: d0 05 bne $068f +068a: 3f 95 06 call $0695 +068d: 2f f3 bra $0682 +068f: 9b a5 dec $a5+x +0691: 3f 70 0a call $0a70 +0694: 6f ret + +; vcmd branches +0695: 3f 66 0a call $0a66 +0698: 30 23 bmi $06bd +069a: d4 a4 mov $a4+x,a ; set note length +069c: 3f 66 0a call $0a66 +069f: 30 1c bmi $06bd +06a1: e7 82 mov a,($82+x) +06a3: 68 c8 cmp a,#$c8 ; tie +06a5: 90 08 bcc $06af +06a7: f4 a4 mov a,$a4+x +06a9: 9c dec a +06aa: d4 c4 mov $c4+x,a +06ac: dd mov a,y +06ad: 2f 07 bra $06b6 +06af: db c4 mov $c4+x,y +06b1: 3f 66 0a call $0a66 +06b4: 30 07 bmi $06bd +06b6: 1c asl a +06b7: d5 22 02 mov $0222+x,a +06ba: 3f 66 0a call $0a66 +06bd: 68 ff cmp a,#$ff ; end of track +06bf: d0 39 bne $06fa +06c1: e8 00 mov a,#$00 +06c3: d4 a5 mov $a5+x,a +06c5: f5 05 05 mov a,$0505+x +06c8: f0 21 beq $06eb +06ca: f5 e4 04 mov a,$04e4+x +06cd: f0 06 beq $06d5 +06cf: 9c dec a +06d0: d5 e4 04 mov $04e4+x,a +06d3: f0 05 beq $06da +06d5: 3f 07 0a call $0a07 +06d8: 2f 3d bra $0717 +06da: f5 24 05 mov a,$0524+x +06dd: d4 82 mov $82+x,a +06df: f5 25 05 mov a,$0525+x +06e2: d4 83 mov $83+x,a +06e4: e8 00 mov a,#$00 +06e6: d5 05 05 mov $0505+x,a +06e9: 2f 2c bra $0717 +06eb: e8 00 mov a,#$00 +06ed: d4 83 mov $83+x,a +06ef: c8 11 cmp x,#$11 +06f1: b0 05 bcs $06f8 +06f3: 4d push x +06f4: 3f 67 0e call $0e67 +06f7: ce pop x +06f8: 2f 1d bra $0717 +06fa: 68 df cmp a,#$df +06fc: f0 15 beq $0713 ; rest +06fe: 90 05 bcc $0705 +0700: 3f 75 07 call $0775 +0703: 2f 0e bra $0713 +0705: c8 10 cmp x,#$10 +0707: 90 07 bcc $0710 +0709: e4 7e mov a,$7e +070b: 24 7b and a,$7b +070d: d0 04 bne $0713 +070f: dd mov a,y +0710: 3f 18 07 call $0718 +0713: f4 a4 mov a,$a4+x +0715: d4 a5 mov $a5+x,a +0717: 6f ret + +0718: 68 c8 cmp a,#$c8 +071a: 90 03 bcc $071f +071c: 5f 55 07 jmp $0755 + +071f: 28 7f and a,#$7f +0721: d5 82 03 mov $0382+x,a +0724: 3f 3d 0a call $0a3d +0727: 09 7e e5 or ($e5),($7e) +072a: f4 c4 mov a,$c4+x +072c: d4 c5 mov $c5+x,a +072e: e4 7e mov a,$7e +0730: 24 80 and a,$80 +0732: d0 20 bne $0754 +0734: 09 7e 0c or ($0c),($7e) +0737: 09 7e 80 or ($80),($7e) +073a: f5 44 04 mov a,$0444+x +073d: d5 45 04 mov $0445+x,a +0740: f5 42 03 mov a,$0342+x +0743: d5 43 03 mov $0343+x,a +0746: e8 00 mov a,#$00 +0748: d5 64 04 mov $0464+x,a +074b: d5 62 03 mov $0362+x,a +074e: d5 03 04 mov $0403+x,a +0751: d5 02 04 mov $0402+x,a +0754: 6f ret + +0755: 80 setc +0756: a8 c8 sbc a,#$c8 +0758: 60 clrc +0759: 84 81 adc a,$81 +075b: 3f cb 07 call $07cb +075e: 8d 08 mov y,#$08 +0760: e8 00 mov a,#$00 +0762: da 00 movw $00,ya +0764: 3f d9 0f call $0fd9 +0767: 09 7e e5 or ($e5),($7e) +076a: f4 c4 mov a,$c4+x +076c: d4 c5 mov $c5+x,a +076e: 09 7e 0c or ($0c),($7e) +0771: 09 7e 80 or ($80),($7e) +0774: 6f ret + +; dispatch vcmd +0775: 1c asl a +0776: fd mov y,a +0777: f6 c1 06 mov a,$06c1+y +077a: 2d push a +077b: f6 c0 06 mov a,$06c0+y +077e: 2d push a +077f: 6f ret + +; vcmd dispatch table +0780: dw $07b8 ; e0 - set instrument +0782: dw $080f ; e1 - master volume +0784: dw $081f ; e2 - volume +0786: dw $081f ; e3 - volume +0788: dw $082f ; e4 - nop +078a: dw $0830 ; e5 - pan +078c: dw $083f ; e6 - pan fade +078e: dw $085e ; e7 - tremolo on +0790: dw $0871 ; e8 - tremolo off +0792: dw $0877 ; e9 - global transpose +0794: dw $087e ; ea - per-voice transpose +0796: dw $0885 ; eb +0798: dw $088c ; ec - tuning +079a: dw $08aa ; ed - vibrato on +079c: dw $08c0 ; ee - vibrato off +079e: dw $08c6 ; ef - pitch slide +07a0: dw $08e7 ; f0 - nop +07a2: dw $08e7 ; f1 - nop +07a4: dw $08e7 ; f2 - nop +07a6: dw $08e8 ; f3 - echo vbits/volume +07a8: dw $090e ; f4 - disable echo +07aa: dw $0917 ; f5 - set echo params +07ac: dw $09aa ; f6 - nop +07ae: dw $09ab ; f7 - tempo +07b0: dw $09bd ; f8 - tempo fade +07b2: dw $09e7 ; f9 - call subroutine +07b4: dw $0a12 ; fa - set perc patch base +07b6: dw $0a1c ; fb + +; vcmd e0 - set instrument +07b8: 3f 66 0a call $0a66 +07bb: d5 02 02 mov $0202+x,a +07be: c8 10 cmp x,#$10 +07c0: 90 09 bcc $07cb +07c2: fa 7e 00 mov ($00),($7e) +07c5: 29 7b 00 and ($00),($7b) +07c8: f0 01 beq $07cb +07ca: 6f ret + +07cb: 8d 06 mov y,#$06 +07cd: cf mul ya +07ce: fd mov y,a +07cf: 4d push x +07d0: e4 7f mov a,$7f +07d2: 08 04 or a,#$04 +07d4: 5d mov x,a +07d5: 8f 04 00 mov $00,#$04 +07d8: f6 00 3e mov a,$3e00+y +07db: 10 0f bpl $07ec +07dd: 28 1f and a,#$1f +07df: 38 20 10 and $10,#$20 +07e2: 0e 10 00 tset1 $0010 +07e5: 09 7e 0f or ($0f),($7e) +07e8: e8 00 mov a,#$00 +07ea: 2f 08 bra $07f4 +07ec: e4 7e mov a,$7e +07ee: 4e 0f 00 tclr1 $000f +07f1: f6 00 3e mov a,$3e00+y +07f4: c9 f2 00 mov $00f2,x +07f7: c5 f3 00 mov $00f3,a +07fa: 3d inc x +07fb: fc inc y +07fc: 8b 00 dec $00 +07fe: d0 f1 bne $07f1 +0800: ce pop x +0801: f6 00 3e mov a,$3e00+y +0804: d5 c5 04 mov $04c5+x,a +0807: fc inc y +0808: f6 00 3e mov a,$3e00+y +080b: d5 c4 04 mov $04c4+x,a +080e: 6f ret + +; vcmd e1 - master volume +080f: 3f 66 0a call $0a66 +0812: 1c asl a +0813: c5 45 05 mov $0545,a +0816: e8 00 mov a,#$00 +0818: c5 44 05 mov $0544,a +081b: 8f ff e5 mov $e5,#$ff +081e: 6f ret + +; vcmd e2/e3 - volume +081f: 3f 66 0a call $0a66 +0822: 1c asl a +0823: d5 43 02 mov $0243+x,a +0826: e8 00 mov a,#$00 +0828: d5 42 02 mov $0242+x,a +082b: 09 7e e5 or ($e5),($7e) +082e: 6f ret + +; vcmd e4 - nop +082f: 6f ret + +; vcmd e5 - pan +0830: 3f 66 0a call $0a66 +0833: d5 c3 02 mov $02c3+x,a +0836: e8 00 mov a,#$00 +0838: d5 c2 02 mov $02c2+x,a +083b: 09 7e e5 or ($e5),($7e) +083e: 6f ret + +; vcmd e6 - pan fade +083f: 4d push x +0840: 3f 66 0a call $0a66 +0843: d5 e2 02 mov $02e2+x,a +0846: 2d push a +0847: 3f 66 0a call $0a66 +084a: d5 e3 02 mov $02e3+x,a +084d: 80 setc +084e: b5 c3 02 sbc a,$02c3+x +0851: ce pop x +0852: 3f 39 0d call $0d39 +0855: ce pop x +0856: d5 02 03 mov $0302+x,a +0859: dd mov a,y +085a: d5 03 03 mov $0303+x,a +085d: 6f ret + +; vcmd e7 - tremolo on +085e: 3f 66 0a call $0a66 +0861: d5 42 03 mov $0342+x,a +0864: 3f 66 0a call $0a66 +0867: d5 22 03 mov $0322+x,a +086a: 3f 66 0a call $0a66 +086d: d5 23 03 mov $0323+x,a +0870: 6f ret + +; vcmd e8 - tremolo off +0871: e8 00 mov a,#$00 +0873: d5 23 03 mov $0323+x,a +0876: 6f ret + +; vcmd e9 - global transpose +0877: 3f 66 0a call $0a66 +087a: c5 4a 05 mov $054a,a +087d: 6f ret + +; vcmd ea - per-voice transpose +087e: 3f 66 0a call $0a66 +0881: d5 c3 03 mov $03c3+x,a +0884: 6f ret + +; vcmd eb +0885: 3f 66 0a call $0a66 +0888: d5 c2 03 mov $03c2+x,a +088b: 6f ret + +; vcmd ec - tuning +088c: 3f 66 0a call $0a66 +088f: fd mov y,a +0890: 28 3f and a,#$3f +0892: 1c asl a +0893: 1c asl a +0894: d5 a2 03 mov $03a2+x,a +0897: dd mov a,y +0898: 9f xcn a +0899: 5c lsr a +089a: 5c lsr a +089b: 28 03 and a,#$03 +089d: d5 a3 03 mov $03a3+x,a +08a0: e4 7e mov a,$7e +08a2: 24 80 and a,$80 +08a4: f0 03 beq $08a9 +08a6: 3f 3d 0a call $0a3d +08a9: 6f ret + +; vcmd ed - vibrato on +08aa: 3f 66 0a call $0a66 +08ad: d5 44 04 mov $0444+x,a +08b0: 3f 66 0a call $0a66 +08b3: 3f 66 0a call $0a66 +08b6: d5 24 04 mov $0424+x,a +08b9: 3f 66 0a call $0a66 +08bc: d5 25 04 mov $0425+x,a +08bf: 6f ret + +; vcmd ee - vibrato off +08c0: e8 00 mov a,#$00 +08c2: d5 25 04 mov $0425+x,a +08c5: 6f ret + +; vcmd ef - pitch slide +08c6: 4d push x +08c7: 3f 66 0a call $0a66 +08ca: d5 a4 04 mov $04a4+x,a +08cd: 2d push a +08ce: 3f 66 0a call $0a66 +08d1: 28 7f and a,#$7f +08d3: 80 setc +08d4: b5 82 03 sbc a,$0382+x +08d7: d5 a5 04 mov $04a5+x,a +08da: ce pop x +08db: 3f 39 0d call $0d39 +08de: ce pop x +08df: d5 84 04 mov $0484+x,a +08e2: dd mov a,y +08e3: d5 85 04 mov $0485+x,a +08e6: 6f ret + +; vcmd f0-f2 - nop +08e7: 6f ret + +; vcmd f3 - echo vbits/volume +08e8: 3f 66 0a call $0a66 +08eb: c4 14 mov $14,a +08ed: 3f 66 0a call $0a66 +08f0: 1c asl a +08f1: c5 00 02 mov $0200,a +08f4: 3f 66 0a call $0a66 +08f7: 1c asl a +08f8: c5 01 02 mov $0201,a +08fb: b2 10 clr5 $10 +08fd: eb 0a mov y,$0a +08ff: e5 00 02 mov a,$0200 +0902: cf mul ya +0903: cb 11 mov $11,y +0905: eb 0b mov y,$0b +0907: e5 01 02 mov a,$0201 +090a: cf mul ya +090b: cb 12 mov $12,y +090d: 6f ret + +; vcmd f4 - disable echo +090e: e8 00 mov a,#$00 +0910: c4 11 mov $11,a +0912: c4 12 mov $12,a +0914: a2 10 set5 $10 +0916: 6f ret + +; vcmd f5 - set echo params +0917: 4d push x +0918: 3f 66 0a call $0a66 +091b: 3f 5c 09 call $095c +091e: 3f 66 0a call $0a66 +0921: c4 13 mov $13,a +0923: 3f 66 0a call $0a66 +0926: 1c asl a +0927: 1c asl a +0928: 1c asl a +0929: 5d mov x,a +092a: 8d 0f mov y,#$0f +092c: f5 3c 09 mov a,$093c+x +092f: 3f 23 10 call $1023 +0932: 3d inc x +0933: dd mov a,y +0934: 60 clrc +0935: 88 10 adc a,#$10 +0937: fd mov y,a +0938: 10 f2 bpl $092c +093a: ce pop x +093b: 6f ret + +; echo FIR presets +093c: db $7f,$00,$00,$00,$00,$00,$00,$00 +0943: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +094c: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +0953: db $34,$33,$00,$d9,$e5,$01,$fc,$eb + +095c: c4 00 mov $00,a +095e: 8d 7d mov y,#$7d +0960: cc f2 00 mov $00f2,y +0963: e5 f3 00 mov a,$00f3 +0966: 64 00 cmp a,$00 +0968: f0 30 beq $099a +096a: 28 0f and a,#$0f +096c: 48 ff eor a,#$ff +096e: 1c asl a +096f: 1c asl a +0970: 1c asl a +0971: f3 a2 03 bbc7 $a2,$0977 +0974: 60 clrc +0975: 84 a2 adc a,$a2 +0977: c4 a2 mov $a2,a +0979: e8 00 mov a,#$00 +097b: 8d 04 mov y,#$04 +097d: f6 f0 0f mov a,$0ff0+y +0980: c5 f2 00 mov $00f2,a +0983: e8 00 mov a,#$00 +0985: c5 f3 00 mov $00f3,a +0988: fe f3 dbnz y,$097d +098a: e4 10 mov a,$10 +098c: 08 20 or a,#$20 +098e: 8d 6c mov y,#$6c +0990: 3f 23 10 call $1023 +0993: e4 00 mov a,$00 +0995: 8d 7d mov y,#$7d +0997: 3f 23 10 call $1023 +099a: 1c asl a +099b: 1c asl a +099c: 1c asl a +099d: c4 a3 mov $a3,a +099f: 48 ff eor a,#$ff +09a1: 80 setc +09a2: 88 ff adc a,#$ff +09a4: 8d 6d mov y,#$6d +09a6: 3f 23 10 call $1023 +09a9: 6f ret + +; vcmd f6 - nop +09aa: 6f ret + +; vcmd f7 - tempo +09ab: 4d push x +09ac: 3f 66 0a call $0a66 +09af: c8 10 cmp x,#$10 +09b1: 90 02 bcc $09b5 +09b3: cd 10 mov x,#$10 +09b5: d4 34 mov $34+x,a +09b7: e8 00 mov a,#$00 +09b9: d4 33 mov $33+x,a +09bb: ce pop x +09bc: 6f ret + +; vcmd f8 - tempo fade +09bd: 3f 66 0a call $0a66 +09c0: c4 00 mov $00,a +09c2: 3f 66 0a call $0a66 +09c5: c4 01 mov $01,a +09c7: 4d push x +09c8: c8 10 cmp x,#$10 +09ca: 90 02 bcc $09ce +09cc: cd 10 mov x,#$10 +09ce: e4 00 mov a,$00 +09d0: d4 57 mov $57+x,a +09d2: e4 01 mov a,$01 +09d4: d4 58 mov $58+x,a +09d6: 80 setc +09d7: b4 34 sbc a,$34+x +09d9: 4d push x +09da: f8 00 mov x,$00 +09dc: 3f 39 0d call $0d39 +09df: ce pop x +09e0: d4 45 mov $45+x,a +09e2: dd mov a,y +09e3: d4 46 mov $46+x,a +09e5: ce pop x +09e6: 6f ret + +; vcmd f9 - call subroutine +09e7: 3f 66 0a call $0a66 +09ea: d5 04 05 mov $0504+x,a +09ed: 3f 66 0a call $0a66 +09f0: d5 05 05 mov $0505+x,a +09f3: 3f 66 0a call $0a66 +09f6: d5 e4 04 mov $04e4+x,a +09f9: e8 00 mov a,#$00 +09fb: d4 a4 mov $a4+x,a +09fd: f4 82 mov a,$82+x +09ff: d5 24 05 mov $0524+x,a +0a02: f4 83 mov a,$83+x +0a04: d5 25 05 mov $0525+x,a +0a07: f5 04 05 mov a,$0504+x +0a0a: d4 82 mov $82+x,a +0a0c: f5 05 05 mov a,$0505+x +0a0f: d4 83 mov $83+x,a +0a11: 6f ret + +; vcmd fa - set perc patch base +0a12: 3f 66 0a call $0a66 +0a15: c8 10 cmp x,#$10 +0a17: 90 02 bcc $0a1b +0a19: c4 81 mov $81,a +0a1b: 6f ret + +; vcmd fb +0a1c: 3f 66 0a call $0a66 +0a1f: d5 a2 02 mov $02a2+x,a +0a22: 6f ret + +; pitch table +0a23: dw $0775 +0a25: dw $07e6 +0a27: dw $085f +0a29: dw $08de +0a2b: dw $0965 +0a2d: dw $09f4 +0a2f: dw $0a8c +0a31: dw $0b2c +0a33: dw $0bd6 +0a35: dw $0c8b +0a37: dw $0d4a +0a39: dw $0e14 + +0a40: f5 c2 03 mov a,$03c2+x +0a43: 10 02 bpl $0a47 +0a45: 8b 00 dec $00 +0a47: 60 clrc +0a48: 95 a2 03 adc a,$03a2+x +0a4b: d5 e2 03 mov $03e2+x,a +0a4e: f5 82 03 mov a,$0382+x +0a51: 84 00 adc a,$00 +0a53: 60 clrc +0a54: 85 4a 05 adc a,$054a +0a57: 60 clrc +0a58: 95 c3 03 adc a,$03c3+x +0a5b: 60 clrc +0a5c: 95 a3 03 adc a,$03a3+x +0a5f: d5 e3 03 mov $03e3+x,a +0a62: 09 7e e4 or ($e4),($7e) +0a65: 6f ret + +0a66: e7 82 mov a,($82+x) +0a68: bb 82 inc $82+x +0a6a: d0 02 bne $0a6e +0a6c: bb 83 inc $83+x +0a6e: fd mov y,a +0a6f: 6f ret + +0a70: f5 a2 02 mov a,$02a2+x +0a73: f0 14 beq $0a89 +0a75: 48 ff eor a,#$ff +0a77: bc inc a +0a78: 60 clrc +0a79: 95 43 02 adc a,$0243+x +0a7c: b0 05 bcs $0a83 +0a7e: e8 00 mov a,#$00 +0a80: d5 a2 02 mov $02a2+x,a +0a83: d5 43 02 mov $0243+x,a +0a86: 09 7e e5 or ($e5),($7e) +0a89: f5 e2 02 mov a,$02e2+x +0a8c: f0 29 beq $0ab7 +0a8e: 9c dec a +0a8f: d5 e2 02 mov $02e2+x,a +0a92: d0 0d bne $0aa1 +0a94: e8 00 mov a,#$00 +0a96: d5 c2 02 mov $02c2+x,a +0a99: f5 e3 02 mov a,$02e3+x +0a9c: d5 c3 02 mov $02c3+x,a +0a9f: 2f 13 bra $0ab4 +0aa1: f5 02 03 mov a,$0302+x +0aa4: 60 clrc +0aa5: 95 c2 02 adc a,$02c2+x +0aa8: d5 c2 02 mov $02c2+x,a +0aab: f5 03 03 mov a,$0303+x +0aae: 95 c3 02 adc a,$02c3+x +0ab1: d5 c3 02 mov $02c3+x,a +0ab4: 09 7e e5 or ($e5),($7e) +0ab7: c8 11 cmp x,#$11 +0ab9: b0 20 bcs $0adb +0abb: f4 57 mov a,$57+x +0abd: f0 1c beq $0adb +0abf: 9c dec a +0ac0: d4 57 mov $57+x,a +0ac2: d0 0a bne $0ace +0ac4: e8 00 mov a,#$00 +0ac6: d4 33 mov $33+x,a +0ac8: f4 58 mov a,$58+x +0aca: d4 34 mov $34+x,a +0acc: 2f 76 bra $0b44 +0ace: f4 45 mov a,$45+x +0ad0: 60 clrc +0ad1: 94 33 adc a,$33+x +0ad3: d4 33 mov $33+x,a +0ad5: f4 46 mov a,$46+x +0ad7: 94 34 adc a,$34+x +0ad9: d4 34 mov $34+x,a +0adb: e4 80 mov a,$80 +0add: 24 7e and a,$7e +0adf: d0 01 bne $0ae2 +0ae1: 6f ret + +0ae2: c8 10 cmp x,#$10 +0ae4: 90 06 bcc $0aec +0ae6: e4 7e mov a,$7e +0ae8: 24 7b and a,$7b +0aea: d0 0e bne $0afa +0aec: f4 c5 mov a,$c5+x +0aee: f0 04 beq $0af4 +0af0: 9b c5 dec $c5+x +0af2: 2f 06 bra $0afa +0af4: 09 7e 0d or ($0d),($7e) +0af7: 49 7e 80 eor ($80),($7e) +0afa: f5 25 04 mov a,$0425+x +0afd: f0 09 beq $0b08 +0aff: f5 45 04 mov a,$0445+x +0b02: f0 04 beq $0b08 +0b04: 9c dec a +0b05: d5 45 04 mov $0445+x,a +0b08: f5 a4 04 mov a,$04a4+x +0b0b: f0 29 beq $0b36 +0b0d: 9c dec a +0b0e: d5 a4 04 mov $04a4+x,a +0b11: d0 0d bne $0b20 +0b13: f5 a5 04 mov a,$04a5+x +0b16: d5 03 04 mov $0403+x,a +0b19: e8 00 mov a,#$00 +0b1b: d5 02 04 mov $0402+x,a +0b1e: 2f 13 bra $0b33 +0b20: f5 02 04 mov a,$0402+x +0b23: 60 clrc +0b24: 95 84 04 adc a,$0484+x +0b27: d5 02 04 mov $0402+x,a +0b2a: f5 03 04 mov a,$0403+x +0b2d: 95 85 04 adc a,$0485+x +0b30: d5 03 04 mov $0403+x,a +0b33: 09 7e e4 or ($e4),($7e) +0b36: f5 23 03 mov a,$0323+x +0b39: f0 09 beq $0b44 +0b3b: f5 43 03 mov a,$0343+x +0b3e: f0 04 beq $0b44 +0b40: 9c dec a +0b41: d5 43 03 mov $0343+x,a +0b44: 6f ret + +0b45: e5 4c 05 mov a,$054c +0b48: 60 clrc +0b49: 88 10 adc a,#$10 +0b4b: c5 4c 05 mov $054c,a +0b4e: 90 5d bcc $0bad +0b50: e5 50 05 mov a,$0550 +0b53: f0 26 beq $0b7b +0b55: 9c dec a +0b56: c5 50 05 mov $0550,a +0b59: f0 1b beq $0b76 +0b5b: e5 4e 05 mov a,$054e +0b5e: 80 setc +0b5f: a5 51 05 sbc a,$0551 +0b62: c5 4e 05 mov $054e,a +0b65: e5 0a 00 mov a,$000a +0b68: a5 52 05 sbc a,$0552 +0b6b: c5 0a 00 mov $000a,a +0b6e: c5 0b 00 mov $000b,a +0b71: 3f fd 08 call $08fd +0b74: 2f 37 bra $0bad +0b76: 3f ec 0d call $0dec +0b79: 2f 32 bra $0bad +0b7b: e5 4f 05 mov a,$054f +0b7e: f0 2d beq $0bad +0b80: 9c dec a +0b81: c5 4f 05 mov $054f,a +0b84: f0 1b beq $0ba1 +0b86: e5 4e 05 mov a,$054e +0b89: 60 clrc +0b8a: 85 51 05 adc a,$0551 +0b8d: c5 4e 05 mov $054e,a +0b90: e5 0a 00 mov a,$000a +0b93: 85 52 05 adc a,$0552 +0b96: c5 0a 00 mov $000a,a +0b99: c5 0b 00 mov $000b,a +0b9c: 3f fd 08 call $08fd +0b9f: 2f 0c bra $0bad +0ba1: e5 4d 05 mov a,$054d +0ba4: c5 0a 00 mov $000a,a +0ba7: c5 0b 00 mov $000b,a +0baa: 3f fd 08 call $08fd +0bad: 6f ret + +0bae: 8f 01 7e mov $7e,#$01 +0bb1: cd 00 mov x,#$00 +0bb3: 8f 00 7f mov $7f,#$00 +0bb6: 3f c3 0b call $0bc3 +0bb9: 8f 01 7e mov $7e,#$01 +0bbc: 8f 00 7f mov $7f,#$00 +0bbf: 3f c3 0b call $0bc3 +0bc2: 6f ret + +0bc3: f4 83 mov a,$83+x +0bc5: f0 1b beq $0be2 +0bc7: c8 10 cmp x,#$10 +0bc9: b0 08 bcs $0bd3 +0bcb: e4 7e mov a,$7e +0bcd: 24 7b and a,$7b +0bcf: f0 11 beq $0be2 +0bd1: 2f 06 bra $0bd9 +0bd3: e4 7e mov a,$7e +0bd5: 24 7b and a,$7b +0bd7: d0 09 bne $0be2 +0bd9: e4 7e mov a,$7e +0bdb: 24 80 and a,$80 +0bdd: f0 03 beq $0be2 +0bdf: 3f ed 0b call $0bed +0be2: 3d inc x +0be3: 3d inc x +0be4: 60 clrc +0be5: 98 10 7f adc $7f,#$10 +0be8: 0b 7e asl $7e +0bea: d0 d7 bne $0bc3 +0bec: 6f ret + +0bed: e8 00 mov a,#$00 +0bef: c5 22 04 mov $0422,a +0bf2: c5 23 04 mov $0423,a +0bf5: c5 4b 05 mov $054b,a +0bf8: f5 25 04 mov a,$0425+x +0bfb: f0 38 beq $0c35 +0bfd: f5 45 04 mov a,$0445+x +0c00: d0 33 bne $0c35 +0c02: f5 24 04 mov a,$0424+x +0c05: 8d 10 mov y,#$10 +0c07: cf mul ya +0c08: 60 clrc +0c09: 95 64 04 adc a,$0464+x +0c0c: d5 64 04 mov $0464+x,a +0c0f: dd mov a,y +0c10: 95 65 04 adc a,$0465+x +0c13: d5 65 04 mov $0465+x,a +0c16: c4 00 mov $00,a +0c18: 1c asl a +0c19: 1c asl a +0c1a: 90 02 bcc $0c1e +0c1c: 48 ff eor a,#$ff +0c1e: fd mov y,a +0c1f: f5 25 04 mov a,$0425+x +0c22: cf mul ya +0c23: e8 0c mov a,#$0c +0c25: cf mul ya +0c26: f3 00 03 bbc7 $00,$0c2c +0c29: 3f 32 0d call $0d32 +0c2c: c5 22 04 mov $0422,a +0c2f: cc 23 04 mov $0423,y +0c32: 09 7e e4 or ($e4),($7e) +0c35: f5 23 03 mov a,$0323+x +0c38: f0 2a beq $0c64 +0c3a: f5 43 03 mov a,$0343+x +0c3d: d0 25 bne $0c64 +0c3f: f5 22 03 mov a,$0322+x +0c42: 8d 10 mov y,#$10 +0c44: cf mul ya +0c45: 60 clrc +0c46: 95 62 03 adc a,$0362+x +0c49: d5 62 03 mov $0362+x,a +0c4c: dd mov a,y +0c4d: 95 63 03 adc a,$0363+x +0c50: d5 63 03 mov $0363+x,a +0c53: 1c asl a +0c54: 90 02 bcc $0c58 +0c56: 48 ff eor a,#$ff +0c58: fd mov y,a +0c59: f5 23 03 mov a,$0323+x +0c5c: cf mul ya +0c5d: dd mov a,y +0c5e: c5 4b 05 mov $054b,a +0c61: 09 7e e5 or ($e5),($7e) +0c64: e4 7e mov a,$7e +0c66: 24 e4 and a,$e4 +0c68: f0 7d beq $0ce7 +0c6a: f5 e3 03 mov a,$03e3+x +0c6d: fd mov y,a +0c6e: f5 e2 03 mov a,$03e2+x +0c71: da 00 movw $00,ya +0c73: f5 03 04 mov a,$0403+x +0c76: fd mov y,a +0c77: f5 02 04 mov a,$0402+x +0c7a: 7a 00 addw ya,$00 +0c7c: da 00 movw $00,ya +0c7e: ec 23 04 mov y,$0423 +0c81: e5 22 04 mov a,$0422 +0c84: 7a 00 addw ya,$00 +0c86: da 04 movw $04,ya +0c88: 4d push x +0c89: dd mov a,y +0c8a: 1c asl a +0c8b: 8d 00 mov y,#$00 +0c8d: cd 18 mov x,#$18 +0c8f: 9e div ya,x +0c90: 5d mov x,a +0c91: f6 23 0a mov a,$0a23+y +0c94: c4 00 mov $00,a +0c96: f6 24 0a mov a,$0a24+y +0c99: c4 01 mov $01,a +0c9b: f6 26 0a mov a,$0a26+y +0c9e: 2d push a +0c9f: f6 25 0a mov a,$0a25+y +0ca2: ee pop y +0ca3: 9a 00 subw ya,$00 +0ca5: eb 04 mov y,$04 +0ca7: cf mul ya +0ca8: dd mov a,y +0ca9: 8d 00 mov y,#$00 +0cab: 7a 00 addw ya,$00 +0cad: da 00 movw $00,ya +0caf: 0b 00 asl $00 +0cb1: 2b 01 rol $01 +0cb3: 2f 05 bra $0cba +0cb5: 4b 01 lsr $01 +0cb7: 6b 00 ror $00 +0cb9: 3d inc x +0cba: c8 06 cmp x,#$06 +0cbc: d0 f7 bne $0cb5 +0cbe: ce pop x +0cbf: f5 c4 04 mov a,$04c4+x +0cc2: eb 01 mov y,$01 +0cc4: cf mul ya +0cc5: da 02 movw $02,ya +0cc7: f5 c5 04 mov a,$04c5+x +0cca: eb 00 mov y,$00 +0ccc: cf mul ya +0ccd: 7a 02 addw ya,$02 +0ccf: da 02 movw $02,ya +0cd1: f5 c4 04 mov a,$04c4+x +0cd4: eb 00 mov y,$00 +0cd6: cf mul ya +0cd7: 6d push y +0cd8: f5 c5 04 mov a,$04c5+x +0cdb: eb 01 mov y,$01 +0cdd: cf mul ya +0cde: fd mov y,a +0cdf: ae pop a +0ce0: 7a 02 addw ya,$02 +0ce2: da 00 movw $00,ya +0ce4: 3f d9 0f call $0fd9 +0ce7: e4 7e mov a,$7e +0ce9: 24 e5 and a,$e5 +0ceb: f0 44 beq $0d31 +0ced: 8d ff mov y,#$ff +0cef: c8 10 cmp x,#$10 +0cf1: 90 04 bcc $0cf7 +0cf3: e5 45 05 mov a,$0545 +0cf6: fd mov y,a +0cf7: f5 22 02 mov a,$0222+x +0cfa: cf mul ya +0cfb: f5 43 02 mov a,$0243+x +0cfe: cf mul ya +0cff: e5 4b 05 mov a,$054b +0d02: 48 ff eor a,#$ff +0d04: cf mul ya +0d05: cb 00 mov $00,y +0d07: e4 7f mov a,$7f +0d09: c4 02 mov $02,a +0d0b: f5 c3 02 mov a,$02c3+x +0d0e: 1c asl a +0d0f: c4 01 mov $01,a +0d11: e4 00 mov a,$00 +0d13: eb 01 mov y,$01 +0d15: cf mul ya +0d16: e8 85 mov a,#$85 +0d18: cf mul ya +0d19: dd mov a,y +0d1a: 90 03 bcc $0d1f +0d1c: 48 ff eor a,#$ff +0d1e: bc inc a +0d1f: eb 02 mov y,$02 +0d21: 3f 23 10 call $1023 +0d24: e4 01 mov a,$01 +0d26: 48 ff eor a,#$ff +0d28: c4 01 mov $01,a +0d2a: 60 clrc +0d2b: ab 02 inc $02 +0d2d: 33 02 e1 bbc1 $02,$0d11 +0d30: 6f ret + +0d31: 6f ret + +0d32: da 00 movw $00,ya +0d34: ba 08 movw ya,$08 +0d36: 9a 00 subw ya,$00 +0d38: 6f ret + +0d39: c4 00 mov $00,a +0d3b: f3 00 05 bbc7 $00,$0d43 +0d3e: 10 03 bpl $0d43 +0d40: 48 ff eor a,#$ff +0d42: bc inc a +0d43: 8d 00 mov y,#$00 +0d45: 9e div ya,x +0d46: 2d push a +0d47: e8 00 mov a,#$00 +0d49: 9e div ya,x +0d4a: ee pop y +0d4b: f3 00 06 bbc7 $00,$0d54 +0d4e: da 00 movw $00,ya +0d50: ba 08 movw ya,$08 +0d52: 9a 00 subw ya,$00 +0d54: 6f ret + +0d55: e4 7c mov a,$7c +0d57: c5 f6 00 mov $00f6,a +0d5a: e4 7b mov a,$7b +0d5c: c5 f7 00 mov $00f7,a +0d5f: e5 f4 00 mov a,$00f4 +0d62: 65 f4 00 cmp a,$00f4 +0d65: d0 ee bne $0d55 +0d67: 64 15 cmp a,$15 +0d69: f0 15 beq $0d80 +0d6b: c4 15 mov $15,a +0d6d: c5 f4 00 mov $00f4,a +0d70: 68 ff cmp a,#$ff +0d72: f0 1f beq $0d93 +0d74: 9f xcn a +0d75: 28 0f and a,#$0f +0d77: 68 09 cmp a,#$09 +0d79: b0 05 bcs $0d80 +0d7b: 1c asl a +0d7c: 5d mov x,a +0d7d: 1f 81 0d jmp ($0d81+x) + +0d80: 6f ret + +0d81: dw $0deb +0d83: dw $0dec +0d85: dw $0e0e +0d87: dw $0e13 +0d89: dw $0e17 +0d8b: dw $0e33 +0d8d: dw $0f6b +0d8f: dw $0f92 +0d91: dw $0f9b + +0d93: e4 7c mov a,$7c +0d95: 04 7b or a,$7b +0d97: f0 03 beq $0d9c +0d99: 3f ec 0d call $0dec +0d9c: e8 aa mov a,#$aa +0d9e: c5 f4 00 mov $00f4,a +0da1: e8 bb mov a,#$bb +0da3: c5 f5 00 mov $00f5,a +0da6: e5 f4 00 mov a,$00f4 +0da9: 68 cc cmp a,#$cc +0dab: d0 f9 bne $0da6 +0dad: 2f 20 bra $0dcf +0daf: ec f4 00 mov y,$00f4 +0db2: d0 fb bne $0daf +0db4: 5e f4 00 cmp y,$00f4 +0db7: d0 0f bne $0dc8 +0db9: e5 f5 00 mov a,$00f5 +0dbc: cc f4 00 mov $00f4,y +0dbf: d7 00 mov ($00)+y,a +0dc1: fc inc y +0dc2: d0 f0 bne $0db4 +0dc4: ab 01 inc $01 +0dc6: 2f ec bra $0db4 +0dc8: 10 ea bpl $0db4 +0dca: 5e f4 00 cmp y,$00f4 +0dcd: 10 e5 bpl $0db4 +0dcf: e5 f6 00 mov a,$00f6 +0dd2: ec f7 00 mov y,$00f7 +0dd5: da 00 movw $00,ya +0dd7: ec f4 00 mov y,$00f4 +0dda: e5 f5 00 mov a,$00f5 +0ddd: cc f4 00 mov $00f4,y +0de0: d0 cd bne $0daf +0de2: cd 32 mov x,#$32 +0de4: c9 f1 00 mov $00f1,x +0de7: 3f 59 10 call $1059 +0dea: 6f ret + +0deb: 6f ret + +0dec: e8 00 mov a,#$00 +0dee: c4 7c mov $7c,a +0df0: c4 7b mov $7b,a +0df2: e8 7d mov a,#$7d +0df4: c5 f2 00 mov $00f2,a +0df7: e5 f3 00 mov a,$00f3 +0dfa: 1c asl a +0dfb: 1c asl a +0dfc: 1c asl a +0dfd: 2d push a +0dfe: e8 00 mov a,#$00 +0e00: 3f 5c 09 call $095c +0e03: ee pop y +0e04: 3f ce 0f call $0fce +0e07: 8f ff 0d mov $0d,#$ff +0e0a: 3f fe 0f call $0ffe +0e0d: 6f ret + +0e0e: 8f ff 7d mov $7d,#$ff +0e11: 2f f4 bra $0e07 +0e13: 8f 00 7d mov $7d,#$00 +0e16: 6f ret + +0e17: e9 f6 00 mov x,$00f6 +0e1a: d0 01 bne $0e1d +0e1c: 3d inc x +0e1d: c9 50 05 mov $0550,x +0e20: e5 0a 00 mov a,$000a +0e23: 3f 39 0d call $0d39 +0e26: c5 51 05 mov $0551,a +0e29: dd mov a,y +0e2a: c5 52 05 mov $0552,a +0e2d: e8 00 mov a,#$00 +0e2f: c5 4e 05 mov $054e,a +0e32: 6f ret + +0e33: e8 00 mov a,#$00 +0e35: c5 53 05 mov $0553,a +0e38: e4 7c mov a,$7c +0e3a: f0 03 beq $0e3f +0e3c: 3f ec 0d call $0dec +0e3f: e8 ff mov a,#$ff +0e41: c4 7c mov $7c,a +0e43: bc inc a +0e44: c4 7d mov $7d,a +0e46: c4 80 mov $80,a +0e48: c4 7b mov $7b,a +0e4a: c5 48 05 mov $0548,a +0e4d: c5 50 05 mov $0550,a +0e50: e9 53 05 mov x,$0553 +0e53: d0 06 bne $0e5b +0e55: c5 4f 05 mov $054f,a +0e58: 3f a1 0b call $0ba1 +0e5b: cd 10 mov x,#$10 +0e5d: e4 15 mov a,$15 +0e5f: 28 0f and a,#$0f +0e61: 3f 5e 0f call $0f5e +0e64: 3f ff 0e call $0eff +0e67: 3f 4a 0f call $0f4a +0e6a: d0 30 bne $0e9c +0e6c: 68 ff cmp a,#$ff +0e6e: f0 56 beq $0ec6 +0e70: 68 00 cmp a,#$00 +0e72: f0 0d beq $0e81 +0e74: fb 29 mov y,$29+x +0e76: d0 02 bne $0e7a +0e78: d4 29 mov $29+x,a +0e7a: f4 29 mov a,$29+x +0e7c: 9c dec a +0e7d: d4 29 mov $29+x,a +0e7f: f0 0a beq $0e8b +0e81: 3f 4a 0f call $0f4a +0e84: d4 17 mov $17+x,a +0e86: dd mov a,y +0e87: d4 18 mov $18+x,a +0e89: 2f dc bra $0e67 +0e8b: 3f 4a 0f call $0f4a +0e8e: 2f d7 bra $0e67 +0e90: d4 29 mov $29+x,a +0e92: 3f 4a 0f call $0f4a +0e95: d4 17 mov $17+x,a +0e97: dd mov a,y +0e98: d4 18 mov $18+x,a +0e9a: 2f cb bra $0e67 +0e9c: da 00 movw $00,ya +0e9e: 8d 00 mov y,#$00 +0ea0: 8f 01 02 mov $02,#$01 +0ea3: c8 10 cmp x,#$10 +0ea5: d0 03 bne $0eaa +0ea7: 8f 08 02 mov $02,#$08 +0eaa: f7 00 mov a,($00)+y +0eac: d5 82 00 mov $0082+x,a +0eaf: fc inc y +0eb0: f7 00 mov a,($00)+y +0eb2: d5 83 00 mov $0083+x,a +0eb5: fc inc y +0eb6: e8 00 mov a,#$00 +0eb8: d4 a4 mov $a4+x,a +0eba: d4 a5 mov $a5+x,a +0ebc: d5 05 05 mov $0505+x,a +0ebf: 3d inc x +0ec0: 3d inc x +0ec1: 8b 02 dec $02 +0ec3: d0 e5 bne $0eaa +0ec5: 6f ret + +0ec6: c8 10 cmp x,#$10 +0ec8: 90 11 bcc $0edb +0eca: 4d push x +0ecb: 09 7c 0d or ($0d),($7c) +0ece: e8 00 mov a,#$00 +0ed0: c4 7c mov $7c,a +0ed2: cd 0f mov x,#$0f +0ed4: d4 92 mov $92+x,a +0ed6: 1d dec x +0ed7: 10 fb bpl $0ed4 +0ed9: ce pop x +0eda: 6f ret + +0edb: 09 7e 0d or ($0d),($7e) +0ede: e4 7e mov a,$7e +0ee0: 48 ff eor a,#$ff +0ee2: 24 7b and a,$7b +0ee4: c4 7b mov $7b,a +0ee6: e4 7e mov a,$7e +0ee8: 48 ff eor a,#$ff +0eea: 24 80 and a,$80 +0eec: c4 80 mov $80,a +0eee: e8 00 mov a,#$00 +0ef0: d4 83 mov $83+x,a +0ef2: 4d push x +0ef3: 7d mov a,x +0ef4: 08 10 or a,#$10 +0ef6: 5d mov x,a +0ef7: f5 02 02 mov a,$0202+x +0efa: 3f cb 07 call $07cb +0efd: ce pop x +0efe: 6f ret + +0eff: 4d push x +0f00: 8f 01 00 mov $00,#$01 +0f03: c8 10 cmp x,#$10 +0f05: d0 03 bne $0f0a +0f07: 8f 08 00 mov $00,#$08 +0f0a: e8 02 mov a,#$02 +0f0c: d5 a3 03 mov $03a3+x,a +0f0f: e8 40 mov a,#$40 +0f11: d5 c3 02 mov $02c3+x,a +0f14: e8 60 mov a,#$60 +0f16: d5 43 02 mov $0243+x,a +0f19: e8 00 mov a,#$00 +0f1b: d5 c3 03 mov $03c3+x,a +0f1e: d5 c2 03 mov $03c2+x,a +0f21: d5 82 02 mov $0282+x,a +0f24: d5 a2 02 mov $02a2+x,a +0f27: d5 e2 02 mov $02e2+x,a +0f2a: d5 25 04 mov $0425+x,a +0f2d: d5 a4 04 mov $04a4+x,a +0f30: d5 23 03 mov $0323+x,a +0f33: d5 a2 03 mov $03a2+x,a +0f36: d5 e2 03 mov $03e2+x,a +0f39: d5 02 04 mov $0402+x,a +0f3c: c8 11 cmp x,#$11 +0f3e: b0 02 bcs $0f42 +0f40: d4 57 mov $57+x,a +0f42: 3d inc x +0f43: 3d inc x +0f44: 8b 00 dec $00 +0f46: d0 c2 bne $0f0a +0f48: ce pop x +0f49: 6f ret + +0f4a: e7 17 mov a,($17+x) +0f4c: bb 17 inc $17+x +0f4e: d0 02 bne $0f52 +0f50: bb 18 inc $18+x +0f52: 2d push a +0f53: e7 17 mov a,($17+x) +0f55: bb 17 inc $17+x +0f57: d0 02 bne $0f5b +0f59: bb 18 inc $18+x +0f5b: fd mov y,a +0f5c: ae pop a +0f5d: 6f ret + +; load song from A +0f5e: 1c asl a +0f5f: fd mov y,a +0f60: f6 00 11 mov a,$1100+y +0f63: d4 17 mov $17+x,a +0f65: f6 01 11 mov a,$1101+y +0f68: d4 18 mov $18+x,a +0f6a: 6f ret + +0f6b: e9 f6 00 mov x,$00f6 +0f6e: d0 01 bne $0f71 +0f70: 3d inc x +0f71: c9 4f 05 mov $054f,x +0f74: e5 4d 05 mov a,$054d +0f77: 3f 39 0d call $0d39 +0f7a: c5 51 05 mov $0551,a +0f7d: dd mov a,y +0f7e: c5 52 05 mov $0552,a +0f81: e8 00 mov a,#$00 +0f83: c5 4e 05 mov $054e,a +0f86: c4 0a mov $0a,a +0f88: c4 0b mov $0b,a +0f8a: e8 ff mov a,#$ff +0f8c: c5 53 05 mov $0553,a +0f8f: 5f 38 0e jmp $0e38 + +0f92: e5 f5 00 mov a,$00f5 +0f95: c5 4d 05 mov $054d,a +0f98: 5f a1 0b jmp $0ba1 + +0f9b: cd 0e mov x,#$0e +0f9d: 8f 80 00 mov $00,#$80 +0fa0: e4 00 mov a,$00 +0fa2: 24 7b and a,$7b +0fa4: f0 07 beq $0fad +0fa6: 4b 00 lsr $00 +0fa8: 1d dec x +0fa9: 1d dec x +0faa: 10 f4 bpl $0fa0 +0fac: 6f ret + +0fad: 09 00 7b or ($7b),($00) +0fb0: e4 15 mov a,$15 +0fb2: 28 0f and a,#$0f +0fb4: 4d push x +0fb5: e5 f5 00 mov a,$00f5 +0fb8: 60 clrc +0fb9: 88 08 adc a,#$08 +0fbb: 3f 61 0e call $0e61 +0fbe: ce pop x +0fbf: e8 40 mov a,#$40 +0fc1: d4 34 mov $34+x,a +0fc3: e8 00 mov a,#$00 +0fc5: d4 33 mov $33+x,a +0fc7: bc inc a +0fc8: d4 c5 mov $c5+x,a +0fca: bc inc a +0fcb: d4 a5 mov $a5+x,a +0fcd: 6f ret + +0fce: ad 00 cmp y,#$00 +0fd0: f0 07 beq $0fd9 +0fd2: e5 fe 00 mov a,$00fe +0fd5: f0 fb beq $0fd2 +0fd7: fe f9 dbnz y,$0fd2 +0fd9: e4 7f mov a,$7f +0fdb: 08 02 or a,#$02 +0fdd: fd mov y,a +0fde: e4 00 mov a,$00 +0fe0: 3f 23 10 call $1023 +0fe3: fc inc y +0fe4: e4 01 mov a,$01 +0fe6: 3f 23 10 call $1023 +0fe9: 6f ret + +0fea: db $0c,$1c,$4c,$5c,$2d,$3d,$6c,$2c +0ff2: db $3c,$0d,$4d,$5d,$0f,$1f,$2f,$3f +0ffa: db $4f,$5f,$6f,$7f + +0ffe: 8d 0b mov y,#$0b +1000: ad 07 cmp y,#$07 +1002: f0 07 beq $100b +1004: 90 08 bcc $100e +1006: 69 a3 a2 cmp ($a2),($a3) +1009: d0 0f bne $101a +100b: e3 a2 0c bbs7 $a2,$101a +100e: f6 e9 0f mov a,$0fe9+y +1011: c5 f2 00 mov $00f2,a +1014: f6 09 00 mov a,$0009+y +1017: c5 f3 00 mov $00f3,a +101a: fe e4 dbnz y,$1000 +101c: 8f 00 0c mov $0c,#$00 +101f: 8f 00 0d mov $0d,#$00 +1022: 6f ret + +1023: cc f2 00 mov $00f2,y +1026: c5 f3 00 mov $00f3,a +1029: 6f ret + +102a: db $60,$60,$00,$00,$00,$00,$20,$00 +1032: db $00,$00,$00,$3c,$7f,$00,$00,$00 +103a: db $00,$00,$00,$00 + +103e: 8d 0b mov y,#$0b +1040: f6 29 10 mov a,$1029+y +1043: d6 09 00 mov $0009+y,a +1046: fe f8 dbnz y,$1040 +1048: 8d 09 mov y,#$09 +104a: f6 f4 0f mov a,$0ff4+y +104d: c5 f2 00 mov $00f2,a +1050: f6 34 10 mov a,$1034+y +1053: c5 f3 00 mov $00f3,a +1056: fe f2 dbnz y,$104a +1058: 6f ret + +1059: e8 00 mov a,#$00 +105b: 3f 5c 09 call $095c +105e: 3f 3e 10 call $103e +1061: cd 10 mov x,#$10 +1063: 8f 00 7f mov $7f,#$00 +1066: 8f 01 7e mov $7e,#$01 +1069: e8 00 mov a,#$00 +106b: 3f cb 07 call $07cb +106e: 3d inc x +106f: 3d inc x +1070: 60 clrc +1071: 98 10 7f adc $7f,#$10 +1074: 0b 7e asl $7e +1076: d0 f1 bne $1069 +1078: 6f ret + +1079: e8 00 mov a,#$00 +107b: 5d mov x,a +107c: af mov (x)+,a +107d: c8 e8 cmp x,#$e8 +107f: d0 fb bne $107c +1081: cd 02 mov x,#$02 +1083: d8 01 mov $01,x +1085: fd mov y,a +1086: d7 00 mov ($00)+y,a +1088: fe fc dbnz y,$1086 +108a: ab 01 inc $01 +108c: 78 06 01 cmp $01,#$06 +108f: d0 f5 bne $1086 +1091: 8d 6c mov y,#$6c +1093: e8 e0 mov a,#$e0 +1095: 3f 23 10 call $1023 +1098: e8 00 mov a,#$00 +109a: 3f 5c 09 call $095c +109d: 3f 3e 10 call $103e +10a0: cd 10 mov x,#$10 +10a2: 8f 00 7f mov $7f,#$00 +10a5: 8f 01 7e mov $7e,#$01 +10a8: e8 00 mov a,#$00 +10aa: 3f cb 07 call $07cb +10ad: 3d inc x +10ae: 3d inc x +10af: 60 clrc +10b0: 98 10 7f adc $7f,#$10 +10b3: 0b 7e asl $7e +10b5: d0 f1 bne $10a8 +10b7: e8 fe mov a,#$fe +10b9: c5 45 05 mov $0545,a +10bc: e8 60 mov a,#$60 +10be: c5 4d 05 mov $054d,a +10c1: e8 19 mov a,#$19 +10c3: cd 12 mov x,#$12 +10c5: d4 32 mov $32+x,a +10c7: 1d dec x +10c8: 1d dec x +10c9: d0 fa bne $10c5 +10cb: e8 30 mov a,#$30 +10cd: c5 f1 00 mov $00f1,a +10d0: e8 10 mov a,#$10 +10d2: c5 fb 00 mov $00fb,a +10d5: e8 32 mov a,#$32 +10d7: c5 f1 00 mov $00f1,a +10da: 6f ret \ No newline at end of file From 0071141a22e66f6a37c18fd544a9f1387114e1d0 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:56:39 -0800 Subject: [PATCH 092/116] Rename snes/NSPC/The 7th Saga ($0600).bin to snes/NSPC/Produce/The 7th Saga ($0600).bin --- snes/NSPC/{ => Produce}/The 7th Saga ($0600).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Produce}/The 7th Saga ($0600).bin (100%) diff --git a/snes/NSPC/The 7th Saga ($0600).bin b/snes/NSPC/Produce/The 7th Saga ($0600).bin similarity index 100% rename from snes/NSPC/The 7th Saga ($0600).bin rename to snes/NSPC/Produce/The 7th Saga ($0600).bin From a3169fed27c167f6ed9d5fd12fea7aa5a37b6020 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:56:51 -0800 Subject: [PATCH 093/116] Update and rename snes/NSPC/The 7th Saga.s to snes/NSPC/Produce/The 7th Saga.s --- snes/NSPC/{ => Produce}/The 7th Saga.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Produce}/The 7th Saga.s (96%) diff --git a/snes/NSPC/The 7th Saga.s b/snes/NSPC/Produce/The 7th Saga.s similarity index 96% rename from snes/NSPC/The 7th Saga.s rename to snes/NSPC/Produce/The 7th Saga.s index 43cd51d9..a64c6631 100644 --- a/snes/NSPC/The 7th Saga.s +++ b/snes/NSPC/Produce/The 7th Saga.s @@ -1388,4 +1388,5 @@ 10d2: c5 fb 00 mov $00fb,a 10d5: e8 32 mov a,#$32 10d7: c5 f1 00 mov $00f1,a -10da: 6f ret \ No newline at end of file + +10da: 6f ret From f0a67f8fc35ed02a016e5bc4a2957731a5877d0f Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:57:15 -0800 Subject: [PATCH 094/116] Add files via upload --- snes/NSPC/VS Collection ($0600).bin | Bin 0 -> 3337 bytes snes/NSPC/VS Collection.s | 1715 +++++++++++++++++++++++++++ 2 files changed, 1715 insertions(+) create mode 100644 snes/NSPC/VS Collection ($0600).bin create mode 100644 snes/NSPC/VS Collection.s diff --git a/snes/NSPC/VS Collection ($0600).bin b/snes/NSPC/VS Collection ($0600).bin new file mode 100644 index 0000000000000000000000000000000000000000..47a7bea204164e17837dd4ce358ec456fd237fec GIT binary patch literal 3337 zcmY*b4RBLc7QT5m|4Ey)p-|eF(9YsaSBxnw&hG5keTrCGehLT_2U{9{s&AG0u*~QT zTANXrVaLs+R9PL+wlKJ|0@)7EuCstH(wA9wu;i(E+Kt3@;8osQwsWO23r(!tziHchPa{ha1N<~3koDCuseZ&5S4H{Lnm6ZsUiVFa6C6Pn2GtO3rG!L&LaH-z6N#Hu9pzD^7e^4I>LWckq+8DYU{u#ct|Mh-WCE!z zlxqNvyI8Cuai!RBErZBZhx$O&zvoRHc@y{GrHRpfm>9X2o!li;+Y`p1 z>4brp2F>6~D!S5Cm@=9mj#PoE^#=%L=CW|l{RL~c*Lk08U%zJ6>a|(`7QZV8u&+`J zFodnv2a%5nX5*~3kI85~%q}+0$~{a%-p2^af=CjLCQ*A5NooEDDd%sJDt?kI<07CiVvw-u_34UFICKl59NeQR2aEq_QIXBpMnrV%X5|| zDX+`(e*%8A9}}H$ydQ_ow}dKM+e+-C8fw>QP>7WBpOIhj=g2BPBbkN`+$OWnFpM~_ zb2Nq8Q+XT1u#PGwQTyaA1p^AfOVe#W-iwD#ur8ci)`rZWCG-9O+G^GGuj>f%SeGZl zh^vc*U#p7d=+iE@QxW*Ao2@@NV1B~0fx>33!t`J+qXT@gm5%KXz zKdpt(*~dZ^n{yv|Y`#(=&VRLp;I7G5htY^1AUskJAhsUtlyKWZD|fUY zxBZVw3n@IcZP(W4TbNTV@vWh(|2E#s^EMMgvL^OgvNrZQEKK$iJFk-p4)$_sD|M8% z#(EF-CSQxyBwvr!<~3f>hGR9~QV|YY1NuHo2<7rl4+_(S@Za~i`7HSlz_=e^y$0aD zmY*Sg0O>Q_0jn?0Zzeu&e<2uGb;mjrPJ`yeKCBgCNRMlUv3N!DBOjAIIn^0WNV+qz zov;UurV}W$A|D8M{MPchc7dbcvzgQ>t2gy`t2fb-NnNoL^VOQuH4<~WHX|^$BeqX$ z*KApv-dZn-pZ(YNdi(wMr|moJY3mF2m+c?ge{cWVrqeMD(lPJ{23UsCVdl0Y z_3|e0mgFA+t#M*&w&E#NM` zO}MaG5SyuTOW?@nbTd^xDu|B=fOrAU1v9yGrR#GCF=WE#fSf->2h5GjxswR86I06~ zEC_I`QZ~Q{u;UZJ0(t7>DnWb}c=5Twktfs7(p{dW;`YFi_Podo;znA7i#LjEsP(#F z*XP&K=mdId9a&Q4Xvj`9VgK$Xu_>s}U+(Y>!OcFQtTI;ww?m~XumT9&OAXn;-fXa= zO>q40xiTki$eszJKCg=U#?$o^W#;?~cz_j@hsGX@YC0TEL=$o)P97!}wK|9o9_Drz zz<2bMdTlArXw^7g3K$W~#ulbtas>YNqGPNyniyN?|Kp2}j8=)G+6K(J%5-d^hwe32 z1|KyzPelhxRfGawoa> z;7(#tneRI9O4dx((l94kV&CV zY-w_cEYk*=@6O$$4KV)whZuQ)5zAP%hiS-Wl0*DYJ%%br)TfUof{1ez?1CuUjVnRi$H23DDN)t! z-~EVxKVf7)ErkIlb`FyG^BIFkSr|CFY|ui9YtVR!rN>ySEQFj5m-e-$jyptm>X<`h zQ(=cUb;2=zfTbTT2nBz^%`S0^tWUq%{Yu?=qm&lei&_OU=8ncal(Nwdt&);m9#8=1 zj%LC+KHnO|*;5|4Hazs&U^0q_mbJ3zR^bC?0hR*NVN*eg=aFP1J?@Hb-IDJXVKpkl)l0uP5B*+>Xaq)qk;=s`Wo9Uu2yy#HN zMW?Uu-P`g!(K+dumMv(~AzM+}rRrkF7~+PC#Re}F@EUPVSYIhtLj6bf;bCUP1(EDH zXq1fHeMN0)r*;67$LS5lvXMRvQdKv-xFYZ6_<&TRy^RC!_hI>Mti6Tbe-F!VVV?_> z{yn#pdveMUF5*5e&R?}@Y7k=XRJfgc1nz@k`2bG4+U_d?Ha5!*73(2Lsv9cK2b`am z&oc55ljnH?joweh!(S(-_zChEpCtd}H8RYnh}?FWR^txrGpITsInVi>U<~Q+3_{z1 zr3ESq8Ez|KQ~gSDrLP){`^|wlQy&ypnfh5T%v3EBi^BS%knxU%9~7ru`537WNOA69 z@P2QH_q&;&fv)1M;<;IY+<`N16`7kG$Za_H2|}jZ{vn4uFfq->mv$v_%qS=>wl!&) zvdR*4!(Y(kKr?{=C_e{stBKP$hz4)D)W~(&az3>$ zpwX6?nB`k5_{^!UT25Qw?YE{~8F&(1{r Date: Sat, 17 Jan 2026 14:57:33 -0800 Subject: [PATCH 095/116] Rename snes/NSPC/VS Collection ($0600).bin to snes/NSPC/Pure Sound/VS Collection ($0600).bin --- .../NSPC/{ => Pure Sound}/VS Collection ($0600).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Pure Sound}/VS Collection ($0600).bin (100%) diff --git a/snes/NSPC/VS Collection ($0600).bin b/snes/NSPC/Pure Sound/VS Collection ($0600).bin similarity index 100% rename from snes/NSPC/VS Collection ($0600).bin rename to snes/NSPC/Pure Sound/VS Collection ($0600).bin From fe701b8588a4b9748d553b003b4eab16493ecb39 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:57:46 -0800 Subject: [PATCH 096/116] Update and rename snes/NSPC/VS Collection.s to snes/NSPC/Pure Sound/VS Collection.s --- snes/NSPC/{ => Pure Sound}/VS Collection.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Pure Sound}/VS Collection.s (96%) diff --git a/snes/NSPC/VS Collection.s b/snes/NSPC/Pure Sound/VS Collection.s similarity index 96% rename from snes/NSPC/VS Collection.s rename to snes/NSPC/Pure Sound/VS Collection.s index 5103d5cd..e2bc240e 100644 --- a/snes/NSPC/VS Collection.s +++ b/snes/NSPC/Pure Sound/VS Collection.s @@ -1712,4 +1712,5 @@ 1302: d5 c3 02 mov $02c3+x,a 1305: 1d dec x 1306: 10 c8 bpl $12d0 -1308: 6f ret \ No newline at end of file + +1308: 6f ret From aed2558925befa65f3ac11c8dbf92e5348938f48 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:58:38 -0800 Subject: [PATCH 097/116] Add files via upload --- ...- The March of the Black Queen ($0500).bin | Bin 0 -> 4767 bytes ...re Battle - The March of the Black Queen.s | 2482 +++++++++++++++++ ...s Ogre - Let Us Cling Together ($0600).bin | Bin 0 -> 6307 bytes .../Tactics Ogre - Let Us Cling Together.s | 162 +- 4 files changed, 2564 insertions(+), 80 deletions(-) create mode 100644 snes/NSPC/Quest/Ogre Battle - The March of the Black Queen ($0500).bin create mode 100644 snes/NSPC/Quest/Ogre Battle - The March of the Black Queen.s create mode 100644 snes/NSPC/Quest/Tactics Ogre - Let Us Cling Together ($0600).bin diff --git a/snes/NSPC/Quest/Ogre Battle - The March of the Black Queen ($0500).bin b/snes/NSPC/Quest/Ogre Battle - The March of the Black Queen ($0500).bin new file mode 100644 index 0000000000000000000000000000000000000000..0b44e1f20d326eed1da8a580703f3a3b4cb47d51 GIT binary patch literal 4767 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 W{_=_d;xOR_mm7&Kv9@i=gZ~54^uMV9 literal 0 HcmV?d00001 diff --git a/snes/NSPC/Quest/Ogre Battle - The March of the Black Queen.s b/snes/NSPC/Quest/Ogre Battle - The March of the Black Queen.s new file mode 100644 index 00000000..88a74476 --- /dev/null +++ b/snes/NSPC/Quest/Ogre Battle - The March of the Black Queen.s @@ -0,0 +1,2482 @@ +0500: 20 clrp +0501: cd ff mov x,#$ff +0503: bd mov sp,x +0504: 8f 00 f7 mov $f7,#$00 +0507: 8f ff f4 mov $f4,#$ff +050a: 3f 92 16 call $1692 +050d: 8f ff f5 mov $f5,#$ff +0510: e8 01 mov a,#$01 +0512: c4 1a mov $1a,a +0514: c4 f7 mov $f7,a +0516: 8f ff f6 mov $f6,#$ff +0519: 8f 00 cb mov $cb,#$00 +051c: 3f 66 05 call $0566 +051f: f8 18 mov x,$18 +0521: 30 f6 bmi $0519 +0523: 8b 18 dec $18 +0525: e8 05 mov a,#$05 +0527: 2d push a +0528: e8 1f mov a,#$1f +052a: 2d push a +052b: f5 00 02 mov a,$0200+x +052e: c4 19 mov $19,a +0530: 1c asl a +0531: 5d mov x,a +0532: 1f 35 05 jmp ($0535+x) + +0537: dw $0565 +0539: dw $05c0 +0539: dw $0620 +053b: dw $0565 +053d: dw $06d4 +053f: dw $0565 +0541: dw $0565 +0543: dw $0565 +0545: dw $0940 +0547: dw $0962 +0549: dw $0940 +054b: dw $0984 +054d: dw $09de +054f: dw $09c4 +0551: dw $09de +0553: dw $09f5 +0555: dw $0a10 +0557: dw $0a2e +0559: dw $0a95 +055b: dw $0a99 +055d: dw $15b8 +055f: dw $15c3 +0561: dw $15a9 +0563: dw $0a73 + +0565: 6f ret + +0566: 8d ff mov y,#$ff +0568: cb 18 mov $18,y +056a: e4 fd mov a,$fd +056c: f0 06 beq $0574 +056e: fc inc y +056f: e8 01 mov a,#$01 +0571: d6 00 02 mov $0200+y,a +0574: e4 fe mov a,$fe +0576: f0 06 beq $057e +0578: fc inc y +0579: e8 02 mov a,#$02 +057b: d6 00 02 mov $0200+y,a +057e: 3f 3c 16 call $163c +0581: f8 d1 mov x,$d1 +0583: f0 08 beq $058d +0585: 8f 00 d1 mov $d1,#$00 +0588: 1d dec x +0589: f4 d2 mov a,$d2+x +058b: d4 d8 mov $d8+x,a +058d: e4 d8 mov a,$d8 +058f: f0 1a beq $05ab +0591: 8f 00 d8 mov $d8,#$00 +0594: 68 f0 cmp a,#$f0 +0596: b0 0a bcs $05a2 +0598: c4 cc mov $cc,a +059a: fc inc y +059b: e8 04 mov a,#$04 +059d: d6 00 02 mov $0200+y,a +05a0: 2f 09 bra $05ab +05a2: 28 0f and a,#$0f +05a4: 60 clrc +05a5: 88 08 adc a,#$08 +05a7: fc inc y +05a8: d6 00 02 mov $0200+y,a +05ab: e4 d9 mov a,$d9 +05ad: f0 05 beq $05b4 +05af: 8f 00 d9 mov $d9,#$00 +05b2: c4 cf mov $cf,a +05b4: e4 da mov a,$da +05b6: f0 05 beq $05bd +05b8: 8f 00 da mov $da,#$00 +05bb: c4 d0 mov $d0,a +05bd: cb 18 mov $18,y +05bf: 6f ret + +05c0: e4 cb mov a,$cb +05c2: 5c lsr a +05c3: b0 27 bcs $05ec +05c5: 3f 08 08 call $0808 +05c8: e8 00 mov a,#$00 +05ca: c4 5e mov $5e,a +05cc: c4 5c mov $5c,a +05ce: c4 5d mov $5d,a +05d0: c4 59 mov $59,a +05d2: c4 5a mov $5a,a +05d4: c4 5b mov $5b,a +05d6: c4 00 mov $00,a +05d8: c4 01 mov $01,a +05da: c4 02 mov $02,a +05dc: 3f f2 07 call $07f2 +05df: 3f 53 06 call $0653 +05e2: 3f 89 06 call $0689 +05e5: e4 03 mov a,$03 +05e7: f0 03 beq $05ec +05e9: 3f c3 0a call $0ac3 +05ec: ba a7 movw ya,$a7 +05ee: f0 2f beq $061f +05f0: 28 03 and a,#$03 +05f2: d0 08 bne $05fc +05f4: e8 08 mov a,#$08 +05f6: fd mov y,a +05f7: d6 01 03 mov $0301+y,a +05fa: fe fb dbnz y,$05f7 +05fc: 1a a7 decw $a7 +05fe: d0 0c bne $060c +0600: e5 c0 04 mov a,$04c0 +0603: 68 ff cmp a,#$ff +0605: d0 05 bne $060c +0607: c4 cc mov $cc,a +0609: 5f d4 06 jmp $06d4 + +060c: 60 clrc +060d: e5 70 02 mov a,$0270 +0610: 85 6c 02 adc a,$026c +0613: c5 6c 02 mov $026c,a +0616: e5 71 02 mov a,$0271 +0619: 85 6d 02 adc a,$026d +061c: c5 6d 02 mov $026d,a +061f: 6f ret + +0620: 3f 33 08 call $0833 +0623: 8f 01 59 mov $59,#$01 +0626: e8 08 mov a,#$08 +0628: c4 5c mov $5c,a +062a: c4 5a mov $5a,a +062c: c4 01 mov $01,a +062e: 1c asl a +062f: c4 5d mov $5d,a +0631: c4 5b mov $5b,a +0633: c4 02 mov $02,a +0635: 8f 40 5e mov $5e,#$40 +0638: 8f 40 00 mov $00,#$40 +063b: 3f 53 06 call $0653 +063e: 3f 89 06 call $0689 +0641: e4 e0 mov a,$e0 +0643: d0 04 bne $0649 +0645: e4 03 mov a,$03 +0647: f0 06 beq $064f +0649: 8f 00 e0 mov $e0,#$00 +064c: 3f f4 0a call $0af4 +064f: 3f 91 08 call $0891 +0652: 6f ret + +0653: e4 5a mov a,$5a +0655: 08 40 or a,#$40 +0657: c5 63 06 mov $0663,a +065a: cd 07 mov x,#$07 +065c: 8d 00 mov y,#$00 +065e: f4 1d mov a,$1d+x +0660: 28 48 and a,#$48 +0662: 68 40 cmp a,#$40 +0664: d0 04 bne $066a +0666: db 1d mov $1d+x,y +0668: db 25 mov $25+x,y +066a: 1d dec x +066b: 10 f1 bpl $065e +066d: 8f 5c f2 mov $f2,#$5c +0670: 8f 00 f3 mov $f3,#$00 +0673: 3f 88 13 call $1388 +0676: 3f 5a 07 call $075a +0679: 6f ret + +067a: f8 59 mov x,$59 +067c: f4 63 mov a,$63+x +067e: d0 05 bne $0685 +0680: f4 61 mov a,$61+x +0682: d4 63 mov $63+x,a +0684: 6f ret + +0685: 9c dec a +0686: d4 63 mov $63+x,a +0688: 6f ret + +0689: 8f 00 03 mov $03,#$00 +068c: 8f 08 04 mov $04,#$08 +068f: 2f 06 bra $0697 +0691: ab 5d inc $5d +0693: ab 5d inc $5d +0695: ab 5c inc $5c +0697: f8 5c mov x,$5c +0699: f4 3d mov a,$3d+x +069b: f0 33 beq $06d0 +069d: f8 5d mov x,$5d +069f: fb 86 mov y,$86+x +06a1: 30 15 bmi $06b8 +06a3: f4 85 mov a,$85+x +06a5: 5a 11 cmpw ya,$11 +06a7: d0 09 bne $06b2 +06a9: e8 80 mov a,#$80 +06ab: d4 86 mov $86+x,a +06ad: 3f 39 07 call $0739 +06b0: 2f 06 bra $06b8 +06b2: 9a 10 subw ya,$10 +06b4: d4 85 mov $85+x,a +06b6: db 86 mov $86+x,y +06b8: f4 65 mov a,$65+x +06ba: fb 66 mov y,$66+x +06bc: 9a 10 subw ya,$10 +06be: d0 0c bne $06cc +06c0: f8 5c mov x,$5c +06c2: f4 3d mov a,$3d+x +06c4: 08 80 or a,#$80 +06c6: d4 3d mov $3d+x,a +06c8: c4 03 mov $03,a +06ca: 2f 04 bra $06d0 +06cc: d4 65 mov $65+x,a +06ce: db 66 mov $66+x,y +06d0: 6e 04 be dbnz $04,$0691 +06d3: 6f ret + +; play song? +06d4: e8 01 mov a,#$01 +06d6: c4 cb mov $cb,a +06d8: 9c dec a +06d9: c4 59 mov $59,a +06db: c4 5a mov $5a,a +06dd: c4 5b mov $5b,a +06df: 3f 59 12 call $1259 +06e2: 3f 9c 12 call $129c +06e5: e4 cc mov a,$cc +06e7: 68 ff cmp a,#$ff +06e9: f0 04 beq $06ef +06eb: 68 80 cmp a,#$80 +06ed: b0 1a bcs $0709 +06ef: c4 f4 mov $f4,a +06f1: 68 ff cmp a,#$ff +06f3: f0 43 beq $0738 +06f5: 1c asl a +06f6: 5d mov x,a +06f7: e8 80 mov a,#$80 +06f9: c5 80 01 mov $0180,a +06fc: f5 00 34 mov a,$3400+x +06ff: c4 4e mov $4e,a +0701: fd mov y,a +0702: f5 ff 33 mov a,$33ff+x +0705: c4 4d mov $4d,a +0707: 2f 16 bra $071f +0709: c4 f4 mov $f4,a +070b: 28 7f and a,#$7f +070d: 1c asl a +070e: 5d mov x,a +070f: e8 80 mov a,#$80 +0711: c5 80 01 mov $0180,a +0714: f5 00 1e mov a,$1e00+x +0717: c4 4e mov $4e,a +0719: fd mov y,a +071a: f5 ff 1d mov a,$1dff+x +071d: c4 4d mov $4d,a +071f: 3f df 11 call $11df +0722: b0 14 bcs $0738 +0724: 3f 2e 12 call $122e +0727: 3f c3 0a call $0ac3 +072a: e5 6b 03 mov a,$036b +072d: c4 fa mov $fa,a +072f: e8 00 mov a,#$00 +0731: c5 6a 03 mov $036a,a +0734: e4 4f mov a,$4f +0736: c4 f1 mov $f1,a +0738: 6f ret + +0739: 4d push x +073a: f8 5c mov x,$5c +073c: f4 2d mov a,$2d+x +073e: 10 18 bpl $0758 +0740: 28 7f and a,#$7f +0742: d4 2d mov $2d+x,a +0744: 28 07 and a,#$07 +0746: 5d mov x,a +0747: f4 1d mov a,$1d+x +0749: 08 40 or a,#$40 +074b: d4 1d mov $1d+x,a +074d: f5 45 17 mov a,$1745+x +0750: 8f 5c f2 mov $f2,#$5c +0753: c4 f3 mov $f3,a +0755: 3f 07 0d call $0d07 +0758: ce pop x +0759: 6f ret + +075a: f8 59 mov x,$59 +075c: 8f 00 00 mov $00,#$00 +075f: 8f 08 01 mov $01,#$08 +0762: 8f 00 03 mov $03,#$00 +0765: f4 57 mov a,$57+x +0767: c4 05 mov $05,a +0769: e4 5a mov a,$5a +076b: c5 7e 07 mov $077e,a +076e: f8 00 mov x,$00 +0770: f4 25 mov a,$25+x +0772: f0 28 beq $079c +0774: c4 02 mov $02,a +0776: f4 1d mov a,$1d+x +0778: 10 22 bpl $079c +077a: fd mov y,a +077b: 28 08 and a,#$08 +077d: 48 00 eor a,#$00 +077f: d0 1b bne $079c +0781: dd mov a,y +0782: 28 0f and a,#$0f +0784: c4 06 mov $06,a +0786: 78 ff 02 cmp $02,#$ff +0789: d0 0c bne $0797 +078b: 3f e0 07 call $07e0 +078e: eb 00 mov y,$00 +0790: f6 45 17 mov a,$1745+y +0793: 04 03 or a,$03 +0795: c4 03 mov $03,a +0797: e4 06 mov a,$06 +0799: 3f bf 07 call $07bf +079c: ab 00 inc $00 +079e: 6e 01 cd dbnz $01,$076e +07a1: e4 03 mov a,$03 +07a3: f0 13 beq $07b8 +07a5: f8 59 mov x,$59 +07a7: e4 05 mov a,$05 +07a9: d4 57 mov $57+x,a +07ab: 8f 3d f2 mov $f2,#$3d +07ae: fa 58 f3 mov ($f3),($58) +07b1: 8f 4c f2 mov $f2,#$4c +07b4: fa 03 f3 mov ($f3),($03) +07b7: 6f ret + +07b8: 8f 3d f2 mov $f2,#$3d +07bb: fa 58 f3 mov ($f3),($58) +07be: 6f ret + +07bf: 9f xcn a +07c0: 5c lsr a +07c1: 5d mov x,a +07c2: eb 00 mov y,$00 +07c4: dd mov a,y +07c5: 9f xcn a +07c6: fd mov y,a +07c7: cb f2 mov $f2,y +07c9: 8d 08 mov y,#$08 +07cb: 4b 02 lsr $02 +07cd: 90 05 bcc $07d4 +07cf: f5 00 01 mov a,$0100+x +07d2: c4 f3 mov $f3,a +07d4: 3d inc x +07d5: ab f2 inc $f2 +07d7: fe f2 dbnz y,$07cb +07d9: e8 00 mov a,#$00 +07db: f8 00 mov x,$00 +07dd: d4 25 mov $25+x,a +07df: 6f ret + +07e0: fd mov y,a +07e1: f6 2d 00 mov a,$002d+y +07e4: 28 20 and a,#$20 +07e6: f0 09 beq $07f1 +07e8: f8 00 mov x,$00 +07ea: f5 45 17 mov a,$1745+x +07ed: 04 05 or a,$05 +07ef: c4 05 mov $05,a +07f1: 6f ret + +07f2: e5 6a 03 mov a,$036a +07f5: f0 0e beq $0805 +07f7: e8 00 mov a,#$00 +07f9: c5 6a 03 mov $036a,a +07fc: e5 6b 03 mov a,$036b +07ff: c4 fa mov $fa,a +0801: e4 4f mov a,$4f +0803: c4 f1 mov $f1,a +0805: 6f ret + +0806: 2d push a +0807: 2d push a +0808: e5 80 01 mov a,$0180 +080b: 68 c0 cmp a,#$c0 +080d: 90 23 bcc $0832 +080f: 8d 00 mov y,#$00 +0811: cc 80 01 mov $0180,y +0814: cd 07 mov x,#$07 +0816: db 3d mov $3d+x,y +0818: db 2d mov $2d+x,y +081a: f4 1d mov a,$1d+x +081c: 28 0f and a,#$0f +081e: 9f xcn a +081f: 30 03 bmi $0824 +0821: 3f 1e 17 call $171e +0824: 1d dec x +0825: 10 ef bpl $0816 +0827: ae pop a +0828: ae pop a +0829: 12 4f clr0 $4f +082b: e4 4f mov a,$4f +082d: c4 f1 mov $f1,a +082f: 8f ff f4 mov $f4,#$ff +0832: 6f ret + +0833: 8f 00 00 mov $00,#$00 +0836: e5 81 01 mov a,$0181 +0839: 68 c0 cmp a,#$c0 +083b: 90 26 bcc $0863 +083d: e8 00 mov a,#$00 +083f: c5 81 01 mov $0181,a +0842: cd 03 mov x,#$03 +0844: d4 45 mov $45+x,a +0846: d4 35 mov $35+x,a +0848: 1d dec x +0849: 10 f9 bpl $0844 +084b: cd 03 mov x,#$03 +084d: 8d 00 mov y,#$00 +084f: f4 1d mov a,$1d+x +0851: 9f xcn a +0852: 10 09 bpl $085d +0854: 28 70 and a,#$70 +0856: 68 40 cmp a,#$40 +0858: b0 03 bcs $085d +085a: 3f 1e 17 call $171e +085d: 1d dec x +085e: 10 ef bpl $084f +0860: 8f ff f5 mov $f5,#$ff +0863: e5 82 01 mov a,$0182 +0866: 68 c0 cmp a,#$c0 +0868: 90 26 bcc $0890 +086a: e8 00 mov a,#$00 +086c: c5 82 01 mov $0182,a +086f: cd 03 mov x,#$03 +0871: d4 49 mov $49+x,a +0873: d4 39 mov $39+x,a +0875: 1d dec x +0876: 10 f9 bpl $0871 +0878: cd 07 mov x,#$07 +087a: 8d 00 mov y,#$00 +087c: f4 1d mov a,$1d+x +087e: 9f xcn a +087f: 10 09 bpl $088a +0881: 28 70 and a,#$70 +0883: 68 40 cmp a,#$40 +0885: 90 03 bcc $088a +0887: 3f 1e 17 call $171e +088a: 1d dec x +088b: 10 ef bpl $087c +088d: 8f ff f6 mov $f6,#$ff +0890: 6f ret + +0891: cd 00 mov x,#$00 +0893: d8 00 mov $00,x +0895: f4 cf mov a,$cf+x +0897: f0 3a beq $08d3 +0899: 68 ff cmp a,#$ff +089b: f0 1b beq $08b8 +089d: 68 e0 cmp a,#$e0 +089f: 90 0d bcc $08ae +08a1: 80 setc +08a2: a8 60 sbc a,#$60 +08a4: d4 cd mov $cd+x,a +08a6: c4 01 mov $01,a +08a8: e8 00 mov a,#$00 +08aa: d4 a5 mov $a5+x,a +08ac: 2f 10 bra $08be +08ae: 28 80 and a,#$80 +08b0: d4 a5 mov $a5+x,a +08b2: f4 cf mov a,$cf+x +08b4: 28 7f and a,#$7f +08b6: f0 1b beq $08d3 +08b8: d4 cd mov $cd+x,a +08ba: c4 01 mov $01,a +08bc: e8 00 mov a,#$00 +08be: d4 cf mov $cf+x,a +08c0: 4d push x +08c1: 3f f4 12 call $12f4 +08c4: 78 ff 01 cmp $01,#$ff +08c7: f0 09 beq $08d2 +08c9: 3f 3e 13 call $133e +08cc: 3f da 08 call $08da +08cf: 8f 01 e0 mov $e0,#$01 +08d2: ce pop x +08d3: 60 clrc +08d4: 3d inc x +08d5: c8 02 cmp x,#$02 +08d7: d0 ba bne $0893 +08d9: 6f ret + +08da: f8 00 mov x,$00 +08dc: e8 80 mov a,#$80 +08de: d5 81 01 mov $0181+x,a +08e1: f4 cd mov a,$cd+x +08e3: d4 f5 mov $f5+x,a +08e5: 68 80 cmp a,#$80 +08e7: 90 0e bcc $08f7 +08e9: 1c asl a +08ea: 5d mov x,a +08eb: f5 00 1f mov a,$1f00+x +08ee: c4 0a mov $0a,a +08f0: f5 01 1f mov a,$1f01+x +08f3: c4 0b mov $0b,a +08f5: 2f 0d bra $0904 +08f7: 9c dec a +08f8: 1c asl a +08f9: 5d mov x,a +08fa: f5 00 1e mov a,$1e00+x +08fd: c4 0a mov $0a,a +08ff: f5 01 1e mov a,$1e01+x +0902: c4 0b mov $0b,a +0904: e4 00 mov a,$00 +0906: 1c asl a +0907: 1c asl a +0908: c4 02 mov $02,a +090a: 1c asl a +090b: c4 03 mov $03,a +090d: 8d 00 mov y,#$00 +090f: f7 0a mov a,($0a)+y +0911: c4 05 mov $05,a +0913: fc inc y +0914: f7 0a mov a,($0a)+y +0916: f0 27 beq $093f +0918: fc inc y +0919: f8 03 mov x,$03 +091b: d5 1b 02 mov $021b+x,a +091e: e4 05 mov a,$05 +0920: d5 1a 02 mov $021a+x,a +0923: f8 02 mov x,$02 +0925: f5 45 17 mov a,$1745+x +0928: 04 60 or a,$60 +092a: c4 60 mov $60,a +092c: 7d mov a,x +092d: 08 c8 or a,#$c8 +092f: d4 45 mov $45+x,a +0931: e8 00 mov a,#$00 +0933: d4 35 mov $35+x,a +0935: ab 02 inc $02 +0937: ab 03 inc $03 +0939: ab 03 inc $03 +093b: ad 08 cmp y,#$08 +093d: d0 d0 bne $090f +093f: 6f ret + +0940: e5 bf 04 mov a,$04bf +0943: d0 1c bne $0961 +0945: 8f 5c f2 mov $f2,#$5c +0948: 8f ff f3 mov $f3,#$ff +094b: 8f 0d f2 mov $f2,#$0d +094e: c4 f3 mov $f3,a +0950: bc inc a +0951: c4 cb mov $cb,a +0953: e4 4f mov a,$4f +0955: c5 bf 04 mov $04bf,a +0958: e8 00 mov a,#$00 +095a: c4 4f mov $4f,a +095c: c4 f1 mov $f1,a +095e: 3f 9d 0a call $0a9d +0961: 6f ret + +0962: e5 bf 04 mov a,$04bf +0965: f0 fa beq $0961 +0967: cd 00 mov x,#$00 +0969: c9 bf 04 mov $04bf,x +096c: 8f 5c f2 mov $f2,#$5c +096f: d8 f3 mov $f3,x +0971: e9 dc 03 mov x,$03dc +0974: 8f 0d f2 mov $f2,#$0d +0977: d8 f3 mov $f3,x +0979: c4 4f mov $4f,a +097b: c4 f1 mov $f1,a +097d: 8f 4c f2 mov $f2,#$4c +0980: fa 1c f3 mov ($f3),($1c) +0983: 6f ret + +0984: e5 80 01 mov a,$0180 +0987: f0 14 beq $099d +0989: e5 c0 04 mov a,$04c0 +098c: d0 0f bne $099d +098e: e5 6d 02 mov a,$026d +0991: f0 0a beq $099d +0993: c5 c0 04 mov $04c0,a +0996: 5c lsr a +0997: fd mov y,a +0998: e8 05 mov a,#$05 +099a: 3f 79 0a call $0a79 +099d: 6f ret + +099e: e5 80 01 mov a,$0180 +09a1: f0 20 beq $09c3 +09a3: e5 c0 04 mov a,$04c0 +09a6: d0 1b bne $09c3 +09a8: e5 6d 02 mov a,$026d +09ab: f0 16 beq $09c3 +09ad: c5 c0 04 mov $04c0,a +09b0: e8 00 mov a,#$00 +09b2: c5 6d 02 mov $026d,a +09b5: 8f 01 a7 mov $a7,#$01 +09b8: 8f 00 a8 mov $a8,#$00 +09bb: e8 08 mov a,#$08 +09bd: fd mov y,a +09be: d6 01 03 mov $0301+y,a +09c1: fe fb dbnz y,$09be +09c3: 6f ret + +09c4: e5 80 01 mov a,$0180 +09c7: f0 14 beq $09dd +09c9: e5 c0 04 mov a,$04c0 +09cc: d0 0f bne $09dd +09ce: e5 6d 02 mov a,$026d +09d1: f0 0a beq $09dd +09d3: c5 c0 04 mov $04c0,a +09d6: 8d 00 mov y,#$00 +09d8: e4 ca mov a,$ca +09da: 3f 79 0a call $0a79 +09dd: 6f ret + +09de: e5 80 01 mov a,$0180 +09e1: f0 11 beq $09f4 +09e3: ec c0 04 mov y,$04c0 +09e6: f0 0c beq $09f4 +09e8: d0 00 bne $09ea +09ea: cd 00 mov x,#$00 +09ec: c9 c0 04 mov $04c0,x +09ef: e4 ca mov a,$ca +09f1: 3f 79 0a call $0a79 +09f4: 6f ret + +09f5: e5 80 01 mov a,$0180 +09f8: f0 15 beq $0a0f +09fa: e5 c0 04 mov a,$04c0 +09fd: d0 10 bne $0a0f +09ff: e5 6d 02 mov a,$026d +0a02: f0 0b beq $0a0f +0a04: 8d ff mov y,#$ff +0a06: cc c0 04 mov $04c0,y +0a09: fc inc y +0a0a: e4 ca mov a,$ca +0a0c: 3f 79 0a call $0a79 +0a0f: 6f ret + +0a10: 8f 4c f2 mov $f2,#$4c +0a13: 8f 00 f3 mov $f3,#$00 +0a16: 8f 5c f2 mov $f2,#$5c +0a19: 8f ff f3 mov $f3,#$ff +0a1c: e8 c0 mov a,#$c0 +0a1e: c5 80 01 mov $0180,a +0a21: c5 81 01 mov $0181,a +0a24: c5 82 01 mov $0182,a +0a27: 8f 5c f2 mov $f2,#$5c +0a2a: 8f 00 f3 mov $f3,#$00 +0a2d: 6f ret + +0a2e: 3f 10 0a call $0a10 +0a31: e8 ff mov a,#$ff +0a33: fa 5c f2 mov ($f2),($5c) +0a36: c4 f3 mov $f3,a +0a38: fa 6c f2 mov ($f2),($6c) +0a3b: c4 f3 mov $f3,a +0a3d: 8d 00 mov y,#$00 +0a3f: dd mov a,y +0a40: cd 07 mov x,#$07 +0a42: c4 f2 mov $f2,a +0a44: cb f3 mov $f3,y +0a46: bc inc a +0a47: c4 f2 mov $f2,a +0a49: cb f3 mov $f3,y +0a4b: bc inc a +0a4c: c4 f2 mov $f2,a +0a4e: cb f3 mov $f3,y +0a50: bc inc a +0a51: c4 f2 mov $f2,a +0a53: cb f3 mov $f3,y +0a55: bc inc a +0a56: c4 f2 mov $f2,a +0a58: cb f3 mov $f3,y +0a5a: bc inc a +0a5b: c4 f2 mov $f2,a +0a5d: cb f3 mov $f3,y +0a5f: bc inc a +0a60: c4 f2 mov $f2,a +0a62: cb f3 mov $f3,y +0a64: bc inc a +0a65: c4 f2 mov $f2,a +0a67: cb f3 mov $f3,y +0a69: bc inc a +0a6a: 60 clrc +0a6b: 88 08 adc a,#$08 +0a6d: 1d dec x +0a6e: 10 d2 bpl $0a42 +0a70: 5f 00 05 jmp $0500 + +0a73: 8f ff cc mov $cc,#$ff +0a76: 5f d4 06 jmp $06d4 + +0a79: cd 00 mov x,#$00 +0a7b: c9 6c 02 mov $026c,x +0a7e: d8 a8 mov $a8,x +0a80: c9 6a 02 mov $026a,x +0a83: 5d mov x,a +0a84: c4 a7 mov $a7,a +0a86: dd mov a,y +0a87: 80 setc +0a88: a5 6d 02 sbc a,$026d +0a8b: 3f 7a 16 call $167a +0a8e: c5 70 02 mov $0270,a +0a91: cc 71 02 mov $0271,y +0a94: 6f ret + +0a95: 8f 00 1b mov $1b,#$00 +0a98: 6f ret + +0a99: 8f 01 1b mov $1b,#$01 +0a9c: 6f ret + +0a9d: cd 00 mov x,#$00 +0a9f: d8 00 mov $00,x +0aa1: 4b 00 lsr $00 +0aa3: f4 1d mov a,$1d+x +0aa5: 10 0f bpl $0ab6 +0aa7: 1c asl a +0aa8: 30 0c bmi $0ab6 +0aaa: 5c lsr a +0aab: 28 0f and a,#$0f +0aad: fd mov y,a +0aae: f6 af 04 mov a,$04af+y +0ab1: 10 03 bpl $0ab6 +0ab3: 18 80 00 or $00,#$80 +0ab6: e8 00 mov a,#$00 +0ab8: d4 25 mov $25+x,a +0aba: 3d inc x +0abb: c8 08 cmp x,#$08 +0abd: d0 e2 bne $0aa1 +0abf: fa 00 1c mov ($1c),($00) +0ac2: 6f ret + +0ac3: e5 c0 04 mov a,$04c0 +0ac6: 68 ff cmp a,#$ff +0ac8: d0 05 bne $0acf +0aca: e5 6d 02 mov a,$026d +0acd: f0 1f beq $0aee +0acf: 8f 00 5e mov $5e,#$00 +0ad2: 8f 00 5c mov $5c,#$00 +0ad5: 8f 00 5d mov $5d,#$00 +0ad8: fa 5f 00 mov ($00),($5f) +0adb: 3f 2b 0b call $0b2b +0ade: e4 00 mov a,$00 +0ae0: c4 5f mov $5f,a +0ae2: d0 0f bne $0af3 +0ae4: 3f df 11 call $11df +0ae7: b0 05 bcs $0aee +0ae9: 3f 2e 12 call $122e +0aec: 2f d5 bra $0ac3 +0aee: e8 c0 mov a,#$c0 +0af0: c5 80 01 mov $0180,a +0af3: 6f ret + +0af4: fa 60 00 mov ($00),($60) +0af7: 8f 40 5e mov $5e,#$40 +0afa: 8f 01 59 mov $59,#$01 +0afd: 8f 08 5a mov $5a,#$08 +0b00: 8f 10 5b mov $5b,#$10 +0b03: 8f 08 5c mov $5c,#$08 +0b06: 8f 10 5d mov $5d,#$10 +0b09: 3f 2b 0b call $0b2b +0b0c: e4 00 mov a,$00 +0b0e: 64 60 cmp a,$60 +0b10: f0 18 beq $0b2a +0b12: 2d push a +0b13: 8d 00 mov y,#$00 +0b15: cd 00 mov x,#$00 +0b17: 28 0f and a,#$0f +0b19: d0 03 bne $0b1e +0b1b: 3f 16 0d call $0d16 +0b1e: ae pop a +0b1f: 8d 01 mov y,#$01 +0b21: cd 04 mov x,#$04 +0b23: 28 f0 and a,#$f0 +0b25: d0 03 bne $0b2a +0b27: 3f 16 0d call $0d16 +0b2a: 6f ret + +0b2b: 8f 08 01 mov $01,#$08 +0b2e: f8 5c mov x,$5c +0b30: f4 3d mov a,$3d+x +0b32: 10 07 bpl $0b3b +0b34: 28 7f and a,#$7f +0b36: d4 3d mov $3d+x,a +0b38: 3f 54 0b call $0b54 +0b3b: 60 clrc +0b3c: 6b 00 ror $00 +0b3e: 90 02 bcc $0b42 +0b40: e2 00 set7 $00 +0b42: e4 00 mov a,$00 +0b44: f0 0d beq $0b53 +0b46: 60 clrc +0b47: 98 08 5e adc $5e,#$08 +0b4a: ab 5d inc $5d +0b4c: ab 5d inc $5d +0b4e: ab 5c inc $5c +0b50: 6e 01 db dbnz $01,$0b2e +0b53: 6f ret + +0b54: f8 5d mov x,$5d +0b56: f5 0a 02 mov a,$020a+x +0b59: c4 0a mov $0a,a +0b5b: f5 0b 02 mov a,$020b+x +0b5e: c4 0b mov $0b,a +0b60: 3f bf 0b call $0bbf +0b63: 90 03 bcc $0b68 +0b65: 12 00 clr0 $00 +0b67: 6f ret + +0b68: f8 5d mov x,$5d +0b6a: e4 03 mov a,$03 +0b6c: 8d 00 mov y,#$00 +0b6e: 7a 0a addw ya,$0a +0b70: d5 0a 02 mov $020a+x,a +0b73: dd mov a,y +0b74: d5 0b 02 mov $020b+x,a +0b77: 6f ret + +0b78: 3f 86 0c call $0c86 +0b7b: 0d push psw +0b7c: b0 03 bcs $0b81 +0b7e: 3f 36 0d call $0d36 +0b81: 3f 0a 0e call $0e0a +0b84: 8e pop psw +0b85: 3f a0 0e call $0ea0 +0b88: f8 5c mov x,$5c +0b8a: f5 d2 02 mov a,$02d2+x +0b8d: f0 03 beq $0b92 +0b8f: d5 02 03 mov $0302+x,a +0b92: ab 03 inc $03 +0b94: 60 clrc +0b95: 6f ret + +0b96: 3f 86 0c call $0c86 +0b99: 0d push psw +0b9a: b0 03 bcs $0b9f +0b9c: 3f 50 0d call $0d50 +0b9f: 3f 0a 0e call $0e0a +0ba2: 8e pop psw +0ba3: 3f a0 0e call $0ea0 +0ba6: f8 5c mov x,$5c +0ba8: f5 d2 02 mov a,$02d2+x +0bab: f0 03 beq $0bb0 +0bad: d5 02 03 mov $0302+x,a +0bb0: ab 03 inc $03 +0bb2: 60 clrc +0bb3: 6f ret + +0bb4: 3f 0a 0e call $0e0a +0bb7: 80 setc +0bb8: 3f a0 0e call $0ea0 +0bbb: ab 03 inc $03 +0bbd: 60 clrc +0bbe: 6f ret + +0bbf: 8f ff 03 mov $03,#$ff +0bc2: ab 03 inc $03 +0bc4: eb 03 mov y,$03 +0bc6: f7 0a mov a,($0a)+y +0bc8: f0 27 beq $0bf1 +0bca: 10 20 bpl $0bec +0bcc: 68 c8 cmp a,#$c8 +0bce: 90 a8 bcc $0b78 +0bd0: 68 e0 cmp a,#$e0 +0bd2: b0 0a bcs $0bde +0bd4: 68 ca cmp a,#$ca +0bd6: b0 be bcs $0b96 +0bd8: 68 c9 cmp a,#$c9 +0bda: f0 d8 beq $0bb4 +0bdc: 2f e4 bra $0bc2 +; dispatch vcmd in A (??-ff) +0bde: 1c asl a +0bdf: 80 setc +0be0: a8 c0 sbc a,#$c0 +0be2: 5d mov x,a +0be3: e8 0b mov a,#$0b +0be5: 2d push a +0be6: e8 c2 mov a,#$c2 +0be8: 2d push a +0be9: 1f 28 0c jmp ($0c28+x) +; vcmd 01-7f +0bec: 3f 6e 0f call $0f6e +0bef: 2f d1 bra $0bc2 +0bf1: 3f f8 0b call $0bf8 +0bf4: d0 cc bne $0bc2 +0bf6: 80 setc +0bf7: 6f ret + +; vcmd 00 - end repeat/return +0bf8: f8 5c mov x,$5c +0bfa: f5 9f 04 mov a,$049f+x +0bfd: f0 28 beq $0c27 +0bff: 68 ff cmp a,#$ff +0c01: f0 06 beq $0c09 +0c03: 9c dec a +0c04: d5 9f 04 mov $049f+x,a +0c07: f0 10 beq $0c19 +0c09: f8 5d mov x,$5d +0c0b: f5 5f 04 mov a,$045f+x +0c0e: c4 0a mov $0a,a +0c10: f5 60 04 mov a,$0460+x +0c13: c4 0b mov $0b,a +0c15: 8f ff 03 mov $03,#$ff +0c18: 6f ret + +0c19: c4 03 mov $03,a +0c1b: f8 5d mov x,$5d +0c1d: f5 7f 04 mov a,$047f+x +0c20: c4 0a mov $0a,a +0c22: f5 80 04 mov a,$0480+x +0c25: c4 0b mov $0b,a +0c27: 6f ret + +; vcmd dispatch table +0c28: dw $10aa ; e0 - set instrument +0c2a: dw $106a ; e1 - pan +0c2c: dw $10a5 ; e2 - skip 2 bytes +0c2e: dw $10d2 ; e3 - vibrato on +0c30: dw $1103 ; e4 - vibrato off +0c32: dw $0fb9 ; e5 - master volume +0c34: dw $0ff8 ; e6 - master volume fade +0c36: dw $0f9b ; e7 - tempo +0c38: dw $0fb4 ; e8 - skip 2 bytes +0c3a: dw $0f90 ; e9 - global transpose +0c3c: dw $105f ; ea - per-voice transpose +0c3e: dw $111b ; eb - tremolo on +0c40: dw $110f ; ec - tremolo off +0c42: dw $1020 ; ed - volume +0c44: dw $1035 ; ee - volume fade +0c46: dw $1179 ; ef - call subroutine +0c48: dw $1100 ; f0 - skip 1 byte +0c4a: dw $114a ; f1 - pitch envelope +0c4c: dw $1178 ; f2 - nop +0c4e: dw $1103 ; f3 - vibrato off +0c50: dw $10c9 ; f4 - set perc patch base +0c52: dw $1630 ; f5 - skip 3 bytes +0c54: dw $163c ; f6 - read/write APU port 3 +0c56: dw $1636 ; f7 - skip 3 bytes +0c58: dw $163c ; f8 - read/write APU port 3 +0c5a: dw $1178 ; f9 - nop +0c5c: dw $10c9 ; fa - set perc patch base +0c5e: dw $107b ; fb - (2 bytes) +0c60: dw $163c ; fc - read/write APU port 3 +0c62: dw $119f ; fd - (4 bytes) +0c64: dw $0c69 ; fe - (2 bytes) + +; vcmd fe +0c69: fc inc y +0c6a: f7 0a mov a,($0a)+y +0c6c: 68 04 cmp a,#$04 +0c6e: b0 0c bcs $0c7c +0c70: 5d mov x,a +0c71: bc inc a +0c72: c4 d1 mov $d1,a +0c74: fc inc y +0c75: cb 03 mov $03,y +0c77: f7 0a mov a,($0a)+y +0c79: d4 d2 mov $d2+x,a +0c7b: 6f ret + +0c7c: 5d mov x,a +0c7d: bc inc a +0c7e: fc inc y +0c7f: cb 03 mov $03,y +0c81: f7 0a mov a,($0a)+y +0c83: d4 00 mov $00+x,a +0c85: 6f ret + +0c86: 2d push a +0c87: cd 07 mov x,#$07 +0c89: f4 1d mov a,$1d+x +0c8b: 10 43 bpl $0cd0 +0c8d: 1c asl a +0c8e: 30 40 bmi $0cd0 +0c90: 1d dec x +0c91: 10 f6 bpl $0c89 +0c93: f8 5c mov x,$5c +0c95: f5 87 17 mov a,$1787+x +0c98: c4 07 mov $07,a +0c9a: cd 07 mov x,#$07 +0c9c: 8f 00 04 mov $04,#$00 +0c9f: f4 1d mov a,$1d+x +0ca1: 28 0f and a,#$0f +0ca3: fd mov y,a +0ca4: f6 87 17 mov a,$1787+y +0ca7: 64 04 cmp a,$04 +0ca9: 90 06 bcc $0cb1 +0cab: c4 04 mov $04,a +0cad: d8 05 mov $05,x +0caf: cb 06 mov $06,y +0cb1: 1d dec x +0cb2: 10 eb bpl $0c9f +0cb4: 69 04 07 cmp ($07),($04) +0cb7: b0 4c bcs $0d05 +0cb9: f8 06 mov x,$06 +0cbb: f4 2d mov a,$2d+x +0cbd: 28 7f and a,#$7f +0cbf: d4 2d mov $2d+x,a +0cc1: f8 05 mov x,$05 +0cc3: f5 45 17 mov a,$1745+x +0cc6: 8f 5c f2 mov $f2,#$5c +0cc9: c4 f3 mov $f3,a +0ccb: 3f 07 0d call $0d07 +0cce: f8 05 mov x,$05 +0cd0: d8 05 mov $05,x +0cd2: e8 ff mov a,#$ff +0cd4: d4 25 mov $25+x,a +0cd6: e4 5c mov a,$5c +0cd8: 08 80 or a,#$80 +0cda: d4 1d mov $1d+x,a +0cdc: f8 5c mov x,$5c +0cde: f4 2d mov a,$2d+x +0ce0: 28 f8 and a,#$f8 +0ce2: 04 05 or a,$05 +0ce4: 08 80 or a,#$80 +0ce6: d4 2d mov $2d+x,a +0ce8: f8 59 mov x,$59 +0cea: eb 05 mov y,$05 +0cec: 2d push a +0ced: 28 10 and a,#$10 +0cef: f0 07 beq $0cf8 +0cf1: f4 55 mov a,$55+x +0cf3: 16 45 17 or a,$1745+y +0cf6: d4 55 mov $55+x,a +0cf8: ae pop a +0cf9: 28 20 and a,#$20 +0cfb: f0 07 beq $0d04 +0cfd: f4 57 mov a,$57+x +0cff: 16 45 17 or a,$1745+y +0d02: d4 57 mov $57+x,a +0d04: 60 clrc +0d05: ae pop a +0d06: 6f ret + +0d07: 48 ff eor a,#$ff +0d09: fd mov y,a +0d0a: f8 59 mov x,$59 +0d0c: 34 55 and a,$55+x +0d0e: d4 55 mov $55+x,a +0d10: dd mov a,y +0d11: 34 57 and a,$57+x +0d13: d4 57 mov $57+x,a +0d15: 6f ret + +0d16: fa 00 60 mov ($60),($00) +0d19: f6 81 01 mov a,$0181+y +0d1c: 10 17 bpl $0d35 +0d1e: e8 c0 mov a,#$c0 +0d20: d6 81 01 mov $0181+y,a +0d23: e8 00 mov a,#$00 +0d25: d4 35 mov $35+x,a +0d27: d4 36 mov $36+x,a +0d29: d4 37 mov $37+x,a +0d2b: d4 38 mov $38+x,a +0d2d: d4 45 mov $45+x,a +0d2f: d4 46 mov $46+x,a +0d31: d4 47 mov $47+x,a +0d33: d4 48 mov $48+x,a +0d35: 6f ret + +0d36: f8 59 mov x,$59 +0d38: 28 7f and a,#$7f +0d3a: 60 clrc +0d3b: 95 12 03 adc a,$0312+x +0d3e: f8 5c mov x,$5c +0d40: 95 14 03 adc a,$0314+x +0d43: 68 48 cmp a,#$48 +0d45: 90 02 bcc $0d49 +0d47: e8 47 mov a,#$47 +0d49: 3f 1a 0f call $0f1a +0d4c: 3f dc 0e call $0edc +0d4f: 6f ret + +0d50: f8 5c mov x,$5c +0d52: 75 df 03 cmp a,$03df+x +0d55: f0 29 beq $0d80 +0d57: d5 df 03 mov $03df+x,a +0d5a: 80 setc +0d5b: a8 ca sbc a,#$ca +0d5d: 60 clrc +0d5e: 85 de 03 adc a,$03de +0d61: eb 59 mov y,$59 +0d63: f0 02 beq $0d67 +0d65: 88 30 adc a,#$30 +0d67: 2d push a +0d68: f4 2d mov a,$2d+x +0d6a: 28 d7 and a,#$d7 +0d6c: c4 05 mov $05,a +0d6e: 8f 00 06 mov $06,#$00 +0d71: ae pop a +0d72: 3f 84 0d call $0d84 +0d75: e8 24 mov a,#$24 +0d77: f8 5c mov x,$5c +0d79: 60 clrc +0d7a: 95 14 03 adc a,$0314+x +0d7d: 3f 1a 0f call $0f1a +0d80: 3f dc 0e call $0edc +0d83: 6f ret + +0d84: 8f 00 06 mov $06,#$00 +0d87: 8d 06 mov y,#$06 +0d89: 68 fc cmp a,#$fc +0d8b: 90 0e bcc $0d9b +0d8d: 80 setc +0d8e: a8 fc sbc a,#$fc +0d90: cf mul ya +0d91: 60 clrc +0d92: 88 f8 adc a,#$f8 +0d94: c4 0c mov $0c,a +0d96: 8f 1d 0d mov $0d,#$1d +0d99: 2f 14 bra $0daf +0d9b: 8f 1a 0d mov $0d,#$1a +0d9e: 8f 00 0c mov $0c,#$00 +0da1: cf mul ya +0da2: 7a 0c addw ya,$0c +0da4: f8 59 mov x,$59 +0da6: f0 05 beq $0dad +0da8: fc inc y +0da9: fc inc y +0daa: 8f 40 06 mov $06,#$40 +0dad: da 0c movw $0c,ya +0daf: 8d 00 mov y,#$00 +0db1: f7 0c mov a,($0c)+y +0db3: 10 1f bpl $0dd4 +0db5: 1c asl a +0db6: 30 15 bmi $0dcd +0db8: 5c lsr a +0db9: 38 e0 50 and $50,#$e0 +0dbc: 28 1f and a,#$1f +0dbe: 04 50 or a,$50 +0dc0: c4 50 mov $50,a +0dc2: 8f 6c f2 mov $f2,#$6c +0dc5: c4 f3 mov $f3,a +0dc7: a2 05 set5 $05 +0dc9: e8 00 mov a,#$00 +0dcb: 2f 11 bra $0dde +0dcd: 5c lsr a +0dce: 48 7f eor a,#$7f +0dd0: 88 3c adc a,#$3c +0dd2: 2f 0a bra $0dde +0dd4: 60 clrc +0dd5: 84 06 adc a,$06 +0dd7: 68 70 cmp a,#$70 +0dd9: 90 03 bcc $0dde +0ddb: 80 setc +0ddc: a8 70 sbc a,#$70 +0dde: f8 5e mov x,$5e +0de0: d5 04 01 mov $0104+x,a +0de3: fc inc y +0de4: f7 0c mov a,($0c)+y +0de6: d5 05 01 mov $0105+x,a +0de9: fc inc y +0dea: f7 0c mov a,($0c)+y +0dec: d5 06 01 mov $0106+x,a +0def: fc inc y +0df0: f7 0c mov a,($0c)+y +0df2: d5 07 01 mov $0107+x,a +0df5: f8 5d mov x,$5d +0df7: fc inc y +0df8: f7 0c mov a,($0c)+y +0dfa: d5 44 03 mov $0344+x,a +0dfd: fc inc y +0dfe: f7 0c mov a,($0c)+y +0e00: d5 45 03 mov $0345+x,a +0e03: f8 5c mov x,$5c +0e05: e4 05 mov a,$05 +0e07: d4 2d mov $2d+x,a +0e09: 6f ret + +0e0a: f8 5c mov x,$5c +0e0c: f5 2a 02 mov a,$022a+x +0e0f: f8 5d mov x,$5d +0e11: d4 65 mov $65+x,a +0e13: e8 00 mov a,#$00 +0e15: d4 66 mov $66+x,a +0e17: 8f 80 04 mov $04,#$80 +0e1a: 8f 80 05 mov $05,#$80 +0e1d: eb 03 mov y,$03 +0e1f: 3f 86 0e call $0e86 +0e22: f0 08 beq $0e2c +0e24: 68 80 cmp a,#$80 +0e26: 90 05 bcc $0e2d +0e28: 68 c8 cmp a,#$c8 +0e2a: f0 1c beq $0e48 +0e2c: 6f ret + +0e2d: c4 04 mov $04,a +0e2f: 3f 86 0e call $0e86 +0e32: f0 08 beq $0e3c +0e34: 68 80 cmp a,#$80 +0e36: 90 05 bcc $0e3d +0e38: 68 c8 cmp a,#$c8 +0e3a: f0 0c beq $0e48 +0e3c: 6f ret + +0e3d: c4 05 mov $05,a +0e3f: 3f 86 0e call $0e86 +0e42: f0 f8 beq $0e3c +0e44: 68 c8 cmp a,#$c8 +0e46: d0 f4 bne $0e3c +0e48: cb 03 mov $03,y +0e4a: f8 5c mov x,$5c +0e4c: e4 04 mov a,$04 +0e4e: 30 20 bmi $0e70 +0e50: 1c asl a +0e51: d5 2a 02 mov $022a+x,a +0e54: f8 5d mov x,$5d +0e56: c4 13 mov $13,a +0e58: f4 65 mov a,$65+x +0e5a: fb 66 mov y,$66+x +0e5c: 7a 13 addw ya,$13 +0e5e: d4 65 mov $65+x,a +0e60: db 66 mov $66+x,y +0e62: e4 05 mov a,$05 +0e64: 30 b1 bmi $0e17 +0e66: 9f xcn a +0e67: 28 07 and a,#$07 +0e69: f8 5c mov x,$5c +0e6b: d5 3a 02 mov $023a+x,a +0e6e: 2f a7 bra $0e17 +0e70: f8 5c mov x,$5c +0e72: f5 2a 02 mov a,$022a+x +0e75: c4 13 mov $13,a +0e77: f8 5d mov x,$5d +0e79: f4 65 mov a,$65+x +0e7b: fb 66 mov y,$66+x +0e7d: 7a 13 addw ya,$13 +0e7f: d4 65 mov $65+x,a +0e81: db 66 mov $66+x,y +0e83: 5f 17 0e jmp $0e17 + +0e86: fc inc y +0e87: f7 0a mov a,($0a)+y +0e89: d0 09 bne $0e94 +0e8b: 3f f8 0b call $0bf8 +0e8e: f0 0f beq $0e9f +0e90: eb 03 mov y,$03 +0e92: 2f f2 bra $0e86 +0e94: 68 ef cmp a,#$ef +0e96: d0 07 bne $0e9f +0e98: 3f 79 11 call $1179 +0e9b: eb 03 mov y,$03 +0e9d: 2f e7 bra $0e86 +0e9f: 6f ret + +; get note durations +0ea0: b0 33 bcs $0ed5 +0ea2: f8 5c mov x,$5c +0ea4: f5 3a 02 mov a,$023a+x +0ea7: f8 5d mov x,$5d +0ea9: 68 07 cmp a,#$07 +0eab: f0 1b beq $0ec8 +0ead: fd mov y,a +0eae: f6 6f 17 mov a,$176f+y +0eb1: c4 04 mov $04,a +0eb3: f4 65 mov a,$65+x +0eb5: fb 66 mov y,$66+x +0eb7: cb 05 mov $05,y +0eb9: eb 04 mov y,$04 +0ebb: cf mul ya +0ebc: cb 13 mov $13,y +0ebe: ba 04 movw ya,$04 +0ec0: cf mul ya +0ec1: 7a 13 addw ya,$13 +0ec3: d4 85 mov $85+x,a +0ec5: db 86 mov $86+x,y +0ec7: 6f ret + +0ec8: f4 65 mov a,$65+x +0eca: fb 66 mov y,$66+x +0ecc: 9a 10 subw ya,$10 +0ece: 9a 10 subw ya,$10 +0ed0: d4 85 mov $85+x,a +0ed2: db 86 mov $86+x,y +0ed4: 6f ret + +0ed5: f8 5d mov x,$5d +0ed7: e8 80 mov a,#$80 +0ed9: d4 86 mov $86+x,a +0edb: 6f ret + +0edc: f8 5c mov x,$5c +0ede: e8 ff mov a,#$ff +0ee0: d5 8d 03 mov $038d+x,a +0ee3: f5 ef 03 mov a,$03ef+x +0ee6: f0 10 beq $0ef8 +0ee8: f5 ff 03 mov a,$03ff+x +0eeb: d4 aa mov $aa+x,a +0eed: e8 00 mov a,#$00 +0eef: d5 2f 04 mov $042f+x,a +0ef2: f5 0f 04 mov a,$040f+x +0ef5: d5 1f 04 mov $041f+x,a +0ef8: f5 10 ff mov a,$ff10+x +0efb: f0 1c beq $0f19 +0efd: f5 00 ff mov a,$ff00+x +0f00: d4 ba mov $ba+x,a +0f02: e8 00 mov a,#$00 +0f04: d5 30 ff mov $ff30+x,a +0f07: f5 10 ff mov a,$ff10+x +0f0a: d5 20 ff mov $ff20+x,a +0f0d: f8 5d mov x,$5d +0f0f: e8 00 mov a,#$00 +0f11: d5 60 ff mov $ff60+x,a +0f14: e8 80 mov a,#$80 +0f16: d5 61 ff mov $ff61+x,a +0f19: 6f ret + +0f1a: 8d 00 mov y,#$00 +0f1c: cd 0c mov x,#$0c +0f1e: 9e div ya,x +0f1f: c4 04 mov $04,a +0f21: dd mov a,y +0f22: 1c asl a +0f23: 5d mov x,a +0f24: f5 56 17 mov a,$1756+x +0f27: fd mov y,a +0f28: f5 55 17 mov a,$1755+x +0f2b: da 0c movw $0c,ya +0f2d: f8 5d mov x,$5d +0f2f: f5 44 03 mov a,$0344+x +0f32: eb 0d mov y,$0d +0f34: cf mul ya +0f35: da 0e movw $0e,ya +0f37: f5 44 03 mov a,$0344+x +0f3a: eb 0c mov y,$0c +0f3c: cf mul ya +0f3d: 6d push y +0f3e: f5 45 03 mov a,$0345+x +0f41: eb 0c mov y,$0c +0f43: cf mul ya +0f44: 7a 0e addw ya,$0e +0f46: da 0e movw $0e,ya +0f48: f5 45 03 mov a,$0345+x +0f4b: eb 0d mov y,$0d +0f4d: cf mul ya +0f4e: fd mov y,a +0f4f: ae pop a +0f50: 7a 0e addw ya,$0e +0f52: da 0c movw $0c,ya +0f54: e8 05 mov a,#$05 +0f56: 80 setc +0f57: a4 04 sbc a,$04 +0f59: f0 07 beq $0f62 +0f5b: fd mov y,a +0f5c: 4b 0d lsr $0d +0f5e: 6b 0c ror $0c +0f60: fe fa dbnz y,$0f5c +0f62: f8 5e mov x,$5e +0f64: ba 0c movw ya,$0c +0f66: d5 02 01 mov $0102+x,a +0f69: dd mov a,y +0f6a: d5 03 01 mov $0103+x,a +0f6d: 6f ret + +; get velocity values +0f6e: f8 5c mov x,$5c +0f70: 1c asl a +0f71: d5 2a 02 mov $022a+x,a +0f74: fc inc y +0f75: f7 0a mov a,($0a)+y +0f77: 30 16 bmi $0f8f +0f79: cb 03 mov $03,y +0f7b: 2d push a +0f7c: 28 0f and a,#$0f +0f7e: fd mov y,a +0f7f: f6 77 17 mov a,$1777+y +0f82: d5 4a 02 mov $024a+x,a +0f85: d5 02 03 mov $0302+x,a +0f88: ae pop a +0f89: 9f xcn a +0f8a: 28 07 and a,#$07 +0f8c: d5 3a 02 mov $023a+x,a +0f8f: 6f ret + +; vcmd e9 - global transpose +0f90: fc inc y +0f91: f7 0a mov a,($0a)+y +0f93: cb 03 mov $03,y +0f95: f8 59 mov x,$59 +0f97: d5 12 03 mov $0312+x,a +0f9a: 6f ret + +; vcmd e7 - tempo +0f9b: fc inc y +0f9c: f7 0a mov a,($0a)+y +0f9e: cb 03 mov $03,y +0fa0: 5d mov x,a +0fa1: e8 2a mov a,#$2a +0fa3: 8d 08 mov y,#$08 +0fa5: 9e div ya,x +0fa6: c5 6a 03 mov $036a,a +0fa9: c5 6b 03 mov $036b,a +0fac: e8 00 mov a,#$00 +0fae: c4 a9 mov $a9,a +0fb0: 18 01 4f or $4f,#$01 +0fb3: 6f ret + +; vcmd e8 - skip 2 bytes +0fb4: fc inc y +0fb5: fc inc y +0fb6: cb 03 mov $03,y +0fb8: 6f ret + +; vcmd e5 - master volume +0fb9: e5 c0 04 mov a,$04c0 +0fbc: d0 36 bne $0ff4 +0fbe: e5 c1 04 mov a,$04c1 +0fc1: d0 18 bne $0fdb +0fc3: fc inc y +0fc4: cb 03 mov $03,y +0fc6: f7 0a mov a,($0a)+y +0fc8: c5 6a 02 mov $026a,a +0fcb: c5 6d 02 mov $026d,a +0fce: e8 00 mov a,#$00 +0fd0: c4 a7 mov $a7,a +0fd2: bc inc a +0fd3: 8d 08 mov y,#$08 +0fd5: d6 01 03 mov $0301+y,a +0fd8: fe fb dbnz y,$0fd5 +0fda: 6f ret + +0fdb: e8 00 mov a,#$00 +0fdd: c5 c1 04 mov $04c1,a +0fe0: c5 6a 02 mov $026a,a +0fe3: c5 6d 02 mov $026d,a +0fe6: bc inc a +0fe7: c5 c0 04 mov $04c0,a +0fea: fc inc y +0feb: cb 03 mov $03,y +0fed: f7 0a mov a,($0a)+y +0fef: fd mov y,a +0ff0: 3f 79 0a call $0a79 +0ff3: 6f ret + +0ff4: fc inc y +0ff5: cb 03 mov $03,y +0ff7: 6f ret + +; vcmd e6 - master volume fade +0ff8: e5 c0 04 mov a,$04c0 +0ffb: d0 f7 bne $0ff4 +0ffd: e8 00 mov a,#$00 +0fff: c5 6c 02 mov $026c,a +1002: c4 a8 mov $a8,a +1004: fc inc y +1005: f7 0a mov a,($0a)+y +1007: c4 a7 mov $a7,a +1009: 5d mov x,a +100a: fc inc y +100b: f7 0a mov a,($0a)+y +100d: cb 03 mov $03,y +100f: c5 6a 02 mov $026a,a +1012: 80 setc +1013: a5 6d 02 sbc a,$026d +1016: 3f 7a 16 call $167a +1019: c5 70 02 mov $0270,a +101c: cc 71 02 mov $0271,y +101f: 6f ret + +; vcmd ed - volume +1020: fc inc y +1021: cb 03 mov $03,y +1023: f7 0a mov a,($0a)+y +1025: f8 5d mov x,$5d +1027: d5 b3 02 mov $02b3+x,a +102a: f8 5c mov x,$5c +102c: d5 72 02 mov $0272+x,a +102f: e8 01 mov a,#$01 +1031: d5 02 03 mov $0302+x,a +1034: 6f ret + +; vcmd ee - volume fade +1035: f8 5c mov x,$5c +1037: fc inc y +1038: f7 0a mov a,($0a)+y +103a: d5 d2 02 mov $02d2+x,a +103d: 2d push a +103e: fc inc y +103f: cb 03 mov $03,y +1041: f7 0a mov a,($0a)+y +1043: d5 72 02 mov $0272+x,a +1046: eb 5d mov y,$5d +1048: ce pop x +1049: 80 setc +104a: b6 b3 02 sbc a,$02b3+y +104d: 3f 7a 16 call $167a +1050: f8 5d mov x,$5d +1052: d5 e2 02 mov $02e2+x,a +1055: dd mov a,y +1056: d5 e3 02 mov $02e3+x,a +1059: e8 00 mov a,#$00 +105b: d5 b2 02 mov $02b2+x,a +105e: 6f ret + +; vcmd ea - per-voice transpose +105f: fc inc y +1060: f7 0a mov a,($0a)+y +1062: cb 03 mov $03,y +1064: f8 5c mov x,$5c +1066: d5 14 03 mov $0314+x,a +1069: 6f ret + +; vcmd e1 - pan +106a: f8 5c mov x,$5c +106c: e8 00 mov a,#$00 +106e: d5 9d 03 mov $039d+x,a +1071: bc inc a +1072: d5 8d 03 mov $038d+x,a +1075: 3f 97 10 call $1097 +1078: cb 03 mov $03,y +107a: 6f ret + +; vcmd fb +107b: f8 5c mov x,$5c +107d: e8 00 mov a,#$00 +107f: d5 9d 03 mov $039d+x,a +1082: bc inc a +1083: d5 8d 03 mov $038d+x,a +1086: 3f d6 11 call $11d6 +1089: 0d push psw +108a: d0 01 bne $108d +108c: fc inc y +108d: 3f 97 10 call $1097 +1090: 8e pop psw +1091: f0 01 beq $1094 +1093: fc inc y +1094: cb 03 mov $03,y +1096: 6f ret + +1097: fc inc y +1098: f7 0a mov a,($0a)+y +109a: f8 5d mov x,$5d +109c: d5 6e 03 mov $036e+x,a +109f: e8 00 mov a,#$00 +10a1: d5 6d 03 mov $036d+x,a +10a4: 6f ret + +; vcmd e2 - skip 2 bytes +10a5: fc inc y +10a6: fc inc y +10a7: cb 03 mov $03,y +10a9: 6f ret + +; vcmd e0 - set instrument +10aa: f8 5c mov x,$5c +10ac: e8 ff mov a,#$ff +10ae: d5 df 03 mov $03df+x,a +10b1: f4 2d mov a,$2d+x +10b3: 28 d7 and a,#$d7 +10b5: c4 05 mov $05,a +10b7: fc inc y +10b8: cb 03 mov $03,y +10ba: f7 0a mov a,($0a)+y +10bc: d5 af 04 mov $04af+x,a +10bf: 68 fc cmp a,#$fc +10c1: b0 02 bcs $10c5 +10c3: 28 7f and a,#$7f +10c5: 3f 84 0d call $0d84 +10c8: 6f ret + +; vcmd f4/fa - set perc patch base +10c9: fc inc y +10ca: f7 0a mov a,($0a)+y +10cc: cb 03 mov $03,y +10ce: c5 de 03 mov $03de,a +10d1: 6f ret + +; vcmd e3 - vibrato on +10d2: f8 5c mov x,$5c +10d4: e8 01 mov a,#$01 +10d6: d5 ef 03 mov $03ef+x,a +10d9: d5 8d 03 mov $038d+x,a +10dc: fc inc y +10dd: f7 0a mov a,($0a)+y +10df: d5 ff 03 mov $03ff+x,a +10e2: fc inc y +10e3: 80 setc +10e4: e8 00 mov a,#$00 +10e6: b7 0a sbc a,($0a)+y +10e8: d5 0f 04 mov $040f+x,a +10eb: 2d push a +10ec: fc inc y +10ed: cb 03 mov $03,y +10ef: f7 0a mov a,($0a)+y +10f1: ce pop x +10f2: 8d 00 mov y,#$00 +10f4: 9e div ya,x +10f5: f8 5d mov x,$5d +10f7: d5 3f 04 mov $043f+x,a +10fa: e8 00 mov a,#$00 +10fc: d5 40 04 mov $0440+x,a +10ff: 6f ret + +; vcmd f0 - skip 1 byte +1100: ab 03 inc $03 +1102: 6f ret + +; vcmd e4/f3 - vibrato off +1103: f8 5c mov x,$5c +1105: e8 00 mov a,#$00 +1107: d5 ef 03 mov $03ef+x,a +110a: bc inc a +110b: d5 8d 03 mov $038d+x,a +110e: 6f ret + +; vcmd ec - tremolo off +110f: f8 5c mov x,$5c +1111: e8 00 mov a,#$00 +1113: d5 10 ff mov $ff10+x,a +1116: bc inc a +1117: d5 8d 03 mov $038d+x,a +111a: 6f ret + +; vcmd eb - tremolo on +111b: f8 5c mov x,$5c +111d: e8 03 mov a,#$03 +111f: d5 8d 03 mov $038d+x,a +1122: fc inc y +1123: f7 0a mov a,($0a)+y +1125: d5 00 ff mov $ff00+x,a +1128: fc inc y +1129: 80 setc +112a: e8 00 mov a,#$00 +112c: b7 0a sbc a,($0a)+y +112e: d5 10 ff mov $ff10+x,a +1131: 2d push a +1132: fc inc y +1133: cb 03 mov $03,y +1135: f7 0a mov a,($0a)+y +1137: ce pop x +1138: 8d 00 mov y,#$00 +113a: 9e div ya,x +113b: 2d push a +113c: e8 00 mov a,#$00 +113e: 9e div ya,x +113f: ee pop y +1140: f8 5d mov x,$5d +1142: d5 40 ff mov $ff40+x,a +1145: dd mov a,y +1146: d5 41 ff mov $ff41+x,a +1149: 6f ret + +; vcmd f1 - pitch envelope +114a: f8 5c mov x,$5c +114c: e8 02 mov a,#$02 +114e: d5 ef 03 mov $03ef+x,a +1151: d5 8d 03 mov $038d+x,a +1154: fc inc y +1155: f7 0a mov a,($0a)+y +1157: d5 ff 03 mov $03ff+x,a +115a: fc inc y +115b: f7 0a mov a,($0a)+y +115d: d5 0f 04 mov $040f+x,a +1160: fc inc y +1161: cb 03 mov $03,y +1163: f8 5d mov x,$5d +1165: f7 0a mov a,($0a)+y +1167: d5 3f 04 mov $043f+x,a +116a: 30 06 bmi $1172 +116c: e8 00 mov a,#$00 +116e: d5 40 04 mov $0440+x,a +1171: 6f ret + +1172: e8 ff mov a,#$ff +1174: d5 40 04 mov $0440+x,a +1177: 6f ret + +; vcmd f2/f9 - nop +1178: 6f ret + +; vcmd ef - call subroutine +1179: f8 5d mov x,$5d +117b: fc inc y +117c: f7 0a mov a,($0a)+y +117e: d5 5f 04 mov $045f+x,a +1181: 2d push a +1182: fc inc y +1183: f7 0a mov a,($0a)+y +1185: d5 60 04 mov $0460+x,a +1188: 2d push a +1189: f8 5c mov x,$5c +118b: fc inc y +118c: f7 0a mov a,($0a)+y +118e: d5 9f 04 mov $049f+x,a +1191: dd mov a,y +1192: 3f c6 11 call $11c6 +1195: 8f ff 03 mov $03,#$ff +1198: ae pop a +1199: c4 0b mov $0b,a +119b: ae pop a +119c: c4 0a mov $0a,a +119e: 6f ret + +; vcmd fd +119f: 6d push y +11a0: dd mov a,y +11a1: 60 clrc +11a2: 88 04 adc a,#$04 +11a4: 3f c6 11 call $11c6 +11a7: ee pop y +11a8: f8 5c mov x,$5c +11aa: e8 01 mov a,#$01 +11ac: d5 9f 04 mov $049f+x,a +11af: 3f d6 11 call $11d6 +11b2: d0 02 bne $11b6 +11b4: fc inc y +11b5: fc inc y +11b6: fc inc y +11b7: f7 0a mov a,($0a)+y +11b9: 2d push a +11ba: fc inc y +11bb: f7 0a mov a,($0a)+y +11bd: c4 0b mov $0b,a +11bf: ae pop a +11c0: c4 0a mov $0a,a +11c2: 8f ff 03 mov $03,#$ff +11c5: 6f ret + +11c6: f8 5d mov x,$5d +11c8: 60 clrc +11c9: 84 0a adc a,$0a +11cb: d5 7f 04 mov $047f+x,a +11ce: e8 00 mov a,#$00 +11d0: 84 0b adc a,$0b +11d2: d5 80 04 mov $0480+x,a +11d5: 6f ret + +11d6: 7d mov a,x +11d7: 28 07 and a,#$07 +11d9: 5c lsr a +11da: 5c lsr a +11db: 5d mov x,a +11dc: f4 a5 mov a,$a5+x +11de: 6f ret + +11df: 8d 01 mov y,#$01 +11e1: f7 4d mov a,($4d)+y +11e3: f0 15 beq $11fa +11e5: c4 0b mov $0b,a +11e7: dc dec y +11e8: f7 4d mov a,($4d)+y +11ea: c4 0a mov $0a,a +11ec: 60 clrc +11ed: dd mov a,y +11ee: 88 02 adc a,#$02 +11f0: 84 4d adc a,$4d +11f2: c4 4d mov $4d,a +11f4: 90 02 bcc $11f8 +11f6: ab 4e inc $4e +11f8: 60 clrc +11f9: 6f ret + +11fa: dc dec y +11fb: f7 4d mov a,($4d)+y +11fd: f0 2b beq $122a +11ff: e9 64 03 mov x,$0364 +1202: d0 08 bne $120c +1204: 68 ff cmp a,#$ff +1206: f0 01 beq $1209 +1208: bc inc a +1209: c5 64 03 mov $0364,a +120c: e5 64 03 mov a,$0364 +120f: 68 ff cmp a,#$ff +1211: f0 05 beq $1218 +1213: 8c 64 03 dec $0364 +1216: f0 0e beq $1226 +1218: 8d 02 mov y,#$02 +121a: f7 4d mov a,($4d)+y +121c: 5d mov x,a +121d: fc inc y +121e: f7 4d mov a,($4d)+y +1220: c4 4e mov $4e,a +1222: d8 4d mov $4d,x +1224: 2f b9 bra $11df +1226: 8d 05 mov y,#$05 +1228: 2f b7 bra $11e1 +122a: c4 4e mov $4e,a +122c: 80 setc +122d: 6f ret + +122e: 8d 00 mov y,#$00 +1230: cd 00 mov x,#$00 +1232: 8f 08 00 mov $00,#$08 +1235: 8f 00 5f mov $5f,#$00 +1238: 4b 5f lsr $5f +123a: e8 00 mov a,#$00 +123c: d5 df 03 mov $03df+x,a +123f: f7 0a mov a,($0a)+y +1241: d6 0a 02 mov $020a+y,a +1244: fc inc y +1245: f7 0a mov a,($0a)+y +1247: d6 0a 02 mov $020a+y,a +124a: f0 07 beq $1253 +124c: 7d mov a,x +124d: 08 c0 or a,#$c0 +124f: d4 3d mov $3d+x,a +1251: e2 5f set7 $5f +1253: 3d inc x +1254: fc inc y +1255: 6e 00 e0 dbnz $00,$1238 +1258: 6f ret + +1259: e5 80 01 mov a,$0180 +125c: 10 0e bpl $126c +125e: 1c asl a +125f: 30 0b bmi $126c +1261: e8 c0 mov a,#$c0 +1263: c5 80 01 mov $0180,a +1266: 8f 00 5f mov $5f,#$00 +1269: 3f 6d 12 call $126d +126c: 6f ret + +126d: cd 07 mov x,#$07 +126f: 8f 00 00 mov $00,#$00 +1272: f4 2d mov a,$2d+x +1274: 10 16 bpl $128c +1276: 28 07 and a,#$07 +1278: fd mov y,a +1279: e4 5f mov a,$5f +127b: d0 08 bne $1285 +127d: f6 1d 00 mov a,$001d+y +1280: 08 40 or a,#$40 +1282: d6 1d 00 mov $001d+y,a +1285: f6 45 17 mov a,$1745+y +1288: 04 00 or a,$00 +128a: c4 00 mov $00,a +128c: e4 5f mov a,$5f +128e: d0 02 bne $1292 +1290: d4 2d mov $2d+x,a +1292: 1d dec x +1293: 10 dd bpl $1272 +1295: 8f 5c f2 mov $f2,#$5c +1298: fa 00 f3 mov ($f3),($00) +129b: 6f ret + +129c: cd 07 mov x,#$07 +129e: e8 00 mov a,#$00 +12a0: d4 2d mov $2d+x,a +12a2: d4 3d mov $3d+x,a +12a4: d5 14 03 mov $0314+x,a +12a7: d5 24 03 mov $0324+x,a +12aa: d5 df 03 mov $03df+x,a +12ad: d5 9f 04 mov $049f+x,a +12b0: d5 ef 03 mov $03ef+x,a +12b3: d5 10 ff mov $ff10+x,a +12b6: e8 dc mov a,#$dc +12b8: d5 8d 03 mov $038d+x,a +12bb: d5 72 02 mov $0272+x,a +12be: d5 02 03 mov $0302+x,a +12c1: 1d dec x +12c2: 10 da bpl $129e +12c4: cd 0f mov x,#$0f +12c6: e8 ff mov a,#$ff +12c8: d5 b2 02 mov $02b2+x,a +12cb: e8 0a mov a,#$0a +12cd: d5 6d 03 mov $036d+x,a +12d0: dd mov a,y +12d1: d5 6c 03 mov $036c+x,a +12d4: 1d dec x +12d5: 1d dec x +12d6: 10 ee bpl $12c6 +12d8: 8f 64 ca mov $ca,#$64 +12db: e8 00 mov a,#$00 +12dd: c5 c0 04 mov $04c0,a +12e0: c5 6c 03 mov $036c,a +12e3: c5 bf 04 mov $04bf,a +12e6: c5 12 03 mov $0312,a +12e9: c5 db 03 mov $03db,a +12ec: c4 57 mov $57,a +12ee: c4 55 mov $55,a +12f0: 8f 01 61 mov $61,#$01 +12f3: 6f ret + +12f4: f8 00 mov x,$00 +12f6: f5 81 01 mov a,$0181+x +12f9: 10 40 bpl $133b +12fb: 1c asl a +12fc: 30 3d bmi $133b +12fe: f5 3c 13 mov a,$133c+x +1301: 24 60 and a,$60 +1303: c4 60 mov $60,a +1305: e8 c0 mov a,#$c0 +1307: d5 81 01 mov $0181+x,a +130a: 7d mov a,x +130b: 1c asl a +130c: 1c asl a +130d: 5d mov x,a +130e: 8f 00 02 mov $02,#$00 +1311: 8f 04 03 mov $03,#$04 +1314: f4 45 mov a,$45+x +1316: f0 16 beq $132e +1318: f4 35 mov a,$35+x +131a: 10 12 bpl $132e +131c: 4d push x +131d: 28 07 and a,#$07 +131f: 5d mov x,a +1320: f4 1d mov a,$1d+x +1322: 08 40 or a,#$40 +1324: d4 1d mov $1d+x,a +1326: f5 45 17 mov a,$1745+x +1329: 04 02 or a,$02 +132b: c4 02 mov $02,a +132d: ce pop x +132e: 3d inc x +132f: 6e 03 e2 dbnz $03,$1314 +1332: 8f 5c f2 mov $f2,#$5c +1335: fa 02 f3 mov ($f3),($02) +1338: 8f 00 58 mov $58,#$00 +133b: 6f ret + +133c: db $f0,$0f + +133e: 8f 04 01 mov $01,#$04 +1341: e4 00 mov a,$00 +1343: 1c asl a +1344: 1c asl a +1345: 5d mov x,a +1346: 1c asl a +1347: fd mov y,a +1348: e8 00 mov a,#$00 +134a: d4 35 mov $35+x,a +134c: d4 45 mov $45+x,a +134e: d5 95 03 mov $0395+x,a +1351: d5 0a 03 mov $030a+x,a +1354: d5 1c 03 mov $031c+x,a +1357: d5 2c 03 mov $032c+x,a +135a: d5 a7 04 mov $04a7+x,a +135d: d5 f7 03 mov $03f7+x,a +1360: d5 18 ff mov $ff18+x,a +1363: d6 7d 03 mov $037d+y,a +1366: e8 0a mov a,#$0a +1368: d6 7e 03 mov $037e+y,a +136b: e8 dc mov a,#$dc +136d: d5 7a 02 mov $027a+x,a +1370: e8 dc mov a,#$dc +1372: d6 c3 02 mov $02c3+y,a +1375: 3d inc x +1376: fc inc y +1377: fc inc y +1378: 6e 01 cd dbnz $01,$1348 +137b: e8 00 mov a,#$00 +137d: c4 58 mov $58,a +137f: e8 e6 mov a,#$e6 +1381: c5 6b 02 mov $026b,a +1384: c5 6f 02 mov $026f,a +1387: 6f ret + +1388: 8f 08 03 mov $03,#$08 +138b: f8 01 mov x,$01 +138d: f4 2d mov a,$2d+x +138f: 10 13 bpl $13a4 +1391: 3f d5 13 call $13d5 +1394: 3f 2c 14 call $142c +1397: 3f 8c 14 call $148c +139a: f8 01 mov x,$01 +139c: e8 00 mov a,#$00 +139e: d5 02 03 mov $0302+x,a +13a1: d5 8d 03 mov $038d+x,a +13a4: f8 01 mov x,$01 +13a6: f5 d2 02 mov a,$02d2+x +13a9: f0 1c beq $13c7 +13ab: d5 02 03 mov $0302+x,a +13ae: 9c dec a +13af: d5 d2 02 mov $02d2+x,a +13b2: f8 02 mov x,$02 +13b4: f5 e2 02 mov a,$02e2+x +13b7: 60 clrc +13b8: 95 b2 02 adc a,$02b2+x +13bb: d5 b2 02 mov $02b2+x,a +13be: f5 e3 02 mov a,$02e3+x +13c1: 95 b3 02 adc a,$02b3+x +13c4: d5 b3 02 mov $02b3+x,a +13c7: 60 clrc +13c8: 98 08 00 adc $00,#$08 +13cb: ab 01 inc $01 +13cd: ab 02 inc $02 +13cf: ab 02 inc $02 +13d1: 6e 03 b7 dbnz $03,$138b +13d4: 6f ret + +13d5: f8 01 mov x,$01 +13d7: f5 02 03 mov a,$0302+x +13da: d0 06 bne $13e2 +13dc: f5 8d 03 mov a,$038d+x +13df: d0 11 bne $13f2 +13e1: 6f ret + +13e2: f5 4a 02 mov a,$024a+x +13e5: fd mov y,a +13e6: f8 02 mov x,$02 +13e8: f5 b3 02 mov a,$02b3+x +13eb: cf mul ya +13ec: dd mov a,y +13ed: f8 01 mov x,$01 +13ef: d5 82 02 mov $0282+x,a +13f2: f5 82 02 mov a,$0282+x +13f5: fd mov y,a +13f6: e4 59 mov a,$59 +13f8: 1c asl a +13f9: 5d mov x,a +13fa: f5 6d 02 mov a,$026d+x +13fd: cf mul ya +13fe: dd mov a,y +13ff: cf mul ya +1400: cb 06 mov $06,y +1402: f8 1b mov x,$1b +1404: f0 04 beq $140a +1406: cd 14 mov x,#$14 +1408: 2f 07 bra $1411 +140a: f8 02 mov x,$02 +140c: f5 6e 03 mov a,$036e+x +140f: 1c asl a +1410: 5d mov x,a +1411: f5 97 17 mov a,$1797+x +1414: 2d push a +1415: f5 98 17 mov a,$1798+x +1418: c4 05 mov $05,a +141a: f8 01 mov x,$01 +141c: eb 06 mov y,$06 +141e: cf mul ya +141f: dd mov a,y +1420: d5 a2 02 mov $02a2+x,a +1423: ae pop a +1424: eb 06 mov y,$06 +1426: cf mul ya +1427: dd mov a,y +1428: d5 92 02 mov $0292+x,a +142b: 6f ret + +142c: f8 01 mov x,$01 +142e: f5 10 ff mov a,$ff10+x +1431: f0 33 beq $1466 +1433: f4 ba mov a,$ba+x +1435: d0 2f bne $1466 +1437: f5 92 02 mov a,$0292+x +143a: c4 04 mov $04,a +143c: f5 a2 02 mov a,$02a2+x +143f: c4 05 mov $05,a +1441: f8 02 mov x,$02 +1443: f5 61 ff mov a,$ff61+x +1446: c4 06 mov $06,a +1448: eb 04 mov y,$04 +144a: cf mul ya +144b: cd 80 mov x,#$80 +144d: 9e div ya,x +144e: f8 00 mov x,$00 +1450: d5 00 01 mov $0100+x,a +1453: e4 06 mov a,$06 +1455: eb 05 mov y,$05 +1457: cf mul ya +1458: cd 80 mov x,#$80 +145a: 9e div ya,x +145b: f8 00 mov x,$00 +145d: d5 01 01 mov $0101+x,a +1460: e8 03 mov a,#$03 +1462: 3f 6e 15 call $156e +1465: 6f ret + +1466: eb 01 mov y,$01 +1468: f6 02 03 mov a,$0302+y +146b: 16 8d 03 or a,$038d+y +146e: f0 1b beq $148b +1470: e8 00 mov a,#$00 +1472: d6 02 03 mov $0302+y,a +1475: d6 8d 03 mov $038d+y,a +1478: f8 00 mov x,$00 +147a: f6 92 02 mov a,$0292+y +147d: d5 00 01 mov $0100+x,a +1480: f6 a2 02 mov a,$02a2+y +1483: d5 01 01 mov $0101+x,a +1486: e8 03 mov a,#$03 +1488: 3f 6e 15 call $156e +148b: 6f ret + +148c: 8f 00 04 mov $04,#$00 +148f: f8 01 mov x,$01 +1491: f5 ef 03 mov a,$03ef+x +1494: f0 0c beq $14a2 +1496: fb aa mov y,$aa+x +1498: d0 05 bne $149f +149a: 1c asl a +149b: 5d mov x,a +149c: 1f a5 14 jmp ($14a5+x) + +149f: dc dec y +14a0: db aa mov $aa+x,y +14a2: 5f f2 14 jmp $14f2 + +14a5: dw $14a2 +14a7: dw $14ab +14a9: dw $14e5 + +14ab: f8 01 mov x,$01 +14ad: f5 1f 04 mov a,$041f+x +14b0: d0 2d bne $14df +14b2: f5 0f 04 mov a,$040f+x +14b5: d5 1f 04 mov $041f+x,a +14b8: f5 2f 04 mov a,$042f+x +14bb: bc inc a +14bc: 28 03 and a,#$03 +14be: d5 2f 04 mov $042f+x,a +14c1: 5c lsr a +14c2: 90 18 bcc $14dc +14c4: f8 02 mov x,$02 +14c6: f5 40 04 mov a,$0440+x +14c9: fd mov y,a +14ca: f5 3f 04 mov a,$043f+x +14cd: da 0a movw $0a,ya +14cf: ba 11 movw ya,$11 +14d1: 9a 0a subw ya,$0a +14d3: d5 3f 04 mov $043f+x,a +14d6: dd mov a,y +14d7: d5 40 04 mov $0440+x,a +14da: f8 01 mov x,$01 +14dc: f5 1f 04 mov a,$041f+x +14df: 3f 4d 15 call $154d +14e2: 5f f2 14 jmp $14f2 + +14e5: f8 01 mov x,$01 +14e7: f5 1f 04 mov a,$041f+x +14ea: f0 06 beq $14f2 +14ec: 68 ff cmp a,#$ff +14ee: f0 61 beq $1551 +14f0: 2f 5b bra $154d +14f2: f8 01 mov x,$01 +14f4: f5 10 ff mov a,$ff10+x +14f7: f0 4f beq $1548 +14f9: fb ba mov y,$ba+x +14fb: d0 4c bne $1549 +14fd: f5 20 ff mov a,$ff20+x +1500: d0 2d bne $152f +1502: f5 10 ff mov a,$ff10+x +1505: d5 20 ff mov $ff20+x,a +1508: f5 30 ff mov a,$ff30+x +150b: bc inc a +150c: 28 03 and a,#$03 +150e: d5 30 ff mov $ff30+x,a +1511: 5c lsr a +1512: 90 18 bcc $152c +1514: f8 02 mov x,$02 +1516: f5 41 ff mov a,$ff41+x +1519: fd mov y,a +151a: f5 40 ff mov a,$ff40+x +151d: da 0a movw $0a,ya +151f: ba 11 movw ya,$11 +1521: 9a 0a subw ya,$0a +1523: d5 40 ff mov $ff40+x,a +1526: dd mov a,y +1527: d5 41 ff mov $ff41+x,a +152a: f8 01 mov x,$01 +152c: f5 20 ff mov a,$ff20+x +152f: 9c dec a +1530: d5 20 ff mov $ff20+x,a +1533: f8 02 mov x,$02 +1535: f5 40 ff mov a,$ff40+x +1538: 60 clrc +1539: 95 60 ff adc a,$ff60+x +153c: d5 60 ff mov $ff60+x,a +153f: f5 41 ff mov a,$ff41+x +1542: 95 61 ff adc a,$ff61+x +1545: d5 61 ff mov $ff61+x,a +1548: 6f ret + +1549: dc dec y +154a: db ba mov $ba+x,y +154c: 6f ret + +154d: 9c dec a +154e: d5 1f 04 mov $041f+x,a +1551: f8 02 mov x,$02 +1553: eb 00 mov y,$00 +1555: f5 3f 04 mov a,$043f+x +1558: 60 clrc +1559: 96 02 01 adc a,$0102+y +155c: d6 02 01 mov $0102+y,a +155f: f5 40 04 mov a,$0440+x +1562: 96 03 01 adc a,$0103+y +1565: d6 03 01 mov $0103+y,a +1568: e8 0c mov a,#$0c +156a: 3f 6e 15 call $156e +156d: 6f ret + +156e: fd mov y,a +156f: f8 01 mov x,$01 +1571: f4 2d mov a,$2d+x +1573: 28 07 and a,#$07 +1575: 5d mov x,a +1576: dd mov a,y +1577: 14 25 or a,$25+x +1579: d4 25 mov $25+x,a +157b: 6f ret + +157c: f8 1b mov x,$1b +157e: f0 04 beq $1584 +1580: e8 0a mov a,#$0a +1582: 2f 21 bra $15a5 +1584: f8 02 mov x,$02 +1586: f5 6e 03 mov a,$036e+x +1589: 68 0a cmp a,#$0a +158b: f0 18 beq $15a5 +158d: 90 0f bcc $159e +158f: 80 setc +1590: c4 04 mov $04,a +1592: e8 14 mov a,#$14 +1594: a4 04 sbc a,$04 +1596: 5d mov x,a +1597: f5 97 17 mov a,$1797+x +159a: fd mov y,a +159b: e8 55 mov a,#$55 +159d: 6f ret + +159e: fd mov y,a +159f: f6 97 17 mov a,$1797+y +15a2: 8d 55 mov y,#$55 +15a4: 6f ret + +15a5: e8 55 mov a,#$55 +15a7: fd mov y,a +15a8: 6f ret + +15a9: e8 00 mov a,#$00 +15ab: c4 f7 mov $f7,a +15ad: c4 1a mov $1a,a +15af: 3f 40 09 call $0940 +15b2: 3f fb 15 call $15fb +15b5: 5f 00 05 jmp $0500 + +15b8: e8 00 mov a,#$00 +15ba: c4 f7 mov $f7,a +15bc: c4 1a mov $1a,a +15be: 3f 59 12 call $1259 +15c1: 2f 0e bra $15d1 +15c3: e8 00 mov a,#$00 +15c5: c4 f7 mov $f7,a +15c7: c4 1a mov $1a,a +15c9: 78 15 19 cmp $19,#$15 +15cc: f0 03 beq $15d1 +15ce: 3f 40 09 call $0940 +15d1: 8f 00 00 mov $00,#$00 +15d4: 3f f4 12 call $12f4 +15d7: 8f 01 00 mov $00,#$01 +15da: 3f f4 12 call $12f4 +15dd: 3f fb 15 call $15fb +15e0: 78 15 19 cmp $19,#$15 +15e3: f0 05 beq $15ea +15e5: 3f 62 09 call $0962 +15e8: 2f 04 bra $15ee +15ea: e4 cc mov a,$cc +15ec: c4 f4 mov $f4,a +15ee: e8 01 mov a,#$01 +15f0: c4 1a mov $1a,a +15f2: e8 c0 mov a,#$c0 +15f4: c5 81 01 mov $0181,a +15f7: c5 82 01 mov $0182,a +15fa: 6f ret + +15fb: 8f aa f4 mov $f4,#$aa +15fe: 8f bb f5 mov $f5,#$bb +1601: 78 cc f4 cmp $f4,#$cc +1604: d0 fb bne $1601 +1606: 2f 1b bra $1623 +1608: eb f4 mov y,$f4 +160a: d0 fc bne $1608 +160c: 7e f4 cmp y,$f4 +160e: d0 0d bne $161d +1610: e4 f5 mov a,$f5 +1612: cb f4 mov $f4,y +1614: d7 0a mov ($0a)+y,a +1616: fc inc y +1617: d0 f3 bne $160c +1619: ab 0b inc $0b +161b: 2f ef bra $160c +161d: 10 ed bpl $160c +161f: 7e f4 cmp y,$f4 +1621: 10 e9 bpl $160c +1623: ba f6 movw ya,$f6 +1625: da 0a movw $0a,ya +1627: eb f4 mov y,$f4 +1629: cb f4 mov $f4,y +162b: e4 f5 mov a,$f5 +162d: d0 d9 bne $1608 +162f: 6f ret + +; vcmd f5 - skip 3 bytes +1630: fc inc y +1631: fc inc y +1632: fc inc y +1633: cb 03 mov $03,y +1635: 6f ret + +; vcmd f7 - skip 3 bytes +1636: fc inc y +1637: fc inc y +1638: fc inc y +1639: cb 03 mov $03,y +163b: 6f ret + +; vcmd f6/f8/fc - read/write APU port 3 +163c: e4 f7 mov a,$f7 +163e: f0 1d beq $165d +1640: 64 1a cmp a,$1a +1642: d0 19 bne $165d +1644: 64 f7 cmp a,$f7 +1646: d0 f4 bne $163c +1648: cd 00 mov x,#$00 +164a: d8 00 mov $00,x +164c: 3f 62 16 call $1662 +164f: 3d inc x +1650: c8 03 cmp x,#$03 +1652: d0 f8 bne $164c +1654: e4 1a mov a,$1a +1656: bc inc a +1657: 28 7f and a,#$7f +1659: f0 fb beq $1656 +165b: c4 1a mov $1a,a +165d: e4 1a mov a,$1a +165f: c4 f7 mov $f7,a +1661: 6f ret + +1662: f4 f4 mov a,$f4+x +1664: 74 f4 cmp a,$f4+x +1666: d0 fa bne $1662 +1668: 68 00 cmp a,#$00 +166a: f0 04 beq $1670 +166c: 74 d8 cmp a,$d8+x +166e: d0 05 bne $1675 +1670: e8 00 mov a,#$00 +1672: d4 d8 mov $d8+x,a +1674: 6f ret + +1675: ab 00 inc $00 +1677: d4 d8 mov $d8+x,a +1679: 6f ret + +167a: 0d push psw +167b: b0 03 bcs $1680 +167d: 48 ff eor a,#$ff +167f: bc inc a +1680: 8d 00 mov y,#$00 +1682: 9e div ya,x +1683: 2d push a +1684: e8 00 mov a,#$00 +1686: 9e div ya,x +1687: ee pop y +1688: 8e pop psw +1689: b0 06 bcs $1691 +168b: da 16 movw $16,ya +168d: ba 11 movw ya,$11 +168f: 9a 16 subw ya,$16 +1691: 6f ret + +1692: 8f 6c f2 mov $f2,#$6c +1695: 8f e0 f3 mov $f3,#$e0 +1698: e8 00 mov a,#$00 +169a: cd e1 mov x,#$e1 +169c: c6 mov (x),a +169d: 1d dec x +169e: d0 fc bne $169c +16a0: e8 01 mov a,#$01 +16a2: 8d 00 mov y,#$00 +16a4: da 10 movw $10,ya +16a6: 3f f6 16 call $16f6 +16a9: e8 18 mov a,#$18 +16ab: c4 53 mov $53,a +16ad: 8f 5d f2 mov $f2,#$5d +16b0: c4 f3 mov $f3,a +16b2: 8f f0 f1 mov $f1,#$f0 +16b5: 8d 00 mov y,#$00 +16b7: dd mov a,y +16b8: d6 00 02 mov $0200+y,a +16bb: d6 00 03 mov $0300+y,a +16be: d6 00 04 mov $0400+y,a +16c1: fe f5 dbnz y,$16b8 +16c3: 8d 90 mov y,#$90 +16c5: d6 ff 00 mov $00ff+y,a +16c8: fe fb dbnz y,$16c5 +16ca: e8 ff mov a,#$ff +16cc: c4 cc mov $cc,a +16ce: c4 cd mov $cd,a +16d0: c4 ce mov $ce,a +16d2: c4 cf mov $cf,a +16d4: c4 d0 mov $d0,a +16d6: 3f f6 16 call $16f6 +16d9: 8f 00 f1 mov $f1,#$00 +16dc: 8f 6d f2 mov $f2,#$6d +16df: 8f ff f3 mov $f3,#$ff +16e2: e8 20 mov a,#$20 +16e4: c4 50 mov $50,a +16e6: 8f 6c f2 mov $f2,#$6c +16e9: c4 f3 mov $f3,a +16eb: e8 43 mov a,#$43 +16ed: c4 fb mov $fb,a +16ef: 8f 02 4f mov $4f,#$02 +16f2: 8f 02 f1 mov $f1,#$02 +16f5: 6f ret + +16f6: e8 00 mov a,#$00 +16f8: cd 08 mov x,#$08 +16fa: 8d 08 mov y,#$08 +16fc: c4 f2 mov $f2,a +16fe: 8f 00 f3 mov $f3,#$00 +1701: ab f2 inc $f2 +1703: fe f9 dbnz y,$16fe +1705: 60 clrc +1706: 88 10 adc a,#$10 +1708: 1d dec x +1709: d0 ef bne $16fa +170b: cd 00 mov x,#$00 +170d: f5 30 17 mov a,$1730+x +1710: 30 0b bmi $171d +1712: c4 f2 mov $f2,a +1714: f5 31 17 mov a,$1731+x +1717: c4 f3 mov $f3,a +1719: 3d inc x +171a: 3d inc x +171b: 2f f0 bra $170d +171d: 6f ret + +171e: 4d push x +171f: db 1d mov $1d+x,y +1721: f5 d1 17 mov a,$17d1+x +1724: cd 07 mov x,#$07 +1726: c4 f2 mov $f2,a +1728: cb f3 mov $f3,y +172a: bc inc a +172b: 1d dec x +172c: 10 f8 bpl $1726 +172e: ce pop x +172f: 6f ret + +1730: db $0c,$60,$1c,$60,$2d,$00,$3d,$00 +1738: db $4c,$00,$2c,$00,$3c,$00,$0d,$00 +1740: db $7d,$00,$4d,$00,$ff + +1745: db $01,$02,$04,$08,$10,$20,$40,$80 +174d: db $01,$02,$04,$08,$10,$20,$40,$80 + +; pitch table +1755: dw $085f +1757: dw $08de +1759: dw $0965 +175b: dw $09f4 +175d: dw $0a8c +175f: dw $0b2c +1761: dw $0bd6 +1763: dw $0c8b +1765: dw $0d4a +1767: dw $0e14 +1769: dw $0eea +176b: dw $0fcd +176d: dw $10be + +; note dur%s +176f: db $32,$65,$7f,$98,$b2,$cb,$e5,$ff +; per-note velocity values +1777: db $28,$3c,$4c,$65,$72,$7f,$8c,$98 +177f: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc + +1787: db $08,$09,$0a,$0b,$0c,$0d,$0e,$0f +178f: db $00,$01,$02,$03,$04,$05,$06,$07 + +1797: db $00,$7f,$02,$7f,$05,$7e,$0b,$7d +179f: db $13,$7c,$1e,$7b,$2b,$7a,$3c,$79 +17a7: db $4b,$78,$5e,$75,$73,$73,$75,$5e +17af: db $78,$4b,$79,$3c,$7a,$2b,$7b,$1e +17b7: db $7c,$13,$7d,$0b,$7e,$05,$7f,$02 +17bf: db $7f,$00,$00,$08,$10,$18,$20,$28 +17c7: db $30,$38,$40,$48,$50,$58,$60,$68 +17c9: db $70,$78 \ No newline at end of file diff --git a/snes/NSPC/Quest/Tactics Ogre - Let Us Cling Together ($0600).bin b/snes/NSPC/Quest/Tactics Ogre - Let Us Cling Together ($0600).bin new file mode 100644 index 0000000000000000000000000000000000000000..921abb71cf7eae36f50d4445eb1aec3da7e2313e GIT binary patch literal 6307 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 literal 0 HcmV?d00001 diff --git a/snes/NSPC/Quest/Tactics Ogre - Let Us Cling Together.s b/snes/NSPC/Quest/Tactics Ogre - Let Us Cling Together.s index db09a0f3..8320c227 100644 --- a/snes/NSPC/Quest/Tactics Ogre - Let Us Cling Together.s +++ b/snes/NSPC/Quest/Tactics Ogre - Let Us Cling Together.s @@ -1,7 +1,7 @@ 0600: 20 clrp 0601: cd ff mov x,#$ff 0603: bd mov sp,x -0604: e8 00 mov a,#$00 +0604: e8 00 mov a,#$005 0606: fd mov y,a 0607: da f4 movw $f4,ya 0609: da f6 movw $f6,ya @@ -721,47 +721,48 @@ 0b87: 6f ret ; vcmd dispatch table -0b88: dw $1174 ; d8 -0b8a: dw $10ec ; d9 -0b8c: dw $10d4 ; da -0b8e: dw $11a8 ; db -0b90: dw $11c9 ; dc -0b92: dw $11e7 ; dd -0b94: dw $11f8 ; de +0b88: dw $1174 ; d8 - set channel parameters +0b8a: dw $10ec ; d9 - command with voice +0b8c: dw $10d4 ; da - jump +0b8e: dw $11a8 ; db - set ASDR and GAIN +0b90: dw $11c9 ; dc - set pitch +0b92: dw $11e7 ; dd - set ASDR and GAIN (2) +0b94: dw $11f8 ; de - long note 0b96: dw $1208 ; df -0b98: dw $124f ; e0 -0b9a: dw $128e ; e1 -0b9c: dw $12b5 ; e2 -0b9e: dw $13b6 ; e3 -0ba0: dw $13eb ; e4 -0ba2: dw $1308 ; e5 -0ba4: dw $133c ; e6 -0ba6: dw $12c1 ; e7 -0ba8: dw $12e1 ; e8 -0baa: dw $12b5 ; e9 -0bac: dw $12bb ; ea -0bae: dw $1106 ; eb -0bb0: dw $1125 ; ec -0bb2: dw $134a ; ed -0bb4: dw $135b ; ee -0bb6: dw $14b1 ; ef -0bb8: dw $13e0 ; f0 -0bba: dw $13fe ; f1 -0bbc: dw $13fe ; f2 -0bbe: dw $13f3 ; f3 -0bc0: dw $1387 ; f4 -0bc2: dw $1571 ; f5 -0bc4: dw $1150 ; f6 -0bc6: dw $1593 ; f7 -0bc8: dw $1628 ; f8 -0bca: dw $1422 ; f9 -0bcc: dw $138d ; fa +0b98: dw $124f ; e0 - set instrument +0b9a: dw $128e ; e1 - pan +0b9c: dw $12b5 ; e2 - global transpose +0b9e: dw $13b6 ; e3 - vibrato on +0ba0: dw $13eb ; e4 - vibrato off +0ba2: dw $1308 ; e5 - master volume +0ba4: dw $133c ; e6 - master volume fade +0ba6: dw $12c1 ; e7 - tempo +0ba8: dw $12e1 ; e8 - tempo fade +0baa: dw $12b5 ; e9 - global transpose +0bac: dw $12bb ; ea - per-voice transpose +0bae: dw $1106 ; eb - repeat start +0bb0: dw $1125 ; ec - repeat end +0bb2: dw $134a ; ed - volume +0bb4: dw $135b ; ee - volume fade +0bb6: dw $14b1 ; ef - call subroutine +0bb8: dw $13e0 ; f0 - vibrato fade +0bba: dw $13fe ; f1 - pitch envelope +0bbc: dw $13fe ; f2 - pitch envelope +0bbe: dw $13f3 ; f3 - pitch envelope off +0bc0: dw $1387 ; f4 - tuning +0bc2: dw $1571 ; f5 - echo vbits/volume +0bc4: dw $1150 ; f6 - set GAIN +0bc6: dw $1593 ; f7 - set echo params +0bc8: dw $1628 ; f8 - echo start/delay +0bca: dw $1422 ; f9 - pitch slide +0bcc: dw $138d ; fa - set perc patch base 0bce: dw $137f ; fb -0bd0: dw $1628 ; fc -0bd2: dw $1502 ; fd +0bd0: dw $1628 ; fc - echo start/delay +0bd2: dw $1502 ; fd - sub-command +0bd4: dw $0bd8 ; fe +0bd6: dw $113e ; ff -0bd4: d8 0b mov $0b,x -0bd6: 3e 11 cmp x,$11 +; vcmd fe 0bd8: fc inc y 0bd9: f7 0a mov a,($0a)+y 0bdb: 68 04 cmp a,#$04 @@ -1420,7 +1421,7 @@ 10d0: fa 00 4b mov ($4b),($00) 10d3: 6f ret -; vcmd da +; vcmd da - jump 10d4: e4 df mov a,$df 10d6: d0 0f bne $10e7 10d8: fc inc y @@ -1438,7 +1439,7 @@ 10e9: cb 03 mov $03,y 10eb: 6f ret -; vcmd d9 +; vcmd d9 - command with voice 10ec: 4f f8 pcall $f8 10ee: 4d push x 10ef: c4 5a mov $5a,a @@ -1458,7 +1459,7 @@ 1103: d8 5a mov $5a,x 1105: 6f ret -; vcmd eb +; vcmd eb - repeat start 1106: 4f f0 pcall $f0 1108: 10 06 bpl $1110 110a: 68 ff cmp a,#$ff @@ -1476,7 +1477,7 @@ 1121: d5 cf 21 mov $21cf+x,a 1124: 6f ret -; vcmd ec +; vcmd ec - repeat end 1125: f8 5a mov x,$5a 1127: f5 db 21 mov a,$21db+x 112a: f0 11 beq $113d @@ -1489,6 +1490,7 @@ 113a: 8f ff 03 mov $03,#$ff 113d: 6f ret +; vcmd ff 113e: 4f f0 pcall $f0 1140: d0 07 bne $1149 1142: f4 28 mov a,$28+x @@ -1501,7 +1503,7 @@ 114d: d4 28 mov $28+x,a 114f: 6f ret -; vcmd f6 +; vcmd f6 - set GAIN 1150: 4f f8 pcall $f8 1152: f0 1b beq $116f 1154: d4 cf mov $cf+x,a @@ -1524,7 +1526,7 @@ 1171: cb 03 mov $03,y 1173: 6f ret -; vcmd d8 +; vcmd d8 - set channel parameters 1174: 4f f0 pcall $f0 1176: d0 14 bne $118c 1178: f4 34 mov a,$34+x @@ -1554,7 +1556,7 @@ 11a5: c4 f3 mov $f3,a 11a7: 6f ret -; vcmd db +; vcmd db - set ASDR and GAIN 11a8: f8 5b mov x,$5b 11aa: fc inc y 11ab: cb 03 mov $03,y @@ -1573,7 +1575,7 @@ 11c7: ae pop a 11c8: 6f ret -; vcmd dc +; vcmd dc - set pitch 11c9: f8 5b mov x,$5b 11cb: fc inc y 11cc: f7 0a mov a,($0a)+y @@ -1590,7 +1592,7 @@ 11e5: ae pop a 11e6: 6f ret -; vcmd dd +; vcmd dd - set ASDR and GAIN (2) 11e7: 4f f0 pcall $f0 11e9: 5f b8 11 jmp $11b8 @@ -1602,14 +1604,14 @@ 11f5: db 20 mov $20+x,y 11f7: 6f ret -; vcmd de +; vcmd de - long note 11f8: 4f f8 pcall $f8 -11fa: d5 e3 20 mov $20e3+x,a +11fa: d5 e3 20 mov $20e3+x,a ; lower byte of length 11fd: fc inc y 11fe: f7 0a mov a,($0a)+y -1200: d5 ef 20 mov $20ef+x,a +1200: d5 ef 20 mov $20ef+x,a ; higher byte of length 1203: cb 03 mov $03,y -1205: 5f 2c 0f jmp $0f2c +1205: 5f 2c 0f jmp $0f2c ; get quantization ; vcmd df 1208: f8 5a mov x,$5a @@ -1652,7 +1654,7 @@ 124b: 8f ff 03 mov $03,#$ff 124e: 6f ret -; vcmd e0 +; vcmd e0 - set instrument 124f: f8 5a mov x,$5a 1251: e8 ff mov a,#$ff 1253: d5 30 21 mov $2130+x,a @@ -1684,7 +1686,7 @@ 128a: d5 06 ff mov $ff06+x,a 128d: 6f ret -; vcmd e1 +; vcmd e1 - pan 128e: f8 5a mov x,$5a 1290: e8 00 mov a,#$00 1292: d5 48 21 mov $2148+x,a @@ -1704,17 +1706,17 @@ 12b1: d5 54 21 mov $2154+x,a 12b4: 6f ret -; vcmd e2,e9 +; vcmd e2,e9 - global transpose 12b5: 4f f2 pcall $f2 12b7: c5 1f 21 mov $211f,a 12ba: 6f ret -; vcmd ea +; vcmd ea - per-voice transpose 12bb: 4f f0 pcall $f0 12bd: d5 21 21 mov $2121+x,a 12c0: 6f ret -; vcmd e7 +; vcmd e7 - tempo 12c1: 4f f2 pcall $f2 12c3: 5d mov x,a 12c4: e8 36 mov a,#$36 @@ -1731,7 +1733,7 @@ 12dd: fa 4a f1 mov ($f1),($4a) 12e0: 6f ret -; vcmd e8 +; vcmd e8 - tempo fade 12e1: e8 00 mov a,#$00 12e3: c5 eb 1f mov $1feb,a 12e6: fc inc y @@ -1751,7 +1753,7 @@ 1304: cc ee 1f mov $1fee,y 1307: 6f ret -; vcmd e5 +; vcmd e5 - master volume 1308: e5 79 21 mov a,$2179 130b: d0 2b bne $1338 130d: 4f f2 pcall $f2 @@ -1780,7 +1782,7 @@ 1339: cb 03 mov $03,y 133b: 6f ret -; vcmd e6 +; vcmd e6 - master volume fade 133c: e5 79 21 mov a,$2179 133f: d0 f7 bne $1338 1341: fc inc y @@ -1789,7 +1791,7 @@ 1345: 4f f2 pcall $f2 1347: 5f 96 10 jmp $1096 -; vcmd ed +; vcmd ed - volume 134a: 4f f0 pcall $f0 134c: d5 9c ff mov $ff9c+x,a 134f: d5 78 ff mov $ff78+x,a @@ -1799,7 +1801,7 @@ 1358: d4 ab mov $ab+x,a 135a: 6f ret -; vcmd ee +; vcmd ee - volume fade 135b: 4f f8 pcall $f8 135d: d5 6c ff mov $ff6c+x,a 1360: 2d push a @@ -1824,12 +1826,12 @@ 1383: d5 3c 21 mov $213c+x,a 1386: 6f ret -; vcmd f4 +; vcmd f4 - tuning 1387: 4f f0 pcall $f0 1389: d5 13 21 mov $2113+x,a 138c: 6f ret -; vcmd fa +; vcmd fa - set perc patch base 138d: 4f f2 pcall $f2 138f: 30 04 bmi $1395 1391: c5 2f 21 mov $212f,a @@ -1854,7 +1856,7 @@ 13b2: c5 00 00 mov $0000,a 13b5: 6f ret -; vcmd e3 +; vcmd e3 - vibrato on 13b6: 4f f8 pcall $f8 13b8: d5 1b 01 mov $011b+x,a 13bb: fc inc y @@ -1875,27 +1877,27 @@ 13dc: d5 0f 01 mov $010f+x,a 13df: 6f ret -; vcmd f0 +; vcmd f0 - vibrato fade 13e0: 4f f8 pcall $f8 13e2: d5 93 01 mov $0193+x,a 13e5: 4f f2 pcall $f2 13e7: d5 9f 01 mov $019f+x,a 13ea: 6f ret -; vcmd e4 +; vcmd e4 - vibrato off 13eb: f8 5a mov x,$5a 13ed: e8 00 mov a,#$00 13ef: d5 03 01 mov $0103+x,a 13f2: 6f ret -; vcmd f3 +; vcmd f3 - pitch envelope off 13f3: f8 5a mov x,$5a 13f5: e8 00 mov a,#$00 13f7: d5 b7 01 mov $01b7+x,a 13fa: d5 0f 01 mov $010f+x,a 13fd: 6f ret -; vcmd f1,f2 +; vcmd f1,f2 - pitch envelope 13fe: f8 5a mov x,$5a 1400: e8 f1 mov a,#$f1 1402: d5 0f 01 mov $010f+x,a @@ -1914,7 +1916,7 @@ 141e: d5 03 01 mov $0103+x,a 1421: 6f ret -; vcmd f9 +; vcmd f9 - pitch slide 1422: f8 5a mov x,$5a 1424: f4 28 mov a,$28+x 1426: 10 4f bpl $1477 @@ -1980,7 +1982,7 @@ 14ad: d5 03 01 mov $0103+x,a 14b0: 6f ret -; vcmd ef +; vcmd ef - call subroutine 14b1: cb 06 mov $06,y 14b3: fc inc y 14b4: f7 0a mov a,($0a)+y @@ -2025,17 +2027,17 @@ 14fd: c4 f7 mov $f7,a 14ff: bc inc a 1500: 2f fb bra $14fd -; vcmd fd +; vcmd fd - sub-command 1502: f8 5b mov x,$5b 1504: fc inc y 1505: f7 0a mov a,($0a)+y -1507: 68 ff cmp a,#$ff +1507: 68 ff cmp a,#$ff ; ff - set pitch and DSP data - SRCN/ASDR 1509: f0 29 beq $1534 -150b: 68 fe cmp a,#$fe +150b: 68 fe cmp a,#$fe ; fe - set DSP data - SRCN/ASDR 150d: f0 34 beq $1543 -150f: 68 fd cmp a,#$fd +150f: 68 fd cmp a,#$fd ; fd - set DSP data - ASDR 1511: f0 36 beq $1549 -1513: 68 fc cmp a,#$fc +1513: 68 fc cmp a,#$fc ; fc - set pitch 1515: f0 47 beq $155e 1517: 6d push y 1518: 08 80 or a,#$80 @@ -2088,7 +2090,7 @@ 1570: 6f ret -; vcmd f5 +; vcmd f5 - echo vbits/volume 1571: fc inc y 1572: f7 0a mov a,($0a)+y 1574: 2d push a @@ -2109,7 +2111,7 @@ 158f: c5 f9 1f mov $1ff9,a 1592: 6f ret -; vcmd f7 +; vcmd f7 - set echo params 1593: fc inc y 1594: f7 0a mov a,($0a)+y 1596: 30 58 bmi $15f0 @@ -2181,7 +2183,7 @@ 1624: 8f fe f3 mov $f3,#$fe 1627: 6f ret -; vcmd f8,fc +; vcmd f8,fc - echo start/delay 1628: f8 5a mov x,$5a 162a: fc inc y 162b: cb 03 mov $03,y @@ -2599,7 +2601,7 @@ 1968: 8d 24 mov y,#$24 196a: c5 f8 05 mov $05f8,a 196d: cc f9 05 mov $05f9,y -1970: e8 18 mov a,#$18 +1970: e8 18 mov a,#$18 ; song table 1972: 8d 24 mov y,#$24 1974: c5 fa 05 mov $05fa,a 1977: cc fb 05 mov $05fb,y From a0ea550685c43f9c777b261b0b0163afce0a5f54 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 14:59:30 -0800 Subject: [PATCH 098/116] Add files via upload --- ...ng Hero - Bugyuru no Daibouken ($0400).bin | Bin 0 -> 3855 bytes .../Flying Hero - Bugyuru no Daibouken.s | 2079 +++++++++++++++++ snes/Sting/Melfand Stories.s | 138 +- snes/Sting/Treasure Hunter G.s | 150 +- 4 files changed, 2224 insertions(+), 143 deletions(-) create mode 100644 snes/Sting/Flying Hero - Bugyuru no Daibouken ($0400).bin create mode 100644 snes/Sting/Flying Hero - Bugyuru no Daibouken.s diff --git a/snes/Sting/Flying Hero - Bugyuru no Daibouken ($0400).bin b/snes/Sting/Flying Hero - Bugyuru no Daibouken ($0400).bin new file mode 100644 index 0000000000000000000000000000000000000000..6acc1abb6a584cff72107d3a1fd7dbaaf9a7ad43 GIT binary patch literal 3855 zcmbVPe{2)i9e;PvzPsF=eU9a5Ntce4Fv%NSJ*tjQtkKbFnkv$4tJG}&EZCYrbEk!) zjnsBgO}rL0mB6*Lt*C>D@&~k#f?*Zg#F{arUQjmY$Ei9mEg=d05l*G%v z?_!g{epQu~d+&YU`+na0{{E(AeDY5g>N+!O>xR(ZPKN@PS>W||3~tzEZTw1wv2d&MKqfB(iUo zEB2Dxv13qF4N`ylF@kgSBxf%qjfx5D$JQ|GL%~{m(aW>mZ*6x zkWZfoHCN_Djo&K5R{(XN#xXgA#!ln0*YVg1Ja!U~9mh)}$1t#2gv|oBwLBR#$Adu_ z3jwdH(Mc}n8yt)^CYfAB9vMQZ_*&iXibW1?5o#6lp0W~M}oU%T4R>9hI7i&I?$3ta*r zzRRL7&C{jR*k+t2jxw6I^5o%0>sB7V@>brFfGWj*@3(3U=#u&-bLa1O%qYXL_3Q#u zWOAYS4u9!&Y*VV$u-kDS03 z9yy8C(h#tXv(y|{( zmhB%VKem&}5AD9>NA_;xZK8EhI>g5r@cQ$h{IntEH71(YMUzSVy5H!}(Qgf?CKK(` z7^gpdj4}Gp+J^^J&t7M|@A>!$OD4rXdrm1hHr7Bryl5o%7-wWIV=sGP*WVpA`KBRFK6CyerA)_@WKR zxDe1%ugV;%SO{{^68z;k|LQ{dCPeZb9{*hm0UElcP~s(63D;F^ydLX}`xtqbyB-fh z0)e-=kVDpEpeA14fpZ}+>ke#DiI*X}tj95uUjVViX54LfIOc=zpsakaK408+yB|GO zy~E2{l&ZWJN?y(3_&q`;c@)O?_(}-J`}m}&(|xC?X!$-ps_2d4_=!M<#PGx@TR zIK*naTo3?t&kCv?u=af2hXEB}V*Y&MWw>O|tCf87MnU6azINf+rPGW)57_U}WnuEN zNJf6L+r2`DUJ(c|6DBM9UXl2&^MKLrJY;k_aihn1+(Rmf8} zkf(l`JT>98FLw4q3ZL#Y9+-Z}P2$DQ$;&($+u@EU$+DLRf;WRZc%9eyfZ2pYk^2V2E^#S6i|1fLS_{Dq_@=^K(d z&w%YaG}dHnJ_XsE9vplX%pAAB|_1MYxrfRdnc1?k`*eTafLd_P%uj$;^1`^qbYVb?0Y1# zIa{c1$`&1IGMe(lv1`46vbWykAaqvp@HrYXZs`pS5mh>cA*cX2ezNZK#MA$e7L)%x z;X>TP)34E*H{_Z=AaqT}qc~HV=v;$p%#-Tdy;6&3O@XW+*rukhc|2KO%%XrZwRr82 zD0h?S@XD?{n?D3yM|IT-bzlnWzzPd^BV4lAuEP-=pkcwB^zO+W8q{Aj5x+8H|Km7ia}V9 zytd*m;Bniag&=_d8Tb#?sfCQg24op1Kh+TFkV`aarEsm4l1cYf$xj%Er*EYr@32+T zkT)qE$B>3ob){o?7`n6LtKC`rh<~0*jjn|4|EN8ri~LNr=b+@(9%w?MeWdpQQPNP7 z3KCF4bW9*+lE@bVq9r*}CCb_C4CzQ?+)UI5)XgEamPa^TaR#6cUUB;23tW9r={#uN zuRIZoNvV}MC!ko_9=gScD&0ytRAAj8o}8H_)wH|Jx{cL^^~wFD2U%&2AA#N4{{V0U zJVZ5vV54O%NUF8pT88uiI1P>14!E0eF^JtQxY&qQ>rt4)qzJ?sbrJCN#k`Ua_=WchA$k&!+bF-M6dnl{X8eCB7;8;P-c?4i23kHLjK2UVF=m%&BokCZs-Qhjq7s7+#H^b<^AYnkS1N1PUZvga%0X+wh|LI2N-_Bh` zEtKgbe*;FdhBU`|OLJj4rZ2?4Sa$TKy^bC*-GVd4FX=bm5MrN%{;}5yeQ17Kp1aJK Q9kQiQjc Date: Sat, 17 Jan 2026 15:00:51 -0800 Subject: [PATCH 099/116] Add files via upload --- snes/NSPC/Sunsoft/Albert Odyssey ($0800).bin | Bin 0 -> 5879 bytes ...t Odyssey 2 - Jashin no Taidou ($0800).bin | Bin 0 -> 5900 bytes .../Albert Odyssey 2 - Jashin no Taidou.s | 2963 ++++++++++++++++ snes/NSPC/Sunsoft/Albert Odyssey.s | 2964 +++++++++++++++++ 4 files changed, 5927 insertions(+) create mode 100644 snes/NSPC/Sunsoft/Albert Odyssey ($0800).bin create mode 100644 snes/NSPC/Sunsoft/Albert Odyssey 2 - Jashin no Taidou ($0800).bin create mode 100644 snes/NSPC/Sunsoft/Albert Odyssey 2 - Jashin no Taidou.s create mode 100644 snes/NSPC/Sunsoft/Albert Odyssey.s diff --git a/snes/NSPC/Sunsoft/Albert Odyssey ($0800).bin b/snes/NSPC/Sunsoft/Albert Odyssey ($0800).bin new file mode 100644 index 0000000000000000000000000000000000000000..71160ed13a2dfc8f5f286bf2ee8cc07c9444c798 GIT binary patch literal 5879 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 literal 0 HcmV?d00001 diff --git a/snes/NSPC/Sunsoft/Albert Odyssey 2 - Jashin no Taidou ($0800).bin b/snes/NSPC/Sunsoft/Albert Odyssey 2 - Jashin no Taidou ($0800).bin new file mode 100644 index 0000000000000000000000000000000000000000..5ddf5a8529fe8a36f7d78948407e7b6bc5cd9bec GIT binary patch literal 5900 zcmchb4{#ILoyS-E-paPHCD~e8!WKdv$kc73lYAjFJub`|3fKvMY9(Ase8!du^xUNO z+LL3_^8}DD>0EAz&UWYINdryn4!Pk%ATop`*aqyIRRbYL>!J;*T2m3Epv070u-2F} zLic+s8%!?KPUmh8#&6%heeb9De!t)MBRNLHCz3J$kGV(klhl@XPshZWw7_=K<_qj{ z_9t4ic$1sVOQH~klXB=fl{AL_ixQqpYDk?DQi38(2{#jCNM4eNAiOpdL5W`@yhd14 zok>3sLBiVc2hJntO;VvT7G6zL@=SBm5%#|PJ>h#@Iq;fHA6y@Q@*4Db1W(sf2@1>FS1H`E zCO4UZ4PcjFqtJQ8@p;^`MchA{;|$iyh}&NruMaVpJCG00VKho{oAX9Bq@YQGpm^u| zRO0)TkONC47%bF}QgKGstcYu&*eMr{Qk|NrR2i)GSm}xt3#!D)#4r--<9KeUf^1Wi z9fCEKAd=ogDJ-QZB}MH>QR1`|M0`R*a?!pfjm(53%e3QC4y-Cdq~bL-z`wd zjF6k?N867fc|rN^CO()WXgV`_F2wyRFL4BIe}ArDE6|-89S_}nxxuzYiR3wz^Lb8w zGH;LWXS!b9zv5~lGnkV_{34feX8fL z9!2Ba0X?)}dmfJGLnt$|<#9y%F(&=T;W&>XQ8NU_@qS8uX#n<33?kugefyuDuH`lu zqjfxZuLM)c5STrGgsi2->ea@pmX^xe#ASy2mPNh9Yh-b-ZEm#rYok1W=;JPi)9C&C z51kI)h?gv_60eSz@Akf2;|*M*rADN5AjylAe!4D6y(sn4Nh%VQD2*i2k>R|mdJ-p9 z;I4{~j`YfQrGt+2DP6RvQyP))Shu=DH|-5HBJMjzZk5qb#S480mId?3!xYs1&em>> z8aKoXZGLLh`o@;2PP<^9`WL&vPIcRzQ(g9Jud@@z@VK99XV02#51Iwmh1Z#1Tya_} zP7CZg#X(P)!_i{$WW&u$8F{o9LkHB%;q+lr-}z=;E}f1SbI$zRaf=g9spPPz{p1D( z@d{^tvvPT*lN9O0a7X^S>;N}x=N5uv3%LTe$pu@K%$sTD&YRK7PC7qcQk~JSrT9^O zr>`oRk-EVNxLUnbNK0^BaBgrK{gIJHi`G?%u~{ElB{c98xp7#pX{UU$X_uVav|H}l zMTxx-eu;R#ys;(!UGC9*kxk3~J*$kgunJn!tK^AjrRz$x*l)O5{HdGzopCxF#TBwn zDWpXvNx}6cDalJmx+2{}QVp%%{O?Dp&*~xCKUhK z0iOHdJ@G5WO-I~H1s$nyU35DniiT-!tMkqBob=QIyQHBHmmAVkLAzumBTX@InM8r> zDEHS36pDs*(~5=;j}J*68Up;SLQZE?ZFniZNnSAURQnSxo9KZ}(I?_fvUy-zyEp0` z_+k6jmL}~$Q`9^0Y;#a*xJafV>F8J4wI+F6dg^V1bL!s> z&hfhRRFzTAz2Y8pi}YYcnun858@0XzAA4VJ@N2_S*87@~eQmK>b?D_Ahy&m)aMP?& zU%vRej%s~1l~?uHxGN`Kwed0NKBM}=ira^W8=cX{Vn`^`CoVdbKo6L%c^f z^Fl35x-WvE`w3pyM7saRxBtoMO(f)>;)NO>e2JH0>e^%K+9P~Y<07kf(c@BwI^a{w zZkXt!dB}4-aYvW{=60#(I!GjD%{79#g)pN7{wme?R;s0!PPrvFovM&3Xr+=k!%A=l zUU(dGU3CUh9oPm|db5wMN2+Owf!Uq3N2)V>0wQYm^V7Z|>Gr1mlUtTY)_v5U# zLYf3&os3uKI#i91!yB-M&1S34_+H8Qn;Ra1(rdy&DTCiuNj}*O7 zKuUv*R=!*E!ErRAncimg0$brk+7J)vN+?vkNHFq$c&^9@A9~17z2Qt!Z(N&RJz1oU zvIF|pSze>B)i>!o^nU#T{UQA+y`cY8{~P_d{!6{yU@Y8p8s6^n=N(Bn6MBv|$6YJ$VXr>i6iW(tcgrbSU#D_>OOnQ6=JR}EC z6nbCrq+LZ*Ywf=G*Vt#fde+#}N*M|(9%M5WX>8+Nu_@c#Ik(-F5Tv)7PRnbX{!{)oq#Ac~`f$%j zhP3Nq+#)a8V*zQYpq-GhuDMQwmpZ{+uenY_xH{o4eb{xBq<1klUd5az5Ou?p>Xjc# z^~rc|pKIyoroFx5f>}-TsYl^OfmT)G8d0DPNg!0KjH!Nky%MA^23ISTW=B6{S!INF z6;uvVjYSz0G z9;FX5t~bz2H~5M^H=Qlw8jQ^op72?=lQK_u4u{)W=pow5e{O==W9n>?R?VCl36EE2 zCY}x}Mmh{`6;510;qmaeREBtxDj9(tpJ3qvA#4t^YK>0}5uqOfN2$&{0O)fPxr!1e zN#DtAA3)I%f>|LEK|f3q5d)M2ty9^S@OTzB&KGB4gJ8x_5jbr(BVETzAtT9H@h~c9 zRD!HYB8VCz`Ity-K4>_Yhz~%cjEQt8ZU&C$I)-elE>XdF1J^P4nU#~R|L34lgR`Ik zPXZbq@=!qoYX1W?dRPFBdw^kEZgbv*0suo`0CF>@03}XEZJo5;MGH*46ksCxRwxJa z*(wFqIbb-9Ax3U#}{$Ch#KygTkL+=QY=YB>je8M zjg1I!8oIuufqtSk*QNVR`Isfv5C%}KvA}m0tun%J=ZnD@AC9y}+J+Lc$u+7hk;jI_m(O|`a_rYXwJ9nm7bSORygKwF+v<0gBU^VfI;>B=W zjW|-~`YrH}8^g?b{8NGF_-B}b5tV;FD0T(81180dVd=C|0r5U0m0{qYniB2IYVpXeO;dG>$kv1oM7%2wfGlI`?Gge8&tnAApM z(Zc`=F$8ADRG4XHvM>WvNaYEhRKOhoK42#BAuP~AO7PZ8bIjsqAjPOd4z;X+sSfz- zCKh#pMXjnuL9nPhYf&#))CY?e!mL(uD^ipJTa>qpk3 zR=sVBZL0K-vr4KpixsU|RKZFRtEhqly%=s%>BfOR4EH*72~eerxfoMX#mCG;l@5~H zxo|0xEDQyga z6t4;?W8Oe3AvcD&|0unC$Z$70WeiSS z#N7T;0x7o_0;GTuK7f=CP+<*|RwxDr!K`DdSp-s6G6Yg8nT7{SRY)mV_;pArSa=Uo zI@H-dCJQN-2&7y+j%4O4#x9!R$}j`C0+|+2r612nl^zy?Mn#n#mQS1@SaKqZCGZo? zDb(=KCZG`LJeBPPE;&IufjV23w>U{bq*;4Unp-;Q#URbvcym^o;|!mzQla?luPMz- ztG+>+%OZ}u(%hW=fq+PutW{-uv8tQbK(?DzJy5PQvKi!B2Dw(1x>?owQX#9@v3q;+ z+;?pyEhR0pGAXNy{d3!0#g-Rk6o6yB+ zLAQ&B##$TvQ20fBF$h+0QOjaKY?)Q;&9+x#3@CPtfvzuO3@CQXUB%9tvfajkHFJtB z|4GGeo>gpBuAAkbfL8zgHwpC*7X7~n_242NzKZ1(nC;(Qw#rlgcP-Dq(Ej4iUAuQv z*?*f){Z_t{lb@eo_TYo2JCnDTJxu*3p}9Tr(4z$#e!RYJg|n{lnT?NEuhBoYZf!&E z#oXjyZd`+1E literal 0 HcmV?d00001 diff --git a/snes/NSPC/Sunsoft/Albert Odyssey 2 - Jashin no Taidou.s b/snes/NSPC/Sunsoft/Albert Odyssey 2 - Jashin no Taidou.s new file mode 100644 index 00000000..a37959a9 --- /dev/null +++ b/snes/NSPC/Sunsoft/Albert Odyssey 2 - Jashin no Taidou.s @@ -0,0 +1,2963 @@ +0800: 20 clrp +0801: cd cf mov x,#$cf +0803: bd mov sp,x +0804: e8 e0 mov a,#$e0 +0806: 8d 6c mov y,#$6c +0808: 3f 35 0c call $0c35 +080b: e8 00 mov a,#$00 +080d: 5d mov x,a +080e: af mov (x)+,a +080f: c8 e0 cmp x,#$e0 +0811: d0 fb bne $080e +0813: fd mov y,a +0814: c4 14 mov $14,a +0816: 8f 02 15 mov $15,#$02 +0819: d7 14 mov ($14)+y,a +081b: 3a 14 incw $14 +081d: 78 06 15 cmp $15,#$06 +0820: d0 f7 bne $0819 +0822: 3f f3 09 call $09f3 +0825: e8 03 mov a,#$03 +0827: c5 00 04 mov $0400,a +082a: e8 f0 mov a,#$f0 +082c: c5 f1 00 mov $00f1,a +082f: e8 10 mov a,#$10 +0831: c5 fa 00 mov $00fa,a +0834: c4 53 mov $53,a +0836: e8 01 mov a,#$01 +0838: c5 f1 00 mov $00f1,a +083b: e8 00 mov a,#$00 +083d: c4 f4 mov $f4,a +083f: c4 f5 mov $f5,a +0841: c4 f6 mov $f6,a +0843: c4 f7 mov $f7,a +0845: e5 d1 03 mov a,$03d1 +0848: f0 23 beq $086d +084a: e5 d4 03 mov a,$03d4 +084d: 04 46 or a,$46 +084f: c5 d4 03 mov $03d4,a +0852: e5 d2 03 mov a,$03d2 +0855: 04 45 or a,$45 +0857: c4 45 mov $45,a +0859: 48 ff eor a,#$ff +085b: fd mov y,a +085c: 25 d4 03 and a,$03d4 +085f: c4 46 mov $46,a +0861: dd mov a,y +0862: 25 d3 03 and a,$03d3 +0865: c5 d4 03 mov $03d4,a +0868: e8 00 mov a,#$00 +086a: c5 d1 03 mov $03d1,a +086d: 8d 0a mov y,#$0a +086f: ad 05 cmp y,#$05 +0871: f0 07 beq $087a +0873: b0 08 bcs $087d +0875: 69 4d 4c cmp ($4c),($4d) +0878: d0 11 bne $088b +087a: e3 4c 0e bbs7 $4c,$088b +087d: f6 79 1e mov a,$1e79+y +0880: c5 f2 00 mov $00f2,a +0883: f6 83 1e mov a,$1e83+y +0886: 5d mov x,a +0887: e6 mov a,(x) +0888: c5 f3 00 mov $00f3,a +088b: fe e2 dbnz y,$086f +088d: cb 45 mov $45,y +088f: cb 46 mov $46,y +0891: e4 18 mov a,$18 +0893: 44 19 eor a,$19 +0895: 5c lsr a +0896: 5c lsr a +0897: ed notc +0898: 6b 18 ror $18 +089a: 6b 19 ror $19 +089c: ec fd 00 mov y,$00fd +089f: f0 fb beq $089c +08a1: 6d push y +08a2: e8 20 mov a,#$20 +08a4: cf mul ya +08a5: 60 clrc +08a6: 84 43 adc a,$43 +08a8: c4 43 mov $43,a +08aa: 90 07 bcc $08b3 +08ac: 69 4d 4c cmp ($4c),($4d) +08af: f0 02 beq $08b3 +08b1: ab 4c inc $4c +08b3: e4 53 mov a,$53 +08b5: ee pop y +08b6: cf mul ya +08b7: 60 clrc +08b8: 84 51 adc a,$51 +08ba: c4 51 mov $51,a +08bc: 90 56 bcc $0914 +08be: e5 00 04 mov a,$0400 +08c1: f0 06 beq $08c9 +08c3: 8c 00 04 dec $0400 +08c6: 5f 45 08 jmp $0845 + +08c9: e8 ff mov a,#$ff +08cb: c5 d1 03 mov $03d1,a +08ce: e8 00 mov a,#$00 +08d0: c5 d2 03 mov $03d2,a +08d3: c5 d3 03 mov $03d3,a +08d6: 3f 6f 09 call $096f +08d9: 3f 34 1d call $1d34 +08dc: 3f 82 15 call $1582 +08df: e4 05 mov a,$05 +08e1: 04 06 or a,$06 +08e3: f0 03 beq $08e8 +08e5: 3f a4 16 call $16a4 +08e8: e4 5e mov a,$5e +08ea: c5 05 04 mov $0405,a +08ed: 3f a8 0c call $0ca8 +08f0: e4 5e mov a,$5e +08f2: c5 c0 03 mov $03c0,a +08f5: cd 00 mov x,#$00 +08f7: 3f 58 09 call $0958 +08fa: cd 01 mov x,#$01 +08fc: 3f 58 09 call $0958 +08ff: cd 02 mov x,#$02 +0901: 3f 58 09 call $0958 +0904: cd 03 mov x,#$03 +0906: 3f 58 09 call $0958 +0909: ac 4f 00 inc $004f +090c: e5 4f 00 mov a,$004f +090f: c4 07 mov $07,a +0911: 5f 45 08 jmp $0845 + +0914: e5 05 04 mov a,$0405 +0917: c4 5e mov $5e,a +0919: cd 00 mov x,#$00 +091b: e4 05 mov a,$05 +091d: f0 01 beq $0920 +091f: 3d inc x +0920: e4 06 mov a,$06 +0922: f0 01 beq $0925 +0924: 3d inc x +0925: 7d mov a,x +0926: f0 12 beq $093a +0928: cd 00 mov x,#$00 +092a: 8f 01 47 mov $47,#$01 +092d: f4 21 mov a,$21+x +092f: f0 03 beq $0934 +0931: 3f 49 1b call $1b49 +0934: 3d inc x +0935: 3d inc x +0936: 0b 47 asl $47 +0938: d0 f3 bne $092d +093a: e5 c0 03 mov a,$03c0 +093d: c4 5e mov $5e,a +093f: e4 04 mov a,$04 +0941: f0 12 beq $0955 +0943: cd 00 mov x,#$00 +0945: 8f 01 47 mov $47,#$01 +0948: f4 31 mov a,$31+x +094a: f0 03 beq $094f +094c: 3f a4 12 call $12a4 +094f: 3d inc x +0950: 3d inc x +0951: 0b 47 asl $47 +0953: d0 f3 bne $0948 +0955: 5f 45 08 jmp $0845 + +0958: f5 b0 03 mov a,$03b0+x +095b: d5 b4 03 mov $03b4+x,a +095e: f4 04 mov a,$04+x +0960: d5 f4 00 mov $00f4+x,a +0963: f5 f4 00 mov a,$00f4+x +0966: 75 f4 00 cmp a,$00f4+x +0969: d0 f8 bne $0963 +096b: d5 b0 03 mov $03b0+x,a +096e: 6f ret + +096f: e5 d5 03 mov a,$03d5 +0972: f0 12 beq $0986 +0974: 9c dec a +0975: 68 01 cmp a,#$01 +0977: f0 05 beq $097e +0979: c5 d5 03 mov $03d5,a +097c: 2f 08 bra $0986 +097e: 3f c8 0a call $0ac8 +0981: e8 00 mov a,#$00 +0983: c5 d5 03 mov $03d5,a +0986: e5 b0 03 mov a,$03b0 +0989: 65 b4 03 cmp a,$03b4 +098c: f0 08 beq $0996 +098e: 28 7f and a,#$7f +0990: c4 00 mov $00,a +0992: e8 ff mov a,#$ff +0994: c4 08 mov $08,a +0996: e5 b1 03 mov a,$03b1 +0999: 65 b5 03 cmp a,$03b5 +099c: f0 0b beq $09a9 +099e: 28 7f and a,#$7f +09a0: 68 6f cmp a,#$6f +09a2: b0 07 bcs $09ab +09a4: c4 01 mov $01,a +09a6: 8f ff 09 mov $09,#$ff +09a9: 2f 03 bra $09ae +09ab: 3f c6 09 call $09c6 +09ae: e5 b2 03 mov a,$03b2 +09b1: 65 b6 03 cmp a,$03b6 +09b4: f0 0b beq $09c1 +09b6: 28 7f and a,#$7f +09b8: 68 6f cmp a,#$6f +09ba: b0 06 bcs $09c2 +09bc: c4 02 mov $02,a +09be: 8f ff 0a mov $0a,#$ff +09c1: 6f ret + +09c2: 3f c6 09 call $09c6 +09c5: 6f ret + +09c6: 28 0f and a,#$0f +09c8: 1c asl a +09c9: 5d mov x,a +09ca: f5 d4 09 mov a,$09d4+x +09cd: 2d push a +09ce: f5 d3 09 mov a,$09d3+x +09d1: 2d push a +09d2: 6f ret + +09d3: f3 09 8b bbc7 $09,$0961 +09d6: 0a 92 0a or1 c,$0a92,0 +09d9: a0 ei +09da: 0a a6 0a or1 c,$0aa6,0 +09dd: ac 0a b8 inc $b80a +09e0: 0a be 0a or1 c,$0abe,0 +09e3: e3 0a e9 bbs7 $0a,$09cf +09e6: 0a fd 0a or1 c,$0afd,0 +09e9: 1b 0b asl $0b+x +09eb: 39 and (x),(y) +09ec: 0b 39 asl $39 +09ee: 0b 39 asl $39 +09f0: 0b 14 asl $14 +09f2: 0a e8 e0 or1 c,$00e8,7 +09f5: 8d 6c mov y,#$6c +09f7: 3f 35 0c call $0c35 +09fa: e8 00 mov a,#$00 +09fc: 3f bd 0f call $0fbd +09ff: a2 48 set5 $48 +0a01: e8 70 mov a,#$70 +0a03: 8d 0c mov y,#$0c +0a05: 3f 35 0c call $0c35 +0a08: 8d 1c mov y,#$1c +0a0a: 3f 35 0c call $0c35 +0a0d: e8 20 mov a,#$20 +0a0f: 8d 5d mov y,#$5d +0a11: 3f 35 0c call $0c35 +0a14: e8 00 mov a,#$00 +0a16: c5 b8 03 mov $03b8,a +0a19: e8 b0 mov a,#$b0 +0a1b: c4 59 mov $59,a +0a1d: c5 bb 03 mov $03bb,a +0a20: e8 ff mov a,#$ff +0a22: c5 d7 03 mov $03d7,a +0a25: e8 b4 mov a,#$b4 +0a27: c5 ba 03 mov $03ba,a +0a2a: e8 ff mov a,#$ff +0a2c: c5 b9 03 mov $03b9,a +0a2f: e8 e0 mov a,#$e0 +0a31: c5 04 04 mov $0404,a +0a34: 8f 20 53 mov $53,#$20 +0a37: e8 00 mov a,#$00 +0a39: c4 00 mov $00,a +0a3b: c4 01 mov $01,a +0a3d: c4 02 mov $02,a +0a3f: c4 03 mov $03,a +0a41: c5 b0 03 mov $03b0,a +0a44: c5 b1 03 mov $03b1,a +0a47: c5 b2 03 mov $03b2,a +0a4a: c5 b3 03 mov $03b3,a +0a4d: c5 b4 03 mov $03b4,a +0a50: c5 b5 03 mov $03b5,a +0a53: c5 b6 03 mov $03b6,a +0a56: c5 b7 03 mov $03b7,a +0a59: c4 5a mov $5a,a +0a5b: c4 68 mov $68,a +0a5d: c4 54 mov $54,a +0a5f: c4 50 mov $50,a +0a61: c5 03 04 mov $0403,a +0a64: c4 42 mov $42,a +0a66: c5 02 04 mov $0402,a +0a69: c5 e0 05 mov $05e0,a +0a6c: c4 5f mov $5f,a +0a6e: c5 bc 03 mov $03bc,a +0a71: c5 bd 03 mov $03bd,a +0a74: c5 be 03 mov $03be,a +0a77: c5 bf 03 mov $03bf,a +0a7a: c5 d5 03 mov $03d5,a +0a7d: e8 0a mov a,#$0a +0a7f: c5 06 04 mov $0406,a +0a82: c5 e3 05 mov $05e3,a +0a85: e8 f1 mov a,#$f1 +0a87: c5 f1 00 mov $00f1,a +0a8a: 6f ret + +0a8b: e5 b3 03 mov a,$03b3 +0a8e: 3f d6 0e call $0ed6 +0a91: 6f ret + +0a92: ec b3 03 mov y,$03b3 +0a95: dd mov a,y +0a96: 3f a8 0e call $0ea8 +0a99: e5 b3 03 mov a,$03b3 +0a9c: c5 bb 03 mov $03bb,a +0a9f: 6f ret + +0aa0: e8 00 mov a,#$00 +0aa2: c5 b8 03 mov $03b8,a +0aa5: 6f ret + +0aa6: e8 ff mov a,#$ff +0aa8: c5 b8 03 mov $03b8,a +0aab: 6f ret + +0aac: e8 ff mov a,#$ff +0aae: c5 b9 03 mov $03b9,a +0ab1: e5 b3 03 mov a,$03b3 +0ab4: c5 04 04 mov $0404,a +0ab7: 6f ret + +0ab8: e8 00 mov a,#$00 +0aba: c5 b9 03 mov $03b9,a +0abd: 6f ret + +0abe: e5 b3 03 mov a,$03b3 +0ac1: d0 01 bne $0ac4 +0ac3: bc inc a +0ac4: c5 ba 03 mov $03ba,a +0ac7: 6f ret + +0ac8: 8d 00 mov y,#$00 +0aca: dd mov a,y +0acb: 3f a8 0e call $0ea8 +0ace: e5 ba 03 mov a,$03ba +0ad1: c4 5a mov $5a,a +0ad3: e5 bb 03 mov a,$03bb +0ad6: c4 5b mov $5b,a +0ad8: 80 setc +0ad9: a4 59 sbc a,$59 +0adb: f8 5a mov x,$5a +0add: 3f 4d 10 call $104d +0ae0: da 5c movw $5c,ya +0ae2: 6f ret + +0ae3: e8 03 mov a,#$03 +0ae5: c5 d5 03 mov $03d5,a +0ae8: 6f ret + +0ae9: e5 ba 03 mov a,$03ba +0aec: c4 5a mov $5a,a +0aee: e8 00 mov a,#$00 +0af0: c4 5b mov $5b,a +0af2: 80 setc +0af3: a4 59 sbc a,$59 +0af5: f8 5a mov x,$5a +0af7: 3f 4d 10 call $104d +0afa: da 5c movw $5c,ya +0afc: 6f ret + +0afd: e5 b3 03 mov a,$03b3 +0b00: c5 06 04 mov $0406,a +0b03: cd 00 mov x,#$00 +0b05: 8f 01 47 mov $47,#$01 +0b08: e4 47 mov a,$47 +0b0a: 24 1b and a,$1b +0b0c: f0 06 beq $0b14 +0b0e: e5 e3 05 mov a,$05e3 +0b11: 3f 27 17 call $1727 +0b14: 3d inc x +0b15: 3d inc x +0b16: 0b 47 asl $47 +0b18: d0 ee bne $0b08 +0b1a: 6f ret + +0b1b: e5 b3 03 mov a,$03b3 +0b1e: c5 e3 05 mov $05e3,a +0b21: cd 00 mov x,#$00 +0b23: 8f 01 47 mov $47,#$01 +0b26: e4 47 mov a,$47 +0b28: 24 6d and a,$6d +0b2a: f0 06 beq $0b32 +0b2c: e5 e3 05 mov a,$05e3 +0b2f: 3f 27 17 call $1727 +0b32: 3d inc x +0b33: 3d inc x +0b34: 0b 47 asl $47 +0b36: d0 ee bne $0b26 +0b38: 6f ret + +0b39: 6f ret + +0b3a: 6f ret + +; handle a note vcmd (80-df) (music) +0b3b: ad ca cmp y,#$ca +0b3d: 90 05 bcc $0b44 +0b3f: 3f 01 0e call $0e01 +0b42: 8d a4 mov y,#$a4 +0b44: ad c8 cmp y,#$c8 +0b46: b0 f2 bcs $0b3a +0b48: e4 1a mov a,$1a +0b4a: 24 47 and a,$47 +0b4c: d0 ec bne $0b3a +0b4e: dd mov a,y +0b4f: 28 7f and a,#$7f +0b51: 60 clrc +0b52: 84 50 adc a,$50 +0b54: 60 clrc +0b55: 95 e1 02 adc a,$02e1+x +0b58: d5 61 03 mov $0361+x,a +0b5b: f5 81 03 mov a,$0381+x +0b5e: d5 60 03 mov $0360+x,a +0b61: f5 b1 02 mov a,$02b1+x +0b64: 5c lsr a +0b65: e8 00 mov a,#$00 +0b67: 7c ror a +0b68: d5 a0 02 mov $02a0+x,a +0b6b: e8 00 mov a,#$00 +0b6d: d4 b0 mov $b0+x,a +0b6f: d5 00 01 mov $0100+x,a +0b72: d5 d0 02 mov $02d0+x,a +0b75: d4 c0 mov $c0+x,a +0b77: 09 47 5e or ($5e),($47) +0b7a: e5 d2 03 mov a,$03d2 +0b7d: 04 47 or a,$47 +0b7f: c5 d2 03 mov $03d2,a +0b82: f5 80 02 mov a,$0280+x +0b85: d4 a0 mov $a0+x,a +0b87: f0 1e beq $0ba7 +0b89: f5 81 02 mov a,$0281+x +0b8c: d4 a1 mov $a1+x,a +0b8e: f5 90 02 mov a,$0290+x +0b91: d0 0a bne $0b9d +0b93: f5 61 03 mov a,$0361+x +0b96: 80 setc +0b97: b5 91 02 sbc a,$0291+x +0b9a: d5 61 03 mov $0361+x,a +0b9d: f5 91 02 mov a,$0291+x +0ba0: 60 clrc +0ba1: 95 61 03 adc a,$0361+x +0ba4: 3f 2a 10 call $102a +0ba7: 3f 42 10 call $1042 +0baa: 8d 00 mov y,#$00 +0bac: e4 11 mov a,$11 +0bae: 80 setc +0baf: a8 34 sbc a,#$34 +0bb1: b0 09 bcs $0bbc +0bb3: e4 11 mov a,$11 +0bb5: 80 setc +0bb6: a8 13 sbc a,#$13 +0bb8: b0 06 bcs $0bc0 +0bba: dc dec y +0bbb: 1c asl a +0bbc: 7a 10 addw ya,$10 +0bbe: da 10 movw $10,ya +0bc0: 4d push x +0bc1: e4 11 mov a,$11 +0bc3: 1c asl a +0bc4: 8d 00 mov y,#$00 +0bc6: cd 18 mov x,#$18 +0bc8: 9e div ya,x +0bc9: 5d mov x,a +0bca: f6 8f 1e mov a,$1e8f+y +0bcd: c4 15 mov $15,a +0bcf: f6 8e 1e mov a,$1e8e+y +0bd2: c4 14 mov $14,a +0bd4: f6 91 1e mov a,$1e91+y +0bd7: 2d push a +0bd8: f6 90 1e mov a,$1e90+y +0bdb: ee pop y +0bdc: 9a 14 subw ya,$14 +0bde: eb 10 mov y,$10 +0be0: cf mul ya +0be1: dd mov a,y +0be2: 8d 00 mov y,#$00 +0be4: 7a 14 addw ya,$14 +0be6: cb 15 mov $15,y +0be8: 1c asl a +0be9: 2b 15 rol $15 +0beb: c4 14 mov $14,a +0bed: 2f 04 bra $0bf3 +0bef: 4b 15 lsr $15 +0bf1: 7c ror a +0bf2: 3d inc x +0bf3: c8 06 cmp x,#$06 +0bf5: d0 f8 bne $0bef +0bf7: c4 14 mov $14,a +0bf9: ce pop x +0bfa: f5 20 02 mov a,$0220+x +0bfd: eb 15 mov y,$15 +0bff: cf mul ya +0c00: da 16 movw $16,ya +0c02: f5 20 02 mov a,$0220+x +0c05: eb 14 mov y,$14 +0c07: cf mul ya +0c08: 6d push y +0c09: f5 21 02 mov a,$0221+x +0c0c: eb 14 mov y,$14 +0c0e: cf mul ya +0c0f: 7a 16 addw ya,$16 +0c11: da 16 movw $16,ya +0c13: f5 21 02 mov a,$0221+x +0c16: eb 15 mov y,$15 +0c18: cf mul ya +0c19: fd mov y,a +0c1a: ae pop a +0c1b: 7a 16 addw ya,$16 +0c1d: da 16 movw $16,ya +0c1f: 7d mov a,x +0c20: 9f xcn a +0c21: 5c lsr a +0c22: 08 02 or a,#$02 +0c24: fd mov y,a +0c25: e4 16 mov a,$16 +0c27: 3f 2d 0c call $0c2d +0c2a: fc inc y +0c2b: e4 17 mov a,$17 +0c2d: 2d push a +0c2e: e4 47 mov a,$47 +0c30: 24 1a and a,$1a +0c32: ae pop a +0c33: d0 06 bne $0c3b +0c35: cc f2 00 mov $00f2,y +0c38: c5 f3 00 mov $00f3,a +0c3b: 6f ret + +; read $40/1 into YA with advancing the ptr +0c3c: 8d 00 mov y,#$00 +0c3e: f7 40 mov a,($40)+y +0c40: 3a 40 incw $40 +0c42: 2d push a +0c43: f7 40 mov a,($40)+y +0c45: 3a 40 incw $40 +0c47: fd mov y,a +0c48: ae pop a +0c49: 6f ret + +; play song in A +0c4a: e8 ff mov a,#$ff +0c4c: 8d 5c mov y,#$5c +0c4e: cc f2 00 mov $00f2,y +0c51: c5 f3 00 mov $00f3,a +0c54: 3f c0 1e call $1ec0 +0c57: 3f 19 0a call $0a19 +0c5a: e8 00 mov a,#$00 +0c5c: c4 08 mov $08,a +0c5e: c4 04 mov $04,a +0c60: 1c asl a +0c61: f0 0d beq $0c70 +0c63: 5d mov x,a +0c64: f5 ff 9f mov a,$9fff+x +0c67: fd mov y,a +0c68: f5 fe 9f mov a,$9ffe+x +0c6b: da 40 movw $40,ya +0c6d: 8f 02 0c mov $0c,#$02 +0c70: e4 1a mov a,$1a +0c72: 48 ff eor a,#$ff +0c74: 0e 46 00 tset1 $0046 +0c77: 6f ret + +; reset song params +0c78: cd 0e mov x,#$0e +0c7a: 8f 80 47 mov $47,#$80 +0c7d: e8 ff mov a,#$ff +0c7f: d5 91 03 mov $0391+x,a +0c82: e8 0a mov a,#$0a +0c84: 3f 5a 0e call $0e5a +0c87: d5 11 02 mov $0211+x,a +0c8a: d5 81 03 mov $0381+x,a +0c8d: d5 e1 02 mov $02e1+x,a +0c90: d5 80 02 mov $0280+x,a +0c93: d4 b1 mov $b1+x,a +0c95: d4 c1 mov $c1+x,a +0c97: 1d dec x +0c98: 1d dec x +0c99: 4b 47 lsr $47 +0c9b: d0 e0 bne $0c7d +0c9d: c4 5a mov $5a,a +0c9f: c4 68 mov $68,a +0ca1: c4 54 mov $54,a +0ca3: c4 42 mov $42,a +0ca5: c4 5f mov $5f,a +0ca7: 6f ret + +0ca8: eb 08 mov y,$08 +0caa: e4 00 mov a,$00 +0cac: c4 08 mov $08,a +0cae: 68 7d cmp a,#$7d +0cb0: f0 be beq $0c70 +0cb2: 68 7e cmp a,#$7e +0cb4: f0 08 beq $0cbe +0cb6: 68 7f cmp a,#$7f +0cb8: f0 90 beq $0c4a +0cba: 7e 00 cmp y,$00 +0cbc: d0 a0 bne $0c5e +0cbe: e4 04 mov a,$04 +0cc0: f0 e5 beq $0ca7 +0cc2: e4 0c mov a,$0c +0cc4: f0 4e beq $0d14 +0cc6: 6e 0c af dbnz $0c,$0c78 +0cc9: 3f 3c 0c call $0c3c +0ccc: d0 14 bne $0ce2 +0cce: fd mov y,a +0ccf: f0 8d beq $0c5e +0cd1: 8b 42 dec $42 +0cd3: 10 02 bpl $0cd7 +0cd5: c4 42 mov $42,a +0cd7: 3f 3c 0c call $0c3c +0cda: f8 42 mov x,$42 +0cdc: f0 eb beq $0cc9 +0cde: da 40 movw $40,ya +0ce0: 2f e7 bra $0cc9 +0ce2: da 16 movw $16,ya +0ce4: 8d 0f mov y,#$0f +0ce6: f7 16 mov a,($16)+y +0ce8: d6 30 00 mov $0030+y,a +0ceb: dc dec y +0cec: 10 f8 bpl $0ce6 +0cee: cd 00 mov x,#$00 +0cf0: 8f 01 47 mov $47,#$01 +0cf3: f4 31 mov a,$31+x +0cf5: f0 0a beq $0d01 +0cf7: f5 11 02 mov a,$0211+x +0cfa: d0 05 bne $0d01 +0cfc: e8 00 mov a,#$00 +0cfe: 3f 01 0e call $0e01 +0d01: e8 00 mov a,#$00 +0d03: d5 60 02 mov $0260+x,a +0d06: d4 90 mov $90+x,a +0d08: d4 91 mov $91+x,a +0d0a: bc inc a +0d0b: d5 50 02 mov $0250+x,a +0d0e: 3d inc x +0d0f: 3d inc x +0d10: 0b 47 asl $47 +0d12: d0 df bne $0cf3 +0d14: cd 00 mov x,#$00 +0d16: d8 5e mov $5e,x +0d18: 8f 01 47 mov $47,#$01 +0d1b: d8 44 mov $44,x +0d1d: f4 31 mov a,$31+x +0d1f: f0 71 beq $0d92 +0d21: f5 50 02 mov a,$0250+x +0d24: 9c dec a +0d25: d5 50 02 mov $0250+x,a +0d28: d0 62 bne $0d8c +0d2a: 3f f7 0d call $0df7 +0d2d: d0 1d bne $0d4c +0d2f: f5 60 02 mov a,$0260+x +0d32: f0 95 beq $0cc9 +0d34: 3f 4d 0f call $0f4d +0d37: f5 60 02 mov a,$0260+x +0d3a: 9c dec a +0d3b: d5 60 02 mov $0260+x,a +0d3e: d0 ea bne $0d2a +0d40: f5 30 02 mov a,$0230+x +0d43: d4 30 mov $30+x,a +0d45: f5 31 02 mov a,$0231+x +0d48: d4 31 mov $31+x,a +0d4a: 2f de bra $0d2a +0d4c: 30 20 bmi $0d6e +0d4e: d5 00 02 mov $0200+x,a +0d51: 3f f7 0d call $0df7 +0d54: 30 18 bmi $0d6e +0d56: 2d push a +0d57: 9f xcn a +0d58: 28 07 and a,#$07 +0d5a: fd mov y,a +0d5b: f6 a8 1e mov a,$1ea8+y +0d5e: d5 01 02 mov $0201+x,a +0d61: ae pop a +0d62: 28 0f and a,#$0f +0d64: fd mov y,a +0d65: f6 b0 1e mov a,$1eb0+y +0d68: d5 10 02 mov $0210+x,a +0d6b: 3f f7 0d call $0df7 +0d6e: 68 e0 cmp a,#$e0 +0d70: 90 05 bcc $0d77 +0d72: 3f e5 0d call $0de5 +0d75: 2f b3 bra $0d2a +0d77: 3f 3b 0b call $0b3b +0d7a: f5 00 02 mov a,$0200+x +0d7d: d5 50 02 mov $0250+x,a +0d80: fd mov y,a +0d81: f5 01 02 mov a,$0201+x +0d84: cf mul ya +0d85: dd mov a,y +0d86: bc inc a +0d87: d5 51 02 mov $0251+x,a +0d8a: 2f 03 bra $0d8f +0d8c: 3f a5 11 call $11a5 +0d8f: 3f 0a 10 call $100a +0d92: 3d inc x +0d93: 3d inc x +0d94: 0b 47 asl $47 +0d96: d0 83 bne $0d1b +0d98: e4 54 mov a,$54 +0d9a: f0 0b beq $0da7 +0d9c: ba 56 movw ya,$56 +0d9e: 7a 52 addw ya,$52 +0da0: 6e 54 02 dbnz $54,$0da5 +0da3: ba 54 movw ya,$54 +0da5: da 52 movw $52,ya +0da7: e4 68 mov a,$68 +0da9: f0 15 beq $0dc0 +0dab: ba 64 movw ya,$64 +0dad: 7a 60 addw ya,$60 +0daf: da 60 movw $60,ya +0db1: ba 66 movw ya,$66 +0db3: 7a 62 addw ya,$62 +0db5: 6e 68 06 dbnz $68,$0dbe +0db8: ba 68 movw ya,$68 +0dba: da 60 movw $60,ya +0dbc: eb 6a mov y,$6a +0dbe: da 62 movw $62,ya +0dc0: e4 5a mov a,$5a +0dc2: f0 0e beq $0dd2 +0dc4: ba 5c movw ya,$5c +0dc6: 7a 58 addw ya,$58 +0dc8: 6e 5a 02 dbnz $5a,$0dcd +0dcb: ba 5a movw ya,$5a +0dcd: da 58 movw $58,ya +0dcf: 8f ff 5e mov $5e,#$ff +0dd2: cd 00 mov x,#$00 +0dd4: 8f 01 47 mov $47,#$01 +0dd7: f4 31 mov a,$31+x +0dd9: f0 03 beq $0dde +0ddb: 3f c6 10 call $10c6 +0dde: 3d inc x +0ddf: 3d inc x +0de0: 0b 47 asl $47 +0de2: d0 f3 bne $0dd7 +0de4: 6f ret + +0de5: 1c asl a +0de6: fd mov y,a +0de7: f6 aa 0f mov a,$0faa+y +0dea: 2d push a +0deb: f6 a9 0f mov a,$0fa9+y +0dee: 2d push a +0def: dd mov a,y +0df0: 5c lsr a +0df1: fd mov y,a +0df2: f6 47 10 mov a,$1047+y +0df5: f0 08 beq $0dff +0df7: e7 30 mov a,($30+x) +0df9: bb 30 inc $30+x +0dfb: d0 02 bne $0dff +0dfd: bb 31 inc $31+x +0dff: fd mov y,a +0e00: 6f ret + +; vcmd e0 - set instrument +0e01: d5 11 02 mov $0211+x,a +0e04: fd mov y,a +0e05: 10 06 bpl $0e0d +0e07: 80 setc +0e08: a8 ca sbc a,#$ca +0e0a: 60 clrc +0e0b: 84 5f adc a,$5f +0e0d: 8d 06 mov y,#$06 +0e0f: cf mul ya +0e10: da 14 movw $14,ya +0e12: 60 clrc +0e13: 98 10 14 adc $14,#$10 +0e16: 98 1f 15 adc $15,#$1f +0e19: e4 1a mov a,$1a +0e1b: 24 47 and a,$47 +0e1d: d0 3a bne $0e59 +0e1f: 4d push x +0e20: 7d mov a,x +0e21: 9f xcn a +0e22: 5c lsr a +0e23: 08 04 or a,#$04 +0e25: 5d mov x,a +0e26: 8d 00 mov y,#$00 +0e28: f7 14 mov a,($14)+y +0e2a: 10 0e bpl $0e3a +0e2c: 28 1f and a,#$1f +0e2e: 38 20 48 and $48,#$20 +0e31: 0e 48 00 tset1 $0048 +0e34: 09 47 49 or ($49),($47) +0e37: dd mov a,y +0e38: 2f 07 bra $0e41 +0e3a: e4 47 mov a,$47 +0e3c: 4e 49 00 tclr1 $0049 +0e3f: f7 14 mov a,($14)+y +0e41: c9 f2 00 mov $00f2,x +0e44: c5 f3 00 mov $00f3,a +0e47: 3d inc x +0e48: fc inc y +0e49: ad 04 cmp y,#$04 +0e4b: d0 f2 bne $0e3f +0e4d: ce pop x +0e4e: f7 14 mov a,($14)+y +0e50: d5 21 02 mov $0221+x,a +0e53: fc inc y +0e54: f7 14 mov a,($14)+y +0e56: d5 20 02 mov $0220+x,a +0e59: 6f ret + +; vcmd e1 - pan +0e5a: d5 51 03 mov $0351+x,a +0e5d: 28 1f and a,#$1f +0e5f: d5 31 03 mov $0331+x,a +0e62: e8 00 mov a,#$00 +0e64: d5 30 03 mov $0330+x,a +0e67: 6f ret + +; vcmd e2 - pan fade +0e68: d4 91 mov $91+x,a +0e6a: 2d push a +0e6b: 3f f7 0d call $0df7 +0e6e: d5 50 03 mov $0350+x,a +0e71: 80 setc +0e72: b5 31 03 sbc a,$0331+x +0e75: ce pop x +0e76: 3f 4d 10 call $104d +0e79: d5 40 03 mov $0340+x,a +0e7c: dd mov a,y +0e7d: d5 41 03 mov $0341+x,a +0e80: 6f ret + +; vcmd e3 - vibrato on +0e81: d5 b0 02 mov $02b0+x,a +0e84: 3f f7 0d call $0df7 +0e87: d5 a1 02 mov $02a1+x,a +0e8a: 3f f7 0d call $0df7 +; vcmd e4 - vibrato off +0e8d: d4 b1 mov $b1+x,a +0e8f: d5 c1 02 mov $02c1+x,a +0e92: e8 00 mov a,#$00 +0e94: d5 b1 02 mov $02b1+x,a +0e97: 6f ret + +; vcmd f0 - vibrato fade +0e98: d5 b1 02 mov $02b1+x,a +0e9b: 2d push a +0e9c: 8d 00 mov y,#$00 +0e9e: f4 b1 mov a,$b1+x +0ea0: ce pop x +0ea1: 9e div ya,x +0ea2: f8 44 mov x,$44 +0ea4: d5 c0 02 mov $02c0+x,a +0ea7: 6f ret + +; vcmd e5 - master volume +0ea8: e8 00 mov a,#$00 +0eaa: da 58 movw $58,ya +0eac: 6f ret + +; vcmd e6 - master volume fade +0ead: c4 5a mov $5a,a +0eaf: 3f f7 0d call $0df7 +0eb2: c4 5b mov $5b,a +0eb4: 80 setc +0eb5: a4 59 sbc a,$59 +0eb7: f8 5a mov x,$5a +0eb9: 3f 4d 10 call $104d +0ebc: da 5c movw $5c,ya +0ebe: 6f ret + +; vcmd e7 - tempo +0ebf: e8 00 mov a,#$00 +0ec1: da 52 movw $52,ya +0ec3: 6f ret + +; vcmd e8 - tempo fade +0ec4: c4 54 mov $54,a +0ec6: 3f f7 0d call $0df7 +0ec9: c4 55 mov $55,a +0ecb: 80 setc +0ecc: a4 53 sbc a,$53 +0ece: f8 54 mov x,$54 +0ed0: 3f 4d 10 call $104d +0ed3: da 56 movw $56,ya +0ed5: 6f ret + +; vcmd e9 - global transpose +0ed6: c4 50 mov $50,a +0ed8: 6f ret + +; vcmd ea - per-voice transpose +0ed9: d5 e1 02 mov $02e1+x,a +0edc: 6f ret + +; vcmd eb - tremolo on +0edd: d5 e0 02 mov $02e0+x,a +0ee0: 3f f7 0d call $0df7 +0ee3: d5 d1 02 mov $02d1+x,a +0ee6: 3f f7 0d call $0df7 +; vcmd ec - tremolo off +0ee9: d4 c1 mov $c1+x,a +0eeb: 6f ret + +; vcmd f1 - pitch envelope (release) +0eec: e8 01 mov a,#$01 +0eee: 2f 02 bra $0ef2 +; vcmd f2 - pitch envelope (attack) +0ef0: e8 00 mov a,#$00 +0ef2: d5 90 02 mov $0290+x,a +0ef5: dd mov a,y +0ef6: d5 81 02 mov $0281+x,a +0ef9: 3f f7 0d call $0df7 +0efc: d5 80 02 mov $0280+x,a +0eff: 3f f7 0d call $0df7 +0f02: d5 91 02 mov $0291+x,a +0f05: 6f ret + +; vcmd f3 - pitch envelope off +0f06: d5 80 02 mov $0280+x,a +0f09: 6f ret + +; vcmd fe - global song volume +0f0a: c5 d7 03 mov $03d7,a +0f0d: 6f ret + +; vcmd ed - volume +0f0e: d5 91 03 mov $0391+x,a +0f11: e8 00 mov a,#$00 +0f13: d5 90 03 mov $0390+x,a +0f16: 6f ret + +; vcmd ee - volume fade +0f17: d4 90 mov $90+x,a +0f19: 2d push a +0f1a: 3f f7 0d call $0df7 +0f1d: d5 20 03 mov $0320+x,a +0f20: 80 setc +0f21: b5 91 03 sbc a,$0391+x +0f24: ce pop x +0f25: 3f 4d 10 call $104d +0f28: d5 10 03 mov $0310+x,a +0f2b: dd mov a,y +0f2c: d5 11 03 mov $0311+x,a +0f2f: 6f ret + +; vcmd f4 - tuning +0f30: d5 81 03 mov $0381+x,a +0f33: 6f ret + +; vcmd ef - call subroutine +0f34: d5 40 02 mov $0240+x,a +0f37: 3f f7 0d call $0df7 +0f3a: d5 41 02 mov $0241+x,a +0f3d: 3f f7 0d call $0df7 +0f40: d5 60 02 mov $0260+x,a +0f43: f4 30 mov a,$30+x +0f45: d5 30 02 mov $0230+x,a +0f48: f4 31 mov a,$31+x +0f4a: d5 31 02 mov $0231+x,a +0f4d: f5 40 02 mov a,$0240+x +0f50: d4 30 mov $30+x,a +0f52: f5 41 02 mov a,$0241+x +0f55: d4 31 mov $31+x,a +0f57: 6f ret + +; vcmd f5 - echo vbits/volume +0f58: c4 4a mov $4a,a +0f5a: c5 bc 03 mov $03bc,a +0f5d: 48 ff eor a,#$ff +0f5f: c5 be 03 mov $03be,a +0f62: 3f f7 0d call $0df7 +0f65: e8 00 mov a,#$00 +0f67: da 60 movw $60,ya +0f69: 3f f7 0d call $0df7 +0f6c: e8 00 mov a,#$00 +0f6e: da 62 movw $62,ya +0f70: b2 48 clr5 $48 +0f72: 6f ret + +; vcmd f8 - echo volume fade +0f73: c4 68 mov $68,a +0f75: 3f f7 0d call $0df7 +0f78: c4 69 mov $69,a +0f7a: 80 setc +0f7b: a4 61 sbc a,$61 +0f7d: f8 68 mov x,$68 +0f7f: 3f 4d 10 call $104d +0f82: da 64 movw $64,ya +0f84: 3f f7 0d call $0df7 +0f87: c4 6a mov $6a,a +0f89: 80 setc +0f8a: a4 63 sbc a,$63 +0f8c: f8 68 mov x,$68 +0f8e: 3f 4d 10 call $104d +0f91: da 66 movw $66,ya +0f93: 6f ret + +; vcmd f6 - disable echo +0f94: da 60 movw $60,ya +0f96: da 62 movw $62,ya +0f98: a2 48 set5 $48 +0f9a: 6f ret + +; vcmd f7 - set echo params +0f9b: 3f bd 0f call $0fbd +0f9e: 3f f7 0d call $0df7 +0fa1: c4 4e mov $4e,a +0fa3: 3f f7 0d call $0df7 +0fa6: 8d 08 mov y,#$08 +0fa8: cf mul ya +0fa9: 5d mov x,a +0faa: 8d 0f mov y,#$0f +0fac: f5 5a 1e mov a,$1e5a+x +0faf: 3f 35 0c call $0c35 +0fb2: 3d inc x +0fb3: dd mov a,y +0fb4: 60 clrc +0fb5: 88 10 adc a,#$10 +0fb7: fd mov y,a +0fb8: 10 f2 bpl $0fac +0fba: f8 44 mov x,$44 +0fbc: 6f ret + +0fbd: c4 4d mov $4d,a +0fbf: 8d 7d mov y,#$7d +0fc1: cc f2 00 mov $00f2,y +0fc4: e5 f3 00 mov a,$00f3 +0fc7: 64 4d cmp a,$4d +0fc9: f0 2b beq $0ff6 +0fcb: 28 0f and a,#$0f +0fcd: 48 ff eor a,#$ff +0fcf: f3 4c 03 bbc7 $4c,$0fd5 +0fd2: 60 clrc +0fd3: 84 4c adc a,$4c +0fd5: c4 4c mov $4c,a +0fd7: 8d 04 mov y,#$04 +0fd9: f6 79 1e mov a,$1e79+y +0fdc: c5 f2 00 mov $00f2,a +0fdf: e8 00 mov a,#$00 +0fe1: c5 f3 00 mov $00f3,a +0fe4: fe f3 dbnz y,$0fd9 +0fe6: e4 48 mov a,$48 +0fe8: 08 20 or a,#$20 +0fea: 8d 6c mov y,#$6c +0fec: 3f 35 0c call $0c35 +0fef: e4 4d mov a,$4d +0ff1: 8d 7d mov y,#$7d +0ff3: 3f 35 0c call $0c35 +0ff6: 1c asl a +0ff7: 1c asl a +0ff8: 1c asl a +0ff9: 48 ff eor a,#$ff +0ffb: 80 setc +0ffc: 88 ff adc a,#$ff +0ffe: 8d 6d mov y,#$6d +1000: 5f 35 0c jmp $0c35 + +; vcmd fa - set perc patch base +1003: c4 5f mov $5f,a +1005: 6f ret + +1006: 3f f9 0d call $0df9 +1009: 6f ret + +100a: f4 a0 mov a,$a0+x +100c: d0 33 bne $1041 +100e: e7 30 mov a,($30+x) +1010: 68 f9 cmp a,#$f9 +1012: d0 2d bne $1041 +1014: 3f f9 0d call $0df9 +1017: 3f f7 0d call $0df7 +; vcmd f9 - pitch slide +101a: d4 a1 mov $a1+x,a +101c: 3f f7 0d call $0df7 +101f: d4 a0 mov $a0+x,a +1021: 3f f7 0d call $0df7 +1024: 60 clrc +1025: 84 50 adc a,$50 +1027: 95 e1 02 adc a,$02e1+x +102a: 28 7f and a,#$7f +102c: d5 80 03 mov $0380+x,a +102f: 80 setc +1030: b5 61 03 sbc a,$0361+x +1033: fb a0 mov y,$a0+x +1035: 6d push y +1036: ce pop x +1037: 3f 4d 10 call $104d +103a: d5 70 03 mov $0370+x,a +103d: dd mov a,y +103e: d5 71 03 mov $0371+x,a +1041: 6f ret + +1042: f5 61 03 mov a,$0361+x +1045: c4 11 mov $11,a +1047: f5 60 03 mov a,$0360+x +104a: c4 10 mov $10,a +104c: 6f ret + +104d: ed notc +104e: 6b 12 ror $12 +1050: 10 03 bpl $1055 +1052: 48 ff eor a,#$ff +1054: bc inc a +1055: 8d 00 mov y,#$00 +1057: 9e div ya,x +1058: 2d push a +1059: e8 00 mov a,#$00 +105b: 9e div ya,x +105c: ee pop y +105d: f8 44 mov x,$44 +105f: f3 12 06 bbc7 $12,$1068 +1062: da 14 movw $14,ya +1064: ba 0e movw ya,$0e +1066: 9a 14 subw ya,$14 +1068: 6f ret + +; vcmd dispatch table (music) +1069: dw $0e01 ; e0 - set instrument +106b: dw $0e5a ; e1 - pan +106d: dw $0e68 ; e2 - pan fade +106f: dw $0e81 ; e3 - vibrato on +1071: dw $0e8d ; e4 - vibrato off +1073: dw $0ea8 ; e5 - master volume +1075: dw $0ead ; e6 - master volume fade +1077: dw $0ebf ; e7 - tempo +1079: dw $0ec4 ; e8 - tempo fade +107b: dw $0ed6 ; e9 - global transpose +107d: dw $0ed9 ; ea - per-voice transpose +107f: dw $0edd ; eb - tremolo on +1081: dw $0ee9 ; ec - tremolo off +1083: dw $0f0e ; ed - volume +1085: dw $0f17 ; ee - volume fade +1087: dw $0f34 ; ef - call subroutine +1089: dw $0e98 ; f0 - vibrato fade +108b: dw $0eec ; f1 - pitch envelope (release) +108d: dw $0ef0 ; f2 - pitch envelope (attack) +108f: dw $0f06 ; f3 - pitch envelope off +1091: dw $0f30 ; f4 - tuning +1093: dw $0f58 ; f5 - echo vbits/volume +1095: dw $0f94 ; f6 - disable echo +1097: dw $0f9b ; f7 - set echo params +1099: dw $0f73 ; f8 - echo volume fade +109b: dw $101a ; f9 - pitch slide +109d: dw $1003 ; fa - set perc patch base +109f: dw $1363 ; fb - echo on +10a1: dw $1377 ; fc - echo off +10a3: dw $134b ; fd - set ASDR +10a5: dw $0f0a ; fe - global song volume + +; vcmd lengths (music) +10a7: db $01,$01,$02,$03,$00,$01,$02,$01 ; e0-e7 +10af: db $02,$01,$01,$03,$00,$01,$02,$03 ; e8-ef +10b7: db $01,$03,$03,$00,$01,$03,$00,$03 ; f0-f7 +10bf: db $03,$03,$01,$00,$00,$02,$01 ; f8-fe + +10c6: f4 90 mov a,$90+x +10c8: f0 24 beq $10ee +10ca: 09 47 5e or ($5e),($47) +10cd: 9b 90 dec $90+x +10cf: d0 0a bne $10db +10d1: e8 00 mov a,#$00 +10d3: d5 90 03 mov $0390+x,a +10d6: f5 20 03 mov a,$0320+x +10d9: 2f 10 bra $10eb +10db: 60 clrc +10dc: f5 90 03 mov a,$0390+x +10df: 95 10 03 adc a,$0310+x +10e2: d5 90 03 mov $0390+x,a +10e5: f5 91 03 mov a,$0391+x +10e8: 95 11 03 adc a,$0311+x +10eb: d5 91 03 mov $0391+x,a +10ee: fb c1 mov y,$c1+x +10f0: f0 23 beq $1115 +10f2: f5 e0 02 mov a,$02e0+x +10f5: de c0 1b cbne $c0+x,$1113 +10f8: 09 47 5e or ($5e),($47) +10fb: f5 d0 02 mov a,$02d0+x +10fe: 10 07 bpl $1107 +1100: fc inc y +1101: d0 04 bne $1107 +1103: e8 80 mov a,#$80 +1105: 2f 04 bra $110b +1107: 60 clrc +1108: 95 d1 02 adc a,$02d1+x +110b: d5 d0 02 mov $02d0+x,a +110e: 3f 2a 13 call $132a +1111: 2f 07 bra $111a +1113: bb c0 inc $c0+x +1115: e8 ff mov a,#$ff +1117: 3f 35 13 call $1335 +111a: f4 91 mov a,$91+x +111c: f0 24 beq $1142 +111e: 09 47 5e or ($5e),($47) +1121: 9b 91 dec $91+x +1123: d0 0a bne $112f +1125: e8 00 mov a,#$00 +1127: d5 30 03 mov $0330+x,a +112a: f5 50 03 mov a,$0350+x +112d: 2f 10 bra $113f +112f: 60 clrc +1130: f5 30 03 mov a,$0330+x +1133: 95 40 03 adc a,$0340+x +1136: d5 30 03 mov $0330+x,a +1139: f5 31 03 mov a,$0331+x +113c: 95 41 03 adc a,$0341+x +113f: d5 31 03 mov $0331+x,a +1142: e4 47 mov a,$47 +1144: 24 5e and a,$5e +1146: f0 5c beq $11a4 +1148: f5 31 03 mov a,$0331+x +114b: fd mov y,a +114c: f5 30 03 mov a,$0330+x +114f: da 10 movw $10,ya +1151: 7d mov a,x +1152: 9f xcn a +1153: 5c lsr a +1154: c4 12 mov $12,a +1156: eb 11 mov y,$11 +1158: e5 b8 03 mov a,$03b8 +115b: f0 11 beq $116e +115d: e8 51 mov a,#$51 +115f: 80 setc +1160: a8 51 sbc a,#$51 +1162: eb 10 mov y,$10 +1164: cf mul ya +1165: dd mov a,y +1166: eb 11 mov y,$11 +1168: 60 clrc +1169: 88 51 adc a,#$51 +116b: fd mov y,a +116c: 2f 12 bra $1180 +116e: f6 46 1e mov a,$1e46+y +1171: 80 setc +1172: b6 45 1e sbc a,$1e45+y +1175: eb 10 mov y,$10 +1177: cf mul ya +1178: dd mov a,y +1179: eb 11 mov y,$11 +117b: 60 clrc +117c: 96 45 1e adc a,$1e45+y +117f: fd mov y,a +1180: f5 21 03 mov a,$0321+x +1183: cf mul ya +1184: f5 51 03 mov a,$0351+x +1187: 1c asl a +1188: 13 12 01 bbc0 $12,$118c +118b: 1c asl a +118c: dd mov a,y +118d: 90 03 bcc $1192 +118f: 48 ff eor a,#$ff +1191: bc inc a +1192: eb 12 mov y,$12 +1194: 3f 2d 0c call $0c2d +1197: 8d 14 mov y,#$14 +1199: e8 00 mov a,#$00 +119b: 9a 10 subw ya,$10 +119d: da 10 movw $10,ya +119f: ab 12 inc $12 +11a1: 33 12 b2 bbc1 $12,$1156 +11a4: 6f ret + +11a5: f5 51 02 mov a,$0251+x +11a8: f0 71 beq $121b +11aa: 9c dec a +11ab: d5 51 02 mov $0251+x,a +11ae: f0 07 beq $11b7 +11b0: e8 02 mov a,#$02 +11b2: 75 50 02 cmp a,$0250+x +11b5: d0 64 bne $121b +11b7: f5 60 02 mov a,$0260+x +11ba: c4 17 mov $17,a +11bc: f4 30 mov a,$30+x +11be: fb 31 mov y,$31+x +11c0: da 14 movw $14,ya +11c2: 8d 00 mov y,#$00 +11c4: f7 14 mov a,($14)+y +11c6: f0 1e beq $11e6 +11c8: 30 07 bmi $11d1 +11ca: fc inc y +11cb: 30 40 bmi $120d +11cd: f7 14 mov a,($14)+y +11cf: 10 f9 bpl $11ca +11d1: 68 c8 cmp a,#$c8 +11d3: f0 46 beq $121b +11d5: 68 ef cmp a,#$ef +11d7: f0 29 beq $1202 +11d9: 68 e0 cmp a,#$e0 +11db: 90 30 bcc $120d +11dd: 6d push y +11de: fd mov y,a +11df: ae pop a +11e0: 96 c7 0f adc a,$0fc7+y +11e3: fd mov y,a +11e4: 2f de bra $11c4 +11e6: e4 17 mov a,$17 +11e8: f0 23 beq $120d +11ea: 8b 17 dec $17 +11ec: d0 0a bne $11f8 +11ee: f5 31 02 mov a,$0231+x +11f1: 2d push a +11f2: f5 30 02 mov a,$0230+x +11f5: ee pop y +11f6: 2f c8 bra $11c0 +11f8: f5 41 02 mov a,$0241+x +11fb: 2d push a +11fc: f5 40 02 mov a,$0240+x +11ff: ee pop y +1200: 2f be bra $11c0 +1202: fc inc y +1203: f7 14 mov a,($14)+y +1205: 2d push a +1206: fc inc y +1207: f7 14 mov a,($14)+y +1209: fd mov y,a +120a: ae pop a +120b: 2f b3 bra $11c0 +120d: e4 47 mov a,$47 +120f: 24 1a and a,$1a +1211: d0 08 bne $121b +1213: e4 47 mov a,$47 +1215: 05 d3 03 or a,$03d3 +1218: c5 d3 03 mov $03d3,a +121b: f2 13 clr7 $13 +121d: f4 a0 mov a,$a0+x +121f: f0 2c beq $124d +1221: f4 a1 mov a,$a1+x +1223: f0 04 beq $1229 +1225: 9b a1 dec $a1+x +1227: 2f 24 bra $124d +1229: e2 13 set7 $13 +122b: 9b a0 dec $a0+x +122d: d0 0b bne $123a +122f: f5 81 03 mov a,$0381+x +1232: d5 60 03 mov $0360+x,a +1235: f5 80 03 mov a,$0380+x +1238: 2f 10 bra $124a +123a: 60 clrc +123b: f5 60 03 mov a,$0360+x +123e: 95 70 03 adc a,$0370+x +1241: d5 60 03 mov $0360+x,a +1244: f5 61 03 mov a,$0361+x +1247: 95 71 03 adc a,$0371+x +124a: d5 61 03 mov $0361+x,a +124d: 3f 42 10 call $1042 +1250: f4 b1 mov a,$b1+x +1252: f0 4c beq $12a0 +1254: f5 b0 02 mov a,$02b0+x +1257: de b0 44 cbne $b0+x,$129e +125a: f5 00 01 mov a,$0100+x +125d: 75 b1 02 cmp a,$02b1+x +1260: d0 05 bne $1267 +1262: f5 c1 02 mov a,$02c1+x +1265: 2f 0d bra $1274 +1267: 40 setp +1268: bb 00 inc $00+x +126a: 20 clrp +126b: fd mov y,a +126c: f0 02 beq $1270 +126e: f4 b1 mov a,$b1+x +1270: 60 clrc +1271: 95 c0 02 adc a,$02c0+x +1274: d4 b1 mov $b1+x,a +1276: f5 a0 02 mov a,$02a0+x +1279: 60 clrc +127a: 95 a1 02 adc a,$02a1+x +127d: d5 a0 02 mov $02a0+x,a +1280: c4 12 mov $12,a +1282: 1c asl a +1283: 1c asl a +1284: 90 02 bcc $1288 +1286: 48 ff eor a,#$ff +1288: fd mov y,a +1289: f4 b1 mov a,$b1+x +128b: 68 f1 cmp a,#$f1 +128d: 90 05 bcc $1294 +128f: 28 0f and a,#$0f +1291: cf mul ya +1292: 2f 04 bra $1298 +1294: cf mul ya +1295: dd mov a,y +1296: 8d 00 mov y,#$00 +1298: 3f 15 13 call $1315 + +129b: 5f aa 0b jmp $0baa +129e: bb b0 inc $b0+x +12a0: e3 13 f8 bbs7 $13,$129b +12a3: 6f ret + +12a4: f2 13 clr7 $13 +12a6: f4 c1 mov a,$c1+x +12a8: f0 09 beq $12b3 +12aa: f5 e0 02 mov a,$02e0+x +12ad: de c0 03 cbne $c0+x,$12b3 +12b0: 3f 1d 13 call $131d +12b3: f5 31 03 mov a,$0331+x +12b6: fd mov y,a +12b7: f5 30 03 mov a,$0330+x +12ba: da 10 movw $10,ya +12bc: f4 91 mov a,$91+x +12be: f0 0a beq $12ca +12c0: f5 41 03 mov a,$0341+x +12c3: fd mov y,a +12c4: f5 40 03 mov a,$0340+x +12c7: 3f ff 12 call $12ff +12ca: f3 13 03 bbc7 $13,$12d0 +12cd: 3f 51 11 call $1151 +12d0: f2 13 clr7 $13 +12d2: 3f 42 10 call $1042 +12d5: f4 a0 mov a,$a0+x +12d7: f0 0e beq $12e7 +12d9: f4 a1 mov a,$a1+x +12db: d0 0a bne $12e7 +12dd: f5 71 03 mov a,$0371+x +12e0: fd mov y,a +12e1: f5 70 03 mov a,$0370+x +12e4: 3f ff 12 call $12ff +12e7: f4 b1 mov a,$b1+x +12e9: f0 b5 beq $12a0 +12eb: f5 b0 02 mov a,$02b0+x +12ee: de b0 af cbne $b0+x,$12a0 +12f1: eb 51 mov y,$51 +12f3: f5 a1 02 mov a,$02a1+x +12f6: cf mul ya +12f7: dd mov a,y +12f8: 60 clrc +12f9: 95 a0 02 adc a,$02a0+x +12fc: 5f 80 12 jmp $1280 + +12ff: e2 13 set7 $13 +1301: cb 12 mov $12,y +1303: 3f 5f 10 call $105f +1306: 6d push y +1307: eb 51 mov y,$51 +1309: cf mul ya +130a: cb 14 mov $14,y +130c: 8f 00 15 mov $15,#$00 +130f: eb 51 mov y,$51 +1311: ae pop a +1312: cf mul ya +1313: 7a 14 addw ya,$14 +1315: 3f 5f 10 call $105f +1318: 7a 10 addw ya,$10 +131a: da 10 movw $10,ya +131c: 6f ret + +131d: e2 13 set7 $13 +131f: eb 51 mov y,$51 +1321: f5 d1 02 mov a,$02d1+x +1324: cf mul ya +1325: dd mov a,y +1326: 60 clrc +1327: 95 d0 02 adc a,$02d0+x +132a: 1c asl a +132b: 90 02 bcc $132f +132d: 48 ff eor a,#$ff +132f: fb c1 mov y,$c1+x +1331: cf mul ya +1332: dd mov a,y +1333: 48 ff eor a,#$ff +1335: eb 59 mov y,$59 +1337: cf mul ya +1338: f5 10 02 mov a,$0210+x +133b: cf mul ya +133c: f5 91 03 mov a,$0391+x +133f: cf mul ya +1340: e5 d7 03 mov a,$03d7 +1343: cf mul ya +1344: dd mov a,y +1345: cf mul ya +1346: dd mov a,y +1347: d5 21 03 mov $0321+x,a +134a: 6f ret + +; vcmd fd - set ASDR +134b: 7d mov a,x +134c: 9f xcn a +134d: 5c lsr a +134e: 08 05 or a,#$05 +1350: c4 14 mov $14,a +1352: dd mov a,y +1353: eb 14 mov y,$14 +1355: 3f 2d 0c call $0c2d +1358: 3f f7 0d call $0df7 +135b: ab 14 inc $14 +135d: eb 14 mov y,$14 +135f: 3f 2d 0c call $0c2d +1362: 6f ret + +; vcmd fb - echo on +1363: e5 bc 03 mov a,$03bc +1366: 04 47 or a,$47 +1368: c5 bc 03 mov $03bc,a +136b: e4 47 mov a,$47 +136d: 48 ff eor a,#$ff +136f: 25 be 03 and a,$03be +1372: c5 be 03 mov $03be,a +1375: 2f 12 bra $1389 +; vcmd fc - echo off +1377: e5 be 03 mov a,$03be +137a: 04 47 or a,$47 +137c: c5 be 03 mov $03be,a +137f: e4 47 mov a,$47 +1381: 48 ff eor a,#$ff +1383: 25 bc 03 and a,$03bc +1386: c5 bc 03 mov $03bc,a +1389: e5 bc 03 mov a,$03bc +138c: c5 d0 03 mov $03d0,a +138f: e5 be 03 mov a,$03be +1392: 48 ff eor a,#$ff +1394: 25 d0 03 and a,$03d0 +1397: 05 bd 03 or a,$03bd +139a: c5 d0 03 mov $03d0,a +139d: e5 bf 03 mov a,$03bf +13a0: 48 ff eor a,#$ff +13a2: 25 d0 03 and a,$03d0 +13a5: c4 4a mov $4a,a +13a7: 6f ret + +; handle a note vcmd (80-df) (sfx) +13a8: ad ca cmp y,#$ca +13aa: 90 05 bcc $13b1 +13ac: 3f d3 16 call $16d3 +13af: 8d a4 mov y,#$a4 +13b1: ad c8 cmp y,#$c8 +13b3: b0 f2 bcs $13a7 +13b5: dd mov a,y +13b6: 28 7f and a,#$7f +13b8: 60 clrc +13b9: 85 03 04 adc a,$0403 +13bc: 60 clrc +13bd: 95 91 05 adc a,$0591+x +13c0: d5 f1 04 mov $04f1+x,a +13c3: f5 11 05 mov a,$0511+x +13c6: d5 f0 04 mov $04f0+x,a +13c9: f5 51 05 mov a,$0551+x +13cc: 5c lsr a +13cd: e8 00 mov a,#$00 +13cf: 7c ror a +13d0: d5 40 05 mov $0540+x,a +13d3: e8 00 mov a,#$00 +13d5: d5 d0 00 mov $00d0+x,a +13d8: d5 60 05 mov $0560+x,a +13db: d5 80 05 mov $0580+x,a +13de: d4 e0 mov $e0+x,a +13e0: 09 47 5e or ($5e),($47) +13e3: e5 d2 03 mov a,$03d2 +13e6: 04 47 or a,$47 +13e8: c5 d2 03 mov $03d2,a +13eb: f5 20 05 mov a,$0520+x +13ee: d4 80 mov $80+x,a +13f0: f0 1e beq $1410 +13f2: f5 21 05 mov a,$0521+x +13f5: d4 81 mov $81+x,a +13f7: f5 30 05 mov a,$0530+x +13fa: d0 0a bne $1406 +13fc: f5 f1 04 mov a,$04f1+x +13ff: 80 setc +1400: b5 31 05 sbc a,$0531+x +1403: d5 f1 04 mov $04f1+x,a +1406: f5 31 05 mov a,$0531+x +1409: 60 clrc +140a: 95 f1 04 adc a,$04f1+x +140d: 3f d8 18 call $18d8 +1410: 3f f0 18 call $18f0 +1413: 8d 00 mov y,#$00 +1415: e4 11 mov a,$11 +1417: 80 setc +1418: a8 34 sbc a,#$34 +141a: b0 09 bcs $1425 +141c: e4 11 mov a,$11 +141e: 80 setc +141f: a8 13 sbc a,#$13 +1421: b0 06 bcs $1429 +1423: dc dec y +1424: 1c asl a +1425: 7a 10 addw ya,$10 +1427: da 10 movw $10,ya +1429: 4d push x +142a: e4 11 mov a,$11 +142c: 1c asl a +142d: 8d 00 mov y,#$00 +142f: cd 18 mov x,#$18 +1431: 9e div ya,x +1432: 5d mov x,a +1433: f6 8f 1e mov a,$1e8f+y +1436: c4 15 mov $15,a +1438: f6 8e 1e mov a,$1e8e+y +143b: c4 14 mov $14,a +143d: f6 91 1e mov a,$1e91+y +1440: 2d push a +1441: f6 90 1e mov a,$1e90+y +1444: ee pop y +1445: 9a 14 subw ya,$14 +1447: eb 10 mov y,$10 +1449: cf mul ya +144a: dd mov a,y +144b: 8d 00 mov y,#$00 +144d: 7a 14 addw ya,$14 +144f: cb 15 mov $15,y +1451: 1c asl a +1452: 2b 15 rol $15 +1454: c4 14 mov $14,a +1456: 2f 04 bra $145c +1458: 4b 15 lsr $15 +145a: 7c ror a +145b: 3d inc x +145c: c8 06 cmp x,#$06 +145e: d0 f8 bne $1458 +1460: c4 14 mov $14,a +1462: ce pop x +1463: f5 50 04 mov a,$0450+x +1466: eb 15 mov y,$15 +1468: cf mul ya +1469: da 16 movw $16,ya +146b: f5 50 04 mov a,$0450+x +146e: eb 14 mov y,$14 +1470: cf mul ya +1471: 6d push y +1472: f5 51 04 mov a,$0451+x +1475: eb 14 mov y,$14 +1477: cf mul ya +1478: 7a 16 addw ya,$16 +147a: da 16 movw $16,ya +147c: f5 51 04 mov a,$0451+x +147f: eb 15 mov y,$15 +1481: cf mul ya +1482: fd mov y,a +1483: ae pop a +1484: 7a 16 addw ya,$16 +1486: da 16 movw $16,ya +1488: 7d mov a,x +1489: 9f xcn a +148a: 5c lsr a +148b: 08 02 or a,#$02 +148d: fd mov y,a +148e: e4 16 mov a,$16 +1490: 3f 96 14 call $1496 +1493: fc inc y +1494: e4 17 mov a,$17 +1496: cc f2 00 mov $00f2,y +1499: c5 f3 00 mov $00f3,a +149c: 6f ret + +; read $1c/1 into YA with advancing the ptr +149d: 8d 00 mov y,#$00 +149f: f7 1c mov a,($1c)+y +14a1: 3a 1c incw $1c +14a3: 2d push a +14a4: f7 1c mov a,($1c)+y +14a6: 3a 1c incw $1c +14a8: fd mov y,a +14a9: ae pop a +14aa: 6f ret + +; play sound effect in A +14ab: c4 05 mov $05,a +14ad: 1c asl a +14ae: 5d mov x,a +14af: f5 ff bf mov a,$bfff+x +14b2: fd mov y,a +14b3: f5 fe bf mov a,$bffe+x +14b6: da 1c movw $1c,ya +14b8: 8f 02 1e mov $1e,#$02 +14bb: 2f 02 bra $14bf +14bd: c4 05 mov $05,a +14bf: e4 1b mov a,$1b +14c1: 0e 46 00 tset1 $0046 +14c4: e8 a5 mov a,#$a5 +14c6: c5 07 04 mov $0407,a +14c9: 6f ret + +14ca: e4 1b mov a,$1b +14cc: 0e 46 00 tset1 $0046 +14cf: e8 00 mov a,#$00 +14d1: c5 07 04 mov $0407,a +14d4: cd 00 mov x,#$00 +14d6: 8f 01 47 mov $47,#$01 +14d9: e4 47 mov a,$47 +14db: 24 1b and a,$1b +14dd: f0 14 beq $14f3 +14df: e4 47 mov a,$47 +14e1: 48 ff eor a,#$ff +14e3: 24 1a and a,$1a +14e5: c4 1a mov $1a,a +14e7: f5 11 02 mov a,$0211+x +14ea: 3f 04 0e call $0e04 +14ed: e8 00 mov a,#$00 +14ef: d4 20 mov $20+x,a +14f1: d4 21 mov $21+x,a +14f3: 3d inc x +14f4: 3d inc x +14f5: 0b 47 asl $47 +14f7: d0 e0 bne $14d9 +14f9: e8 00 mov a,#$00 +14fb: c4 1b mov $1b,a +14fd: 6f ret + +14fe: 8f 00 1b mov $1b,#$00 +1501: cd 00 mov x,#$00 +1503: 8f 01 47 mov $47,#$01 +1506: e4 47 mov a,$47 +1508: 24 6d and a,$6d +150a: d0 15 bne $1521 +150c: f5 d1 05 mov a,$05d1+x +150f: d4 21 mov $21+x,a +1511: f5 d0 05 mov a,$05d0+x +1514: d4 20 mov $20+x,a +1516: f5 d1 05 mov a,$05d1+x +1519: f0 06 beq $1521 +151b: 09 47 1a or ($1a),($47) +151e: 09 47 1b or ($1b),($47) +1521: 3d inc x +1522: 3d inc x +1523: 0b 47 asl $47 +1525: d0 df bne $1506 +1527: e4 1b mov a,$1b +1529: 0e 46 00 tset1 $0046 +152c: e8 00 mov a,#$00 +152e: c5 07 04 mov $0407,a +1531: 6f ret + +1532: 3f 9d 14 call $149d +1535: 1a 1c decw $1c +1537: 1a 1c decw $1c +1539: da 16 movw $16,ya +153b: 8d 0f mov y,#$0f +153d: f7 16 mov a,($16)+y +153f: d6 d0 05 mov $05d0+y,a +1542: dc dec y +1543: 10 f8 bpl $153d +1545: 3f fe 14 call $14fe +1548: cd 0e mov x,#$0e +154a: 8f 80 47 mov $47,#$80 +154d: e4 47 mov a,$47 +154f: 24 6d and a,$6d +1551: d0 1f bne $1572 +1553: e8 ff mov a,#$ff +1555: d5 91 04 mov $0491+x,a +1558: e5 06 04 mov a,$0406 +155b: 3f 27 17 call $1727 +155e: e8 00 mov a,#$00 +1560: d5 c1 05 mov $05c1+x,a +1563: d5 11 05 mov $0511+x,a +1566: d5 20 05 mov $0520+x,a +1569: d4 d1 mov $d1+x,a +156b: d4 e1 mov $e1+x,a +156d: c4 70 mov $70,a +156f: d5 91 05 mov $0591+x,a +1572: 1d dec x +1573: 1d dec x +1574: 4b 47 lsr $47 +1576: d0 d5 bne $154d +1578: c5 03 04 mov $0403,a +157b: c5 e0 05 mov $05e0,a +157e: c5 10 04 mov $0410,a +1581: 6f ret + +1582: e5 07 04 mov a,$0407 +1585: f0 03 beq $158a +1587: 5f cf 14 jmp $14cf + +158a: eb 09 mov y,$09 +158c: e4 01 mov a,$01 +158e: c4 09 mov $09,a +1590: 7e 01 cmp y,$01 +1592: f0 03 beq $1597 +1594: 5f ab 14 jmp $14ab + +1597: e4 05 mov a,$05 +1599: f0 e6 beq $1581 +159b: e4 1e mov a,$1e +159d: d0 03 bne $15a2 +159f: 5f fe 15 jmp $15fe + +15a2: 6e 1e 8d dbnz $1e,$1532 +15a5: 3f 9d 14 call $149d +15a8: d0 1a bne $15c4 +15aa: fd mov y,a +15ab: d0 03 bne $15b0 +15ad: 5f bd 14 jmp $14bd + +15b0: 8c 02 04 dec $0402 +15b3: 10 03 bpl $15b8 +15b5: c5 02 04 mov $0402,a +15b8: 3f 9d 14 call $149d +15bb: e9 02 04 mov x,$0402 +15be: f0 e5 beq $15a5 +15c0: da 1c movw $1c,ya +15c2: 2f e1 bra $15a5 +15c4: da 16 movw $16,ya +15c6: 8d 0f mov y,#$0f +15c8: f7 16 mov a,($16)+y +15ca: d6 d0 05 mov $05d0+y,a +15cd: dc dec y +15ce: 10 f8 bpl $15c8 +15d0: 3f ca 14 call $14ca +15d3: 3f fe 14 call $14fe +15d6: cd 00 mov x,#$00 +15d8: 8f 01 47 mov $47,#$01 +15db: e4 47 mov a,$47 +15dd: 24 6d and a,$6d +15df: d0 17 bne $15f8 +15e1: f4 21 mov a,$21+x +15e3: f0 06 beq $15eb +15e5: f5 c1 05 mov a,$05c1+x +15e8: 3f d3 16 call $16d3 +15eb: e8 00 mov a,#$00 +15ed: d5 80 04 mov $0480+x,a +15f0: d4 70 mov $70+x,a +15f2: d4 71 mov $71+x,a +15f4: bc inc a +15f5: d5 20 04 mov $0420+x,a +15f8: 3d inc x +15f9: 3d inc x +15fa: 0b 47 asl $47 +15fc: d0 dd bne $15db +15fe: cd 00 mov x,#$00 +1600: e4 1b mov a,$1b +1602: 24 5e and a,$5e +1604: c4 5e mov $5e,a +1606: 8f 01 47 mov $47,#$01 +1609: c9 01 04 mov $0401,x +160c: d8 44 mov $44,x +160e: e4 47 mov a,$47 +1610: 24 1b and a,$1b +1612: d0 03 bne $1617 +1614: 5f 92 16 jmp $1692 + +1617: f4 21 mov a,$21+x +1619: f0 77 beq $1692 +161b: ac 01 04 inc $0401 +161e: f5 20 04 mov a,$0420+x +1621: 9c dec a +1622: d5 20 04 mov $0420+x,a +1625: d0 65 bne $168c +1627: 3f c9 16 call $16c9 +162a: d0 20 bne $164c +162c: f5 80 04 mov a,$0480+x +162f: d0 03 bne $1634 +1631: 5f a5 15 jmp $15a5 + +1634: 3f fd 17 call $17fd +1637: f5 80 04 mov a,$0480+x +163a: 9c dec a +163b: d5 80 04 mov $0480+x,a +163e: d0 e7 bne $1627 +1640: f5 60 04 mov a,$0460+x +1643: d4 20 mov $20+x,a +1645: f5 61 04 mov a,$0461+x +1648: d4 21 mov $21+x,a +164a: 2f db bra $1627 +164c: 30 20 bmi $166e +164e: d5 30 04 mov $0430+x,a +1651: 3f c9 16 call $16c9 +1654: 30 18 bmi $166e +1656: 2d push a +1657: 9f xcn a +1658: 28 07 and a,#$07 +165a: fd mov y,a +165b: f6 a8 1e mov a,$1ea8+y +165e: d5 31 04 mov $0431+x,a +1661: ae pop a +1662: 28 0f and a,#$0f +1664: fd mov y,a +1665: f6 b0 1e mov a,$1eb0+y +1668: d5 c0 05 mov $05c0+x,a +166b: 3f c9 16 call $16c9 +166e: 68 e0 cmp a,#$e0 +1670: 90 05 bcc $1677 +1672: 3f b7 16 call $16b7 +1675: 2f b0 bra $1627 +1677: 3f a8 13 call $13a8 +167a: f5 30 04 mov a,$0430+x +167d: d5 20 04 mov $0420+x,a +1680: fd mov y,a +1681: f5 31 04 mov a,$0431+x +1684: cf mul ya +1685: dd mov a,y +1686: bc inc a +1687: d5 21 04 mov $0421+x,a +168a: 2f 03 bra $168f +168c: 3f 50 1a call $1a50 +168f: 3f b7 18 call $18b7 +1692: 3d inc x +1693: 3d inc x +1694: 0b 47 asl $47 +1696: f0 03 beq $169b +1698: 5f 0c 16 jmp $160c + +169b: e5 01 04 mov a,$0401 +169e: d0 03 bne $16a3 +16a0: 5f bd 14 jmp $14bd + +16a3: 6f ret + +16a4: cd 00 mov x,#$00 +16a6: 8f 01 47 mov $47,#$01 +16a9: f4 21 mov a,$21+x +16ab: f0 03 beq $16b0 +16ad: 3f 71 19 call $1971 +16b0: 3d inc x +16b1: 3d inc x +16b2: 0b 47 asl $47 +16b4: d0 f3 bne $16a9 +16b6: 6f ret + +16b7: 1c asl a +16b8: fd mov y,a +16b9: f6 58 18 mov a,$1858+y +16bc: 2d push a +16bd: f6 57 18 mov a,$1857+y +16c0: 2d push a +16c1: dd mov a,y +16c2: 5c lsr a +16c3: fd mov y,a +16c4: f6 f3 18 mov a,$18f3+y +16c7: f0 08 beq $16d1 +16c9: e7 20 mov a,($20+x) +16cb: bb 20 inc $20+x +16cd: d0 02 bne $16d1 +16cf: bb 21 inc $21+x +16d1: fd mov y,a +16d2: 6f ret + +; vcmd e0 - set instrument +16d3: d5 c1 05 mov $05c1+x,a +16d6: fd mov y,a +16d7: 10 07 bpl $16e0 +16d9: 80 setc +16da: a8 ca sbc a,#$ca +16dc: 60 clrc +16dd: 85 10 04 adc a,$0410 +16e0: 8d 06 mov y,#$06 +16e2: cf mul ya +16e3: da 14 movw $14,ya +16e5: 60 clrc +16e6: 98 10 14 adc $14,#$10 +16e9: 98 1f 15 adc $15,#$1f +16ec: 4d push x +16ed: 7d mov a,x +16ee: 9f xcn a +16ef: 5c lsr a +16f0: 08 04 or a,#$04 +16f2: 5d mov x,a +16f3: 8d 00 mov y,#$00 +16f5: f7 14 mov a,($14)+y +16f7: 10 0e bpl $1707 +16f9: 28 1f and a,#$1f +16fb: 38 20 48 and $48,#$20 +16fe: 0e 48 00 tset1 $0048 +1701: 09 47 49 or ($49),($47) +1704: dd mov a,y +1705: 2f 07 bra $170e +1707: e4 47 mov a,$47 +1709: 4e 49 00 tclr1 $0049 +170c: f7 14 mov a,($14)+y +170e: c9 f2 00 mov $00f2,x +1711: c5 f3 00 mov $00f3,a +1714: 3d inc x +1715: fc inc y +1716: ad 04 cmp y,#$04 +1718: d0 f2 bne $170c +171a: ce pop x +171b: f7 14 mov a,($14)+y +171d: d5 51 04 mov $0451+x,a +1720: fc inc y +1721: f7 14 mov a,($14)+y +1723: d5 50 04 mov $0450+x,a +1726: 6f ret + +; vcmd e1 - pan +1727: d5 e1 04 mov $04e1+x,a +172a: 28 1f and a,#$1f +172c: d5 c1 04 mov $04c1+x,a +172f: e8 00 mov a,#$00 +1731: d5 c0 04 mov $04c0+x,a +1734: 6f ret + +; vcmd e2 - pan fade +1735: d4 71 mov $71+x,a +1737: 2d push a +1738: 3f c9 16 call $16c9 +173b: d5 e0 04 mov $04e0+x,a +173e: 80 setc +173f: b5 c1 04 sbc a,$04c1+x +1742: ce pop x +1743: 3f fb 18 call $18fb +1746: d5 d0 04 mov $04d0+x,a +1749: dd mov a,y +174a: d5 d1 04 mov $04d1+x,a +174d: 6f ret + +; vcmd e3 - vibrato on +174e: d5 50 05 mov $0550+x,a +1751: 3f c9 16 call $16c9 +1754: d5 41 05 mov $0541+x,a +1757: 3f c9 16 call $16c9 +; vcmd e4 - vibrato off +175a: d4 d1 mov $d1+x,a +175c: d5 71 05 mov $0571+x,a +175f: e8 00 mov a,#$00 +1761: d5 51 05 mov $0551+x,a +1764: 6f ret + +; vcmd f0 - vibrato fade +1765: d5 51 05 mov $0551+x,a +1768: 2d push a +1769: 8d 00 mov y,#$00 +176b: f4 d1 mov a,$d1+x +176d: ce pop x +176e: 9e div ya,x +176f: f8 44 mov x,$44 +1771: d5 70 05 mov $0570+x,a +1774: 6f ret + +; vcmd e5 +1775: e8 00 mov a,#$00 +1777: da 58 movw $58,ya +1779: 6f ret + +; vcmd e6 +177a: 3f c9 16 call $16c9 +177d: 6f ret + +; vcmd e7 - tempo +177e: e8 00 mov a,#$00 +1780: da 52 movw $52,ya +1782: 6f ret + +; vcmd e8 +1783: 3f c9 16 call $16c9 +1786: 6f ret + +; vcmd e9 +1787: c5 03 04 mov $0403,a +178a: 6f ret + +; vcmd ea - per-voice transpose +178b: d5 91 05 mov $0591+x,a +178e: 6f ret + +; vcmd eb - tremolo on +178f: d5 90 05 mov $0590+x,a +1792: 3f c9 16 call $16c9 +1795: d5 81 05 mov $0581+x,a +1798: 3f c9 16 call $16c9 +; vcmd ec - tremolo off +179b: e8 00 mov a,#$00 +179d: d4 e1 mov $e1+x,a +179f: 6f ret + +; vcmd f1 - pitch envelope (release) +17a0: e8 01 mov a,#$01 +17a2: 2f 02 bra $17a6 +; vcmd f2 - pitch envelope (attack) +17a4: e8 00 mov a,#$00 +17a6: d5 30 05 mov $0530+x,a +17a9: dd mov a,y +17aa: d5 21 05 mov $0521+x,a +17ad: 3f c9 16 call $16c9 +17b0: d5 20 05 mov $0520+x,a +17b3: 3f c9 16 call $16c9 +17b6: d5 31 05 mov $0531+x,a +17b9: 6f ret + +; vcmd f3 - pitch envelope off +17ba: d5 20 05 mov $0520+x,a +17bd: 6f ret + +; vcmd ed - volume +17be: d5 91 04 mov $0491+x,a +17c1: e8 00 mov a,#$00 +17c3: d5 90 04 mov $0490+x,a +17c6: 6f ret + +; vcmd ee - volume fade +17c7: d4 70 mov $70+x,a +17c9: 2d push a +17ca: 3f c9 16 call $16c9 +17cd: d5 b0 04 mov $04b0+x,a +17d0: 80 setc +17d1: b5 91 04 sbc a,$0491+x +17d4: ce pop x +17d5: 3f fb 18 call $18fb +17d8: d5 a0 04 mov $04a0+x,a +17db: dd mov a,y +17dc: d5 a1 04 mov $04a1+x,a +17df: 6f ret + +; vcmd f4 - tuning +17e0: d5 11 05 mov $0511+x,a +17e3: 6f ret + +; vcmd ef - call subroutine +17e4: d5 70 04 mov $0470+x,a +17e7: 3f c9 16 call $16c9 +17ea: d5 71 04 mov $0471+x,a +17ed: 3f c9 16 call $16c9 +17f0: d5 80 04 mov $0480+x,a +17f3: f4 20 mov a,$20+x +17f5: d5 60 04 mov $0460+x,a +17f8: f4 21 mov a,$21+x +17fa: d5 61 04 mov $0461+x,a +17fd: f5 70 04 mov a,$0470+x +1800: d4 20 mov $20+x,a +1802: f5 71 04 mov a,$0471+x +1805: d4 21 mov $21+x,a +1807: 6f ret + +; vcmd f5 - echo v-bits/volume +1808: c4 4a mov $4a,a +180a: c5 bd 03 mov $03bd,a +180d: 48 ff eor a,#$ff +180f: c5 bf 03 mov $03bf,a +1812: 3f c9 16 call $16c9 +1815: e8 00 mov a,#$00 +1817: da 60 movw $60,ya +1819: 3f c9 16 call $16c9 +181c: e8 00 mov a,#$00 +181e: da 62 movw $62,ya +1820: b2 48 clr5 $48 +1822: 6f ret + +; vcmd f8 - echo volume fade +1823: c4 68 mov $68,a +1825: 3f c9 16 call $16c9 +1828: c4 69 mov $69,a +182a: 80 setc +182b: a4 61 sbc a,$61 +182d: f8 68 mov x,$68 +182f: 3f fb 18 call $18fb +1832: da 64 movw $64,ya +1834: 3f c9 16 call $16c9 +1837: c4 6a mov $6a,a +1839: 80 setc +183a: a4 63 sbc a,$63 +183c: f8 68 mov x,$68 +183e: 3f fb 18 call $18fb +1841: da 66 movw $66,ya +1843: 6f ret + +; vcmd f6 - disable echo +1844: da 60 movw $60,ya +1846: da 62 movw $62,ya +1848: a2 48 set5 $48 +184a: 6f ret + +; vcmd f7 - set echo params +184b: 3f 6d 18 call $186d +184e: 3f c9 16 call $16c9 +1851: c4 4e mov $4e,a +1853: 3f c9 16 call $16c9 +1856: 8d 08 mov y,#$08 +1858: cf mul ya +1859: 5d mov x,a +185a: 8d 0f mov y,#$0f +185c: f5 5a 1e mov a,$1e5a+x +185f: 3f 96 14 call $1496 +1862: 3d inc x +1863: dd mov a,y +1864: 60 clrc +1865: 88 10 adc a,#$10 +1867: fd mov y,a +1868: 10 f2 bpl $185c +186a: f8 44 mov x,$44 +186c: 6f ret + +186d: c4 4d mov $4d,a +186f: 8d 7d mov y,#$7d +1871: cc f2 00 mov $00f2,y +1874: e5 f3 00 mov a,$00f3 +1877: 64 4d cmp a,$4d +1879: f0 2b beq $18a6 +187b: 28 0f and a,#$0f +187d: 48 ff eor a,#$ff +187f: f3 4c 03 bbc7 $4c,$1885 +1882: 60 clrc +1883: 84 4c adc a,$4c +1885: c4 4c mov $4c,a +1887: 8d 04 mov y,#$04 +1889: f6 79 1e mov a,$1e79+y +188c: c5 f2 00 mov $00f2,a +188f: e8 00 mov a,#$00 +1891: c5 f3 00 mov $00f3,a +1894: fe f3 dbnz y,$1889 +1896: e4 48 mov a,$48 +1898: 08 20 or a,#$20 +189a: 8d 6c mov y,#$6c +189c: 3f 96 14 call $1496 +189f: e4 4d mov a,$4d +18a1: 8d 7d mov y,#$7d +18a3: 3f 96 14 call $1496 +18a6: 1c asl a +18a7: 1c asl a +18a8: 1c asl a +18a9: 48 ff eor a,#$ff +18ab: 80 setc +18ac: 88 ff adc a,#$ff +18ae: 8d 6d mov y,#$6d +18b0: 5f 96 14 jmp $1496 + +; vcmd fa +18b3: c5 10 04 mov $0410,a +18b6: 6f ret + +18b7: f4 80 mov a,$80+x +18b9: d0 34 bne $18ef +18bb: e7 20 mov a,($20+x) +18bd: 68 f9 cmp a,#$f9 +18bf: d0 2e bne $18ef +18c1: 3f cb 16 call $16cb +18c4: 3f c9 16 call $16c9 +; vcmd f9 - pitch slide +18c7: d4 81 mov $81+x,a +18c9: 3f c9 16 call $16c9 +18cc: d4 80 mov $80+x,a +18ce: 3f c9 16 call $16c9 +18d1: 60 clrc +18d2: 85 03 04 adc a,$0403 +18d5: 95 91 05 adc a,$0591+x +18d8: 28 7f and a,#$7f +18da: d5 10 05 mov $0510+x,a +18dd: 80 setc +18de: b5 f1 04 sbc a,$04f1+x +18e1: fb 80 mov y,$80+x +18e3: 6d push y +18e4: ce pop x +18e5: 3f fb 18 call $18fb +18e8: d5 00 05 mov $0500+x,a +18eb: dd mov a,y +18ec: d5 01 05 mov $0501+x,a +18ef: 6f ret + +18f0: f5 f1 04 mov a,$04f1+x +18f3: c4 11 mov $11,a +18f5: f5 f0 04 mov a,$04f0+x +18f8: c4 10 mov $10,a +18fa: 6f ret + +18fb: ed notc +18fc: 6b 12 ror $12 +18fe: 10 03 bpl $1903 +1900: 48 ff eor a,#$ff +1902: bc inc a +1903: 8d 00 mov y,#$00 +1905: 9e div ya,x +1906: 2d push a +1907: e8 00 mov a,#$00 +1909: 9e div ya,x +190a: ee pop y +190b: f8 44 mov x,$44 +190d: f3 12 06 bbc7 $12,$1916 +1910: da 14 movw $14,ya +1912: ba 0e movw ya,$0e +1914: 9a 14 subw ya,$14 +1916: 6f ret + +; vcmd dispatch table (sfx) +1917: dw $16d3 ; e0 - set instrument +1919: dw $1727 ; e1 - pan +191b: dw $1735 ; e2 - pan fade +191d: dw $174e ; e3 - vibrato on +191f: dw $175a ; e4 - vibrato off +1921: dw $1775 ; e5 +1923: dw $177a ; e6 +1925: dw $177e ; e7 - tempo +1927: dw $1783 ; e8 +1929: dw $1787 ; e9 +192b: dw $178b ; ea - per-voice transpose +192d: dw $178f ; eb - tremolo on +192f: dw $179b ; ec - tremolo off +1931: dw $17be ; ed - volume +1933: dw $17c7 ; ee - volume fade +1935: dw $17e4 ; ef - call subroutine +1937: dw $1765 ; f0 - vibrato fade +1939: dw $17a0 ; f1 - pitch envelope (release) +193b: dw $17a4 ; f2 - pitch envelope (attack) +193d: dw $17ba ; f3 - pitch envelope off +193f: dw $17e0 ; f4 - tuning +1941: dw $1808 ; f5 - echo v-bits/volume +1943: dw $1844 ; f6 - disable echo +1945: dw $184b ; f7 - set echo params +1947: dw $1823 ; f8 - echo volume fade +1949: dw $18c7 ; f9 - pitch slide +194b: dw $18b3 ; fa +194d: dw $1c0e ; fb +194f: dw $1c23 ; fc +1951: dw $1bf6 ; fd + +; vcmd lengths (sfx) +1953: db $01,$01,$02,$03,$00,$01,$02,$01 ; e0-e7 +195b: db $02,$01,$01,$03,$00,$01,$02,$03 ; e8-ef +1963: db $01,$03,$03,$00,$01,$03,$00,$03 ; f0-f7 +196b: db $03,$03,$01,$00,$00,$02 ; f8-fd + +1971: f4 70 mov a,$70+x +1973: f0 24 beq $1999 +1975: 09 47 5e or ($5e),($47) +1978: 9b 70 dec $70+x +197a: d0 0a bne $1986 +197c: e8 00 mov a,#$00 +197e: d5 90 04 mov $0490+x,a +1981: f5 b0 04 mov a,$04b0+x +1984: 2f 10 bra $1996 +1986: 60 clrc +1987: f5 90 04 mov a,$0490+x +198a: 95 a0 04 adc a,$04a0+x +198d: d5 90 04 mov $0490+x,a +1990: f5 91 04 mov a,$0491+x +1993: 95 a1 04 adc a,$04a1+x +1996: d5 91 04 mov $0491+x,a +1999: fb e1 mov y,$e1+x +199b: f0 23 beq $19c0 +199d: f5 90 05 mov a,$0590+x +19a0: de e0 1b cbne $e0+x,$19be +19a3: 09 47 5e or ($5e),($47) +19a6: f5 80 05 mov a,$0580+x +19a9: 10 07 bpl $19b2 +19ab: fc inc y +19ac: d0 04 bne $19b2 +19ae: e8 80 mov a,#$80 +19b0: 2f 04 bra $19b6 +19b2: 60 clrc +19b3: 95 81 05 adc a,$0581+x +19b6: d5 80 05 mov $0580+x,a +19b9: 3f cf 1b call $1bcf +19bc: 2f 07 bra $19c5 +19be: bb e0 inc $e0+x +19c0: e8 ff mov a,#$ff +19c2: 3f da 1b call $1bda +19c5: f4 71 mov a,$71+x +19c7: f0 24 beq $19ed +19c9: 09 47 5e or ($5e),($47) +19cc: 9b 71 dec $71+x +19ce: d0 0a bne $19da +19d0: e8 00 mov a,#$00 +19d2: d5 c0 04 mov $04c0+x,a +19d5: f5 e0 04 mov a,$04e0+x +19d8: 2f 10 bra $19ea +19da: 60 clrc +19db: f5 c0 04 mov a,$04c0+x +19de: 95 d0 04 adc a,$04d0+x +19e1: d5 c0 04 mov $04c0+x,a +19e4: f5 c1 04 mov a,$04c1+x +19e7: 95 d1 04 adc a,$04d1+x +19ea: d5 c1 04 mov $04c1+x,a +19ed: e4 47 mov a,$47 +19ef: 24 5e and a,$5e +19f1: f0 5c beq $1a4f +19f3: f5 c1 04 mov a,$04c1+x +19f6: fd mov y,a +19f7: f5 c0 04 mov a,$04c0+x +19fa: da 10 movw $10,ya +19fc: 7d mov a,x +19fd: 9f xcn a +19fe: 5c lsr a +19ff: c4 12 mov $12,a +1a01: eb 11 mov y,$11 +1a03: e5 b8 03 mov a,$03b8 +1a06: f0 11 beq $1a19 +1a08: e8 51 mov a,#$51 +1a0a: 80 setc +1a0b: a8 51 sbc a,#$51 +1a0d: eb 10 mov y,$10 +1a0f: cf mul ya +1a10: dd mov a,y +1a11: eb 11 mov y,$11 +1a13: 60 clrc +1a14: 88 51 adc a,#$51 +1a16: fd mov y,a +1a17: 2f 12 bra $1a2b +1a19: f6 46 1e mov a,$1e46+y +1a1c: 80 setc +1a1d: b6 45 1e sbc a,$1e45+y +1a20: eb 10 mov y,$10 +1a22: cf mul ya +1a23: dd mov a,y +1a24: eb 11 mov y,$11 +1a26: 60 clrc +1a27: 96 45 1e adc a,$1e45+y +1a2a: fd mov y,a +1a2b: f5 b1 04 mov a,$04b1+x +1a2e: cf mul ya +1a2f: f5 e1 04 mov a,$04e1+x +1a32: 1c asl a +1a33: 13 12 01 bbc0 $12,$1a37 +1a36: 1c asl a +1a37: dd mov a,y +1a38: 90 03 bcc $1a3d +1a3a: 48 ff eor a,#$ff +1a3c: bc inc a +1a3d: eb 12 mov y,$12 +1a3f: 3f 96 14 call $1496 +1a42: 8d 14 mov y,#$14 +1a44: e8 00 mov a,#$00 +1a46: 9a 10 subw ya,$10 +1a48: da 10 movw $10,ya +1a4a: ab 12 inc $12 +1a4c: 33 12 b2 bbc1 $12,$1a01 +1a4f: 6f ret + +1a50: f5 21 04 mov a,$0421+x +1a53: f0 6b beq $1ac0 +1a55: 9c dec a +1a56: d5 21 04 mov $0421+x,a +1a59: f0 07 beq $1a62 +1a5b: e8 02 mov a,#$02 +1a5d: 75 20 04 cmp a,$0420+x +1a60: d0 5e bne $1ac0 +1a62: f5 80 04 mov a,$0480+x +1a65: c4 17 mov $17,a +1a67: f4 20 mov a,$20+x +1a69: fb 21 mov y,$21+x +1a6b: da 14 movw $14,ya +1a6d: 8d 00 mov y,#$00 +1a6f: f7 14 mov a,($14)+y +1a71: f0 1e beq $1a91 +1a73: 30 07 bmi $1a7c +1a75: fc inc y +1a76: 30 40 bmi $1ab8 +1a78: f7 14 mov a,($14)+y +1a7a: 10 f9 bpl $1a75 +1a7c: 68 c8 cmp a,#$c8 +1a7e: f0 40 beq $1ac0 +1a80: 68 ef cmp a,#$ef +1a82: f0 29 beq $1aad +1a84: 68 e0 cmp a,#$e0 +1a86: 90 30 bcc $1ab8 +1a88: 6d push y +1a89: fd mov y,a +1a8a: ae pop a +1a8b: 96 73 18 adc a,$1873+y +1a8e: fd mov y,a +1a8f: 2f de bra $1a6f +1a91: e4 17 mov a,$17 +1a93: f0 23 beq $1ab8 +1a95: 8b 17 dec $17 +1a97: d0 0a bne $1aa3 +1a99: f5 61 04 mov a,$0461+x +1a9c: 2d push a +1a9d: f5 60 04 mov a,$0460+x +1aa0: ee pop y +1aa1: 2f c8 bra $1a6b +1aa3: f5 71 04 mov a,$0471+x +1aa6: 2d push a +1aa7: f5 70 04 mov a,$0470+x +1aaa: ee pop y +1aab: 2f be bra $1a6b +1aad: fc inc y +1aae: f7 14 mov a,($14)+y +1ab0: 2d push a +1ab1: fc inc y +1ab2: f7 14 mov a,($14)+y +1ab4: fd mov y,a +1ab5: ae pop a +1ab6: 2f b3 bra $1a6b +1ab8: e4 47 mov a,$47 +1aba: 05 d3 03 or a,$03d3 +1abd: c5 d3 03 mov $03d3,a +1ac0: f2 13 clr7 $13 +1ac2: f4 80 mov a,$80+x +1ac4: f0 2c beq $1af2 +1ac6: f4 81 mov a,$81+x +1ac8: f0 04 beq $1ace +1aca: 9b 81 dec $81+x +1acc: 2f 24 bra $1af2 +1ace: e2 13 set7 $13 +1ad0: 9b 80 dec $80+x +1ad2: d0 0b bne $1adf +1ad4: f5 11 05 mov a,$0511+x +1ad7: d5 f0 04 mov $04f0+x,a +1ada: f5 10 05 mov a,$0510+x +1add: 2f 10 bra $1aef +1adf: 60 clrc +1ae0: f5 f0 04 mov a,$04f0+x +1ae3: 95 00 05 adc a,$0500+x +1ae6: d5 f0 04 mov $04f0+x,a +1ae9: f5 f1 04 mov a,$04f1+x +1aec: 95 01 05 adc a,$0501+x +1aef: d5 f1 04 mov $04f1+x,a +1af2: 3f f0 18 call $18f0 +1af5: f4 d1 mov a,$d1+x +1af7: f0 4c beq $1b45 +1af9: f5 50 05 mov a,$0550+x +1afc: de d0 44 cbne $d0+x,$1b43 +1aff: f5 60 05 mov a,$0560+x +1b02: 75 51 05 cmp a,$0551+x +1b05: d0 05 bne $1b0c +1b07: f5 71 05 mov a,$0571+x +1b0a: 2f 0d bra $1b19 +1b0c: 40 setp +1b0d: bb 60 inc $60+x +1b0f: 20 clrp +1b10: fd mov y,a +1b11: f0 02 beq $1b15 +1b13: f4 d1 mov a,$d1+x +1b15: 60 clrc +1b16: 95 70 05 adc a,$0570+x +1b19: d4 d1 mov $d1+x,a +1b1b: f5 40 05 mov a,$0540+x +1b1e: 60 clrc +1b1f: 95 41 05 adc a,$0541+x +1b22: d5 40 05 mov $0540+x,a +1b25: c4 12 mov $12,a +1b27: 1c asl a +1b28: 1c asl a +1b29: 90 02 bcc $1b2d +1b2b: 48 ff eor a,#$ff +1b2d: fd mov y,a +1b2e: f4 d1 mov a,$d1+x +1b30: 68 f1 cmp a,#$f1 +1b32: 90 05 bcc $1b39 +1b34: 28 0f and a,#$0f +1b36: cf mul ya +1b37: 2f 04 bra $1b3d +1b39: cf mul ya +1b3a: dd mov a,y +1b3b: 8d 00 mov y,#$00 +1b3d: 3f ba 1b call $1bba +1b40: 5f 13 14 jmp $1413 + +1b43: bb d0 inc $d0+x +1b45: e3 13 f8 bbs7 $13,$1b40 +1b48: 6f ret + +1b49: f2 13 clr7 $13 +1b4b: f4 e1 mov a,$e1+x +1b4d: f0 09 beq $1b58 +1b4f: f5 90 05 mov a,$0590+x +1b52: de e0 03 cbne $e0+x,$1b58 +1b55: 3f c2 1b call $1bc2 +1b58: f5 c1 04 mov a,$04c1+x +1b5b: fd mov y,a +1b5c: f5 c0 04 mov a,$04c0+x +1b5f: da 10 movw $10,ya +1b61: f4 71 mov a,$71+x +1b63: f0 0a beq $1b6f +1b65: f5 d1 04 mov a,$04d1+x +1b68: fd mov y,a +1b69: f5 d0 04 mov a,$04d0+x +1b6c: 3f a4 1b call $1ba4 +1b6f: f3 13 03 bbc7 $13,$1b75 +1b72: 3f fc 19 call $19fc +1b75: f2 13 clr7 $13 +1b77: 3f f0 18 call $18f0 +1b7a: f4 80 mov a,$80+x +1b7c: f0 0e beq $1b8c +1b7e: f4 81 mov a,$81+x +1b80: d0 0a bne $1b8c +1b82: f5 01 05 mov a,$0501+x +1b85: fd mov y,a +1b86: f5 00 05 mov a,$0500+x +1b89: 3f a4 1b call $1ba4 +1b8c: f4 d1 mov a,$d1+x +1b8e: f0 b5 beq $1b45 +1b90: f5 50 05 mov a,$0550+x +1b93: de d0 af cbne $d0+x,$1b45 +1b96: eb 51 mov y,$51 +1b98: f5 41 05 mov a,$0541+x +1b9b: cf mul ya +1b9c: dd mov a,y +1b9d: 60 clrc +1b9e: 95 40 05 adc a,$0540+x +1ba1: 5f 25 1b jmp $1b25 + +1ba4: e2 13 set7 $13 +1ba6: cb 12 mov $12,y +1ba8: 3f 0d 19 call $190d +1bab: 6d push y +1bac: eb 51 mov y,$51 +1bae: cf mul ya +1baf: cb 14 mov $14,y +1bb1: 8f 00 15 mov $15,#$00 +1bb4: eb 51 mov y,$51 +1bb6: ae pop a +1bb7: cf mul ya +1bb8: 7a 14 addw ya,$14 +1bba: 3f 0d 19 call $190d +1bbd: 7a 10 addw ya,$10 +1bbf: da 10 movw $10,ya +1bc1: 6f ret + +1bc2: e2 13 set7 $13 +1bc4: eb 51 mov y,$51 +1bc6: f5 81 05 mov a,$0581+x +1bc9: cf mul ya +1bca: dd mov a,y +1bcb: 60 clrc +1bcc: 95 80 05 adc a,$0580+x +1bcf: 1c asl a +1bd0: 90 02 bcc $1bd4 +1bd2: 48 ff eor a,#$ff +1bd4: fb e1 mov y,$e1+x +1bd6: cf mul ya +1bd7: dd mov a,y +1bd8: 48 ff eor a,#$ff +1bda: ec b9 03 mov y,$03b9 +1bdd: f0 05 beq $1be4 +1bdf: ec 04 04 mov y,$0404 +1be2: 2f 02 bra $1be6 +1be4: eb 59 mov y,$59 +1be6: cf mul ya +1be7: f5 c0 05 mov a,$05c0+x +1bea: cf mul ya +1beb: f5 91 04 mov a,$0491+x +1bee: cf mul ya +1bef: dd mov a,y +1bf0: cf mul ya +1bf1: dd mov a,y +1bf2: d5 b1 04 mov $04b1+x,a +1bf5: 6f ret + +; vcmd fd +1bf6: 7d mov a,x +1bf7: 9f xcn a +1bf8: 5c lsr a +1bf9: 08 05 or a,#$05 +1bfb: c4 14 mov $14,a +1bfd: dd mov a,y +1bfe: eb 14 mov y,$14 +1c00: 3f 96 14 call $1496 +1c03: 3f c9 16 call $16c9 +1c06: ab 14 inc $14 +1c08: eb 14 mov y,$14 +1c0a: 3f 96 14 call $1496 +1c0d: 6f ret + +; vcmd fb - echo on +1c0e: e5 bd 03 mov a,$03bd +1c11: 04 47 or a,$47 +1c13: c5 bd 03 mov $03bd,a +1c16: e4 47 mov a,$47 +1c18: 48 ff eor a,#$ff +1c1a: 25 bf 03 and a,$03bf +1c1d: c5 bf 03 mov $03bf,a +1c20: 5f 89 13 jmp $1389 + +; vcmd fc - echo off +1c23: e5 bf 03 mov a,$03bf +1c26: 04 47 or a,$47 +1c28: c5 bf 03 mov $03bf,a +1c2b: e4 47 mov a,$47 +1c2d: 48 ff eor a,#$ff +1c2f: 25 bd 03 and a,$03bd +1c32: c5 bd 03 mov $03bd,a +1c35: 5f 89 13 jmp $1389 + +1c38: 8d 00 mov y,#$00 +1c3a: f7 6e mov a,($6e)+y +1c3c: 3a 6e incw $6e +1c3e: 2d push a +1c3f: f7 6e mov a,($6e)+y +1c41: 3a 6e incw $6e +1c43: fd mov y,a +1c44: ae pop a +1c45: 6f ret + +1c46: c4 06 mov $06,a +1c48: 1c asl a +1c49: 5d mov x,a +1c4a: f5 ff bf mov a,$bfff+x +1c4d: fd mov y,a +1c4e: f5 fe bf mov a,$bffe+x +1c51: da 6e movw $6e,ya +1c53: 8f 02 1f mov $1f,#$02 +1c56: 2f 02 bra $1c5a +1c58: c4 06 mov $06,a +1c5a: e4 6d mov a,$6d +1c5c: 0e 46 00 tset1 $0046 +1c5f: e8 a5 mov a,#$a5 +1c61: c5 e4 05 mov $05e4,a +1c64: 6f ret + +1c65: e4 6d mov a,$6d +1c67: 0e 46 00 tset1 $0046 +1c6a: e8 00 mov a,#$00 +1c6c: c5 e4 05 mov $05e4,a +1c6f: cd 00 mov x,#$00 +1c71: 8f 01 47 mov $47,#$01 +1c74: e4 6d mov a,$6d +1c76: 24 47 and a,$47 +1c78: f0 14 beq $1c8e +1c7a: e4 47 mov a,$47 +1c7c: 48 ff eor a,#$ff +1c7e: 24 1a and a,$1a +1c80: c4 1a mov $1a,a +1c82: f5 11 02 mov a,$0211+x +1c85: 3f 04 0e call $0e04 +1c88: e8 00 mov a,#$00 +1c8a: d4 21 mov $21+x,a +1c8c: d4 20 mov $20+x,a +1c8e: 3d inc x +1c8f: 3d inc x +1c90: 0b 47 asl $47 +1c92: d0 e0 bne $1c74 +1c94: e8 00 mov a,#$00 +1c96: c4 6d mov $6d,a +1c98: 6f ret + +1c99: cd 0e mov x,#$0e +1c9b: 8f 80 47 mov $47,#$80 +1c9e: e4 47 mov a,$47 +1ca0: 24 6d and a,$6d +1ca2: f0 06 beq $1caa +1ca4: e8 00 mov a,#$00 +1ca6: d4 20 mov $20+x,a +1ca8: d4 1f mov $1f+x,a +1caa: 1d dec x +1cab: 1d dec x +1cac: 4b 47 lsr $47 +1cae: d0 ee bne $1c9e +1cb0: e8 00 mov a,#$00 +1cb2: c4 6d mov $6d,a +1cb4: cd 00 mov x,#$00 +1cb6: 8f 01 47 mov $47,#$01 +1cb9: f5 f1 05 mov a,$05f1+x +1cbc: f0 15 beq $1cd3 +1cbe: d4 21 mov $21+x,a +1cc0: f5 f0 05 mov a,$05f0+x +1cc3: d4 20 mov $20+x,a +1cc5: 09 47 1a or ($1a),($47) +1cc8: 09 47 6d or ($6d),($47) +1ccb: e4 47 mov a,$47 +1ccd: 48 ff eor a,#$ff +1ccf: 24 1b and a,$1b +1cd1: c4 1b mov $1b,a +1cd3: 3d inc x +1cd4: 3d inc x +1cd5: 0b 47 asl $47 +1cd7: d0 e0 bne $1cb9 +1cd9: e4 6d mov a,$6d +1cdb: 0e 46 00 tset1 $0046 +1cde: e8 00 mov a,#$00 +1ce0: c5 e4 05 mov $05e4,a +1ce3: 6f ret + +1ce4: 3f 38 1c call $1c38 +1ce7: 1a 6e decw $6e +1ce9: 1a 6e decw $6e +1ceb: da 16 movw $16,ya +1ced: 8d 0f mov y,#$0f +1cef: f7 16 mov a,($16)+y +1cf1: d6 f0 05 mov $05f0+y,a +1cf4: dc dec y +1cf5: 10 f8 bpl $1cef +1cf7: 3f 99 1c call $1c99 +1cfa: cd 0e mov x,#$0e +1cfc: 8f 80 47 mov $47,#$80 +1cff: e4 47 mov a,$47 +1d01: 24 6d and a,$6d +1d03: f0 1d beq $1d22 +1d05: e8 ff mov a,#$ff +1d07: d5 91 04 mov $0491+x,a +1d0a: e5 e3 05 mov a,$05e3 +1d0d: 3f 27 17 call $1727 +1d10: e8 00 mov a,#$00 +1d12: d5 c1 05 mov $05c1+x,a +1d15: d5 11 05 mov $0511+x,a +1d18: d5 91 05 mov $0591+x,a +1d1b: d5 20 05 mov $0520+x,a +1d1e: d4 d1 mov $d1+x,a +1d20: d4 e1 mov $e1+x,a +1d22: 1d dec x +1d23: 1d dec x +1d24: 4b 47 lsr $47 +1d26: d0 d7 bne $1cff +1d28: c5 03 04 mov $0403,a +1d2b: c5 e0 05 mov $05e0,a +1d2e: c5 10 04 mov $0410,a +1d31: c4 70 mov $70,a +1d33: 6f ret + +1d34: e5 e4 05 mov a,$05e4 +1d37: f0 03 beq $1d3c +1d39: 5f 6a 1c jmp $1c6a + +1d3c: eb 0a mov y,$0a +1d3e: e4 02 mov a,$02 +1d40: c4 0a mov $0a,a +1d42: 7e 02 cmp y,$02 +1d44: f0 03 beq $1d49 +1d46: 5f 46 1c jmp $1c46 + +1d49: e4 06 mov a,$06 +1d4b: f0 e6 beq $1d33 +1d4d: e4 1f mov a,$1f +1d4f: d0 03 bne $1d54 +1d51: 5f b0 1d jmp $1db0 + +1d54: 6e 1f 8d dbnz $1f,$1ce4 +1d57: 3f 38 1c call $1c38 +1d5a: d0 1a bne $1d76 +1d5c: fd mov y,a +1d5d: d0 03 bne $1d62 +1d5f: 5f 58 1c jmp $1c58 + +1d62: 8c e0 05 dec $05e0 +1d65: 10 03 bpl $1d6a +1d67: c5 e0 05 mov $05e0,a +1d6a: 3f 38 1c call $1c38 +1d6d: e9 e0 05 mov x,$05e0 +1d70: f0 e5 beq $1d57 +1d72: da 6e movw $6e,ya +1d74: 2f e1 bra $1d57 +1d76: da 16 movw $16,ya +1d78: 8d 0f mov y,#$0f +1d7a: f7 16 mov a,($16)+y +1d7c: d6 f0 05 mov $05f0+y,a +1d7f: dc dec y +1d80: 10 f8 bpl $1d7a +1d82: 3f 65 1c call $1c65 +1d85: 3f 99 1c call $1c99 +1d88: cd 00 mov x,#$00 +1d8a: 8f 01 47 mov $47,#$01 +1d8d: e4 47 mov a,$47 +1d8f: 24 6d and a,$6d +1d91: f0 17 beq $1daa +1d93: f4 21 mov a,$21+x +1d95: f0 06 beq $1d9d +1d97: f5 c1 05 mov a,$05c1+x +1d9a: 3f d3 16 call $16d3 +1d9d: e8 00 mov a,#$00 +1d9f: d5 80 04 mov $0480+x,a +1da2: d4 70 mov $70+x,a +1da4: d4 71 mov $71+x,a +1da6: bc inc a +1da7: d5 20 04 mov $0420+x,a +1daa: 3d inc x +1dab: 3d inc x +1dac: 0b 47 asl $47 +1dae: d0 dd bne $1d8d +1db0: cd 00 mov x,#$00 +1db2: e4 6d mov a,$6d +1db4: 24 5e and a,$5e +1db6: c4 5e mov $5e,a +1db8: 8f 01 47 mov $47,#$01 +1dbb: d8 44 mov $44,x +1dbd: e4 47 mov a,$47 +1dbf: 24 6d and a,$6d +1dc1: f0 78 beq $1e3b +1dc3: f4 21 mov a,$21+x +1dc5: f0 74 beq $1e3b +1dc7: f5 20 04 mov a,$0420+x +1dca: 9c dec a +1dcb: d5 20 04 mov $0420+x,a +1dce: d0 65 bne $1e35 +1dd0: 3f c9 16 call $16c9 +1dd3: d0 20 bne $1df5 +1dd5: f5 80 04 mov a,$0480+x +1dd8: d0 03 bne $1ddd +1dda: 5f 57 1d jmp $1d57 + +1ddd: 3f fd 17 call $17fd +1de0: f5 80 04 mov a,$0480+x +1de3: 9c dec a +1de4: d5 80 04 mov $0480+x,a +1de7: d0 e7 bne $1dd0 +1de9: f5 60 04 mov a,$0460+x +1dec: d4 20 mov $20+x,a +1dee: f5 61 04 mov a,$0461+x +1df1: d4 21 mov $21+x,a +1df3: 2f db bra $1dd0 +1df5: 30 20 bmi $1e17 +1df7: d5 30 04 mov $0430+x,a +1dfa: 3f c9 16 call $16c9 +1dfd: 30 18 bmi $1e17 +1dff: 2d push a +1e00: 9f xcn a +1e01: 28 07 and a,#$07 +1e03: fd mov y,a +1e04: f6 a8 1e mov a,$1ea8+y +1e07: d5 31 04 mov $0431+x,a +1e0a: ae pop a +1e0b: 28 0f and a,#$0f +1e0d: fd mov y,a +1e0e: f6 b0 1e mov a,$1eb0+y +1e11: d5 c0 05 mov $05c0+x,a +1e14: 3f c9 16 call $16c9 +1e17: 68 e0 cmp a,#$e0 +1e19: 90 05 bcc $1e20 +1e1b: 3f b7 16 call $16b7 +1e1e: 2f b0 bra $1dd0 +1e20: 3f a8 13 call $13a8 +1e23: f5 30 04 mov a,$0430+x +1e26: d5 20 04 mov $0420+x,a +1e29: fd mov y,a +1e2a: f5 31 04 mov a,$0431+x +1e2d: cf mul ya +1e2e: dd mov a,y +1e2f: bc inc a +1e30: d5 21 04 mov $0421+x,a +1e33: 2f 03 bra $1e38 +1e35: 3f 50 1a call $1a50 +1e38: 3f b7 18 call $18b7 +1e3b: 3d inc x +1e3c: 3d inc x +1e3d: 0b 47 asl $47 +1e3f: f0 03 beq $1e44 +1e41: 5f bb 1d jmp $1dbb +1e44: 6f ret + +; pan table +1e45: db $00,$01,$03,$07,$0d,$15,$1e,$29 +1e4d: db $34,$42,$51,$5e,$67,$6e,$73,$77 +1e55: db $7a,$7c,$7d,$7e,$7f + +; echo FIR presets +1e5a: db $7f,$00,$00,$00,$00,$00,$00,$00 +1e62: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +1e6a: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +1e72: db $34,$33,$00,$d9,$e5,$01,$fc,$eb + +; EVOL(L),EVOL(R),EFB,EON,FLG,KOL,KOF,NON,PMON,KOF +; dsp shadow addrs for dsp regs +1e7a: db $2c,$3c,$0d,$4d,$6c,$4c,$5c,$3d,$2d,$5c +1e84: db $61,$63,$4e,$4a,$48,$45,$0e,$49,$4b,$46 + +; pitch table +1e8e: dw $08ef +1e90: dw $08de +1e92: dw $0965 +1e94: dw $09f4 +1e96: dw $0a8c +1e98: dw $0b2c +1e9a: dw $0bd6 +1e9c: dw $0c8b +1e9e: dw $0d4a +1ea0: dw $0e14 +1ea2: dw $0eea +1ea4: dw $0fcd +1ea6: dw $10be + +; note dur%'s +1ea8: db $32,$65,$7f,$98,$b2,$cb,$e5,$ff +; per-note velocity values +1eb0: db $0a,$19,$28,$3c,$50,$64,$7d,$96 +1eb8: db $aa,$b9,$c8,$d4,$e1,$eb,$f5,$ff + +1ec0: e8 aa mov a,#$aa +1ec2: c5 f4 00 mov $00f4,a +1ec5: e8 bb mov a,#$bb +1ec7: c5 f5 00 mov $00f5,a +1eca: e5 f4 00 mov a,$00f4 +1ecd: 68 cc cmp a,#$cc +1ecf: d0 f9 bne $1eca +1ed1: 2f 20 bra $1ef3 +1ed3: ec f4 00 mov y,$00f4 +1ed6: d0 fb bne $1ed3 +1ed8: 5e f4 00 cmp y,$00f4 +1edb: d0 0f bne $1eec +1edd: e5 f5 00 mov a,$00f5 +1ee0: cc f4 00 mov $00f4,y +1ee3: d7 14 mov ($14)+y,a +1ee5: fc inc y +1ee6: d0 f0 bne $1ed8 +1ee8: ab 15 inc $15 +1eea: 2f ec bra $1ed8 +1eec: 10 ea bpl $1ed8 +1eee: 5e f4 00 cmp y,$00f4 +1ef1: 10 e5 bpl $1ed8 +1ef3: e5 f6 00 mov a,$00f6 +1ef6: ec f7 00 mov y,$00f7 +1ef9: da 14 movw $14,ya +1efb: ec f4 00 mov y,$00f4 +1efe: e5 f5 00 mov a,$00f5 +1f01: cc f4 00 mov $00f4,y +1f04: d0 cd bne $1ed3 +1f06: cd 31 mov x,#$31 +1f08: c9 f1 00 mov $00f1,x +1f0b: 6f ret diff --git a/snes/NSPC/Sunsoft/Albert Odyssey.s b/snes/NSPC/Sunsoft/Albert Odyssey.s new file mode 100644 index 00000000..43898a13 --- /dev/null +++ b/snes/NSPC/Sunsoft/Albert Odyssey.s @@ -0,0 +1,2964 @@ +0800: 20 clrp +0801: cd cf mov x,#$cf +0803: bd mov sp,x +0804: e8 e0 mov a,#$e0 +0806: 8d 6c mov y,#$6c +0808: 3f 2e 0c call $0c2e +080b: e8 00 mov a,#$00 +080d: 5d mov x,a +080e: af mov (x)+,a +080f: c8 e0 cmp x,#$e0 +0811: d0 fb bne $080e +0813: fd mov y,a +0814: c4 14 mov $14,a +0816: 8f 02 15 mov $15,#$02 +0819: d7 14 mov ($14)+y,a +081b: 3a 14 incw $14 +081d: 78 06 15 cmp $15,#$06 +0820: d0 f7 bne $0819 +0822: 3f f3 09 call $09f3 +0825: e8 03 mov a,#$03 +0827: c5 00 04 mov $0400,a +082a: e8 f0 mov a,#$f0 +082c: c5 f1 00 mov $00f1,a +082f: e8 10 mov a,#$10 +0831: c5 fa 00 mov $00fa,a +0834: c4 53 mov $53,a +0836: e8 01 mov a,#$01 +0838: c5 f1 00 mov $00f1,a +083b: e8 00 mov a,#$00 +083d: c4 f4 mov $f4,a +083f: c4 f5 mov $f5,a +0841: c4 f6 mov $f6,a +0843: c4 f7 mov $f7,a +0845: e5 d1 03 mov a,$03d1 +0848: f0 23 beq $086d +084a: e5 d4 03 mov a,$03d4 +084d: 04 46 or a,$46 +084f: c5 d4 03 mov $03d4,a +0852: e5 d2 03 mov a,$03d2 +0855: 04 45 or a,$45 +0857: c4 45 mov $45,a +0859: 48 ff eor a,#$ff +085b: fd mov y,a +085c: 25 d4 03 and a,$03d4 +085f: c4 46 mov $46,a +0861: dd mov a,y +0862: 25 d3 03 and a,$03d3 +0865: c5 d4 03 mov $03d4,a +0868: e8 00 mov a,#$00 +086a: c5 d1 03 mov $03d1,a +086d: 8d 0a mov y,#$0a +086f: ad 05 cmp y,#$05 +0871: f0 07 beq $087a +0873: b0 08 bcs $087d +0875: 69 4d 4c cmp ($4c),($4d) +0878: d0 11 bne $088b +087a: e3 4c 0e bbs7 $4c,$088b +087d: f6 71 1e mov a,$1e71+y +0880: c5 f2 00 mov $00f2,a +0883: f6 7b 1e mov a,$1e7b+y +0886: 5d mov x,a +0887: e6 mov a,(x) +0888: c5 f3 00 mov $00f3,a +088b: fe e2 dbnz y,$086f +088d: cb 45 mov $45,y +088f: cb 46 mov $46,y +0891: e4 18 mov a,$18 +0893: 44 19 eor a,$19 +0895: 5c lsr a +0896: 5c lsr a +0897: ed notc +0898: 6b 18 ror $18 +089a: 6b 19 ror $19 +089c: ec fd 00 mov y,$00fd +089f: f0 fb beq $089c +08a1: 6d push y +08a2: e8 20 mov a,#$20 +08a4: cf mul ya +08a5: 60 clrc +08a6: 84 43 adc a,$43 +08a8: c4 43 mov $43,a +08aa: 90 07 bcc $08b3 +08ac: 69 4d 4c cmp ($4c),($4d) +08af: f0 02 beq $08b3 +08b1: ab 4c inc $4c +08b3: e4 53 mov a,$53 +08b5: ee pop y +08b6: cf mul ya +08b7: 60 clrc +08b8: 84 51 adc a,$51 +08ba: c4 51 mov $51,a +08bc: 90 56 bcc $0914 +08be: e5 00 04 mov a,$0400 +08c1: f0 06 beq $08c9 +08c3: 8c 00 04 dec $0400 +08c6: 5f 45 08 jmp $0845 + +08c9: e8 ff mov a,#$ff +08cb: c5 d1 03 mov $03d1,a +08ce: e8 00 mov a,#$00 +08d0: c5 d2 03 mov $03d2,a +08d3: c5 d3 03 mov $03d3,a +08d6: 3f 6f 09 call $096f +08d9: 3f 2c 1d call $1d2c +08dc: 3f 73 15 call $1573 +08df: e4 05 mov a,$05 +08e1: 04 06 or a,$06 +08e3: f0 03 beq $08e8 +08e5: 3f 95 16 call $1695 +08e8: e4 5e mov a,$5e +08ea: c5 05 04 mov $0405,a +08ed: 3f a1 0c call $0ca1 +08f0: e4 5e mov a,$5e +08f2: c5 c0 03 mov $03c0,a +08f5: cd 00 mov x,#$00 +08f7: 3f 58 09 call $0958 +08fa: cd 01 mov x,#$01 +08fc: 3f 58 09 call $0958 +08ff: cd 02 mov x,#$02 +0901: 3f 58 09 call $0958 +0904: cd 03 mov x,#$03 +0906: 3f 58 09 call $0958 +0909: ac 4f 00 inc $004f +090c: e5 4f 00 mov a,$004f +090f: c4 07 mov $07,a +0911: 5f 45 08 jmp $0845 + +0914: e5 05 04 mov a,$0405 +0917: c4 5e mov $5e,a +0919: cd 00 mov x,#$00 +091b: e4 05 mov a,$05 +091d: f0 01 beq $0920 +091f: 3d inc x +0920: e4 06 mov a,$06 +0922: f0 01 beq $0925 +0924: 3d inc x +0925: 7d mov a,x +0926: f0 12 beq $093a +0928: cd 00 mov x,#$00 +092a: 8f 01 47 mov $47,#$01 +092d: f4 21 mov a,$21+x +092f: f0 03 beq $0934 +0931: 3f 41 1b call $1b41 +0934: 3d inc x +0935: 3d inc x +0936: 0b 47 asl $47 +0938: d0 f3 bne $092d +093a: e5 c0 03 mov a,$03c0 +093d: c4 5e mov $5e,a +093f: e4 04 mov a,$04 +0941: f0 12 beq $0955 +0943: cd 00 mov x,#$00 +0945: 8f 01 47 mov $47,#$01 +0948: f4 31 mov a,$31+x +094a: f0 03 beq $094f +094c: 3f 99 12 call $1299 +094f: 3d inc x +0950: 3d inc x +0951: 0b 47 asl $47 +0953: d0 f3 bne $0948 +0955: 5f 45 08 jmp $0845 + +0958: f5 b0 03 mov a,$03b0+x +095b: d5 b4 03 mov $03b4+x,a +095e: f4 04 mov a,$04+x +0960: d5 f4 00 mov $00f4+x,a +0963: f5 f4 00 mov a,$00f4+x +0966: 75 f4 00 cmp a,$00f4+x +0969: d0 f8 bne $0963 +096b: d5 b0 03 mov $03b0+x,a +096e: 6f ret + +096f: e5 d5 03 mov a,$03d5 +0972: f0 12 beq $0986 +0974: 9c dec a +0975: 68 01 cmp a,#$01 +0977: f0 05 beq $097e +0979: c5 d5 03 mov $03d5,a +097c: 2f 08 bra $0986 +097e: 3f c1 0a call $0ac1 +0981: e8 00 mov a,#$00 +0983: c5 d5 03 mov $03d5,a +0986: e5 b0 03 mov a,$03b0 +0989: 65 b4 03 cmp a,$03b4 +098c: f0 08 beq $0996 +098e: 28 7f and a,#$7f +0990: c4 00 mov $00,a +0992: e8 ff mov a,#$ff +0994: c4 08 mov $08,a +0996: e5 b1 03 mov a,$03b1 +0999: 65 b5 03 cmp a,$03b5 +099c: f0 0b beq $09a9 +099e: 28 7f and a,#$7f +09a0: 68 6f cmp a,#$6f +09a2: b0 07 bcs $09ab +09a4: c4 01 mov $01,a +09a6: 8f ff 09 mov $09,#$ff +09a9: 2f 03 bra $09ae +09ab: 3f c6 09 call $09c6 +09ae: e5 b2 03 mov a,$03b2 +09b1: 65 b6 03 cmp a,$03b6 +09b4: f0 0b beq $09c1 +09b6: 28 7f and a,#$7f +09b8: 68 6f cmp a,#$6f +09ba: b0 06 bcs $09c2 +09bc: c4 02 mov $02,a +09be: 8f ff 0a mov $0a,#$ff +09c1: 6f ret + +09c2: 3f c6 09 call $09c6 +09c5: 6f ret + +09c6: 28 0f and a,#$0f +09c8: 1c asl a +09c9: 5d mov x,a +09ca: f5 d4 09 mov a,$09d4+x +09cd: 2d push a +09ce: f5 d3 09 mov a,$09d3+x +09d1: 2d push a +09d2: 6f ret + +09d3: f3 09 84 bbc7 $09,$095a +09d6: 0a 8b 0a or1 c,$0a8b,0 +09d9: 99 adc (x),(y) +09da: 0a 9f 0a or1 c,$0a9f,0 +09dd: a5 0a b1 sbc a,$b10a +09e0: 0a b7 0a or1 c,$0ab7,0 +09e3: dc dec y +09e4: 0a e2 0a or1 c,$0ae2,0 +09e7: f6 0a 14 mov a,$140a+y +09ea: 0b 32 asl $32 +09ec: 0b 32 asl $32 +09ee: 0b 32 asl $32 +09f0: 0b 14 asl $14 +09f2: 0a e8 e0 or1 c,$00e8,7 +09f5: 8d 6c mov y,#$6c +09f7: 3f 2e 0c call $0c2e +09fa: e8 00 mov a,#$00 +09fc: 3f b2 0f call $0fb2 +09ff: a2 48 set5 $48 +0a01: e8 7f mov a,#$7f +0a03: 8d 0c mov y,#$0c +0a05: 3f 2e 0c call $0c2e +0a08: 8d 1c mov y,#$1c +0a0a: 3f 2e 0c call $0c2e +0a0d: e8 20 mov a,#$20 +0a0f: 8d 5d mov y,#$5d +0a11: 3f 2e 0c call $0c2e +0a14: e8 c0 mov a,#$c0 +0a16: c4 59 mov $59,a +0a18: c5 bb 03 mov $03bb,a +0a1b: e8 b4 mov a,#$b4 +0a1d: c5 ba 03 mov $03ba,a +0a20: 8f 20 53 mov $53,#$20 +0a23: e8 00 mov a,#$00 +0a25: c5 b8 03 mov $03b8,a +0a28: c4 00 mov $00,a +0a2a: c4 01 mov $01,a +0a2c: c4 02 mov $02,a +0a2e: c4 03 mov $03,a +0a30: c5 b0 03 mov $03b0,a +0a33: c5 b1 03 mov $03b1,a +0a36: c5 b2 03 mov $03b2,a +0a39: c5 b3 03 mov $03b3,a +0a3c: c5 b4 03 mov $03b4,a +0a3f: c5 b5 03 mov $03b5,a +0a42: c5 b6 03 mov $03b6,a +0a45: c5 b7 03 mov $03b7,a +0a48: c4 5a mov $5a,a +0a4a: c4 68 mov $68,a +0a4c: c4 54 mov $54,a +0a4e: c4 50 mov $50,a +0a50: c5 03 04 mov $0403,a +0a53: c4 42 mov $42,a +0a55: c5 02 04 mov $0402,a +0a58: c5 e0 05 mov $05e0,a +0a5b: c4 5f mov $5f,a +0a5d: c5 bc 03 mov $03bc,a +0a60: c5 bd 03 mov $03bd,a +0a63: c5 be 03 mov $03be,a +0a66: c5 bf 03 mov $03bf,a +0a69: c5 d5 03 mov $03d5,a +0a6c: e8 0a mov a,#$0a +0a6e: c5 06 04 mov $0406,a +0a71: c5 e3 05 mov $05e3,a +0a74: e8 ff mov a,#$ff +0a76: c5 b9 03 mov $03b9,a +0a79: e8 c0 mov a,#$c0 +0a7b: c5 04 04 mov $0404,a +0a7e: e8 f1 mov a,#$f1 +0a80: c5 f1 00 mov $00f1,a +0a83: 6f ret + +0a84: e5 b3 03 mov a,$03b3 +0a87: 3f cf 0e call $0ecf +0a8a: 6f ret + +0a8b: ec b3 03 mov y,$03b3 +0a8e: dd mov a,y +0a8f: 3f a1 0e call $0ea1 +0a92: e5 b3 03 mov a,$03b3 +0a95: c5 bb 03 mov $03bb,a +0a98: 6f ret + +0a99: e8 00 mov a,#$00 +0a9b: c5 b8 03 mov $03b8,a +0a9e: 6f ret + +0a9f: e8 ff mov a,#$ff +0aa1: c5 b8 03 mov $03b8,a +0aa4: 6f ret + +0aa5: e8 ff mov a,#$ff +0aa7: c5 b9 03 mov $03b9,a +0aaa: e5 b3 03 mov a,$03b3 +0aad: c5 04 04 mov $0404,a +0ab0: 6f ret + +0ab1: e8 00 mov a,#$00 +0ab3: c5 b9 03 mov $03b9,a +0ab6: 6f ret + +0ab7: e5 b3 03 mov a,$03b3 +0aba: d0 01 bne $0abd +0abc: bc inc a +0abd: c5 ba 03 mov $03ba,a +0ac0: 6f ret + +0ac1: 8d 00 mov y,#$00 +0ac3: dd mov a,y +0ac4: 3f a1 0e call $0ea1 +0ac7: e5 ba 03 mov a,$03ba +0aca: c4 5a mov $5a,a +0acc: e5 bb 03 mov a,$03bb +0acf: c4 5b mov $5b,a +0ad1: 80 setc +0ad2: a4 59 sbc a,$59 +0ad4: f8 5a mov x,$5a +0ad6: 3f 42 10 call $1042 +0ad9: da 5c movw $5c,ya +0adb: 6f ret + +0adc: e8 03 mov a,#$03 +0ade: c5 d5 03 mov $03d5,a +0ae1: 6f ret + +0ae2: e5 ba 03 mov a,$03ba +0ae5: c4 5a mov $5a,a +0ae7: e8 00 mov a,#$00 +0ae9: c4 5b mov $5b,a +0aeb: 80 setc +0aec: a4 59 sbc a,$59 +0aee: f8 5a mov x,$5a +0af0: 3f 42 10 call $1042 +0af3: da 5c movw $5c,ya +0af5: 6f ret + +0af6: e5 b3 03 mov a,$03b3 +0af9: c5 06 04 mov $0406,a +0afc: cd 00 mov x,#$00 +0afe: 8f 01 47 mov $47,#$01 +0b01: e4 47 mov a,$47 +0b03: 24 1b and a,$1b +0b05: f0 06 beq $0b0d +0b07: e5 e3 05 mov a,$05e3 +0b0a: 3f 18 17 call $1718 +0b0d: 3d inc x +0b0e: 3d inc x +0b0f: 0b 47 asl $47 +0b11: d0 ee bne $0b01 +0b13: 6f ret + +0b14: e5 b3 03 mov a,$03b3 +0b17: c5 e3 05 mov $05e3,a +0b1a: cd 00 mov x,#$00 +0b1c: 8f 01 47 mov $47,#$01 +0b1f: e4 47 mov a,$47 +0b21: 24 6d and a,$6d +0b23: f0 06 beq $0b2b +0b25: e5 e3 05 mov a,$05e3 +0b28: 3f 18 17 call $1718 +0b2b: 3d inc x +0b2c: 3d inc x +0b2d: 0b 47 asl $47 +0b2f: d0 ee bne $0b1f +0b31: 6f ret + +0b32: 6f ret + +0b33: 6f ret + +; handle a note vcmd (80-df) (music) +0b34: ad ca cmp y,#$ca +0b36: 90 05 bcc $0b3d +0b38: 3f fa 0d call $0dfa +0b3b: 8d a4 mov y,#$a4 +0b3d: ad c8 cmp y,#$c8 +0b3f: b0 f2 bcs $0b33 +0b41: e4 1a mov a,$1a +0b43: 24 47 and a,$47 +0b45: d0 ec bne $0b33 +0b47: dd mov a,y +0b48: 28 7f and a,#$7f +0b4a: 60 clrc +0b4b: 84 50 adc a,$50 +0b4d: 60 clrc +0b4e: 95 e1 02 adc a,$02e1+x +0b51: d5 61 03 mov $0361+x,a +0b54: f5 81 03 mov a,$0381+x +0b57: d5 60 03 mov $0360+x,a +0b5a: f5 b1 02 mov a,$02b1+x +0b5d: 5c lsr a +0b5e: e8 00 mov a,#$00 +0b60: 7c ror a +0b61: d5 a0 02 mov $02a0+x,a +0b64: e8 00 mov a,#$00 +0b66: d4 b0 mov $b0+x,a +0b68: d5 00 01 mov $0100+x,a +0b6b: d5 d0 02 mov $02d0+x,a +0b6e: d4 c0 mov $c0+x,a +0b70: 09 47 5e or ($5e),($47) +0b73: e5 d2 03 mov a,$03d2 +0b76: 04 47 or a,$47 +0b78: c5 d2 03 mov $03d2,a +0b7b: f5 80 02 mov a,$0280+x +0b7e: d4 a0 mov $a0+x,a +0b80: f0 1e beq $0ba0 +0b82: f5 81 02 mov a,$0281+x +0b85: d4 a1 mov $a1+x,a +0b87: f5 90 02 mov a,$0290+x +0b8a: d0 0a bne $0b96 +0b8c: f5 61 03 mov a,$0361+x +0b8f: 80 setc +0b90: b5 91 02 sbc a,$0291+x +0b93: d5 61 03 mov $0361+x,a +0b96: f5 91 02 mov a,$0291+x +0b99: 60 clrc +0b9a: 95 61 03 adc a,$0361+x +0b9d: 3f 1f 10 call $101f +0ba0: 3f 37 10 call $1037 +0ba3: 8d 00 mov y,#$00 +0ba5: e4 11 mov a,$11 +0ba7: 80 setc +0ba8: a8 34 sbc a,#$34 +0baa: b0 09 bcs $0bb5 +0bac: e4 11 mov a,$11 +0bae: 80 setc +0baf: a8 13 sbc a,#$13 +0bb1: b0 06 bcs $0bb9 +0bb3: dc dec y +0bb4: 1c asl a +0bb5: 7a 10 addw ya,$10 +0bb7: da 10 movw $10,ya +0bb9: 4d push x +0bba: e4 11 mov a,$11 +0bbc: 1c asl a +0bbd: 8d 00 mov y,#$00 +0bbf: cd 18 mov x,#$18 +0bc1: 9e div ya,x +0bc2: 5d mov x,a +0bc3: f6 87 1e mov a,$1e87+y +0bc6: c4 15 mov $15,a +0bc8: f6 86 1e mov a,$1e86+y +0bcb: c4 14 mov $14,a +0bcd: f6 89 1e mov a,$1e89+y +0bd0: 2d push a +0bd1: f6 88 1e mov a,$1e88+y +0bd4: ee pop y +0bd5: 9a 14 subw ya,$14 +0bd7: eb 10 mov y,$10 +0bd9: cf mul ya +0bda: dd mov a,y +0bdb: 8d 00 mov y,#$00 +0bdd: 7a 14 addw ya,$14 +0bdf: cb 15 mov $15,y +0be1: 1c asl a +0be2: 2b 15 rol $15 +0be4: c4 14 mov $14,a +0be6: 2f 04 bra $0bec +0be8: 4b 15 lsr $15 +0bea: 7c ror a +0beb: 3d inc x +0bec: c8 06 cmp x,#$06 +0bee: d0 f8 bne $0be8 +0bf0: c4 14 mov $14,a +0bf2: ce pop x +0bf3: f5 20 02 mov a,$0220+x +0bf6: eb 15 mov y,$15 +0bf8: cf mul ya +0bf9: da 16 movw $16,ya +0bfb: f5 20 02 mov a,$0220+x +0bfe: eb 14 mov y,$14 +0c00: cf mul ya +0c01: 6d push y +0c02: f5 21 02 mov a,$0221+x +0c05: eb 14 mov y,$14 +0c07: cf mul ya +0c08: 7a 16 addw ya,$16 +0c0a: da 16 movw $16,ya +0c0c: f5 21 02 mov a,$0221+x +0c0f: eb 15 mov y,$15 +0c11: cf mul ya +0c12: fd mov y,a +0c13: ae pop a +0c14: 7a 16 addw ya,$16 +0c16: da 16 movw $16,ya +0c18: 7d mov a,x +0c19: 9f xcn a +0c1a: 5c lsr a +0c1b: 08 02 or a,#$02 +0c1d: fd mov y,a +0c1e: e4 16 mov a,$16 +0c20: 3f 26 0c call $0c26 +0c23: fc inc y +0c24: e4 17 mov a,$17 +0c26: 2d push a +0c27: e4 47 mov a,$47 +0c29: 24 1a and a,$1a +0c2b: ae pop a +0c2c: d0 06 bne $0c34 +0c2e: cc f2 00 mov $00f2,y +0c31: c5 f3 00 mov $00f3,a +0c34: 6f ret + +; read $40/1 into YA with advancing the ptr +0c35: 8d 00 mov y,#$00 +0c37: f7 40 mov a,($40)+y +0c39: 3a 40 incw $40 +0c3b: 2d push a +0c3c: f7 40 mov a,($40)+y +0c3e: 3a 40 incw $40 +0c40: fd mov y,a +0c41: ae pop a +0c42: 6f ret + +; play song in A +0c43: e8 ff mov a,#$ff +0c45: 8d 5c mov y,#$5c +0c47: cc f2 00 mov $00f2,y +0c4a: c5 f3 00 mov $00f3,a +0c4d: 3f ab 1e call $1eab +0c50: 3f 14 0a call $0a14 +0c53: e8 00 mov a,#$00 +0c55: c4 08 mov $08,a +0c57: c4 04 mov $04,a +0c59: 1c asl a +0c5a: f0 0d beq $0c69 +0c5c: 5d mov x,a +0c5d: f5 ff 9f mov a,$9fff+x +0c60: fd mov y,a +0c61: f5 fe 9f mov a,$9ffe+x +0c64: da 40 movw $40,ya +0c66: 8f 02 0c mov $0c,#$02 +0c69: e4 1a mov a,$1a +0c6b: 48 ff eor a,#$ff +0c6d: 0e 46 00 tset1 $0046 +0c70: 6f ret + +; reset song params +0c71: cd 0e mov x,#$0e +0c73: 8f 80 47 mov $47,#$80 +0c76: e8 ff mov a,#$ff +0c78: d5 91 03 mov $0391+x,a +0c7b: e8 0a mov a,#$0a +0c7d: 3f 53 0e call $0e53 +0c80: d5 11 02 mov $0211+x,a +0c83: d5 81 03 mov $0381+x,a +0c86: d5 e1 02 mov $02e1+x,a +0c89: d5 80 02 mov $0280+x,a +0c8c: d4 b1 mov $b1+x,a +0c8e: d4 c1 mov $c1+x,a +0c90: 1d dec x +0c91: 1d dec x +0c92: 4b 47 lsr $47 +0c94: d0 e0 bne $0c76 +0c96: c4 5a mov $5a,a +0c98: c4 68 mov $68,a +0c9a: c4 54 mov $54,a +0c9c: c4 42 mov $42,a +0c9e: c4 5f mov $5f,a +0ca0: 6f ret + +0ca1: eb 08 mov y,$08 +0ca3: e4 00 mov a,$00 +0ca5: c4 08 mov $08,a +0ca7: 68 7d cmp a,#$7d +0ca9: f0 be beq $0c69 +0cab: 68 7e cmp a,#$7e +0cad: f0 08 beq $0cb7 +0caf: 68 7f cmp a,#$7f +0cb1: f0 90 beq $0c43 +0cb3: 7e 00 cmp y,$00 +0cb5: d0 a0 bne $0c57 +0cb7: e4 04 mov a,$04 +0cb9: f0 e5 beq $0ca0 +0cbb: e4 0c mov a,$0c +0cbd: f0 4e beq $0d0d +0cbf: 6e 0c af dbnz $0c,$0c71 +0cc2: 3f 35 0c call $0c35 +0cc5: d0 14 bne $0cdb +0cc7: fd mov y,a +0cc8: f0 8d beq $0c57 +0cca: 8b 42 dec $42 +0ccc: 10 02 bpl $0cd0 +0cce: c4 42 mov $42,a +0cd0: 3f 35 0c call $0c35 +0cd3: f8 42 mov x,$42 +0cd5: f0 eb beq $0cc2 +0cd7: da 40 movw $40,ya +0cd9: 2f e7 bra $0cc2 +0cdb: da 16 movw $16,ya +0cdd: 8d 0f mov y,#$0f +0cdf: f7 16 mov a,($16)+y +0ce1: d6 30 00 mov $0030+y,a +0ce4: dc dec y +0ce5: 10 f8 bpl $0cdf +0ce7: cd 00 mov x,#$00 +0ce9: 8f 01 47 mov $47,#$01 +0cec: f4 31 mov a,$31+x +0cee: f0 0a beq $0cfa +0cf0: f5 11 02 mov a,$0211+x +0cf3: d0 05 bne $0cfa +0cf5: e8 00 mov a,#$00 +0cf7: 3f fa 0d call $0dfa +0cfa: e8 00 mov a,#$00 +0cfc: d5 60 02 mov $0260+x,a +0cff: d4 90 mov $90+x,a +0d01: d4 91 mov $91+x,a +0d03: bc inc a +0d04: d5 50 02 mov $0250+x,a +0d07: 3d inc x +0d08: 3d inc x +0d09: 0b 47 asl $47 +0d0b: d0 df bne $0cec +0d0d: cd 00 mov x,#$00 +0d0f: d8 5e mov $5e,x +0d11: 8f 01 47 mov $47,#$01 +0d14: d8 44 mov $44,x +0d16: f4 31 mov a,$31+x +0d18: f0 71 beq $0d8b +0d1a: f5 50 02 mov a,$0250+x +0d1d: 9c dec a +0d1e: d5 50 02 mov $0250+x,a +0d21: d0 62 bne $0d85 +0d23: 3f f0 0d call $0df0 +0d26: d0 1d bne $0d45 +0d28: f5 60 02 mov a,$0260+x +0d2b: f0 95 beq $0cc2 +0d2d: 3f 42 0f call $0f42 +0d30: f5 60 02 mov a,$0260+x +0d33: 9c dec a +0d34: d5 60 02 mov $0260+x,a +0d37: d0 ea bne $0d23 +0d39: f5 30 02 mov a,$0230+x +0d3c: d4 30 mov $30+x,a +0d3e: f5 31 02 mov a,$0231+x +0d41: d4 31 mov $31+x,a +0d43: 2f de bra $0d23 +0d45: 30 20 bmi $0d67 +0d47: d5 00 02 mov $0200+x,a +0d4a: 3f f0 0d call $0df0 +0d4d: 30 18 bmi $0d67 +0d4f: 2d push a +0d50: 9f xcn a +0d51: 28 07 and a,#$07 +0d53: fd mov y,a +0d54: f6 18 a0 mov a,$a018+y +0d57: d5 01 02 mov $0201+x,a +0d5a: ae pop a +0d5b: 28 0f and a,#$0f +0d5d: fd mov y,a +0d5e: f6 20 a0 mov a,$a020+y +0d61: d5 10 02 mov $0210+x,a +0d64: 3f f0 0d call $0df0 +0d67: 68 e0 cmp a,#$e0 +0d69: 90 05 bcc $0d70 +0d6b: 3f de 0d call $0dde +0d6e: 2f b3 bra $0d23 +0d70: 3f 34 0b call $0b34 +0d73: f5 00 02 mov a,$0200+x +0d76: d5 50 02 mov $0250+x,a +0d79: fd mov y,a +0d7a: f5 01 02 mov a,$0201+x +0d7d: cf mul ya +0d7e: dd mov a,y +0d7f: bc inc a +0d80: d5 51 02 mov $0251+x,a +0d83: 2f 03 bra $0d88 +0d85: 3f 9a 11 call $119a +0d88: 3f ff 0f call $0fff +0d8b: 3d inc x +0d8c: 3d inc x +0d8d: 0b 47 asl $47 +0d8f: d0 83 bne $0d14 +0d91: e4 54 mov a,$54 +0d93: f0 0b beq $0da0 +0d95: ba 56 movw ya,$56 +0d97: 7a 52 addw ya,$52 +0d99: 6e 54 02 dbnz $54,$0d9e +0d9c: ba 54 movw ya,$54 +0d9e: da 52 movw $52,ya +0da0: e4 68 mov a,$68 +0da2: f0 15 beq $0db9 +0da4: ba 64 movw ya,$64 +0da6: 7a 60 addw ya,$60 +0da8: da 60 movw $60,ya +0daa: ba 66 movw ya,$66 +0dac: 7a 62 addw ya,$62 +0dae: 6e 68 06 dbnz $68,$0db7 +0db1: ba 68 movw ya,$68 +0db3: da 60 movw $60,ya +0db5: eb 6a mov y,$6a +0db7: da 62 movw $62,ya +0db9: e4 5a mov a,$5a +0dbb: f0 0e beq $0dcb +0dbd: ba 5c movw ya,$5c +0dbf: 7a 58 addw ya,$58 +0dc1: 6e 5a 02 dbnz $5a,$0dc6 +0dc4: ba 5a movw ya,$5a +0dc6: da 58 movw $58,ya +0dc8: 8f ff 5e mov $5e,#$ff +0dcb: cd 00 mov x,#$00 +0dcd: 8f 01 47 mov $47,#$01 +0dd0: f4 31 mov a,$31+x +0dd2: f0 03 beq $0dd7 +0dd4: 3f bb 10 call $10bb +0dd7: 3d inc x +0dd8: 3d inc x +0dd9: 0b 47 asl $47 +0ddb: d0 f3 bne $0dd0 +0ddd: 6f ret + +; dispatch vcmd in A (e0-ff) +0dde: 1c asl a +0ddf: fd mov y,a +0de0: f6 9f 0f mov a,$0f9f+y +0de3: 2d push a +0de4: f6 9e 0f mov a,$0f9e+y +0de7: 2d push a +0de8: dd mov a,y +0de9: 5c lsr a +0dea: fd mov y,a +0deb: f6 3c 10 mov a,$103c+y +0dee: f0 08 beq $0df8 +0df0: e7 30 mov a,($30+x) +0df2: bb 30 inc $30+x +0df4: d0 02 bne $0df8 +0df6: bb 31 inc $31+x +0df8: fd mov y,a +0df9: 6f ret + +; vcmd e0 - set instrument +0dfa: d5 11 02 mov $0211+x,a +0dfd: fd mov y,a +0dfe: 10 06 bpl $0e06 +0e00: 80 setc +0e01: a8 ca sbc a,#$ca +0e03: 60 clrc +0e04: 84 5f adc a,$5f +0e06: 8d 06 mov y,#$06 +0e08: cf mul ya +0e09: da 14 movw $14,ya +0e0b: 60 clrc +0e0c: 98 00 14 adc $14,#$00 +0e0f: 98 1f 15 adc $15,#$1f +0e12: e4 1a mov a,$1a +0e14: 24 47 and a,$47 +0e16: d0 3a bne $0e52 +0e18: 4d push x +0e19: 7d mov a,x +0e1a: 9f xcn a +0e1b: 5c lsr a +0e1c: 08 04 or a,#$04 +0e1e: 5d mov x,a +0e1f: 8d 00 mov y,#$00 +0e21: f7 14 mov a,($14)+y +0e23: 10 0e bpl $0e33 +0e25: 28 1f and a,#$1f +0e27: 38 20 48 and $48,#$20 +0e2a: 0e 48 00 tset1 $0048 +0e2d: 09 47 49 or ($49),($47) +0e30: dd mov a,y +0e31: 2f 07 bra $0e3a +0e33: e4 47 mov a,$47 +0e35: 4e 49 00 tclr1 $0049 +0e38: f7 14 mov a,($14)+y +0e3a: c9 f2 00 mov $00f2,x +0e3d: c5 f3 00 mov $00f3,a +0e40: 3d inc x +0e41: fc inc y +0e42: ad 04 cmp y,#$04 +0e44: d0 f2 bne $0e38 +0e46: ce pop x +0e47: f7 14 mov a,($14)+y +0e49: d5 21 02 mov $0221+x,a +0e4c: fc inc y +0e4d: f7 14 mov a,($14)+y +0e4f: d5 20 02 mov $0220+x,a +0e52: 6f ret + +; vcmd e1 - pan +0e53: d5 51 03 mov $0351+x,a +0e56: 28 1f and a,#$1f +0e58: d5 31 03 mov $0331+x,a +0e5b: e8 00 mov a,#$00 +0e5d: d5 30 03 mov $0330+x,a +0e60: 6f ret + +; vcmd e2 - pan fade +0e61: d4 91 mov $91+x,a +0e63: 2d push a +0e64: 3f f0 0d call $0df0 +0e67: d5 50 03 mov $0350+x,a +0e6a: 80 setc +0e6b: b5 31 03 sbc a,$0331+x +0e6e: ce pop x +0e6f: 3f 42 10 call $1042 +0e72: d5 40 03 mov $0340+x,a +0e75: dd mov a,y +0e76: d5 41 03 mov $0341+x,a +0e79: 6f ret + +; vcmd e3 - vibrato on +0e7a: d5 b0 02 mov $02b0+x,a +0e7d: 3f f0 0d call $0df0 +0e80: d5 a1 02 mov $02a1+x,a +0e83: 3f f0 0d call $0df0 +; vcmd e4 - vibrato off +0e86: d4 b1 mov $b1+x,a +0e88: d5 c1 02 mov $02c1+x,a +0e8b: e8 00 mov a,#$00 +0e8d: d5 b1 02 mov $02b1+x,a +0e90: 6f ret + +; vcmd f0 - vibrato fade +0e91: d5 b1 02 mov $02b1+x,a +0e94: 2d push a +0e95: 8d 00 mov y,#$00 +0e97: f4 b1 mov a,$b1+x +0e99: ce pop x +0e9a: 9e div ya,x +0e9b: f8 44 mov x,$44 +0e9d: d5 c0 02 mov $02c0+x,a +0ea0: 6f ret + +; vcmd e5 - master volume +0ea1: e8 00 mov a,#$00 +0ea3: da 58 movw $58,ya +0ea5: 6f ret + +; vcmd e6 - master volume fade +0ea6: c4 5a mov $5a,a +0ea8: 3f f0 0d call $0df0 +0eab: c4 5b mov $5b,a +0ead: 80 setc +0eae: a4 59 sbc a,$59 +0eb0: f8 5a mov x,$5a +0eb2: 3f 42 10 call $1042 +0eb5: da 5c movw $5c,ya +0eb7: 6f ret + +; vcmd e7 - tempo +0eb8: e8 00 mov a,#$00 +0eba: da 52 movw $52,ya +0ebc: 6f ret + +; vcmd e8 - tempo fade +0ebd: c4 54 mov $54,a +0ebf: 3f f0 0d call $0df0 +0ec2: c4 55 mov $55,a +0ec4: 80 setc +0ec5: a4 53 sbc a,$53 +0ec7: f8 54 mov x,$54 +0ec9: 3f 42 10 call $1042 +0ecc: da 56 movw $56,ya +0ece: 6f ret + +; vcmd e9 - global transpose +0ecf: c4 50 mov $50,a +0ed1: 6f ret + +; vcmd ea - per-voice transpose +0ed2: d5 e1 02 mov $02e1+x,a +0ed5: 6f ret + +; vcmd eb - tremolo on +0ed6: d5 e0 02 mov $02e0+x,a +0ed9: 3f f0 0d call $0df0 +0edc: d5 d1 02 mov $02d1+x,a +0edf: 3f f0 0d call $0df0 +; vcmd ec - tremolo off +0ee2: d4 c1 mov $c1+x,a +0ee4: 6f ret + +; vcmd f1 - pitch envelope (release) +0ee5: e8 01 mov a,#$01 +0ee7: 2f 02 bra $0eeb +; vcmd f2 - pitch envelope (attack) +0ee9: e8 00 mov a,#$00 +0eeb: d5 90 02 mov $0290+x,a +0eee: dd mov a,y +0eef: d5 81 02 mov $0281+x,a +0ef2: 3f f0 0d call $0df0 +0ef5: d5 80 02 mov $0280+x,a +0ef8: 3f f0 0d call $0df0 +0efb: d5 91 02 mov $0291+x,a +0efe: 6f ret + +; vcmd f3 - pitch envelope off +0eff: d5 80 02 mov $0280+x,a +0f02: 6f ret + +; vcmd ed - volume +0f03: d5 91 03 mov $0391+x,a +0f06: e8 00 mov a,#$00 +0f08: d5 90 03 mov $0390+x,a +0f0b: 6f ret + +; vcmd ee - volume fade +0f0c: d4 90 mov $90+x,a +0f0e: 2d push a +0f0f: 3f f0 0d call $0df0 +0f12: d5 20 03 mov $0320+x,a +0f15: 80 setc +0f16: b5 91 03 sbc a,$0391+x +0f19: ce pop x +0f1a: 3f 42 10 call $1042 +0f1d: d5 10 03 mov $0310+x,a +0f20: dd mov a,y +0f21: d5 11 03 mov $0311+x,a +0f24: 6f ret + +; vcmd f4 - tuning +0f25: d5 81 03 mov $0381+x,a +0f28: 6f ret + +; vcmd ef - call subroutine +0f29: d5 40 02 mov $0240+x,a +0f2c: 3f f0 0d call $0df0 +0f2f: d5 41 02 mov $0241+x,a +0f32: 3f f0 0d call $0df0 +0f35: d5 60 02 mov $0260+x,a +0f38: f4 30 mov a,$30+x +0f3a: d5 30 02 mov $0230+x,a +0f3d: f4 31 mov a,$31+x +0f3f: d5 31 02 mov $0231+x,a +0f42: f5 40 02 mov a,$0240+x +0f45: d4 30 mov $30+x,a +0f47: f5 41 02 mov a,$0241+x +0f4a: d4 31 mov $31+x,a +0f4c: 6f ret + +; vcmd f5 - echo vbits/volume +0f4d: c4 4a mov $4a,a +0f4f: c5 bc 03 mov $03bc,a +0f52: 48 ff eor a,#$ff +0f54: c5 be 03 mov $03be,a +0f57: 3f f0 0d call $0df0 +0f5a: e8 00 mov a,#$00 +0f5c: da 60 movw $60,ya +0f5e: 3f f0 0d call $0df0 +0f61: e8 00 mov a,#$00 +0f63: da 62 movw $62,ya +0f65: b2 48 clr5 $48 +0f67: 6f ret + +; vcmd f8 - echo volume fade +0f68: c4 68 mov $68,a +0f6a: 3f f0 0d call $0df0 +0f6d: c4 69 mov $69,a +0f6f: 80 setc +0f70: a4 61 sbc a,$61 +0f72: f8 68 mov x,$68 +0f74: 3f 42 10 call $1042 +0f77: da 64 movw $64,ya +0f79: 3f f0 0d call $0df0 +0f7c: c4 6a mov $6a,a +0f7e: 80 setc +0f7f: a4 63 sbc a,$63 +0f81: f8 68 mov x,$68 +0f83: 3f 42 10 call $1042 +0f86: da 66 movw $66,ya +0f88: 6f ret + +; vcmd f6 - disable echo +0f89: da 60 movw $60,ya +0f8b: da 62 movw $62,ya +0f8d: a2 48 set5 $48 +0f8f: 6f ret + +; vcmd f7 - set echo params +0f90: 3f b2 0f call $0fb2 +0f93: 3f f0 0d call $0df0 +0f96: c4 4e mov $4e,a +0f98: 3f f0 0d call $0df0 +0f9b: 8d 08 mov y,#$08 +0f9d: cf mul ya +0f9e: 5d mov x,a +0f9f: 8d 0f mov y,#$0f +0fa1: f5 52 1e mov a,$1e52+x +0fa4: 3f 2e 0c call $0c2e +0fa7: 3d inc x +0fa8: dd mov a,y +0fa9: 60 clrc +0faa: 88 10 adc a,#$10 +0fac: fd mov y,a +0fad: 10 f2 bpl $0fa1 +0faf: f8 44 mov x,$44 +0fb1: 6f ret + +0fb2: c4 4d mov $4d,a +0fb4: 8d 7d mov y,#$7d +0fb6: cc f2 00 mov $00f2,y +0fb9: e5 f3 00 mov a,$00f3 +0fbc: 64 4d cmp a,$4d +0fbe: f0 2b beq $0feb +0fc0: 28 0f and a,#$0f +0fc2: 48 ff eor a,#$ff +0fc4: f3 4c 03 bbc7 $4c,$0fca +0fc7: 60 clrc +0fc8: 84 4c adc a,$4c +0fca: c4 4c mov $4c,a +0fcc: 8d 04 mov y,#$04 +0fce: f6 71 1e mov a,$1e71+y +0fd1: c5 f2 00 mov $00f2,a +0fd4: e8 00 mov a,#$00 +0fd6: c5 f3 00 mov $00f3,a +0fd9: fe f3 dbnz y,$0fce +0fdb: e4 48 mov a,$48 +0fdd: 08 20 or a,#$20 +0fdf: 8d 6c mov y,#$6c +0fe1: 3f 2e 0c call $0c2e +0fe4: e4 4d mov a,$4d +0fe6: 8d 7d mov y,#$7d +0fe8: 3f 2e 0c call $0c2e +0feb: 1c asl a +0fec: 1c asl a +0fed: 1c asl a +0fee: 48 ff eor a,#$ff +0ff0: 80 setc +0ff1: 88 ff adc a,#$ff +0ff3: 8d 6d mov y,#$6d +0ff5: 5f 2e 0c jmp $0c2e + +; vcmd fa - set perc patch base +0ff8: c4 5f mov $5f,a +0ffa: 6f ret + +; vcmd fe - skip 2 bytes +0ffb: 3f f2 0d call $0df2 +0ffe: 6f ret + +0fff: f4 a0 mov a,$a0+x +1001: d0 33 bne $1036 +1003: e7 30 mov a,($30+x) +1005: 68 f9 cmp a,#$f9 +1007: d0 2d bne $1036 +1009: 3f f2 0d call $0df2 +100c: 3f f0 0d call $0df0 +; vcmd f9 - pitch slide +100f: d4 a1 mov $a1+x,a +1011: 3f f0 0d call $0df0 +1014: d4 a0 mov $a0+x,a +1016: 3f f0 0d call $0df0 +1019: 60 clrc +101a: 84 50 adc a,$50 +101c: 95 e1 02 adc a,$02e1+x +101f: 28 7f and a,#$7f +1021: d5 80 03 mov $0380+x,a +1024: 80 setc +1025: b5 61 03 sbc a,$0361+x +1028: fb a0 mov y,$a0+x +102a: 6d push y +102b: ce pop x +102c: 3f 42 10 call $1042 +102f: d5 70 03 mov $0370+x,a +1032: dd mov a,y +1033: d5 71 03 mov $0371+x,a +1036: 6f ret + +1037: f5 61 03 mov a,$0361+x +103a: c4 11 mov $11,a +103c: f5 60 03 mov a,$0360+x +103f: c4 10 mov $10,a +1041: 6f ret + +1042: ed notc +1043: 6b 12 ror $12 +1045: 10 03 bpl $104a +1047: 48 ff eor a,#$ff +1049: bc inc a +104a: 8d 00 mov y,#$00 +104c: 9e div ya,x +104d: 2d push a +104e: e8 00 mov a,#$00 +1050: 9e div ya,x +1051: ee pop y +1052: f8 44 mov x,$44 +1054: f3 12 06 bbc7 $12,$105d +1057: da 14 movw $14,ya +1059: ba 0e movw ya,$0e +105b: 9a 14 subw ya,$14 +105d: 6f ret + +; vcmd dispatch table (music) +105e: dw $0dfa ; e0 - set instrument +1060: dw $0e53 ; e1 - pan +1062: dw $0e61 ; e2 - pan fade +1064: dw $0e7a ; e3 - vibrato on +1066: dw $0e86 ; e4 - vibrato off +1068: dw $0ea1 ; e5 - master volume +106a: dw $0ea6 ; e6 - master volume fade +106c: dw $0eb8 ; e7 - tempo +106e: dw $0ebd ; e8 - tempo fade +1070: dw $0ecf ; e9 - global transpose +1072: dw $0ed2 ; ea - per-voice transpose +1074: dw $0ed6 ; eb - tremolo on +1076: dw $0ee2 ; ec - tremolo off +1078: dw $0f03 ; ed - volume +107a: dw $0f0c ; ee - volume fade +107c: dw $0f29 ; ef - call subroutine +107e: dw $0e91 ; f0 - vibrato fade +1080: dw $0ee5 ; f1 - pitch envelope (release) +1082: dw $0ee9 ; f2 - pitch envelope (attack) +1084: dw $0eff ; f3 - pitch envelope off +1086: dw $0f25 ; f4 - tuning +1088: dw $0f4d ; f5 - echo vbits/volume +108a: dw $0f89 ; f6 - disable echo +108c: dw $0f90 ; f7 - set echo params +108e: dw $0f68 ; f8 - echo volume fade +1090: dw $100f ; f9 - pitch slide +1092: dw $0ff8 ; fa - set perc patch base +1094: dw $1354 ; fb - echo on +1096: dw $1368 ; fc - echo off +1098: dw $133c ; fd - set ASDR +109a: dw $0ffb ; fe - skip 2 bytes + +; vcmd lengths (music) +109c: db $01,$01,$02,$03,$00,$01,$02,$01 ; e0-e7 +10a4: db $02,$01,$01,$03,$00,$01,$02,$03 ; e8-ef +10ac: db $01,$03,$03,$00,$01,$03,$00,$03 ; f0-f7 +10b4: db $03,$03,$01,$00,$00,$02,$02 ; f8-fe + +10bb: f4 90 mov a,$90+x +10bd: f0 24 beq $10e3 +10bf: 09 47 5e or ($5e),($47) +10c2: 9b 90 dec $90+x +10c4: d0 0a bne $10d0 +10c6: e8 00 mov a,#$00 +10c8: d5 90 03 mov $0390+x,a +10cb: f5 20 03 mov a,$0320+x +10ce: 2f 10 bra $10e0 +10d0: 60 clrc +10d1: f5 90 03 mov a,$0390+x +10d4: 95 10 03 adc a,$0310+x +10d7: d5 90 03 mov $0390+x,a +10da: f5 91 03 mov a,$0391+x +10dd: 95 11 03 adc a,$0311+x +10e0: d5 91 03 mov $0391+x,a +10e3: fb c1 mov y,$c1+x +10e5: f0 23 beq $110a +10e7: f5 e0 02 mov a,$02e0+x +10ea: de c0 1b cbne $c0+x,$1108 +10ed: 09 47 5e or ($5e),($47) +10f0: f5 d0 02 mov a,$02d0+x +10f3: 10 07 bpl $10fc +10f5: fc inc y +10f6: d0 04 bne $10fc +10f8: e8 80 mov a,#$80 +10fa: 2f 04 bra $1100 +10fc: 60 clrc +10fd: 95 d1 02 adc a,$02d1+x +1100: d5 d0 02 mov $02d0+x,a +1103: 3f 1f 13 call $131f +1106: 2f 07 bra $110f +1108: bb c0 inc $c0+x +110a: e8 ff mov a,#$ff +110c: 3f 2a 13 call $132a +110f: f4 91 mov a,$91+x +1111: f0 24 beq $1137 +1113: 09 47 5e or ($5e),($47) +1116: 9b 91 dec $91+x +1118: d0 0a bne $1124 +111a: e8 00 mov a,#$00 +111c: d5 30 03 mov $0330+x,a +111f: f5 50 03 mov a,$0350+x +1122: 2f 10 bra $1134 +1124: 60 clrc +1125: f5 30 03 mov a,$0330+x +1128: 95 40 03 adc a,$0340+x +112b: d5 30 03 mov $0330+x,a +112e: f5 31 03 mov a,$0331+x +1131: 95 41 03 adc a,$0341+x +1134: d5 31 03 mov $0331+x,a +1137: e4 47 mov a,$47 +1139: 24 5e and a,$5e +113b: f0 5c beq $1199 +113d: f5 31 03 mov a,$0331+x +1140: fd mov y,a +1141: f5 30 03 mov a,$0330+x +1144: da 10 movw $10,ya +1146: 7d mov a,x +1147: 9f xcn a +1148: 5c lsr a +1149: c4 12 mov $12,a +114b: eb 11 mov y,$11 +114d: e5 b8 03 mov a,$03b8 +1150: f0 11 beq $1163 +1152: e8 51 mov a,#$51 +1154: 80 setc +1155: a8 51 sbc a,#$51 +1157: eb 10 mov y,$10 +1159: cf mul ya +115a: dd mov a,y +115b: eb 11 mov y,$11 +115d: 60 clrc +115e: 88 51 adc a,#$51 +1160: fd mov y,a +1161: 2f 12 bra $1175 +1163: f6 3e 1e mov a,$1e3e+y +1166: 80 setc +1167: b6 3d 1e sbc a,$1e3d+y +116a: eb 10 mov y,$10 +116c: cf mul ya +116d: dd mov a,y +116e: eb 11 mov y,$11 +1170: 60 clrc +1171: 96 3d 1e adc a,$1e3d+y +1174: fd mov y,a +1175: f5 21 03 mov a,$0321+x +1178: cf mul ya +1179: f5 51 03 mov a,$0351+x +117c: 1c asl a +117d: 13 12 01 bbc0 $12,$1181 +1180: 1c asl a +1181: dd mov a,y +1182: 90 03 bcc $1187 +1184: 48 ff eor a,#$ff +1186: bc inc a +1187: eb 12 mov y,$12 +1189: 3f 26 0c call $0c26 +118c: 8d 14 mov y,#$14 +118e: e8 00 mov a,#$00 +1190: 9a 10 subw ya,$10 +1192: da 10 movw $10,ya +1194: ab 12 inc $12 +1196: 33 12 b2 bbc1 $12,$114b +1199: 6f ret + +119a: f5 51 02 mov a,$0251+x +119d: f0 71 beq $1210 +119f: 9c dec a +11a0: d5 51 02 mov $0251+x,a +11a3: f0 07 beq $11ac +11a5: e8 02 mov a,#$02 +11a7: 75 50 02 cmp a,$0250+x +11aa: d0 64 bne $1210 +11ac: f5 60 02 mov a,$0260+x +11af: c4 17 mov $17,a +11b1: f4 30 mov a,$30+x +11b3: fb 31 mov y,$31+x +11b5: da 14 movw $14,ya +11b7: 8d 00 mov y,#$00 +11b9: f7 14 mov a,($14)+y +11bb: f0 1e beq $11db +11bd: 30 07 bmi $11c6 +11bf: fc inc y +11c0: 30 40 bmi $1202 +11c2: f7 14 mov a,($14)+y +11c4: 10 f9 bpl $11bf +11c6: 68 c8 cmp a,#$c8 +11c8: f0 46 beq $1210 +11ca: 68 ef cmp a,#$ef +11cc: f0 29 beq $11f7 +11ce: 68 e0 cmp a,#$e0 +11d0: 90 30 bcc $1202 +11d2: 6d push y +11d3: fd mov y,a +11d4: ae pop a +11d5: 96 bc 0f adc a,$0fbc+y +11d8: fd mov y,a +11d9: 2f de bra $11b9 +11db: e4 17 mov a,$17 +11dd: f0 23 beq $1202 +11df: 8b 17 dec $17 +11e1: d0 0a bne $11ed +11e3: f5 31 02 mov a,$0231+x +11e6: 2d push a +11e7: f5 30 02 mov a,$0230+x +11ea: ee pop y +11eb: 2f c8 bra $11b5 +11ed: f5 41 02 mov a,$0241+x +11f0: 2d push a +11f1: f5 40 02 mov a,$0240+x +11f4: ee pop y +11f5: 2f be bra $11b5 +11f7: fc inc y +11f8: f7 14 mov a,($14)+y +11fa: 2d push a +11fb: fc inc y +11fc: f7 14 mov a,($14)+y +11fe: fd mov y,a +11ff: ae pop a +1200: 2f b3 bra $11b5 +1202: e4 47 mov a,$47 +1204: 24 1a and a,$1a +1206: d0 08 bne $1210 +1208: e4 47 mov a,$47 +120a: 05 d3 03 or a,$03d3 +120d: c5 d3 03 mov $03d3,a +1210: f2 13 clr7 $13 +1212: f4 a0 mov a,$a0+x +1214: f0 2c beq $1242 +1216: f4 a1 mov a,$a1+x +1218: f0 04 beq $121e +121a: 9b a1 dec $a1+x +121c: 2f 24 bra $1242 +121e: e2 13 set7 $13 +1220: 9b a0 dec $a0+x +1222: d0 0b bne $122f +1224: f5 81 03 mov a,$0381+x +1227: d5 60 03 mov $0360+x,a +122a: f5 80 03 mov a,$0380+x +122d: 2f 10 bra $123f +122f: 60 clrc +1230: f5 60 03 mov a,$0360+x +1233: 95 70 03 adc a,$0370+x +1236: d5 60 03 mov $0360+x,a +1239: f5 61 03 mov a,$0361+x +123c: 95 71 03 adc a,$0371+x +123f: d5 61 03 mov $0361+x,a +1242: 3f 37 10 call $1037 +1245: f4 b1 mov a,$b1+x +1247: f0 4c beq $1295 +1249: f5 b0 02 mov a,$02b0+x +124c: de b0 44 cbne $b0+x,$1293 +124f: f5 00 01 mov a,$0100+x +1252: 75 b1 02 cmp a,$02b1+x +1255: d0 05 bne $125c +1257: f5 c1 02 mov a,$02c1+x +125a: 2f 0d bra $1269 +125c: 40 setp +125d: bb 00 inc $00+x +125f: 20 clrp +1260: fd mov y,a +1261: f0 02 beq $1265 +1263: f4 b1 mov a,$b1+x +1265: 60 clrc +1266: 95 c0 02 adc a,$02c0+x +1269: d4 b1 mov $b1+x,a +126b: f5 a0 02 mov a,$02a0+x +126e: 60 clrc +126f: 95 a1 02 adc a,$02a1+x +1272: d5 a0 02 mov $02a0+x,a +1275: c4 12 mov $12,a +1277: 1c asl a +1278: 1c asl a +1279: 90 02 bcc $127d +127b: 48 ff eor a,#$ff +127d: fd mov y,a +127e: f4 b1 mov a,$b1+x +1280: 68 f1 cmp a,#$f1 +1282: 90 05 bcc $1289 +1284: 28 0f and a,#$0f +1286: cf mul ya +1287: 2f 04 bra $128d +1289: cf mul ya +128a: dd mov a,y +128b: 8d 00 mov y,#$00 +128d: 3f 0a 13 call $130a +1290: 5f a3 0b jmp $0ba3 + +1293: bb b0 inc $b0+x +1295: e3 13 f8 bbs7 $13,$1290 +1298: 6f ret + +1299: f2 13 clr7 $13 +129b: f4 c1 mov a,$c1+x +129d: f0 09 beq $12a8 +129f: f5 e0 02 mov a,$02e0+x +12a2: de c0 03 cbne $c0+x,$12a8 +12a5: 3f 12 13 call $1312 +12a8: f5 31 03 mov a,$0331+x +12ab: fd mov y,a +12ac: f5 30 03 mov a,$0330+x +12af: da 10 movw $10,ya +12b1: f4 91 mov a,$91+x +12b3: f0 0a beq $12bf +12b5: f5 41 03 mov a,$0341+x +12b8: fd mov y,a +12b9: f5 40 03 mov a,$0340+x +12bc: 3f f4 12 call $12f4 +12bf: f3 13 03 bbc7 $13,$12c5 +12c2: 3f 46 11 call $1146 +12c5: f2 13 clr7 $13 +12c7: 3f 37 10 call $1037 +12ca: f4 a0 mov a,$a0+x +12cc: f0 0e beq $12dc +12ce: f4 a1 mov a,$a1+x +12d0: d0 0a bne $12dc +12d2: f5 71 03 mov a,$0371+x +12d5: fd mov y,a +12d6: f5 70 03 mov a,$0370+x +12d9: 3f f4 12 call $12f4 +12dc: f4 b1 mov a,$b1+x +12de: f0 b5 beq $1295 +12e0: f5 b0 02 mov a,$02b0+x +12e3: de b0 af cbne $b0+x,$1295 +12e6: eb 51 mov y,$51 +12e8: f5 a1 02 mov a,$02a1+x +12eb: cf mul ya +12ec: dd mov a,y +12ed: 60 clrc +12ee: 95 a0 02 adc a,$02a0+x +12f1: 5f 75 12 jmp $1275 + +12f4: e2 13 set7 $13 +12f6: cb 12 mov $12,y +12f8: 3f 54 10 call $1054 +12fb: 6d push y +12fc: eb 51 mov y,$51 +12fe: cf mul ya +12ff: cb 14 mov $14,y +1301: 8f 00 15 mov $15,#$00 +1304: eb 51 mov y,$51 +1306: ae pop a +1307: cf mul ya +1308: 7a 14 addw ya,$14 +130a: 3f 54 10 call $1054 +130d: 7a 10 addw ya,$10 +130f: da 10 movw $10,ya +1311: 6f ret + +1312: e2 13 set7 $13 +1314: eb 51 mov y,$51 +1316: f5 d1 02 mov a,$02d1+x +1319: cf mul ya +131a: dd mov a,y +131b: 60 clrc +131c: 95 d0 02 adc a,$02d0+x +131f: 1c asl a +1320: 90 02 bcc $1324 +1322: 48 ff eor a,#$ff +1324: fb c1 mov y,$c1+x +1326: cf mul ya +1327: dd mov a,y +1328: 48 ff eor a,#$ff +132a: eb 59 mov y,$59 +132c: cf mul ya +132d: f5 10 02 mov a,$0210+x +1330: cf mul ya +1331: f5 91 03 mov a,$0391+x +1334: cf mul ya +1335: dd mov a,y +1336: cf mul ya +1337: dd mov a,y +1338: d5 21 03 mov $0321+x,a +133b: 6f ret + +; vcmd fd - set ASDR +133c: 7d mov a,x +133d: 9f xcn a +133e: 5c lsr a +133f: 08 05 or a,#$05 +1341: c4 14 mov $14,a +1343: dd mov a,y +1344: eb 14 mov y,$14 +1346: 3f 26 0c call $0c26 +1349: 3f f0 0d call $0df0 +134c: ab 14 inc $14 +134e: eb 14 mov y,$14 +1350: 3f 26 0c call $0c26 +1353: 6f ret + +; vcmd fb - echo on +1354: e5 bc 03 mov a,$03bc +1357: 04 47 or a,$47 +1359: c5 bc 03 mov $03bc,a +135c: e4 47 mov a,$47 +135e: 48 ff eor a,#$ff +1360: 25 be 03 and a,$03be +1363: c5 be 03 mov $03be,a +1366: 2f 12 bra $137a +; vcmd fc - echo off +1368: e5 be 03 mov a,$03be +136b: 04 47 or a,$47 +136d: c5 be 03 mov $03be,a +1370: e4 47 mov a,$47 +1372: 48 ff eor a,#$ff +1374: 25 bc 03 and a,$03bc +1377: c5 bc 03 mov $03bc,a +137a: e5 bc 03 mov a,$03bc +137d: c5 d0 03 mov $03d0,a +1380: e5 be 03 mov a,$03be +1383: 48 ff eor a,#$ff +1385: 25 d0 03 and a,$03d0 +1388: 05 bd 03 or a,$03bd +138b: c5 d0 03 mov $03d0,a +138e: e5 bf 03 mov a,$03bf +1391: 48 ff eor a,#$ff +1393: 25 d0 03 and a,$03d0 +1396: c4 4a mov $4a,a +1398: 6f ret + +; handle a note vcmd (80-df) (sfx) +1399: ad ca cmp y,#$ca +139b: 90 05 bcc $13a2 +139d: 3f c4 16 call $16c4 +13a0: 8d a4 mov y,#$a4 +13a2: ad c8 cmp y,#$c8 +13a4: b0 f2 bcs $1398 +13a6: dd mov a,y +13a7: 28 7f and a,#$7f +13a9: 60 clrc +13aa: 85 03 04 adc a,$0403 +13ad: 60 clrc +13ae: 95 91 05 adc a,$0591+x +13b1: d5 f1 04 mov $04f1+x,a +13b4: f5 11 05 mov a,$0511+x +13b7: d5 f0 04 mov $04f0+x,a +13ba: f5 51 05 mov a,$0551+x +13bd: 5c lsr a +13be: e8 00 mov a,#$00 +13c0: 7c ror a +13c1: d5 40 05 mov $0540+x,a +13c4: e8 00 mov a,#$00 +13c6: d5 d0 00 mov $00d0+x,a +13c9: d5 60 05 mov $0560+x,a +13cc: d5 80 05 mov $0580+x,a +13cf: d4 e0 mov $e0+x,a +13d1: 09 47 5e or ($5e),($47) +13d4: e5 d2 03 mov a,$03d2 +13d7: 04 47 or a,$47 +13d9: c5 d2 03 mov $03d2,a +13dc: f5 20 05 mov a,$0520+x +13df: d4 80 mov $80+x,a +13e1: f0 1e beq $1401 +13e3: f5 21 05 mov a,$0521+x +13e6: d4 81 mov $81+x,a +13e8: f5 30 05 mov a,$0530+x +13eb: d0 0a bne $13f7 +13ed: f5 f1 04 mov a,$04f1+x +13f0: 80 setc +13f1: b5 31 05 sbc a,$0531+x +13f4: d5 f1 04 mov $04f1+x,a +13f7: f5 31 05 mov a,$0531+x +13fa: 60 clrc +13fb: 95 f1 04 adc a,$04f1+x +13fe: 3f cd 18 call $18cd +1401: 3f e5 18 call $18e5 +1404: 8d 00 mov y,#$00 +1406: e4 11 mov a,$11 +1408: 80 setc +1409: a8 34 sbc a,#$34 +140b: b0 09 bcs $1416 +140d: e4 11 mov a,$11 +140f: 80 setc +1410: a8 13 sbc a,#$13 +1412: b0 06 bcs $141a +1414: dc dec y +1415: 1c asl a +1416: 7a 10 addw ya,$10 +1418: da 10 movw $10,ya +141a: 4d push x +141b: e4 11 mov a,$11 +141d: 1c asl a +141e: 8d 00 mov y,#$00 +1420: cd 18 mov x,#$18 +1422: 9e div ya,x +1423: 5d mov x,a +1424: f6 87 1e mov a,$1e87+y +1427: c4 15 mov $15,a +1429: f6 86 1e mov a,$1e86+y +142c: c4 14 mov $14,a +142e: f6 89 1e mov a,$1e89+y +1431: 2d push a +1432: f6 88 1e mov a,$1e88+y +1435: ee pop y +1436: 9a 14 subw ya,$14 +1438: eb 10 mov y,$10 +143a: cf mul ya +143b: dd mov a,y +143c: 8d 00 mov y,#$00 +143e: 7a 14 addw ya,$14 +1440: cb 15 mov $15,y +1442: 1c asl a +1443: 2b 15 rol $15 +1445: c4 14 mov $14,a +1447: 2f 04 bra $144d +1449: 4b 15 lsr $15 +144b: 7c ror a +144c: 3d inc x +144d: c8 06 cmp x,#$06 +144f: d0 f8 bne $1449 +1451: c4 14 mov $14,a +1453: ce pop x +1454: f5 50 04 mov a,$0450+x +1457: eb 15 mov y,$15 +1459: cf mul ya +145a: da 16 movw $16,ya +145c: f5 50 04 mov a,$0450+x +145f: eb 14 mov y,$14 +1461: cf mul ya +1462: 6d push y +1463: f5 51 04 mov a,$0451+x +1466: eb 14 mov y,$14 +1468: cf mul ya +1469: 7a 16 addw ya,$16 +146b: da 16 movw $16,ya +146d: f5 51 04 mov a,$0451+x +1470: eb 15 mov y,$15 +1472: cf mul ya +1473: fd mov y,a +1474: ae pop a +1475: 7a 16 addw ya,$16 +1477: da 16 movw $16,ya +1479: 7d mov a,x +147a: 9f xcn a +147b: 5c lsr a +147c: 08 02 or a,#$02 +147e: fd mov y,a +147f: e4 16 mov a,$16 +1481: 3f 87 14 call $1487 +1484: fc inc y +1485: e4 17 mov a,$17 +1487: cc f2 00 mov $00f2,y +148a: c5 f3 00 mov $00f3,a +148d: 6f ret + +; read $1c/1 into YA with advancing the ptr +148e: 8d 00 mov y,#$00 +1490: f7 1c mov a,($1c)+y +1492: 3a 1c incw $1c +1494: 2d push a +1495: f7 1c mov a,($1c)+y +1497: 3a 1c incw $1c +1499: fd mov y,a +149a: ae pop a +149b: 6f ret + +; play sound effect in A +149c: c4 05 mov $05,a +149e: 1c asl a +149f: 5d mov x,a +14a0: f5 ff bf mov a,$bfff+x +14a3: fd mov y,a +14a4: f5 fe bf mov a,$bffe+x +14a7: da 1c movw $1c,ya +14a9: 8f 02 1e mov $1e,#$02 +14ac: 2f 02 bra $14b0 +14ae: c4 05 mov $05,a +14b0: e4 1b mov a,$1b +14b2: 0e 46 00 tset1 $0046 +14b5: e8 a5 mov a,#$a5 +14b7: c5 07 04 mov $0407,a +14ba: 6f ret + +14bb: e4 1b mov a,$1b +14bd: 0e 46 00 tset1 $0046 +14c0: e8 00 mov a,#$00 +14c2: c5 07 04 mov $0407,a +14c5: cd 00 mov x,#$00 +14c7: 8f 01 47 mov $47,#$01 +14ca: e4 47 mov a,$47 +14cc: 24 1b and a,$1b +14ce: f0 14 beq $14e4 +14d0: e4 47 mov a,$47 +14d2: 48 ff eor a,#$ff +14d4: 24 1a and a,$1a +14d6: c4 1a mov $1a,a +14d8: f5 11 02 mov a,$0211+x +14db: 3f fd 0d call $0dfd +14de: e8 00 mov a,#$00 +14e0: d4 20 mov $20+x,a +14e2: d4 21 mov $21+x,a +14e4: 3d inc x +14e5: 3d inc x +14e6: 0b 47 asl $47 +14e8: d0 e0 bne $14ca +14ea: e8 00 mov a,#$00 +14ec: c4 1b mov $1b,a +14ee: 6f ret + +14ef: 8f 00 1b mov $1b,#$00 +14f2: cd 00 mov x,#$00 +14f4: 8f 01 47 mov $47,#$01 +14f7: e4 47 mov a,$47 +14f9: 24 6d and a,$6d +14fb: d0 15 bne $1512 +14fd: f5 d1 05 mov a,$05d1+x +1500: d4 21 mov $21+x,a +1502: f5 d0 05 mov a,$05d0+x +1505: d4 20 mov $20+x,a +1507: f5 d1 05 mov a,$05d1+x +150a: f0 06 beq $1512 +150c: 09 47 1a or ($1a),($47) +150f: 09 47 1b or ($1b),($47) +1512: 3d inc x +1513: 3d inc x +1514: 0b 47 asl $47 +1516: d0 df bne $14f7 +1518: e4 1b mov a,$1b +151a: 0e 46 00 tset1 $0046 +151d: e8 00 mov a,#$00 +151f: c5 07 04 mov $0407,a +1522: 6f ret + +1523: 3f 8e 14 call $148e +1526: 1a 1c decw $1c +1528: 1a 1c decw $1c +152a: da 16 movw $16,ya +152c: 8d 0f mov y,#$0f +152e: f7 16 mov a,($16)+y +1530: d6 d0 05 mov $05d0+y,a +1533: dc dec y +1534: 10 f8 bpl $152e +1536: 3f ef 14 call $14ef +1539: cd 0e mov x,#$0e +153b: 8f 80 47 mov $47,#$80 +153e: e4 47 mov a,$47 +1540: 24 6d and a,$6d +1542: d0 1f bne $1563 +1544: e8 ff mov a,#$ff +1546: d5 91 04 mov $0491+x,a +1549: e5 06 04 mov a,$0406 +154c: 3f 18 17 call $1718 +154f: e8 00 mov a,#$00 +1551: d5 c1 05 mov $05c1+x,a +1554: d5 11 05 mov $0511+x,a +1557: d5 20 05 mov $0520+x,a +155a: d4 d1 mov $d1+x,a +155c: d4 e1 mov $e1+x,a +155e: c4 70 mov $70,a +1560: d5 91 05 mov $0591+x,a +1563: 1d dec x +1564: 1d dec x +1565: 4b 47 lsr $47 +1567: d0 d5 bne $153e +1569: c5 03 04 mov $0403,a +156c: c5 e0 05 mov $05e0,a +156f: c5 10 04 mov $0410,a +1572: 6f ret + +1573: e5 07 04 mov a,$0407 +1576: f0 03 beq $157b +1578: 5f c0 14 jmp $14c0 + +157b: eb 09 mov y,$09 +157d: e4 01 mov a,$01 +157f: c4 09 mov $09,a +1581: 7e 01 cmp y,$01 +1583: f0 03 beq $1588 +1585: 5f 9c 14 jmp $149c + +1588: e4 05 mov a,$05 +158a: f0 e6 beq $1572 +158c: e4 1e mov a,$1e +158e: d0 03 bne $1593 +1590: 5f ef 15 jmp $15ef + +1593: 6e 1e 8d dbnz $1e,$1523 +1596: 3f 8e 14 call $148e +1599: d0 1a bne $15b5 +159b: fd mov y,a +159c: d0 03 bne $15a1 +159e: 5f ae 14 jmp $14ae + +15a1: 8c 02 04 dec $0402 +15a4: 10 03 bpl $15a9 +15a6: c5 02 04 mov $0402,a +15a9: 3f 8e 14 call $148e +15ac: e9 02 04 mov x,$0402 +15af: f0 e5 beq $1596 +15b1: da 1c movw $1c,ya +15b3: 2f e1 bra $1596 +15b5: da 16 movw $16,ya +15b7: 8d 0f mov y,#$0f +15b9: f7 16 mov a,($16)+y +15bb: d6 d0 05 mov $05d0+y,a +15be: dc dec y +15bf: 10 f8 bpl $15b9 +15c1: 3f bb 14 call $14bb +15c4: 3f ef 14 call $14ef +15c7: cd 00 mov x,#$00 +15c9: 8f 01 47 mov $47,#$01 +15cc: e4 47 mov a,$47 +15ce: 24 6d and a,$6d +15d0: d0 17 bne $15e9 +15d2: f4 21 mov a,$21+x +15d4: f0 06 beq $15dc +15d6: f5 c1 05 mov a,$05c1+x +15d9: 3f c4 16 call $16c4 +15dc: e8 00 mov a,#$00 +15de: d5 80 04 mov $0480+x,a +15e1: d4 70 mov $70+x,a +15e3: d4 71 mov $71+x,a +15e5: bc inc a +15e6: d5 20 04 mov $0420+x,a +15e9: 3d inc x +15ea: 3d inc x +15eb: 0b 47 asl $47 +15ed: d0 dd bne $15cc +15ef: cd 00 mov x,#$00 +15f1: e4 1b mov a,$1b +15f3: 24 5e and a,$5e +15f5: c4 5e mov $5e,a +15f7: 8f 01 47 mov $47,#$01 +15fa: c9 01 04 mov $0401,x +15fd: d8 44 mov $44,x +15ff: e4 47 mov a,$47 +1601: 24 1b and a,$1b +1603: d0 03 bne $1608 +1605: 5f 83 16 jmp $1683 + +1608: f4 21 mov a,$21+x +160a: f0 77 beq $1683 +160c: ac 01 04 inc $0401 +160f: f5 20 04 mov a,$0420+x +1612: 9c dec a +1613: d5 20 04 mov $0420+x,a +1616: d0 65 bne $167d +1618: 3f ba 16 call $16ba +161b: d0 20 bne $163d +161d: f5 80 04 mov a,$0480+x +1620: d0 03 bne $1625 +1622: 5f 96 15 jmp $1596 + +1625: 3f ee 17 call $17ee +1628: f5 80 04 mov a,$0480+x +162b: 9c dec a +162c: d5 80 04 mov $0480+x,a +162f: d0 e7 bne $1618 +1631: f5 60 04 mov a,$0460+x +1634: d4 20 mov $20+x,a +1636: f5 61 04 mov a,$0461+x +1639: d4 21 mov $21+x,a +163b: 2f db bra $1618 +163d: 30 20 bmi $165f +163f: d5 30 04 mov $0430+x,a +1642: 3f ba 16 call $16ba +1645: 30 18 bmi $165f +1647: 2d push a +1648: 9f xcn a +1649: 28 07 and a,#$07 +164b: fd mov y,a +164c: f6 18 a0 mov a,$a018+y +164f: d5 31 04 mov $0431+x,a +1652: ae pop a +1653: 28 0f and a,#$0f +1655: fd mov y,a +1656: f6 20 a0 mov a,$a020+y +1659: d5 c0 05 mov $05c0+x,a +165c: 3f ba 16 call $16ba +165f: 68 e0 cmp a,#$e0 +1661: 90 05 bcc $1668 +1663: 3f a8 16 call $16a8 +1666: 2f b0 bra $1618 +1668: 3f 99 13 call $1399 +166b: f5 30 04 mov a,$0430+x +166e: d5 20 04 mov $0420+x,a +1671: fd mov y,a +1672: f5 31 04 mov a,$0431+x +1675: cf mul ya +1676: dd mov a,y +1677: bc inc a +1678: d5 21 04 mov $0421+x,a +167b: 2f 03 bra $1680 +167d: 3f 48 1a call $1a48 +1680: 3f ac 18 call $18ac +1683: 3d inc x +1684: 3d inc x +1685: 0b 47 asl $47 +1687: f0 03 beq $168c +1689: 5f fd 15 jmp $15fd + +168c: e5 01 04 mov a,$0401 +168f: d0 03 bne $1694 +1691: 5f ae 14 jmp $14ae + +1694: 6f ret + +1695: cd 00 mov x,#$00 +1697: 8f 01 47 mov $47,#$01 +169a: f4 21 mov a,$21+x +169c: f0 03 beq $16a1 +169e: 3f 69 19 call $1969 +16a1: 3d inc x +16a2: 3d inc x +16a3: 0b 47 asl $47 +16a5: d0 f3 bne $169a +16a7: 6f ret + +16a8: 1c asl a +16a9: fd mov y,a +16aa: f6 4d 18 mov a,$184d+y +16ad: 2d push a +16ae: f6 4c 18 mov a,$184c+y +16b1: 2d push a +16b2: dd mov a,y +16b3: 5c lsr a +16b4: fd mov y,a +16b5: f6 ea 18 mov a,$18ea+y +16b8: f0 08 beq $16c2 +16ba: e7 20 mov a,($20+x) +16bc: bb 20 inc $20+x +16be: d0 02 bne $16c2 +16c0: bb 21 inc $21+x +16c2: fd mov y,a +16c3: 6f ret + +; vcmd e0 - set instrument +16c4: d5 c1 05 mov $05c1+x,a +16c7: fd mov y,a +16c8: 10 07 bpl $16d1 +16ca: 80 setc +16cb: a8 ca sbc a,#$ca +16cd: 60 clrc +16ce: 85 10 04 adc a,$0410 +16d1: 8d 06 mov y,#$06 +16d3: cf mul ya +16d4: da 14 movw $14,ya +16d6: 60 clrc +16d7: 98 00 14 adc $14,#$00 +16da: 98 1f 15 adc $15,#$1f +16dd: 4d push x +16de: 7d mov a,x +16df: 9f xcn a +16e0: 5c lsr a +16e1: 08 04 or a,#$04 +16e3: 5d mov x,a +16e4: 8d 00 mov y,#$00 +16e6: f7 14 mov a,($14)+y +16e8: 10 0e bpl $16f8 +16ea: 28 1f and a,#$1f +16ec: 38 20 48 and $48,#$20 +16ef: 0e 48 00 tset1 $0048 +16f2: 09 47 49 or ($49),($47) +16f5: dd mov a,y +16f6: 2f 07 bra $16ff +16f8: e4 47 mov a,$47 +16fa: 4e 49 00 tclr1 $0049 +16fd: f7 14 mov a,($14)+y +16ff: c9 f2 00 mov $00f2,x +1702: c5 f3 00 mov $00f3,a +1705: 3d inc x +1706: fc inc y +1707: ad 04 cmp y,#$04 +1709: d0 f2 bne $16fd +170b: ce pop x +170c: f7 14 mov a,($14)+y +170e: d5 51 04 mov $0451+x,a +1711: fc inc y +1712: f7 14 mov a,($14)+y +1714: d5 50 04 mov $0450+x,a +1717: 6f ret + +; vcmd e1 - pan +1718: d5 e1 04 mov $04e1+x,a +171b: 28 1f and a,#$1f +171d: d5 c1 04 mov $04c1+x,a +1720: e8 00 mov a,#$00 +1722: d5 c0 04 mov $04c0+x,a +1725: 6f ret + +; vcmd e2 - pan fade +1726: d4 71 mov $71+x,a +1728: 2d push a +1729: 3f ba 16 call $16ba +172c: d5 e0 04 mov $04e0+x,a +172f: 80 setc +1730: b5 c1 04 sbc a,$04c1+x +1733: ce pop x +1734: 3f f0 18 call $18f0 +1737: d5 d0 04 mov $04d0+x,a +173a: dd mov a,y +173b: d5 d1 04 mov $04d1+x,a +173e: 6f ret + +; vcmd e3 - vibrato on +173f: d5 50 05 mov $0550+x,a +1742: 3f ba 16 call $16ba +1745: d5 41 05 mov $0541+x,a +1748: 3f ba 16 call $16ba +; vcmd e4 - vibrato off +174b: d4 d1 mov $d1+x,a +174d: d5 71 05 mov $0571+x,a +1750: e8 00 mov a,#$00 +1752: d5 51 05 mov $0551+x,a +1755: 6f ret + +; vcmd f0 - vibrato fade +1756: d5 51 05 mov $0551+x,a +1759: 2d push a +175a: 8d 00 mov y,#$00 +175c: f4 d1 mov a,$d1+x +175e: ce pop x +175f: 9e div ya,x +1760: f8 44 mov x,$44 +1762: d5 70 05 mov $0570+x,a +1765: 6f ret + +; vcmd e5 +1766: e8 00 mov a,#$00 +1768: da 58 movw $58,ya +176a: 6f ret + +; vcmd e6 +176b: 3f ba 16 call $16ba +176e: 6f ret + +; vcmd e7 - tempo +176f: e8 00 mov a,#$00 +1771: da 52 movw $52,ya +1773: 6f ret + +; vcmd e8 +1774: 3f ba 16 call $16ba +1777: 6f ret + +; vcmd e9 +1778: c5 03 04 mov $0403,a +177b: 6f ret + +; vcmd ea - per-voice transpose +177c: d5 91 05 mov $0591+x,a +177f: 6f ret + +; vcmd eb - tremolo on +1780: d5 90 05 mov $0590+x,a +1783: 3f ba 16 call $16ba +1786: d5 81 05 mov $0581+x,a +1789: 3f ba 16 call $16ba +; vcmd ec - tremolo off +178c: e8 00 mov a,#$00 +178e: d4 e1 mov $e1+x,a +1790: 6f ret + +; vcmd f1 - pitch envelope (release) +1791: e8 01 mov a,#$01 +1793: 2f 02 bra $1797 +; vcmd f2 - pitch envelope (attack) +1795: e8 00 mov a,#$00 +1797: d5 30 05 mov $0530+x,a +179a: dd mov a,y +179b: d5 21 05 mov $0521+x,a +179e: 3f ba 16 call $16ba +17a1: d5 20 05 mov $0520+x,a +17a4: 3f ba 16 call $16ba +17a7: d5 31 05 mov $0531+x,a +17aa: 6f ret + +; vcmd f3 - pitch envelope off +17ab: d5 20 05 mov $0520+x,a +17ae: 6f ret + +; vcmd ed - volume +17af: d5 91 04 mov $0491+x,a +17b2: e8 00 mov a,#$00 +17b4: d5 90 04 mov $0490+x,a +17b7: 6f ret + +; vcmd ee - volume fade +17b8: d4 70 mov $70+x,a +17ba: 2d push a +17bb: 3f ba 16 call $16ba +17be: d5 b0 04 mov $04b0+x,a +17c1: 80 setc +17c2: b5 91 04 sbc a,$0491+x +17c5: ce pop x +17c6: 3f f0 18 call $18f0 +17c9: d5 a0 04 mov $04a0+x,a +17cc: dd mov a,y +17cd: d5 a1 04 mov $04a1+x,a +17d0: 6f ret + +; vcmd f4 - tuning +17d1: d5 11 05 mov $0511+x,a +17d4: 6f ret + +; vcmd ef - call subroutine +17d5: d5 70 04 mov $0470+x,a +17d8: 3f ba 16 call $16ba +17db: d5 71 04 mov $0471+x,a +17de: 3f ba 16 call $16ba +17e1: d5 80 04 mov $0480+x,a +17e4: f4 20 mov a,$20+x +17e6: d5 60 04 mov $0460+x,a +17e9: f4 21 mov a,$21+x +17eb: d5 61 04 mov $0461+x,a +17ee: f5 70 04 mov a,$0470+x +17f1: d4 20 mov $20+x,a +17f3: f5 71 04 mov a,$0471+x +17f6: d4 21 mov $21+x,a +17f8: 6f ret + +; vcmd f5 - echo v-bits/volume +17f9: c4 4a mov $4a,a +17fb: c5 bd 03 mov $03bd,a +17fe: 48 ff eor a,#$ff +1800: c5 bf 03 mov $03bf,a +1803: 3f ba 16 call $16ba +1806: e8 00 mov a,#$00 +1808: da 60 movw $60,ya +180a: 3f ba 16 call $16ba +180d: e8 00 mov a,#$00 +180f: da 62 movw $62,ya +1811: b2 48 clr5 $48 +1813: 6f ret + +; vcmd f8 - echo volume fade +1814: c4 68 mov $68,a +1816: 3f ba 16 call $16ba +1819: c4 69 mov $69,a +181b: 80 setc +181c: a4 61 sbc a,$61 +181e: f8 68 mov x,$68 +1820: 3f f0 18 call $18f0 +1823: da 64 movw $64,ya +1825: 3f ba 16 call $16ba +1828: c4 6a mov $6a,a +182a: 80 setc +182b: a4 63 sbc a,$63 +182d: f8 68 mov x,$68 +182f: 3f f0 18 call $18f0 +1832: da 66 movw $66,ya +1834: 6f ret + +; vcmd f6 - disable echo +1835: da 60 movw $60,ya +1837: da 62 movw $62,ya +1839: a2 48 set5 $48 +183b: 6f ret + +; vcmd f7 - set echo params +183c: 3f 5e 18 call $185e +183f: 3f ba 16 call $16ba +1842: c4 4e mov $4e,a +1844: 3f ba 16 call $16ba +1847: 8d 08 mov y,#$08 +1849: cf mul ya +184a: 5d mov x,a +184b: 8d 0f mov y,#$0f +184d: f5 52 1e mov a,$1e52+x +1850: 3f 87 14 call $1487 +1853: 3d inc x +1854: dd mov a,y +1855: 60 clrc +1856: 88 10 adc a,#$10 +1858: fd mov y,a +1859: 10 f2 bpl $184d +185b: f8 44 mov x,$44 +185d: 6f ret + +185e: c4 4d mov $4d,a +1860: 8d 7d mov y,#$7d +1862: cc f2 00 mov $00f2,y +1865: e5 f3 00 mov a,$00f3 +1868: 64 4d cmp a,$4d +186a: f0 2b beq $1897 +186c: 28 0f and a,#$0f +186e: 48 ff eor a,#$ff +1870: f3 4c 03 bbc7 $4c,$1876 +1873: 60 clrc +1874: 84 4c adc a,$4c +1876: c4 4c mov $4c,a +1878: 8d 04 mov y,#$04 +187a: f6 71 1e mov a,$1e71+y +187d: c5 f2 00 mov $00f2,a +1880: e8 00 mov a,#$00 +1882: c5 f3 00 mov $00f3,a +1885: fe f3 dbnz y,$187a +1887: e4 48 mov a,$48 +1889: 08 20 or a,#$20 +188b: 8d 6c mov y,#$6c +188d: 3f 87 14 call $1487 +1890: e4 4d mov a,$4d +1892: 8d 7d mov y,#$7d +1894: 3f 87 14 call $1487 +1897: 1c asl a +1898: 1c asl a +1899: 1c asl a +189a: 48 ff eor a,#$ff +189c: 80 setc +189d: 88 ff adc a,#$ff +189f: 8d 6d mov y,#$6d +18a1: 5f 87 14 jmp $1487 + +; vcmd fa +18a4: c5 10 04 mov $0410,a +18a7: 6f ret + +18a8: 3f bc 16 call $16bc +18ab: 6f ret + +18ac: f4 80 mov a,$80+x +; vcmd fe +18ae: d0 34 bne $18e4 +18b0: e7 20 mov a,($20+x) +18b2: 68 f9 cmp a,#$f9 +18b4: d0 2e bne $18e4 +18b6: 3f bc 16 call $16bc +18b9: 3f ba 16 call $16ba +; vcmd f9 - pitch slide +18bc: d4 81 mov $81+x,a +18be: 3f ba 16 call $16ba +18c1: d4 80 mov $80+x,a +18c3: 3f ba 16 call $16ba +18c6: 60 clrc +18c7: 85 03 04 adc a,$0403 +18ca: 95 91 05 adc a,$0591+x +18cd: 28 7f and a,#$7f +18cf: d5 10 05 mov $0510+x,a +18d2: 80 setc +18d3: b5 f1 04 sbc a,$04f1+x +18d6: fb 80 mov y,$80+x +18d8: 6d push y +18d9: ce pop x +18da: 3f f0 18 call $18f0 +18dd: d5 00 05 mov $0500+x,a +18e0: dd mov a,y +18e1: d5 01 05 mov $0501+x,a +18e4: 6f ret + +18e5: f5 f1 04 mov a,$04f1+x +18e8: c4 11 mov $11,a +18ea: f5 f0 04 mov a,$04f0+x +18ed: c4 10 mov $10,a +18ef: 6f ret + +18f0: ed notc +18f1: 6b 12 ror $12 +18f3: 10 03 bpl $18f8 +18f5: 48 ff eor a,#$ff +18f7: bc inc a +18f8: 8d 00 mov y,#$00 +18fa: 9e div ya,x +18fb: 2d push a +18fc: e8 00 mov a,#$00 +18fe: 9e div ya,x +18ff: ee pop y +1900: f8 44 mov x,$44 +1902: f3 12 06 bbc7 $12,$190b +1905: da 14 movw $14,ya +1907: ba 0e movw ya,$0e +1909: 9a 14 subw ya,$14 +190b: 6f ret + +; vcmd dispatch table (sfx) +190c: dw $16c4 ; e0 - set instrument +190e: dw $1718 ; e1 - pan +1910: dw $1726 ; e2 - pan fade +1912: dw $173f ; e3 - vibrato on +1914: dw $174b ; e4 - vibrato off +1916: dw $1766 ; e5 +1918: dw $176b ; e6 +191a: dw $176f ; e7 - tempo +191c: dw $1774 ; e8 +191e: dw $1778 ; e9 +1920: dw $177c ; ea - per-voice transpose +1922: dw $1780 ; eb - tremolo on +1924: dw $178c ; ec - tremolo off +1926: dw $17af ; ed - volume +1928: dw $17b8 ; ee - volume fade +192a: dw $17d5 ; ef - call subroutine +192c: dw $1756 ; f0 - vibrato fade +192e: dw $1791 ; f1 - pitch envelope (release) +1930: dw $1795 ; f2 - pitch envelope (attack) +1932: dw $17ab ; f3 - pitch envelope off +1934: dw $17d1 ; f4 - tuning +1936: dw $17f9 ; f5 - echo vbits/volume +1938: dw $1835 ; f6 - disable echo +193a: dw $183c ; f7 - set echo params +193c: dw $1814 ; f8 - echo volume fade +193e: dw $18bc ; f9 - set pitch slide +1940: dw $18a4 ; fa +1942: dw $1c06 ; fb - echo on +1944: dw $1c1b ; fc - echo off +1946: dw $1bee ; fd +1948: dw $18a8 ; fe + +; vcmd lengths (sfx) +194a: db $01,$01,$02,$03,$00,$01,$02,$01 ; e0-e7 +1952: db $02,$01,$01,$03,$00,$01,$02,$03 ; e8-ef +195a: db $01,$03,$03,$00,$01,$03,$00,$03 ; f0-f7 +1962: db $03,$03,$01,$00,$00,$02,$02 ; f8-fe + +1969: f4 70 mov a,$70+x +196b: f0 24 beq $1991 +196d: 09 47 5e or ($5e),($47) +1970: 9b 70 dec $70+x +1972: d0 0a bne $197e +1974: e8 00 mov a,#$00 +1976: d5 90 04 mov $0490+x,a +1979: f5 b0 04 mov a,$04b0+x +197c: 2f 10 bra $198e +197e: 60 clrc +197f: f5 90 04 mov a,$0490+x +1982: 95 a0 04 adc a,$04a0+x +1985: d5 90 04 mov $0490+x,a +1988: f5 91 04 mov a,$0491+x +198b: 95 a1 04 adc a,$04a1+x +198e: d5 91 04 mov $0491+x,a +1991: fb e1 mov y,$e1+x +1993: f0 23 beq $19b8 +1995: f5 90 05 mov a,$0590+x +1998: de e0 1b cbne $e0+x,$19b6 +199b: 09 47 5e or ($5e),($47) +199e: f5 80 05 mov a,$0580+x +19a1: 10 07 bpl $19aa +19a3: fc inc y +19a4: d0 04 bne $19aa +19a6: e8 80 mov a,#$80 +19a8: 2f 04 bra $19ae +19aa: 60 clrc +19ab: 95 81 05 adc a,$0581+x +19ae: d5 80 05 mov $0580+x,a +19b1: 3f c7 1b call $1bc7 +19b4: 2f 07 bra $19bd +19b6: bb e0 inc $e0+x +19b8: e8 ff mov a,#$ff +19ba: 3f d2 1b call $1bd2 +19bd: f4 71 mov a,$71+x +19bf: f0 24 beq $19e5 +19c1: 09 47 5e or ($5e),($47) +19c4: 9b 71 dec $71+x +19c6: d0 0a bne $19d2 +19c8: e8 00 mov a,#$00 +19ca: d5 c0 04 mov $04c0+x,a +19cd: f5 e0 04 mov a,$04e0+x +19d0: 2f 10 bra $19e2 +19d2: 60 clrc +19d3: f5 c0 04 mov a,$04c0+x +19d6: 95 d0 04 adc a,$04d0+x +19d9: d5 c0 04 mov $04c0+x,a +19dc: f5 c1 04 mov a,$04c1+x +19df: 95 d1 04 adc a,$04d1+x +19e2: d5 c1 04 mov $04c1+x,a +19e5: e4 47 mov a,$47 +19e7: 24 5e and a,$5e +19e9: f0 5c beq $1a47 +19eb: f5 c1 04 mov a,$04c1+x +19ee: fd mov y,a +19ef: f5 c0 04 mov a,$04c0+x +19f2: da 10 movw $10,ya +19f4: 7d mov a,x +19f5: 9f xcn a +19f6: 5c lsr a +19f7: c4 12 mov $12,a +19f9: eb 11 mov y,$11 +19fb: e5 b8 03 mov a,$03b8 +19fe: f0 11 beq $1a11 +1a00: e8 51 mov a,#$51 +1a02: 80 setc +1a03: a8 51 sbc a,#$51 +1a05: eb 10 mov y,$10 +1a07: cf mul ya +1a08: dd mov a,y +1a09: eb 11 mov y,$11 +1a0b: 60 clrc +1a0c: 88 51 adc a,#$51 +1a0e: fd mov y,a +1a0f: 2f 12 bra $1a23 +1a11: f6 3e 1e mov a,$1e3e+y +1a14: 80 setc +1a15: b6 3d 1e sbc a,$1e3d+y +1a18: eb 10 mov y,$10 +1a1a: cf mul ya +1a1b: dd mov a,y +1a1c: eb 11 mov y,$11 +1a1e: 60 clrc +1a1f: 96 3d 1e adc a,$1e3d+y +1a22: fd mov y,a +1a23: f5 b1 04 mov a,$04b1+x +1a26: cf mul ya +1a27: f5 e1 04 mov a,$04e1+x +1a2a: 1c asl a +1a2b: 13 12 01 bbc0 $12,$1a2f +1a2e: 1c asl a +1a2f: dd mov a,y +1a30: 90 03 bcc $1a35 +1a32: 48 ff eor a,#$ff +1a34: bc inc a +1a35: eb 12 mov y,$12 +1a37: 3f 87 14 call $1487 +1a3a: 8d 14 mov y,#$14 +1a3c: e8 00 mov a,#$00 +1a3e: 9a 10 subw ya,$10 +1a40: da 10 movw $10,ya +1a42: ab 12 inc $12 +1a44: 33 12 b2 bbc1 $12,$19f9 +1a47: 6f ret + +1a48: f5 21 04 mov a,$0421+x +1a4b: f0 6b beq $1ab8 +1a4d: 9c dec a +1a4e: d5 21 04 mov $0421+x,a +1a51: f0 07 beq $1a5a +1a53: e8 02 mov a,#$02 +1a55: 75 20 04 cmp a,$0420+x +1a58: d0 5e bne $1ab8 +1a5a: f5 80 04 mov a,$0480+x +1a5d: c4 17 mov $17,a +1a5f: f4 20 mov a,$20+x +1a61: fb 21 mov y,$21+x +1a63: da 14 movw $14,ya +1a65: 8d 00 mov y,#$00 +1a67: f7 14 mov a,($14)+y +1a69: f0 1e beq $1a89 +1a6b: 30 07 bmi $1a74 +1a6d: fc inc y +1a6e: 30 40 bmi $1ab0 +1a70: f7 14 mov a,($14)+y +1a72: 10 f9 bpl $1a6d +1a74: 68 c8 cmp a,#$c8 +1a76: f0 40 beq $1ab8 +1a78: 68 ef cmp a,#$ef +1a7a: f0 29 beq $1aa5 +1a7c: 68 e0 cmp a,#$e0 +1a7e: 90 30 bcc $1ab0 +1a80: 6d push y +1a81: fd mov y,a +1a82: ae pop a +1a83: 96 6a 18 adc a,$186a+y +1a86: fd mov y,a +1a87: 2f de bra $1a67 +1a89: e4 17 mov a,$17 +1a8b: f0 23 beq $1ab0 +1a8d: 8b 17 dec $17 +1a8f: d0 0a bne $1a9b +1a91: f5 61 04 mov a,$0461+x +1a94: 2d push a +1a95: f5 60 04 mov a,$0460+x +1a98: ee pop y +1a99: 2f c8 bra $1a63 +1a9b: f5 71 04 mov a,$0471+x +1a9e: 2d push a +1a9f: f5 70 04 mov a,$0470+x +1aa2: ee pop y +1aa3: 2f be bra $1a63 +1aa5: fc inc y +1aa6: f7 14 mov a,($14)+y +1aa8: 2d push a +1aa9: fc inc y +1aaa: f7 14 mov a,($14)+y +1aac: fd mov y,a +1aad: ae pop a +1aae: 2f b3 bra $1a63 +1ab0: e4 47 mov a,$47 +1ab2: 05 d3 03 or a,$03d3 +1ab5: c5 d3 03 mov $03d3,a +1ab8: f2 13 clr7 $13 +1aba: f4 80 mov a,$80+x +1abc: f0 2c beq $1aea +1abe: f4 81 mov a,$81+x +1ac0: f0 04 beq $1ac6 +1ac2: 9b 81 dec $81+x +1ac4: 2f 24 bra $1aea +1ac6: e2 13 set7 $13 +1ac8: 9b 80 dec $80+x +1aca: d0 0b bne $1ad7 +1acc: f5 11 05 mov a,$0511+x +1acf: d5 f0 04 mov $04f0+x,a +1ad2: f5 10 05 mov a,$0510+x +1ad5: 2f 10 bra $1ae7 +1ad7: 60 clrc +1ad8: f5 f0 04 mov a,$04f0+x +1adb: 95 00 05 adc a,$0500+x +1ade: d5 f0 04 mov $04f0+x,a +1ae1: f5 f1 04 mov a,$04f1+x +1ae4: 95 01 05 adc a,$0501+x +1ae7: d5 f1 04 mov $04f1+x,a +1aea: 3f e5 18 call $18e5 +1aed: f4 d1 mov a,$d1+x +1aef: f0 4c beq $1b3d +1af1: f5 50 05 mov a,$0550+x +1af4: de d0 44 cbne $d0+x,$1b3b +1af7: f5 60 05 mov a,$0560+x +1afa: 75 51 05 cmp a,$0551+x +1afd: d0 05 bne $1b04 +1aff: f5 71 05 mov a,$0571+x +1b02: 2f 0d bra $1b11 +1b04: 40 setp +1b05: bb 60 inc $60+x +1b07: 20 clrp +1b08: fd mov y,a +1b09: f0 02 beq $1b0d +1b0b: f4 d1 mov a,$d1+x +1b0d: 60 clrc +1b0e: 95 70 05 adc a,$0570+x +1b11: d4 d1 mov $d1+x,a +1b13: f5 40 05 mov a,$0540+x +1b16: 60 clrc +1b17: 95 41 05 adc a,$0541+x +1b1a: d5 40 05 mov $0540+x,a +1b1d: c4 12 mov $12,a +1b1f: 1c asl a +1b20: 1c asl a +1b21: 90 02 bcc $1b25 +1b23: 48 ff eor a,#$ff +1b25: fd mov y,a +1b26: f4 d1 mov a,$d1+x +1b28: 68 f1 cmp a,#$f1 +1b2a: 90 05 bcc $1b31 +1b2c: 28 0f and a,#$0f +1b2e: cf mul ya +1b2f: 2f 04 bra $1b35 +1b31: cf mul ya +1b32: dd mov a,y +1b33: 8d 00 mov y,#$00 +1b35: 3f b2 1b call $1bb2 +1b38: 5f 04 14 jmp $1404 + +1b3b: bb d0 inc $d0+x +1b3d: e3 13 f8 bbs7 $13,$1b38 +1b40: 6f ret + +1b41: f2 13 clr7 $13 +1b43: f4 e1 mov a,$e1+x +1b45: f0 09 beq $1b50 +1b47: f5 90 05 mov a,$0590+x +1b4a: de e0 03 cbne $e0+x,$1b50 +1b4d: 3f ba 1b call $1bba +1b50: f5 c1 04 mov a,$04c1+x +1b53: fd mov y,a +1b54: f5 c0 04 mov a,$04c0+x +1b57: da 10 movw $10,ya +1b59: f4 71 mov a,$71+x +1b5b: f0 0a beq $1b67 +1b5d: f5 d1 04 mov a,$04d1+x +1b60: fd mov y,a +1b61: f5 d0 04 mov a,$04d0+x +1b64: 3f 9c 1b call $1b9c +1b67: f3 13 03 bbc7 $13,$1b6d +1b6a: 3f f4 19 call $19f4 +1b6d: f2 13 clr7 $13 +1b6f: 3f e5 18 call $18e5 +1b72: f4 80 mov a,$80+x +1b74: f0 0e beq $1b84 +1b76: f4 81 mov a,$81+x +1b78: d0 0a bne $1b84 +1b7a: f5 01 05 mov a,$0501+x +1b7d: fd mov y,a +1b7e: f5 00 05 mov a,$0500+x +1b81: 3f 9c 1b call $1b9c +1b84: f4 d1 mov a,$d1+x +1b86: f0 b5 beq $1b3d +1b88: f5 50 05 mov a,$0550+x +1b8b: de d0 af cbne $d0+x,$1b3d +1b8e: eb 51 mov y,$51 +1b90: f5 41 05 mov a,$0541+x +1b93: cf mul ya +1b94: dd mov a,y +1b95: 60 clrc +1b96: 95 40 05 adc a,$0540+x +1b99: 5f 1d 1b jmp $1b1d + +1b9c: e2 13 set7 $13 +1b9e: cb 12 mov $12,y +1ba0: 3f 02 19 call $1902 +1ba3: 6d push y +1ba4: eb 51 mov y,$51 +1ba6: cf mul ya +1ba7: cb 14 mov $14,y +1ba9: 8f 00 15 mov $15,#$00 +1bac: eb 51 mov y,$51 +1bae: ae pop a +1baf: cf mul ya +1bb0: 7a 14 addw ya,$14 +1bb2: 3f 02 19 call $1902 +1bb5: 7a 10 addw ya,$10 +1bb7: da 10 movw $10,ya +1bb9: 6f ret + +1bba: e2 13 set7 $13 +1bbc: eb 51 mov y,$51 +1bbe: f5 81 05 mov a,$0581+x +1bc1: cf mul ya +1bc2: dd mov a,y +1bc3: 60 clrc +1bc4: 95 80 05 adc a,$0580+x +1bc7: 1c asl a +1bc8: 90 02 bcc $1bcc +1bca: 48 ff eor a,#$ff +1bcc: fb e1 mov y,$e1+x +1bce: cf mul ya +1bcf: dd mov a,y +1bd0: 48 ff eor a,#$ff +1bd2: ec b9 03 mov y,$03b9 +1bd5: f0 05 beq $1bdc +1bd7: ec 04 04 mov y,$0404 +1bda: 2f 02 bra $1bde +1bdc: eb 59 mov y,$59 +1bde: cf mul ya +1bdf: f5 c0 05 mov a,$05c0+x +1be2: cf mul ya +1be3: f5 91 04 mov a,$0491+x +1be6: cf mul ya +1be7: dd mov a,y +1be8: cf mul ya +1be9: dd mov a,y +1bea: d5 b1 04 mov $04b1+x,a +1bed: 6f ret + +; vcmd fd +1bee: 7d mov a,x +1bef: 9f xcn a +1bf0: 5c lsr a +1bf1: 08 05 or a,#$05 +1bf3: c4 14 mov $14,a +1bf5: dd mov a,y +1bf6: eb 14 mov y,$14 +1bf8: 3f 87 14 call $1487 +1bfb: 3f ba 16 call $16ba +1bfe: ab 14 inc $14 +1c00: eb 14 mov y,$14 +1c02: 3f 87 14 call $1487 +1c05: 6f ret + +; vcmd fb - echo on +1c06: e5 bd 03 mov a,$03bd +1c09: 04 47 or a,$47 +1c0b: c5 bd 03 mov $03bd,a +1c0e: e4 47 mov a,$47 +1c10: 48 ff eor a,#$ff +1c12: 25 bf 03 and a,$03bf +1c15: c5 bf 03 mov $03bf,a +1c18: 5f 7a 13 jmp $137a + +; vcmd fc - echo off +1c1b: e5 bf 03 mov a,$03bf +1c1e: 04 47 or a,$47 +1c20: c5 bf 03 mov $03bf,a +1c23: e4 47 mov a,$47 +1c25: 48 ff eor a,#$ff +1c27: 25 bd 03 and a,$03bd +1c2a: c5 bd 03 mov $03bd,a +1c2d: 5f 7a 13 jmp $137a + +1c30: 8d 00 mov y,#$00 +1c32: f7 6e mov a,($6e)+y +1c34: 3a 6e incw $6e +1c36: 2d push a +1c37: f7 6e mov a,($6e)+y +1c39: 3a 6e incw $6e +1c3b: fd mov y,a +1c3c: ae pop a +1c3d: 6f ret + +1c3e: c4 06 mov $06,a +1c40: 1c asl a +1c41: 5d mov x,a +1c42: f5 ff bf mov a,$bfff+x +1c45: fd mov y,a +1c46: f5 fe bf mov a,$bffe+x +1c49: da 6e movw $6e,ya +1c4b: 8f 02 1f mov $1f,#$02 +1c4e: 2f 02 bra $1c52 +1c50: c4 06 mov $06,a +1c52: e4 6d mov a,$6d +1c54: 0e 46 00 tset1 $0046 +1c57: e8 a5 mov a,#$a5 +1c59: c5 e4 05 mov $05e4,a +1c5c: 6f ret + +1c5d: e4 6d mov a,$6d +1c5f: 0e 46 00 tset1 $0046 +1c62: e8 00 mov a,#$00 +1c64: c5 e4 05 mov $05e4,a +1c67: cd 00 mov x,#$00 +1c69: 8f 01 47 mov $47,#$01 +1c6c: e4 6d mov a,$6d +1c6e: 24 47 and a,$47 +1c70: f0 14 beq $1c86 +1c72: e4 47 mov a,$47 +1c74: 48 ff eor a,#$ff +1c76: 24 1a and a,$1a +1c78: c4 1a mov $1a,a +1c7a: f5 11 02 mov a,$0211+x +1c7d: 3f fd 0d call $0dfd +1c80: e8 00 mov a,#$00 +1c82: d4 21 mov $21+x,a +1c84: d4 20 mov $20+x,a +1c86: 3d inc x +1c87: 3d inc x +1c88: 0b 47 asl $47 +1c8a: d0 e0 bne $1c6c +1c8c: e8 00 mov a,#$00 +1c8e: c4 6d mov $6d,a +1c90: 6f ret + +1c91: cd 0e mov x,#$0e +1c93: 8f 80 47 mov $47,#$80 +1c96: e4 47 mov a,$47 +1c98: 24 6d and a,$6d +1c9a: f0 06 beq $1ca2 +1c9c: e8 00 mov a,#$00 +1c9e: d4 20 mov $20+x,a +1ca0: d4 1f mov $1f+x,a +1ca2: 1d dec x +1ca3: 1d dec x +1ca4: 4b 47 lsr $47 +1ca6: d0 ee bne $1c96 +1ca8: e8 00 mov a,#$00 +1caa: c4 6d mov $6d,a +1cac: cd 00 mov x,#$00 +1cae: 8f 01 47 mov $47,#$01 +1cb1: f5 f1 05 mov a,$05f1+x +1cb4: f0 15 beq $1ccb +1cb6: d4 21 mov $21+x,a +1cb8: f5 f0 05 mov a,$05f0+x +1cbb: d4 20 mov $20+x,a +1cbd: 09 47 1a or ($1a),($47) +1cc0: 09 47 6d or ($6d),($47) +1cc3: e4 47 mov a,$47 +1cc5: 48 ff eor a,#$ff +1cc7: 24 1b and a,$1b +1cc9: c4 1b mov $1b,a +1ccb: 3d inc x +1ccc: 3d inc x +1ccd: 0b 47 asl $47 +1ccf: d0 e0 bne $1cb1 +1cd1: e4 6d mov a,$6d +1cd3: 0e 46 00 tset1 $0046 +1cd6: e8 00 mov a,#$00 +1cd8: c5 e4 05 mov $05e4,a +1cdb: 6f ret + +1cdc: 3f 30 1c call $1c30 +1cdf: 1a 6e decw $6e +1ce1: 1a 6e decw $6e +1ce3: da 16 movw $16,ya +1ce5: 8d 0f mov y,#$0f +1ce7: f7 16 mov a,($16)+y +1ce9: d6 f0 05 mov $05f0+y,a +1cec: dc dec y +1ced: 10 f8 bpl $1ce7 +1cef: 3f 91 1c call $1c91 +1cf2: cd 0e mov x,#$0e +1cf4: 8f 80 47 mov $47,#$80 +1cf7: e4 47 mov a,$47 +1cf9: 24 6d and a,$6d +1cfb: f0 1d beq $1d1a +1cfd: e8 ff mov a,#$ff +1cff: d5 91 04 mov $0491+x,a +1d02: e5 e3 05 mov a,$05e3 +1d05: 3f 18 17 call $1718 +1d08: e8 00 mov a,#$00 +1d0a: d5 c1 05 mov $05c1+x,a +1d0d: d5 11 05 mov $0511+x,a +1d10: d5 91 05 mov $0591+x,a +1d13: d5 20 05 mov $0520+x,a +1d16: d4 d1 mov $d1+x,a +1d18: d4 e1 mov $e1+x,a +1d1a: 1d dec x +1d1b: 1d dec x +1d1c: 4b 47 lsr $47 +1d1e: d0 d7 bne $1cf7 +1d20: c5 03 04 mov $0403,a +1d23: c5 e0 05 mov $05e0,a +1d26: c5 10 04 mov $0410,a +1d29: c4 70 mov $70,a +1d2b: 6f ret + +1d2c: e5 e4 05 mov a,$05e4 +1d2f: f0 03 beq $1d34 +1d31: 5f 62 1c jmp $1c62 + +1d34: eb 0a mov y,$0a +1d36: e4 02 mov a,$02 +1d38: c4 0a mov $0a,a +1d3a: 7e 02 cmp y,$02 +1d3c: f0 03 beq $1d41 +1d3e: 5f 3e 1c jmp $1c3e + +1d41: e4 06 mov a,$06 +1d43: f0 e6 beq $1d2b +1d45: e4 1f mov a,$1f +1d47: d0 03 bne $1d4c +1d49: 5f a8 1d jmp $1da8 + +1d4c: 6e 1f 8d dbnz $1f,$1cdc +1d4f: 3f 30 1c call $1c30 +1d52: d0 1a bne $1d6e +1d54: fd mov y,a +1d55: d0 03 bne $1d5a +1d57: 5f 50 1c jmp $1c50 + +1d5a: 8c e0 05 dec $05e0 +1d5d: 10 03 bpl $1d62 +1d5f: c5 e0 05 mov $05e0,a +1d62: 3f 30 1c call $1c30 +1d65: e9 e0 05 mov x,$05e0 +1d68: f0 e5 beq $1d4f +1d6a: da 6e movw $6e,ya +1d6c: 2f e1 bra $1d4f +1d6e: da 16 movw $16,ya +1d70: 8d 0f mov y,#$0f +1d72: f7 16 mov a,($16)+y +1d74: d6 f0 05 mov $05f0+y,a +1d77: dc dec y +1d78: 10 f8 bpl $1d72 +1d7a: 3f 5d 1c call $1c5d +1d7d: 3f 91 1c call $1c91 +1d80: cd 00 mov x,#$00 +1d82: 8f 01 47 mov $47,#$01 +1d85: e4 47 mov a,$47 +1d87: 24 6d and a,$6d +1d89: f0 17 beq $1da2 +1d8b: f4 21 mov a,$21+x +1d8d: f0 06 beq $1d95 +1d8f: f5 c1 05 mov a,$05c1+x +1d92: 3f c4 16 call $16c4 +1d95: e8 00 mov a,#$00 +1d97: d5 80 04 mov $0480+x,a +1d9a: d4 70 mov $70+x,a +1d9c: d4 71 mov $71+x,a +1d9e: bc inc a +1d9f: d5 20 04 mov $0420+x,a +1da2: 3d inc x +1da3: 3d inc x +1da4: 0b 47 asl $47 +1da6: d0 dd bne $1d85 +1da8: cd 00 mov x,#$00 +1daa: e4 6d mov a,$6d +1dac: 24 5e and a,$5e +1dae: c4 5e mov $5e,a +1db0: 8f 01 47 mov $47,#$01 +1db3: d8 44 mov $44,x +1db5: e4 47 mov a,$47 +1db7: 24 6d and a,$6d +1db9: f0 78 beq $1e33 +1dbb: f4 21 mov a,$21+x +1dbd: f0 74 beq $1e33 +1dbf: f5 20 04 mov a,$0420+x +1dc2: 9c dec a +1dc3: d5 20 04 mov $0420+x,a +1dc6: d0 65 bne $1e2d +1dc8: 3f ba 16 call $16ba +1dcb: d0 20 bne $1ded +1dcd: f5 80 04 mov a,$0480+x +1dd0: d0 03 bne $1dd5 +1dd2: 5f 4f 1d jmp $1d4f + +1dd5: 3f ee 17 call $17ee +1dd8: f5 80 04 mov a,$0480+x +1ddb: 9c dec a +1ddc: d5 80 04 mov $0480+x,a +1ddf: d0 e7 bne $1dc8 +1de1: f5 60 04 mov a,$0460+x +1de4: d4 20 mov $20+x,a +1de6: f5 61 04 mov a,$0461+x +1de9: d4 21 mov $21+x,a +1deb: 2f db bra $1dc8 +1ded: 30 20 bmi $1e0f +1def: d5 30 04 mov $0430+x,a +1df2: 3f ba 16 call $16ba +1df5: 30 18 bmi $1e0f +1df7: 2d push a +1df8: 9f xcn a +1df9: 28 07 and a,#$07 +1dfb: fd mov y,a +1dfc: f6 18 a0 mov a,$a018+y +1dff: d5 31 04 mov $0431+x,a +1e02: ae pop a +1e03: 28 0f and a,#$0f +1e05: fd mov y,a +1e06: f6 20 a0 mov a,$a020+y +1e09: d5 c0 05 mov $05c0+x,a +1e0c: 3f ba 16 call $16ba +1e0f: 68 e0 cmp a,#$e0 +1e11: 90 05 bcc $1e18 +1e13: 3f a8 16 call $16a8 +1e16: 2f b0 bra $1dc8 +1e18: 3f 99 13 call $1399 +1e1b: f5 30 04 mov a,$0430+x +1e1e: d5 20 04 mov $0420+x,a +1e21: fd mov y,a +1e22: f5 31 04 mov a,$0431+x +1e25: cf mul ya +1e26: dd mov a,y +1e27: bc inc a +1e28: d5 21 04 mov $0421+x,a +1e2b: 2f 03 bra $1e30 +1e2d: 3f 48 1a call $1a48 +1e30: 3f ac 18 call $18ac +1e33: 3d inc x +1e34: 3d inc x +1e35: 0b 47 asl $47 +1e37: f0 03 beq $1e3c +1e39: 5f b3 1d jmp $1db3 + +1e3c: 6f ret + +; pan table +1e3d: db $00,$01,$03,$07,$0d,$15,$1e,$29 +1e45: db $34,$42,$51,$5e,$67,$6e,$73,$77 +1e4d: db $7a,$7c,$7d,$7e,$7f + +; echo FIR presets +1e52: db $7f,$00,$00,$00,$00,$00,$00,$00 +1e5a: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +1e62: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +1e6a: db $34,$33,$00,$d9,$e5,$01,$fc,$eb + +; EVOL(L),EVOL(R),EFB,EON,FLG,KOL,KOF,NON,PMON,KOF +; dsp shadow addrs for dsp regs +1e72: db $2c,$3c,$0d,$4d,$6c,$4c,$5c,$3d,$2d,$5c +1e7c: db $61,$63,$4e,$4a,$48,$45,$0e,$49,$4b,$46 + +; pitch table +1e86: dw $085f +1e88: dw $08de +1e8a: dw $0965 +1e8c: dw $09f4 +1e8e: dw $0a8c +1e90: dw $0b2c +1e92: dw $0bd6 +1e94: dw $0c8b +1e96: dw $0d4a +1e98: dw $0e14 +1e9a: dw $0eea +1e9c: dw $0fcd +1e9e: dw $10be + +1ea0: db $2a,$56,$65,$72,$20,$53,$31,$2e,$32,$30,$2a + +1eab: e8 aa mov a,#$aa +1ead: c5 f4 00 mov $00f4,a +1eb0: e8 bb mov a,#$bb +1eb2: c5 f5 00 mov $00f5,a +1eb5: e5 f4 00 mov a,$00f4 +1eb8: 68 cc cmp a,#$cc +1eba: d0 f9 bne $1eb5 +1ebc: 2f 20 bra $1ede +1ebe: ec f4 00 mov y,$00f4 +1ec1: d0 fb bne $1ebe +1ec3: 5e f4 00 cmp y,$00f4 +1ec6: d0 0f bne $1ed7 +1ec8: e5 f5 00 mov a,$00f5 +1ecb: cc f4 00 mov $00f4,y +1ece: d7 14 mov ($14)+y,a +1ed0: fc inc y +1ed1: d0 f0 bne $1ec3 +1ed3: ab 15 inc $15 +1ed5: 2f ec bra $1ec3 +1ed7: 10 ea bpl $1ec3 +1ed9: 5e f4 00 cmp y,$00f4 +1edc: 10 e5 bpl $1ec3 +1ede: e5 f6 00 mov a,$00f6 +1ee1: ec f7 00 mov y,$00f7 +1ee4: da 14 movw $14,ya +1ee6: ec f4 00 mov y,$00f4 +1ee9: e5 f5 00 mov a,$00f5 +1eec: cc f4 00 mov $00f4,y +1eef: d0 cd bne $1ebe +1ef1: cd 31 mov x,#$31 +1ef3: c9 f1 00 mov $00f1,x +1ef6: 6f ret + +; note dur%'s +a018: db $32,$65,$7f,$98,$b2,$cb,$e5,$ff +; per-note velocity values +a020: db $0a,$19,$28,$3c,$50,$64,$7d,$96 +a028: db $aa,$b9,$c8,$d4,$e1,$eb,$f5,$ff \ No newline at end of file From 30a3445476e1d20413703e7b40a7701363b3de8a Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:01:27 -0800 Subject: [PATCH 100/116] Add files via upload --- snes/Super Double Dragon ($0300).bin | Bin 0 -> 2967 bytes snes/Super Double Dragon.s | 1519 ++++++++++++++++++++++++++ 2 files changed, 1519 insertions(+) create mode 100644 snes/Super Double Dragon ($0300).bin create mode 100644 snes/Super Double Dragon.s diff --git a/snes/Super Double Dragon ($0300).bin b/snes/Super Double Dragon ($0300).bin new file mode 100644 index 0000000000000000000000000000000000000000..7ae097e7c088f6522f59c21bcf7a4834d8b7e22a GIT binary patch literal 2967 zcmYjT4Qv}l7M>aJ+FAc3o1fyEI*HTJ#4SzNDS<$AVG9TvaRgd~1f1%|6<5_dkuDru z%SD731lQcrmED6jsO6gSr<6nWh1_vPX%RHqDk*8=g|pq9A*eqax)6xAi8m>&jqj~P zPqnN!GjHC$pPBc*d7iP@Co1wM5NVdL{A1*-d{srFDdiN=f-~?kE3pysL2;8)?GX!q zL1tmYsqs{ZcRU+Yqqm6h#akq> zcMIWPGI&`%KvGr8a(8xKaY#$&FE}LU{I`y}`6O|AWflLO9lqeiZA`F~p4rf3n3dcv65(TLX+B~aiO+Exre$}w!c%$fCR0s<0mOW&G9O&642X{ldQr@Yh@T&uT)lun^XjWDHTjb zrT9SG5H(aA&eaHC=Bc+!w8N(820s5Itu248*7n!htWx6kPgZsn2DM0WFw<}M7D*+3 z{h2~->ZMu%EIe3=#7*$Yl#aIQkY+)o5vgD*jkcy2S0+f(X^U8V`Vz_tsx=7#=8~8s z*CRNS7fEshN&0ZoN0Qr6GKi9WD0vhmccNs3B=?ZyE|ly>$pA@iA;*)CLM0?y(0n6e zE8sf3l239=Ya|ZNHJn@doT)^!NDb1h;at7I&zQB_o(mNAH;iG?9$sf$hgP}c4y4_n z6xGc)p&hrQXoLpZ&+KSI5vy@2yu+d}f{KJ8%dF+OLxufSA{sLTSF{^8*=v`WyaOeh z(3^tF3m{Mc0%}gElM3Db{!;xMtJ$;qSvKW@I(JD$Q9;Kn_tU7YRVj2wR`_9+)e)Pj z=C@l?uJLJ`QV6NRmzw#PE#>m;#EP~#s~@x&IzsQ-`tjE(SJU-!N)g1n;7Sgo%pxt9 zmA3Veb_>-_)pZNinz^Yu8|5g23fIdCP{hGdgbg0*H@EViTgHV}$k=fRIMIj_x1+Wv z7ISs1P|RK9m6x;glR`d)$E+gHT?DUXS5`K)?XkSNf+f-lVALrqqT08qYVN!dw2I-P zAQ;0MSUO^tf8?kmtbFmnqneNZ$bR544GZbvt0Rj@s5yP647U&*(Y_C!jab{W(ZIgl z)+{%buMWQ3A#>@SvLo+%zhSm5Vd2{g4(yaK=q!#8>%}-e!ky7Q#=HvVg0DJ(F#i{a zZ&_Wh*OHxo#g@Q0>MhF7i?+l%%y?>G6Kv7^Pyu%^cuKQ?aTC8_(h-h7n$10^WG;%Uj+oadhOW6uS+41}t(*DWCGi#k0&+v~}0dHH|p`c%83zFV zWy^r#i^Io;WpZr9ux(h*Ti=P&!wD9rM-s(28Xrki0Ub_wu;A@Vgut^caAdpuQR9T4 z0`HzCLcgOWcbxybHRT+%?{`8KAFNZ+!I{hDhF-~J5XvC*0D&UucJPeNSek+KZt{yo z`uoN!-8>oSX0z<PlEsHZJHgD0zxAPw()qXjSjbkk1LA6X zg31eBJsN}ai%o*Kj!6ta(nqN|j#lbp%F5Ve4B!Mq?Ov;ztbnk|;#g9#vf=KHo40L$ zW@pFqoiB8C<(o@{9{cnw?PrVKZm+ue=F*?%ermV{{dWpyrtR*!X1}Agz4OV{zuII- zuR%yd9)xmtqx;aW(L?AF^f=m#ev5vGoPx# literal 0 HcmV?d00001 diff --git a/snes/Super Double Dragon.s b/snes/Super Double Dragon.s new file mode 100644 index 00000000..d7a3fced --- /dev/null +++ b/snes/Super Double Dragon.s @@ -0,0 +1,1519 @@ +0300: 20 clrp +0301: cd cf mov x,#$cf +0303: bd mov sp,x +0304: e8 00 mov a,#$00 +0306: 5d mov x,a +0307: d5 00 02 mov $0200+x,a +030a: 3d inc x +030b: d0 fa bne $0307 +030d: af mov (x)+,a +030e: c8 e0 cmp x,#$e0 +0310: d0 fb bne $030d +0312: e8 00 mov a,#$00 +0314: 8d 03 mov y,#$03 +0316: da 17 movw $17,ya +0318: 8d 00 mov y,#$00 +031a: f7 17 mov a,($17)+y +031c: 60 clrc +031d: 84 10 adc a,$10 +031f: c4 10 mov $10,a +0321: 90 02 bcc $0325 +0323: ab 11 inc $11 +0325: 3a 17 incw $17 +0327: e8 97 mov a,#$97 +0329: 8d 0e mov y,#$0e +032b: 5a 17 cmpw ya,$17 +032d: d0 e9 bne $0318 +032f: cd 0c mov x,#$0c +0331: f5 c9 0d mov a,$0dc9+x +0334: fd mov y,a +0335: f5 d6 0d mov a,$0dd6+x +0338: 3f c2 04 call $04c2 +033b: 1d dec x +033c: 10 f3 bpl $0331 +033e: 8f 80 14 mov $14,#$80 +0341: 8f 80 13 mov $13,#$80 +0344: e8 30 mov a,#$30 +0346: c5 f1 00 mov $00f1,a +0349: e8 20 mov a,#$20 +034b: c5 fa 00 mov $00fa,a +034e: 00 nop +034f: 00 nop +0350: 00 nop +0351: 00 nop +0352: e8 01 mov a,#$01 +0354: c5 f1 00 mov $00f1,a +0357: 9c dec a +0358: cd 03 mov x,#$03 +035a: d5 f4 00 mov $00f4+x,a +035d: 1d dec x +035e: 10 fa bpl $035a +0360: e4 11 mov a,$11 +0362: c5 f4 00 mov $00f4,a +0365: e4 10 mov a,$10 +0367: c5 f5 00 mov $00f5,a +036a: 3f f3 0a call $0af3 +036d: eb fd mov y,$fd +036f: d0 4f bne $03c0 +0371: e9 f7 00 mov x,$00f7 +0374: 1e f7 00 cmp x,$00f7 +0377: d0 f8 bne $0371 +0379: 3e 14 cmp x,$14 +037b: f0 13 beq $0390 +037d: 3e 13 cmp x,$13 +037f: f0 ec beq $036d +0381: d8 13 mov $13,x +0383: 8f 80 14 mov $14,#$80 +0386: ec f6 00 mov y,$00f6 +0389: 5e f6 00 cmp y,$00f6 +038c: d0 f8 bne $0386 +038e: 2f 2a bra $03ba +0390: ec f6 00 mov y,$00f6 +0393: 5e f6 00 cmp y,$00f6 +0396: d0 f8 bne $0390 +0398: 7d mov a,x +0399: c4 13 mov $13,a +039b: 10 0f bpl $03ac +039d: 68 80 cmp a,#$80 +039f: d0 05 bne $03a6 +03a1: cb 15 mov $15,y +03a3: bc inc a +03a4: 2f 12 bra $03b8 +03a6: cb 16 mov $16,y +03a8: e8 00 mov a,#$00 +03aa: 2f 0c bra $03b8 +03ac: dd mov a,y +03ad: 8d 00 mov y,#$00 +03af: d7 15 mov ($15)+y,a +03b1: 3a 15 incw $15 +03b3: fd mov y,a +03b4: 7d mov a,x +03b5: bc inc a +03b6: 28 7f and a,#$7f +03b8: c4 14 mov $14,a +03ba: cb f6 mov $f6,y +03bc: d8 f7 mov $f7,x +03be: 2f ad bra $036d +03c0: cb 36 mov $36,y +03c2: 3f ba 05 call $05ba +03c5: cd 00 mov x,#$00 +03c7: d8 1e mov $1e,x +03c9: 8f 01 20 mov $20,#$01 +03cc: f5 37 00 mov a,$0037+x +03cf: f0 1a beq $03eb +03d1: e4 20 mov a,$20 +03d3: 24 0a and a,$0a +03d5: d0 14 bne $03eb +03d7: d8 1d mov $1d,x +03d9: eb 36 mov y,$36 +03db: f4 48 mov a,$48+x +03dd: cf mul ya +03de: 60 clrc +03df: 94 47 adc a,$47+x +03e1: d4 47 mov $47+x,a +03e3: 90 06 bcc $03eb +03e5: 3f 10 08 call $0810 +03e8: 3f 9d 0b call $0b9d +03eb: 3d inc x +03ec: 3d inc x +03ed: 0b 20 asl $20 +03ef: d0 db bne $03cc +03f1: 3f 91 05 call $0591 +03f4: 5f 6d 03 jmp $036d + +03f7: 80 setc +03f8: a8 ca sbc a,#$ca +03fa: 30 12 bmi $040e +03fc: 8d 07 mov y,#$07 +03fe: 8f b4 17 mov $17,#$b4 +0401: 8f 0f 18 mov $18,#$0f +0404: 3f d4 08 call $08d4 +0407: fc inc y +0408: f7 17 mov a,($17)+y +040a: 28 7f and a,#$7f +040c: 2f 09 bra $0417 +040e: 88 4a adc a,#$4a +0410: fb 37 mov y,$37+x +0412: 10 03 bpl $0417 +0414: 60 clrc +0415: 84 1c adc a,$1c +0417: 60 clrc +0418: 95 30 01 adc a,$0130+x +041b: d5 61 02 mov $0261+x,a +041e: f5 81 02 mov a,$0281+x +0421: d5 60 02 mov $0260+x,a +0424: e8 00 mov a,#$00 +0426: d5 b0 02 mov $02b0+x,a +0429: d5 e0 02 mov $02e0+x,a +042c: d4 a8 mov $a8+x,a +042e: d4 97 mov $97+x,a +0430: d4 b8 mov $b8+x,a +0432: 09 20 1e or ($1e),($20) +0435: f5 90 02 mov a,$0290+x +0438: d4 87 mov $87+x,a +043a: f0 1e beq $045a +043c: f5 91 02 mov a,$0291+x +043f: d4 88 mov $88+x,a +0441: f5 a0 02 mov a,$02a0+x +0444: d0 0a bne $0450 +0446: f5 61 02 mov a,$0261+x +0449: 80 setc +044a: b5 a1 02 sbc a,$02a1+x +044d: d5 61 02 mov $0261+x,a +0450: f5 a1 02 mov a,$02a1+x +0453: 60 clrc +0454: 95 61 02 adc a,$0261+x +0457: 3f 82 0a call $0a82 +045a: f5 61 02 mov a,$0261+x +045d: fd mov y,a +045e: f5 60 02 mov a,$0260+x +0461: da 21 movw $21,ya +0463: e4 22 mov a,$22 +0465: 1c asl a +0466: fd mov y,a +0467: f6 e4 0d mov a,$0de4+y +046a: c4 18 mov $18,a +046c: f6 e3 0d mov a,$0de3+y +046f: c4 17 mov $17,a +0471: f6 e6 0d mov a,$0de6+y +0474: 2d push a +0475: f6 e5 0d mov a,$0de5+y +0478: ee pop y +0479: 9a 17 subw ya,$17 +047b: 6d push y +047c: fd mov y,a +047d: e4 21 mov a,$21 +047f: cf mul ya +0480: cb 19 mov $19,y +0482: 8f 00 1a mov $1a,#$00 +0485: ee pop y +0486: e4 21 mov a,$21 +0488: cf mul ya +0489: 7a 19 addw ya,$19 +048b: 7a 17 addw ya,$17 +048d: da 17 movw $17,ya +048f: f5 50 01 mov a,$0150+x +0492: eb 18 mov y,$18 +0494: cf mul ya +0495: da 19 movw $19,ya +0497: f5 50 01 mov a,$0150+x +049a: eb 17 mov y,$17 +049c: cf mul ya +049d: 6d push y +049e: f5 51 01 mov a,$0151+x +04a1: eb 17 mov y,$17 +04a3: cf mul ya +04a4: 7a 19 addw ya,$19 +04a6: da 19 movw $19,ya +04a8: f5 51 01 mov a,$0151+x +04ab: eb 18 mov y,$18 +04ad: cf mul ya +04ae: fd mov y,a +04af: ae pop a +04b0: 7a 19 addw ya,$19 +04b2: da 19 movw $19,ya +04b4: 7d mov a,x +04b5: 9f xcn a +04b6: 5c lsr a +04b7: 08 02 or a,#$02 +04b9: fd mov y,a +04ba: e4 19 mov a,$19 +04bc: 3f c2 04 call $04c2 +04bf: fc inc y +04c0: e4 1a mov a,$1a +04c2: cc f2 00 mov $00f2,y +04c5: c5 f3 00 mov $00f3,a +04c8: 6f ret + +04c9: a2 27 set5 $27 +04cb: 5d mov x,a +04cc: d8 34 mov $34,x +04ce: e8 00 mov a,#$00 +04d0: c4 35 mov $35,a +04d2: 80 setc +04d3: a4 31 sbc a,$31 +04d5: 3f 9b 0a call $0a9b +04d8: da 32 movw $32,ya +04da: 6f ret + +04db: a2 27 set5 $27 +04dd: 5d mov x,a +04de: d8 34 mov $34,x +04e0: e8 ff mov a,#$ff +04e2: c4 35 mov $35,a +04e4: 80 setc +04e5: eb 37 mov y,$37 +04e7: f0 02 beq $04eb +04e9: a4 31 sbc a,$31 +04eb: 3f 9b 0a call $0a9b +04ee: da 32 movw $32,ya +04f0: 6f ret + +04f1: 3f b3 07 call $07b3 +04f4: 5f e5 05 jmp $05e5 + +04f7: 8d 00 mov y,#$00 +04f9: cb 20 mov $20,y +04fb: 8f 01 09 mov $09,#$01 +04fe: 76 37 00 cmp a,$0037+y +0501: d0 15 bne $0518 +0503: 2d push a +0504: 1c asl a +0505: 90 05 bcc $050c +0507: 8f 00 07 mov $07,#$00 +050a: b2 27 clr5 $27 +050c: e8 00 mov a,#$00 +050e: d6 37 00 mov $0037+y,a +0511: d6 38 00 mov $0038+y,a +0514: 09 09 20 or ($20),($09) +0517: ae pop a +0518: fc inc y +0519: fc inc y +051a: 0b 09 asl $09 +051c: d0 e0 bne $04fe +051e: 3f 63 05 call $0563 +0521: e4 20 mov a,$20 +0523: 5f e5 05 jmp $05e5 + +0526: 30 17 bmi $053f +0528: 3f 7c 06 call $067c +052b: f0 12 beq $053f +052d: f8 0b mov x,$0b +052f: e4 08 mov a,$08 +0531: 9c dec a +0532: 28 1f and a,#$1f +0534: d5 31 02 mov $0231+x,a +0537: e8 00 mov a,#$00 +0539: d5 30 02 mov $0230+x,a +053c: 09 09 26 or ($26),($09) +053f: 6f ret + +0540: f2 27 clr7 $27 +0542: 6f ret + +0543: e2 27 set7 $27 +0545: 2f 25 bra $056c +0547: e3 27 18 bbs7 $27,$0562 +054a: a3 27 15 bbs5 $27,$0562 +054d: e4 31 mov a,$31 +054f: f0 11 beq $0562 +0551: e8 10 mov a,#$10 +0553: 5d mov x,a +0554: c4 34 mov $34,a +0556: e8 d2 mov a,#$d2 +0558: c4 35 mov $35,a +055a: 80 setc +055b: a4 31 sbc a,$31 +055d: 3f 9b 0a call $0a9b +0560: da 32 movw $32,ya +0562: 6f ret + +0563: e3 27 12 bbs7 $27,$0578 +0566: e4 43 mov a,$43 +0568: 04 45 or a,$45 +056a: d0 0c bne $0578 +056c: a3 27 09 bbs5 $27,$0578 +056f: e4 31 mov a,$31 +0571: f0 05 beq $0578 +0573: e8 40 mov a,#$40 +0575: 3f dd 04 call $04dd +0578: 6f ret + +0579: e8 ff mov a,#$ff +057b: 3f e8 05 call $05e8 +057e: e8 02 mov a,#$02 +0580: 3f 7c 06 call $067c +0583: 48 ff eor a,#$ff +0585: c4 0a mov $0a,a +0587: 6f ret + +0588: 29 0a 1f and ($1f),($0a) +058b: 8f 00 0a mov $0a,#$00 +058e: fa 1f 1e mov ($1e),($1f) +0591: 8d 5c mov y,#$5c +0593: e8 00 mov a,#$00 +0595: 3f c2 04 call $04c2 +0598: e4 1e mov a,$1e +059a: 09 1e 1f or ($1f),($1e) +059d: 8d 4c mov y,#$4c +059f: 5f c2 04 jmp $04c2 + +05a2: c2 27 set6 $27 +05a4: 8f ff 26 mov $26,#$ff +05a7: 6f ret + +05a8: d2 27 clr6 $27 +05aa: 8f ff 26 mov $26,#$ff +05ad: 6f ret + +05ae: 28 7f and a,#$7f +05b0: 8d 0c mov y,#$0c +05b2: 3f c2 04 call $04c2 +05b5: 8d 1c mov y,#$1c +05b7: 5f c2 04 jmp $04c2 + +05ba: 3f ed 05 call $05ed +05bd: f0 22 beq $05e1 +05bf: 93 27 0b bbc4 $27,$05cd +05c2: 92 27 clr4 $27 +05c4: fd mov y,a +05c5: e4 12 mov a,$12 +05c7: 1c asl a +05c8: 5d mov x,a +05c9: dd mov a,y +05ca: 1f 7f 0e jmp ($0e7f+x) + +05cd: 68 f0 cmp a,#$f0 +05cf: 90 11 bcc $05e2 +05d1: 68 fc cmp a,#$fc +05d3: b0 0c bcs $05e1 +05d5: 28 0f and a,#$0f +05d7: c4 12 mov $12,a +05d9: 5d mov x,a +05da: f5 73 0e mov a,$0e73+x +05dd: f0 e5 beq $05c4 +05df: 82 27 set4 $27 +05e1: 6f ret + +05e2: 3f 7c 06 call $067c +05e5: 4e 1f 00 tclr1 $001f +05e8: 8d 5c mov y,#$5c +05ea: 5f c2 04 jmp $04c2 + +05ed: e5 f5 00 mov a,$00f5 +05f0: 65 f5 00 cmp a,$00f5 +05f3: d0 f8 bne $05ed +05f5: 68 00 cmp a,#$00 +05f7: f0 02 beq $05fb +05f9: c4 08 mov $08,a +05fb: e5 f4 00 mov a,$00f4 +05fe: 65 f4 00 cmp a,$00f4 +0601: d0 f8 bne $05fb +0603: 68 00 cmp a,#$00 +0605: f0 03 beq $060a +0607: c5 f4 00 mov $00f4,a +060a: eb 07 mov y,$07 +060c: 8d 11 mov y,#$11 +060e: cc f1 00 mov $00f1,y +0611: fd mov y,a +0612: 6f ret + +0613: e8 0a mov a,#$0a +0615: d6 31 02 mov $0231+y,a +0618: e8 ff mov a,#$ff +061a: d6 01 02 mov $0201+y,a +061d: d6 47 00 mov $0047+y,a +0620: e8 00 mov a,#$00 +0622: d6 81 02 mov $0281+y,a +0625: d6 50 02 mov $0250+y,a +0628: d6 30 01 mov $0130+y,a +062b: d6 30 02 mov $0230+y,a +062e: d6 67 00 mov $0067+y,a +0631: d6 68 00 mov $0068+y,a +0634: d6 a7 00 mov $00a7+y,a +0637: d6 b7 00 mov $00b7+y,a +063a: d6 77 00 mov $0077+y,a +063d: d6 90 02 mov $0290+y,a +0640: d6 91 02 mov $0291+y,a +0643: d6 87 00 mov $0087+y,a +0646: d6 88 00 mov $0088+y,a +0649: d6 60 02 mov $0260+y,a +064c: d6 61 02 mov $0261+y,a +064f: bc inc a +0650: d6 57 00 mov $0057+y,a +0653: e8 20 mov a,#$20 +0655: d6 48 00 mov $0048+y,a +0658: f6 37 00 mov a,$0037+y +065b: 10 1e bpl $067b +065d: e8 00 mov a,#$00 +065f: c4 28 mov $28,a +0661: c4 30 mov $30,a +0663: c4 1c mov $1c,a +0665: c4 2e mov $2e,a +0667: c4 2f mov $2f,a +0669: d6 38 00 mov $0038+y,a +066c: 8f ff 29 mov $29,#$ff +066f: 78 03 12 cmp $12,#$03 +0672: f0 07 beq $067b +0674: c4 34 mov $34,a +0676: c4 35 mov $35,a +0678: 8f ff 31 mov $31,#$ff +067b: 6f ret + +067c: 3f ee 06 call $06ee +067f: f0 36 beq $06b7 +0681: 78 60 0e cmp $0e,#$60 +0684: b0 34 bcs $06ba +0686: cd 01 mov x,#$01 +0688: 8d 0c mov y,#$0c +068a: 8f 40 09 mov $09,#$40 +068d: 76 37 00 cmp a,$0037+y +0690: f0 1f beq $06b1 +0692: 76 39 00 cmp a,$0039+y +0695: f0 16 beq $06ad +0697: e4 0f mov a,$0f +0699: 2d push a +069a: f6 3a 00 mov a,$003a+y +069d: 76 38 00 cmp a,$0038+y +06a0: ae pop a +06a1: 90 05 bcc $06a8 +06a3: 76 38 00 cmp a,$0038+y +06a6: b0 09 bcs $06b1 +06a8: 76 3a 00 cmp a,$003a+y +06ab: 90 0a bcc $06b7 +06ad: fc inc y +06ae: fc inc y +06af: 0b 09 asl $09 +06b1: 3f 0d 07 call $070d +06b4: e4 09 mov a,$09 +06b6: 6f ret + +06b7: e8 00 mov a,#$00 +06b9: 6f ret + +06ba: c2 07 set6 $07 +06bc: f2 07 clr7 $07 +06be: 78 a0 0e cmp $0e,#$a0 +06c1: b0 21 bcs $06e4 +06c3: 8d 00 mov y,#$00 +06c5: cd 06 mov x,#$06 +06c7: 3f 0d 07 call $070d +06ca: 8d 0c mov y,#$0c +06cc: f6 37 00 mov a,$0037+y +06cf: 10 10 bpl $06e1 +06d1: e8 00 mov a,#$00 +06d3: d6 37 00 mov $0037+y,a +06d6: d6 38 00 mov $0038+y,a +06d9: d6 39 00 mov $0039+y,a +06dc: d6 3a 00 mov $003a+y,a +06df: 9c dec a +06e0: 6f ret + +06e1: e8 3f mov a,#$3f +06e3: 6f ret + +06e4: 8d 00 mov y,#$00 +06e6: cd 08 mov x,#$08 +06e8: 3f 0d 07 call $070d +06eb: e8 ff mov a,#$ff +06ed: 6f ret + +06ee: 2d push a +06ef: c4 0e mov $0e,a +06f1: 1c asl a +06f2: 5d mov x,a +06f3: b0 13 bcs $0708 +06f5: f5 e1 10 mov a,$10e1+x +06f8: f0 0c beq $0706 +06fa: fd mov y,a +06fb: f5 e0 10 mov a,$10e0+x +06fe: da 19 movw $19,ya +0700: 8d 00 mov y,#$00 +0702: f7 19 mov a,($19)+y +0704: c4 0f mov $0f,a +0706: ae pop a +0707: 6f ret + +0708: f5 01 10 mov a,$1001+x ; play song +070b: 2f f9 bra $0706 +070d: cb 0b mov $0b,y +070f: 4d push x +0710: e4 0e mov a,$0e +0712: 1c asl a +0713: 90 25 bcc $073a +0715: 5d mov x,a +0716: f5 01 10 mov a,$1001+x +0719: fd mov y,a +071a: f5 00 10 mov a,$1000+x +071d: da 23 movw $23,ya +071f: 3f 6e 07 call $076e +0722: da 19 movw $19,ya +0724: ce pop x +0725: eb 0b mov y,$0b +0727: e4 0e mov a,$0e +0729: d6 37 00 mov $0037+y,a +072c: 3f 13 06 call $0613 +072f: 3f 84 07 call $0784 +0732: 1d dec x +0733: d0 f2 bne $0727 +0735: d8 25 mov $25,x +0737: 5f f3 0a jmp $0af3 + +073a: 5d mov x,a +073b: f5 e1 10 mov a,$10e1+x +073e: fd mov y,a +073f: f5 e0 10 mov a,$10e0+x +0742: 80 setc +0743: a4 0b sbc a,$0b +0745: b0 01 bcs $0748 +0747: dc dec y +0748: da 19 movw $19,ya +074a: 3a 19 incw $19 +074c: ce pop x +074d: eb 0b mov y,$0b +074f: e4 0e mov a,$0e +0751: d6 37 00 mov $0037+y,a +0754: 3f 13 06 call $0613 +0757: e4 0f mov a,$0f +0759: d6 38 00 mov $0038+y,a +075c: f7 19 mov a,($19)+y +075e: d6 c7 00 mov $00c7+y,a +0761: fc inc y +0762: f7 19 mov a,($19)+y +0764: d6 c7 00 mov $00c7+y,a +0767: fc inc y +0768: 1d dec x +0769: d0 e4 bne $074f +076b: 5f 47 05 jmp $0547 + +076e: 8d 00 mov y,#$00 +0770: f7 23 mov a,($23)+y +0772: 3a 23 incw $23 +0774: 2d push a +0775: f7 23 mov a,($23)+y +0777: f0 06 beq $077f +0779: 3a 23 incw $23 +077b: fd mov y,a +077c: ae pop a +077d: 2f 04 bra $0783 +077f: 3a 23 incw $23 +0781: fd mov y,a +0782: ae pop a +0783: 6f ret + +0784: f7 19 mov a,($19)+y +0786: d6 c7 00 mov $00c7+y,a +0789: fc inc y +078a: f7 19 mov a,($19)+y +078c: d6 c7 00 mov $00c7+y,a +078f: fc inc y +0790: 6f ret + +0791: f5 37 00 mov a,$0037+x +0794: 68 80 cmp a,#$80 +0796: 90 10 bcc $07a8 +0798: 68 a0 cmp a,#$a0 +079a: b0 06 bcs $07a2 +079c: 4d push x +079d: 3f ca 07 call $07ca +07a0: ce pop x +07a1: 6f ret + +07a2: 4d push x +07a3: 3f b3 07 call $07b3 +07a6: ce pop x +07a7: 6f ret + +07a8: e8 00 mov a,#$00 +07aa: d5 37 00 mov $0037+x,a +07ad: d5 38 00 mov $0038+x,a +07b0: 5f 63 05 jmp $0563 + +07b3: 8f 00 07 mov $07,#$00 +07b6: b2 27 clr5 $27 +07b8: cd 0e mov x,#$0e +07ba: 8d ff mov y,#$ff +07bc: e8 00 mov a,#$00 +07be: d5 37 00 mov $0037+x,a +07c1: d5 38 00 mov $0038+x,a +07c4: 1d dec x +07c5: 1d dec x +07c6: 10 f6 bpl $07be +07c8: dd mov a,y +07c9: 6f ret + +07ca: 8f 00 07 mov $07,#$00 +07cd: b2 27 clr5 $27 +07cf: cd 0a mov x,#$0a +07d1: 8d 3f mov y,#$3f +07d3: 2f e7 bra $07bc +07d5: 3f 6e 07 call $076e +07d8: d0 19 bne $07f3 +07da: fd mov y,a +07db: d0 03 bne $07e0 +07dd: 5f 91 07 jmp $0791 + +07e0: 8b 25 dec $25 +07e2: 10 02 bpl $07e6 +07e4: c4 25 mov $25,a +07e6: 3f 6e 07 call $076e +07e9: 2d push a +07ea: e4 25 mov a,$25 +07ec: ae pop a +07ed: f0 e6 beq $07d5 +07ef: da 23 movw $23,ya +07f1: 2f e2 bra $07d5 +07f3: da 19 movw $19,ya +07f5: 8d 00 mov y,#$00 +07f7: e8 01 mov a,#$01 +07f9: d6 57 00 mov $0057+y,a +07fc: 3f 84 07 call $0784 +07ff: f5 37 00 mov a,$0037+x +0802: 68 a0 cmp a,#$a0 +0804: b0 06 bcs $080c +0806: ad 0c cmp y,#$0c +0808: d0 ed bne $07f7 +080a: 2f 04 bra $0810 +080c: ad 10 cmp y,#$10 +080e: d0 e7 bne $07f7 +0810: 9b 57 dec $57+x +0812: f0 30 beq $0844 +0814: 3f b5 0c call $0cb5 +0817: 9b 58 dec $58+x +0819: f0 01 beq $081c +081b: 6f ret + +081c: f4 c7 mov a,$c7+x +081e: fb c8 mov y,$c8+x +0820: da 17 movw $17,ya +0822: 8d 00 mov y,#$00 +0824: f7 17 mov a,($17)+y +0826: f0 17 beq $083f +0828: 30 03 bmi $082d +082a: fc inc y +082b: 2f f7 bra $0824 +; vcmds 80-c7,c8,c9 - note/tie/rest +082d: 68 c8 cmp a,#$c8 +082f: f0 ea beq $081b +0831: 68 e0 cmp a,#$e0 +0833: 90 0a bcc $083f +0835: 6d push y +0836: fd mov y,a +0837: ae pop a +0838: 60 clrc +0839: 96 8c 0a adc a,$0a8c+y +083c: fd mov y,a +083d: 2f e5 bra $0824 +083f: e4 20 mov a,$20 +0841: 5f e5 05 jmp $05e5 + +0844: 3f 88 0d call $0d88 +0847: d0 2f bne $0878 +0849: f4 77 mov a,$77+x +084b: d0 0d bne $085a +084d: f5 37 00 mov a,$0037+x +0850: 68 80 cmp a,#$80 +0852: b0 03 bcs $0857 +0854: 5f 91 07 jmp $0791 + +0857: 5f d5 07 jmp $07d5 + +085a: 3f 6d 08 call $086d +085d: 9b 77 dec $77+x +085f: d0 e3 bne $0844 +0861: f5 10 01 mov a,$0110+x +0864: d4 c7 mov $c7+x,a +0866: f5 11 01 mov a,$0111+x +0869: d4 c8 mov $c8+x,a +086b: 2f d7 bra $0844 +086d: f5 20 01 mov a,$0120+x +0870: d4 c7 mov $c7+x,a +0872: f5 21 01 mov a,$0121+x +0875: d4 c8 mov $c8+x,a +0877: 6f ret + +; vcmds 01-7f +0878: 30 23 bmi $089d +087a: d5 00 01 mov $0100+x,a +087d: 3f 8a 0d call $0d8a +0880: 30 1b bmi $089d +0882: 2d push a +0883: 9f xcn a +0884: 28 07 and a,#$07 +0886: fd mov y,a +0887: f6 85 0b mov a,$0b85+y ; set dur% from high nybble +088a: d5 01 01 mov $0101+x,a +088d: ae pop a +088e: 28 0f and a,#$0f +0890: fd mov y,a +0891: f6 8d 0b mov a,$0b8d+y ; set per-note vol from low nybble +0894: d5 40 01 mov $0140+x,a +0897: 09 20 26 or ($26),($20) +089a: 3f 8a 0d call $0d8a +089d: 68 e0 cmp a,#$e0 +089f: 90 05 bcc $08a6 +08a1: 3f c2 08 call $08c2 +08a4: 2f 9e bra $0844 +08a6: 68 c9 cmp a,#$c9 +08a8: f0 07 beq $08b1 +08aa: 68 c8 cmp a,#$c8 +08ac: f0 03 beq $08b1 +08ae: 3f f7 03 call $03f7 +08b1: f5 00 01 mov a,$0100+x +08b4: d4 57 mov $57+x,a +08b6: fd mov y,a +08b7: f5 01 01 mov a,$0101+x +08ba: cf mul ya +08bb: dd mov a,y +08bc: d0 01 bne $08bf +08be: bc inc a +08bf: d4 58 mov $58+x,a +08c1: 6f ret + +; dispatch vcmd in A (e0-ff) +08c2: 1c asl a +08c3: 5d mov x,a +08c4: e8 00 mov a,#$00 +08c6: 1f 7a 0a jmp ($0a7a+x) + +; vcmd e0 - set instrument +08c9: 3f 88 0d call $0d88 +08cc: 8d 06 mov y,#$06 +08ce: 8f 00 17 mov $17,#$00 +08d1: 8f 0f 18 mov $18,#$0f +08d4: cf mul ya +08d5: 7a 17 addw ya,$17 +08d7: da 17 movw $17,ya +08d9: 4d push x +08da: 7d mov a,x +08db: 9f xcn a +08dc: 5c lsr a +08dd: 08 04 or a,#$04 +08df: 5d mov x,a +08e0: e4 20 mov a,$20 +08e2: 48 ff eor a,#$ff +08e4: 24 1b and a,$1b +08e6: c4 1b mov $1b,a +08e8: 8d 3d mov y,#$3d +08ea: 3f c2 04 call $04c2 +08ed: 8d 00 mov y,#$00 +08ef: f7 17 mov a,($17)+y +08f1: c9 f2 00 mov $00f2,x +08f4: c5 f3 00 mov $00f3,a +08f7: 3d inc x +08f8: fc inc y +08f9: ad 04 cmp y,#$04 +08fb: d0 f2 bne $08ef +08fd: f7 17 mov a,($17)+y +08ff: ce pop x +0900: d5 51 01 mov $0151+x,a +0903: fc inc y +0904: f7 17 mov a,($17)+y +0906: d5 50 01 mov $0150+x,a +0909: e8 00 mov a,#$00 +090b: 6f ret + +; vcmd e1 - pan +090c: 3f 88 0d call $0d88 +090f: 28 1f and a,#$1f +0911: d5 31 02 mov $0231+x,a +0914: e8 00 mov a,#$00 +0916: d5 30 02 mov $0230+x,a +0919: 09 20 26 or ($26),($20) +091c: 6f ret + +; vcmd e2 - pan fade +091d: 3f 88 0d call $0d88 +0920: d4 68 mov $68+x,a +0922: 2d push a +0923: 3f 8a 0d call $0d8a +0926: d5 50 02 mov $0250+x,a +0929: 80 setc +092a: b5 31 02 sbc a,$0231+x +092d: ce pop x +092e: 3f 9b 0a call $0a9b +0931: d5 40 02 mov $0240+x,a +0934: dd mov a,y +0935: d5 41 02 mov $0241+x,a +0938: 6f ret + +; vcmd e3 - vibrato on +0939: 3f 88 0d call $0d88 +093c: d5 c0 02 mov $02c0+x,a +093f: e8 00 mov a,#$00 +0941: d5 c1 02 mov $02c1+x,a +0944: 3f 8a 0d call $0d8a +0947: d5 b1 02 mov $02b1+x,a +094a: 3f 8a 0d call $0d8a +; vcmd e4 - vibrato off +094d: f8 1d mov x,$1d +094f: d4 a7 mov $a7+x,a +0951: 6f ret + +; vcmd ef - vibrato fade +0952: 3f 88 0d call $0d88 +0955: d5 c1 02 mov $02c1+x,a +0958: 2d push a +0959: f4 a7 mov a,$a7+x +095b: d5 d1 02 mov $02d1+x,a +095e: ce pop x +095f: 8d 00 mov y,#$00 +0961: 9e div ya,x +0962: f8 1d mov x,$1d +0964: d5 d0 02 mov $02d0+x,a +0967: 6f ret + +; vcmd e5 - master volume +0968: 3f 88 0d call $0d88 +096b: c4 29 mov $29,a +096d: fa 00 28 mov ($28),($00) +0970: 6f ret + +; vcmd e6 - master volume fade +0971: 3f 88 0d call $0d88 +0974: c4 2e mov $2e,a +0976: 2d push a +0977: 3f 8a 0d call $0d8a +097a: c4 2f mov $2f,a +097c: 80 setc +097d: ce pop x +097e: a4 29 sbc a,$29 +0980: 3f 9b 0a call $0a9b +0983: da 2a movw $2a,ya +0985: 6f ret + +; vcmd e7 - tempo +0986: 3f 88 0d call $0d88 +0989: 1c asl a +098a: d4 48 mov $48+x,a +098c: 6f ret + +; vcmd e8 - global transpose +098d: 3f 88 0d call $0d88 +0990: c4 1c mov $1c,a +0992: 6f ret + +; vcmd e9 - per-voice transpose +0993: 3f 88 0d call $0d88 +0996: d5 30 01 mov $0130+x,a +0999: 6f ret + +; vcmd ea - tremolo on +099a: 3f 88 0d call $0d88 +099d: d5 f0 02 mov $02f0+x,a +09a0: 3f 8a 0d call $0d8a +09a3: d5 e1 02 mov $02e1+x,a +09a6: 3f 8a 0d call $0d8a +; vcmd eb - tremolo off +09a9: f8 1d mov x,$1d +09ab: d4 b7 mov $b7+x,a +09ad: 6f ret + +; vcmd f0 - pitch envelope (release) +09ae: e8 01 mov a,#$01 +09b0: 2f 02 bra $09b4 +; vcmd f1 - pitch envelope (attack) +09b2: e8 00 mov a,#$00 +09b4: f8 1d mov x,$1d +09b6: d5 a0 02 mov $02a0+x,a +09b9: 3f 88 0d call $0d88 +09bc: d5 91 02 mov $0291+x,a +09bf: 3f 8a 0d call $0d8a +09c2: d5 90 02 mov $0290+x,a +09c5: 3f 8a 0d call $0d8a +09c8: d5 a1 02 mov $02a1+x,a +09cb: 6f ret + +; vcmd f2 - pitch envelope off +09cc: f8 1d mov x,$1d +09ce: d5 90 02 mov $0290+x,a +09d1: 6f ret + +; vcmd ec - volume +09d2: 3f 88 0d call $0d88 +09d5: d5 01 02 mov $0201+x,a +09d8: e8 00 mov a,#$00 +09da: d5 00 02 mov $0200+x,a +09dd: 09 20 26 or ($26),($20) +09e0: 6f ret + +; vcmd ed - volume fade +09e1: 3f 88 0d call $0d88 +09e4: d4 67 mov $67+x,a +09e6: 2d push a +09e7: 3f 8a 0d call $0d8a +09ea: d5 20 02 mov $0220+x,a +09ed: 80 setc +09ee: b5 01 02 sbc a,$0201+x +09f1: ce pop x +09f2: 3f 9b 0a call $0a9b +09f5: d5 10 02 mov $0210+x,a +09f8: dd mov a,y +09f9: d5 11 02 mov $0211+x,a +09fc: 6f ret + +; vcmd f3 - tuning +09fd: 3f 88 0d call $0d88 +0a00: d5 81 02 mov $0281+x,a +0a03: 6f ret + +; vcmd f5 - set ASDR +0a04: 3f 88 0d call $0d88 +0a07: 8d 00 mov y,#$00 +0a09: 68 a0 cmp a,#$a0 +0a0b: b0 10 bcs $0a1d +0a0d: 4d push x +0a0e: cd 0a mov x,#$0a +0a10: 9e div ya,x +0a11: c4 0b mov $0b,a +0a13: dd mov a,y +0a14: 28 07 and a,#$07 +0a16: 9f xcn a +0a17: 04 0b or a,$0b +0a19: 08 80 or a,#$80 +0a1b: fd mov y,a +0a1c: ce pop x +0a1d: 4d push x +0a1e: 7d mov a,x +0a1f: 9f xcn a +0a20: 5c lsr a +0a21: 08 05 or a,#$05 +0a23: 5d mov x,a +0a24: dd mov a,y +0a25: c9 f2 00 mov $00f2,x +0a28: c5 f3 00 mov $00f3,a +0a2b: 4d push x +0a2c: ee pop y +0a2d: ce pop x +0a2e: fc inc y +0a2f: 3f 54 0a call $0a54 +0a32: cc f2 00 mov $00f2,y +0a35: 4d push x +0a36: 6d push y +0a37: 8d 00 mov y,#$00 +0a39: cd 1e mov x,#$1e +0a3b: 9e div ya,x +0a3c: fc inc y +0a3d: fc inc y +0a3e: cb 0b mov $0b,y +0a40: 9f xcn a +0a41: 1c asl a +0a42: 04 0b or a,$0b +0a44: ee pop y +0a45: ce pop x +0a46: c5 f3 00 mov $00f3,a +0a49: fc inc y +0a4a: 3f 54 0a call $0a54 +0a4d: cc f2 00 mov $00f2,y +0a50: c5 f3 00 mov $00f3,a +0a53: 6f ret + +0a54: e7 c7 mov a,($c7+x) +0a56: bb c7 inc $c7+x +0a58: d0 02 bne $0a5c +0a5a: bb c8 inc $c8+x +0a5c: 6f ret + +; vcmd ee - call subroutine +0a5d: 3f 88 0d call $0d88 +0a60: 2d push a +0a61: 3f 8a 0d call $0d8a +0a64: 2d push a +0a65: 3f 8a 0d call $0d8a +0a68: d5 77 00 mov $0077+x,a +0a6b: f4 c7 mov a,$c7+x +0a6d: d5 10 01 mov $0110+x,a +0a70: f4 c8 mov a,$c8+x +0a72: d5 11 01 mov $0111+x,a +0a75: ae pop a +0a76: d4 c8 mov $c8+x,a +0a78: d5 21 01 mov $0121+x,a +0a7b: ae pop a +0a7c: d4 c7 mov $c7+x,a +0a7e: d5 20 01 mov $0120+x,a +0a81: 6f ret + +0a82: 28 7f and a,#$7f +0a84: d5 80 02 mov $0280+x,a +0a87: 80 setc +0a88: b5 61 02 sbc a,$0261+x +0a8b: 2d push a +0a8c: f4 87 mov a,$87+x +0a8e: 5d mov x,a +0a8f: ae pop a +0a90: 3f 9b 0a call $0a9b +0a93: d5 70 02 mov $0270+x,a +0a96: dd mov a,y +0a97: d5 71 02 mov $0271+x,a +0a9a: 6f ret + +0a9b: b0 0d bcs $0aaa +0a9d: 48 ff eor a,#$ff +0a9f: bc inc a +0aa0: 3f aa 0a call $0aaa +0aa3: da 17 movw $17,ya +0aa5: ba 0c movw ya,$0c +0aa7: 9a 17 subw ya,$17 +0aa9: 6f ret + +0aaa: 8d 00 mov y,#$00 +0aac: 9e div ya,x +0aad: 2d push a +0aae: e8 00 mov a,#$00 +0ab0: 9e div ya,x +0ab1: ee pop y +0ab2: f8 1d mov x,$1d +0ab4: 6f ret + +; vcmd f6 - echo vbits/volume +0ab5: 3f 88 0d call $0d88 +0ab8: c4 03 mov $03,a +0aba: 3f 88 0d call $0d88 +0abd: c4 04 mov $04,a +0abf: 3f 88 0d call $0d88 +0ac2: c4 05 mov $05,a +0ac4: b2 02 clr5 $02 +0ac6: 6f ret + +; vcmd f7 - set echo params +0ac7: 4d push x +0ac8: 3f 88 0d call $0d88 +0acb: 3f 09 0b call $0b09 +0ace: 3f 88 0d call $0d88 +0ad1: c4 06 mov $06,a +0ad3: 3f 88 0d call $0d88 +0ad6: 9f xcn a +0ad7: 5c lsr a +0ad8: 5d mov x,a +0ad9: 8d 0f mov y,#$0f +0adb: f5 a9 0d mov a,$0da9+x +0ade: 3f c2 04 call $04c2 +0ae1: 3d inc x +0ae2: dd mov a,y +0ae3: 60 clrc +0ae4: 88 10 adc a,#$10 +0ae6: fd mov y,a +0ae7: 10 f2 bpl $0adb +0ae9: ce pop x +0aea: e4 03 mov a,$03 +0aec: 8d 4d mov y,#$4d +0aee: b2 02 clr5 $02 +0af0: 5f c2 04 jmp $04c2 + +0af3: 8f 00 04 mov $04,#$00 +0af6: 8f 00 05 mov $05,#$00 +0af9: a2 02 set5 $02 +0afb: e8 02 mov a,#$02 +0afd: 3f 09 0b call $0b09 +0b00: e8 00 mov a,#$00 +0b02: 8d 6c mov y,#$6c +0b04: 5f c2 04 jmp $04c2 + +; vcmd f8 - pitch slide +0b07: 2f ea bra $0af3 +0b09: c4 00 mov $00,a +0b0b: 8f 20 01 mov $01,#$20 +0b0e: e8 00 mov a,#$00 +0b10: 8d 2c mov y,#$2c +0b12: 3f c2 04 call $04c2 +0b15: 8d 3c mov y,#$3c +0b17: 3f c2 04 call $04c2 +0b1a: e8 00 mov a,#$00 +0b1c: 8d 0d mov y,#$0d +0b1e: 3f c2 04 call $04c2 +0b21: e4 00 mov a,$00 +0b23: 68 03 cmp a,#$03 +0b25: 90 02 bcc $0b29 +0b27: e8 02 mov a,#$02 +0b29: 8d 7d mov y,#$7d +0b2b: 3f c2 04 call $04c2 +0b2e: 9f xcn a +0b2f: 5c lsr a +0b30: 48 ff eor a,#$ff +0b32: 60 clrc +0b33: 88 01 adc a,#$01 +0b35: 8d 6d mov y,#$6d +0b37: 5f c2 04 jmp $04c2 + +; vcmd dispatch table +0b3a: dw $08c9 ; e0 - set instrument +0b3c: dw $090c ; e1 - pan +0b3e: dw $091d ; e2 - pan fade +0b40: dw $0939 ; e3 - vibrato on +0b42: dw $094d ; e4 - vibrato off +0b44: dw $0968 ; e5 - master volume +0b46: dw $0971 ; e6 - master volume fade +0b48: dw $0986 ; e7 - tempo +0b4a: dw $098d ; e8 - global transpose +0b4c: dw $0993 ; e9 - per-voice transpose +0b4e: dw $099a ; ea - tremolo on +0b50: dw $09a9 ; eb - tremolo off +0b52: dw $09d2 ; ec - volume +0b54: dw $09e1 ; ed - volume fade +0b56: dw $0a5d ; ee - call subroutine +0b58: dw $0952 ; ef - vibrato fade +0b5a: dw $09ae ; f0 - pitch envelope (release) +0b5c: dw $09b2 ; f1 - pitch envelope (attack) +0b5e: dw $09cc ; f2 - pitch envelope off +0b60: dw $09fd ; f3 - tuning +0b62: dw $0cc1 ; f4 +0b64: dw $0a04 ; f5 - set ASDR +0b66: dw $0ab5 ; f6 - echo vbits/volume +0b68: dw $0ac7 ; f7 - set echo params +0b6a: dw $0b07 ; f8 - pitch slide + +; vcmd lengths +0b6c: db $02,$02,$03,$04,$01,$02,$03,$02 ; e0-e7 +0b74: db $02,$02,$04,$01,$02,$03,$04,$02 ; e8-ef +0b7c: db $04,$04,$01,$02,$04,$04,$04,$04 ; f0-f7 +0b84: db $01 ; f8 + +; note dur%'s +0b85: db $32,$65,$7f,$98,$b2,$cb,$e5,$fc +; per-note velocity values +0b8d: db $19,$32,$4c,$65,$72,$7f,$8c,$98 +0b95: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc + +0b9d: 7d mov a,x +0b9e: d0 2a bne $0bca +0ba0: e4 34 mov a,$34 +0ba2: f0 14 beq $0bb8 +0ba4: e2 07 set7 $07 +0ba6: ba 32 movw ya,$32 +0ba8: 7a 30 addw ya,$30 +0baa: 6e 34 06 dbnz $34,$0bb3 +0bad: f2 07 clr7 $07 +0baf: b2 27 clr5 $27 +0bb1: ba 34 movw ya,$34 +0bb3: da 30 movw $30,ya +0bb5: 8f ff 26 mov $26,#$ff +0bb8: e4 2e mov a,$2e +0bba: f0 0e beq $0bca +0bbc: ba 2a movw ya,$2a +0bbe: 7a 28 addw ya,$28 +0bc0: 6e 2e 02 dbnz $2e,$0bc5 +0bc3: ba 2e movw ya,$2e +0bc5: da 28 movw $28,ya +0bc7: 8f ff 26 mov $26,#$ff +0bca: e4 01 mov a,$01 +0bcc: f0 20 beq $0bee +0bce: 8b 01 dec $01 +0bd0: d0 1c bne $0bee +0bd2: e4 04 mov a,$04 +0bd4: 8d 2c mov y,#$2c +0bd6: 3f c2 04 call $04c2 +0bd9: e4 05 mov a,$05 +0bdb: 8d 3c mov y,#$3c +0bdd: 3f c2 04 call $04c2 +0be0: e4 06 mov a,$06 +0be2: 8d 0d mov y,#$0d +0be4: 3f c2 04 call $04c2 +0be7: e4 02 mov a,$02 +0be9: 8d 6c mov y,#$6c +0beb: 3f c2 04 call $04c2 +0bee: f4 67 mov a,$67+x +0bf0: f0 0c beq $0bfe +0bf2: 09 20 26 or ($26),($20) +0bf5: e8 00 mov a,#$00 +0bf7: 8d 02 mov y,#$02 +0bf9: 9b 67 dec $67+x +0bfb: 3f 89 0c call $0c89 +0bfe: f4 b7 mov a,$b7+x +0c00: fd mov y,a +0c01: f0 23 beq $0c26 +0c03: f5 f0 02 mov a,$02f0+x +0c06: de b8 1b cbne $b8+x,$0c24 +0c09: 09 20 26 or ($26),($20) +0c0c: f5 e0 02 mov a,$02e0+x +0c0f: 10 07 bpl $0c18 +0c11: fc inc y +0c12: d0 04 bne $0c18 +0c14: e8 80 mov a,#$80 +0c16: 2f 04 bra $0c1c +0c18: 60 clrc +0c19: 95 e1 02 adc a,$02e1+x +0c1c: d5 e0 02 mov $02e0+x,a +0c1f: 3f 5e 0d call $0d5e +0c22: 2f 08 bra $0c2c +0c24: bb b8 inc $b8+x +0c26: f5 40 01 mov a,$0140+x +0c29: 3f 6d 0d call $0d6d +0c2c: f4 68 mov a,$68+x +0c2e: d0 0d bne $0c3d +0c30: e4 26 mov a,$26 +0c32: 24 20 and a,$20 +0c34: f0 52 beq $0c88 +0c36: e4 20 mov a,$20 +0c38: 4e 26 00 tclr1 $0026 +0c3b: 2f 09 bra $0c46 +0c3d: e8 30 mov a,#$30 +0c3f: 8d 02 mov y,#$02 +0c41: 9b 68 dec $68+x +0c43: 3f 89 0c call $0c89 +0c46: f5 31 02 mov a,$0231+x +0c49: fd mov y,a +0c4a: f5 30 02 mov a,$0230+x +0c4d: da 21 movw $21,ya +0c4f: 7d mov a,x +0c50: 9f xcn a +0c51: 5c lsr a +0c52: c4 10 mov $10,a +0c54: eb 22 mov y,$22 +0c56: d3 27 06 bbc6 $27,$0c5f +0c59: 8d 0a mov y,#$0a +0c5b: cb 22 mov $22,y +0c5d: cb 21 mov $21,y +0c5f: f6 95 0d mov a,$0d95+y +0c62: 80 setc +0c63: b6 94 0d sbc a,$0d94+y +0c66: eb 21 mov y,$21 +0c68: cf mul ya +0c69: dd mov a,y +0c6a: eb 22 mov y,$22 +0c6c: 60 clrc +0c6d: 96 94 0d adc a,$0d94+y +0c70: fd mov y,a +0c71: f5 41 01 mov a,$0141+x +0c74: cf mul ya +0c75: dd mov a,y +0c76: eb 10 mov y,$10 +0c78: 3f c2 04 call $04c2 +0c7b: e8 00 mov a,#$00 +0c7d: 8d 14 mov y,#$14 +0c7f: 9a 21 subw ya,$21 +0c81: da 21 movw $21,ya +0c83: ab 10 inc $10 +0c85: 33 10 cc bbc1 $10,$0c54 +0c88: 6f ret + +0c89: da 17 movw $17,ya +0c8b: d0 0f bne $0c9c +0c8d: 60 clrc +0c8e: 88 20 adc a,#$20 +0c90: da 19 movw $19,ya +0c92: 7d mov a,x +0c93: fd mov y,a +0c94: e8 00 mov a,#$00 +0c96: 2d push a +0c97: f7 19 mov a,($19)+y +0c99: fc inc y +0c9a: 2f 12 bra $0cae +0c9c: 60 clrc +0c9d: 88 10 adc a,#$10 +0c9f: da 19 movw $19,ya +0ca1: 7d mov a,x +0ca2: fd mov y,a +0ca3: f7 17 mov a,($17)+y +0ca5: 60 clrc +0ca6: 97 19 adc a,($19)+y +0ca8: 2d push a +0ca9: fc inc y +0caa: f7 17 mov a,($17)+y +0cac: 97 19 adc a,($19)+y +0cae: d7 17 mov ($17)+y,a +0cb0: dc dec y +0cb1: ae pop a +0cb2: d7 17 mov ($17)+y,a +0cb4: 6f ret + +0cb5: f2 11 clr7 $11 +0cb7: f4 87 mov a,$87+x +0cb9: d0 26 bne $0ce1 +0cbb: e7 c7 mov a,($c7+x) +0cbd: 68 f4 cmp a,#$f4 +0cbf: d0 33 bne $0cf4 +; vcmd f4 +0cc1: 3f 8c 0d call $0d8c +0cc4: 3f 8a 0d call $0d8a +0cc7: d4 88 mov $88+x,a +0cc9: 3f 8a 0d call $0d8a +0ccc: d4 87 mov $87+x,a +0cce: 3f 8a 0d call $0d8a +0cd1: 2d push a +0cd2: f4 37 mov a,$37+x +0cd4: ae pop a +0cd5: 10 03 bpl $0cda +0cd7: 60 clrc +0cd8: 84 1c adc a,$1c +0cda: 60 clrc +0cdb: 95 30 01 adc a,$0130+x +0cde: 3f 82 0a call $0a82 +0ce1: f4 88 mov a,$88+x +0ce3: f0 04 beq $0ce9 +0ce5: 9b 88 dec $88+x +0ce7: 2f 0b bra $0cf4 +0ce9: e2 11 set7 $11 +0ceb: e8 60 mov a,#$60 +0ced: 8d 02 mov y,#$02 +0cef: 9b 87 dec $87+x +0cf1: 3f 89 0c call $0c89 +0cf4: f5 61 02 mov a,$0261+x +0cf7: fd mov y,a +0cf8: f5 60 02 mov a,$0260+x +0cfb: da 21 movw $21,ya +0cfd: f4 a7 mov a,$a7+x +0cff: f0 09 beq $0d0a +0d01: f5 c0 02 mov a,$02c0+x +0d04: 74 a8 cmp a,$a8+x +0d06: f0 06 beq $0d0e +0d08: bb a8 inc $a8+x +0d0a: e3 11 4e bbs7 $11,$0d5b +0d0d: 6f ret + +0d0e: f5 c1 02 mov a,$02c1+x +0d11: f0 19 beq $0d2c +0d13: 74 97 cmp a,$97+x +0d15: d0 07 bne $0d1e +0d17: f5 d1 02 mov a,$02d1+x +0d1a: d4 a7 mov $a7+x,a +0d1c: 2f 0e bra $0d2c +0d1e: f4 97 mov a,$97+x +0d20: f0 02 beq $0d24 +0d22: f4 a7 mov a,$a7+x +0d24: 60 clrc +0d25: 95 d0 02 adc a,$02d0+x +0d28: d4 a7 mov $a7+x,a +0d2a: bb 97 inc $97+x +0d2c: f5 b0 02 mov a,$02b0+x +0d2f: 60 clrc +0d30: 95 b1 02 adc a,$02b1+x +0d33: d5 b0 02 mov $02b0+x,a +0d36: c4 10 mov $10,a +0d38: 1c asl a +0d39: 1c asl a +0d3a: 90 02 bcc $0d3e +0d3c: 48 ff eor a,#$ff +0d3e: fd mov y,a +0d3f: f4 a7 mov a,$a7+x +0d41: 68 f1 cmp a,#$f1 +0d43: b0 06 bcs $0d4b +0d45: cf mul ya +0d46: dd mov a,y +0d47: 8d 00 mov y,#$00 +0d49: 2f 03 bra $0d4e +0d4b: 28 0f and a,#$0f +0d4d: cf mul ya +0d4e: f3 10 06 bbc7 $10,$0d57 +0d51: da 10 movw $10,ya +0d53: ba 0c movw ya,$0c +0d55: 9a 10 subw ya,$10 +0d57: 7a 21 addw ya,$21 +0d59: da 21 movw $21,ya +0d5b: 5f 63 04 jmp $0463 +0d5e: 1c asl a +0d5f: 90 02 bcc $0d63 +0d61: 48 ff eor a,#$ff +0d63: fb b7 mov y,$b7+x +0d65: cf mul ya +0d66: f5 40 01 mov a,$0140+x +0d69: cf mul ya +0d6a: dd mov a,y +0d6b: 48 ff eor a,#$ff +0d6d: fd mov y,a +0d6e: f5 01 02 mov a,$0201+x +0d71: cf mul ya +0d72: f5 37 00 mov a,$0037+x +0d75: 30 04 bmi $0d7b +0d77: e8 ff mov a,#$ff +0d79: 2f 05 bra $0d80 +0d7b: e4 31 mov a,$31 +0d7d: cf mul ya +0d7e: e4 29 mov a,$29 +0d80: cf mul ya +0d81: dd mov a,y +0d82: cf mul ya +0d83: dd mov a,y +0d84: d5 41 01 mov $0141+x,a +0d87: 6f ret + +; get next byte +0d88: f8 1d mov x,$1d +0d8a: e7 c7 mov a,($c7+x) +0d8c: bb c7 inc $c7+x +0d8e: d0 02 bne $0d92 +0d90: bb c8 inc $c8+x +0d92: fd mov y,a +0d93: 6f ret + +; pan table +0d94: db $00,$01,$03,$07,$0d,$15,$1e,$29 +0d9c: db $34,$42,$51,$5e,$67,$6e,$73,$77 +0da4: db $7a,$7c,$7d,$7e,$7f + +; echo FIR presets +0da9: db $7f,$00,$00,$00,$00,$00,$00,$00 +0db1: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +0db9: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +0dc1: db $34,$33,$00,$d9,$e5,$01,$fc,$eb + +0dc9: db $0c,$1c,$2d,$3d,$5d,$0d,$4d,$6d,$7d,$6c,$2c,$3c,$5c +0dd6: db $7f,$7f,$00,$00,$2e,$00,$00,$f0,$00,$20,$00,$00,$ff + +; pitch table +0de3: dw $0042 +0de5: dw $0046 +0de7: dw $004b +0de9: dw $004f +0deb: dw $0054 +0ded: dw $0059 +0def: dw $005e +0df1: dw $0064 +0df3: dw $006a +0df5: dw $0070 +0df7: dw $0077 +0df9: dw $007e +0dfb: dw $0085 +0dfd: dw $008d +0dff: dw $0096 +0e01: dw $009f +0e03: dw $00a8 +0e05: dw $00b2 +0e07: dw $00bd +0e09: dw $00c8 +0e0b: dw $00d4 +0e0d: dw $00e1 +0e0f: dw $00ee +0e11: dw $00fc +0e13: dw $010b +0e15: dw $011b +0e17: dw $012c +0e19: dw $013e +0e1b: dw $0151 +0e1d: dw $0165 +0e1f: dw $017a +0e21: dw $0191 +0e23: dw $01a9 +0e25: dw $01c2 +0e27: dw $01dd +0e29: dw $01f9 +0e2b: dw $0217 +0e2d: dw $0237 +0e2f: dw $0259 +0e31: dw $027d +0e33: dw $02a3 +0e35: dw $02cb +0e37: dw $02f5 +0e39: dw $0322 +0e3b: dw $0352 +0e3d: dw $0385 +0e3f: dw $03ba +0e41: dw $03f3 +0e43: dw $042f +0e45: dw $046f +0e47: dw $04b2 +0e49: dw $04fa +0e4b: dw $0546 +0e4d: dw $0596 +0e4f: dw $05eb +0e51: dw $0645 +0e53: dw $06a5 +0e55: dw $070a +0e57: dw $0775 +0e59: dw $07e6 +0e5b: dw $085f +0e5d: dw $08de +0e5f: dw $0965 +0e61: dw $09f4 +0e63: dw $0a8c +0e65: dw $0b2c +0e67: dw $0bd6 +0e69: dw $0c8b +0e6b: dw $0d4a +0e6d: dw $0e14 +0e6f: dw $0eea +0e71: dw $0fcd + +0e73: db $00,$00,$01,$01,$00,$01,$00,$00,$01,$01,$00,$00 + +0e7f: dw $0579 +0e81: dw $0588 +0e83: dw $04c9 +0e85: dw $04db +0e87: dw $04f1 +0e89: dw $04f7 +0e8b: dw $05a2 +0e8d: dw $05a8 +0e8f: dw $05ae +0e91: dw $0526 +0e93: dw $0540 +0e95: dw $0543 \ No newline at end of file From a2bf032baa6a7262608e56787a0d9ed145b95b88 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:02:41 -0800 Subject: [PATCH 101/116] Update and rename snes/Super Double Dragon.s to snes/NSPC/Robert C. Ashworth/Super Double Dragon.s --- snes/{ => NSPC/Robert C. Ashworth}/Super Double Dragon.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename snes/{ => NSPC/Robert C. Ashworth}/Super Double Dragon.s (96%) diff --git a/snes/Super Double Dragon.s b/snes/NSPC/Robert C. Ashworth/Super Double Dragon.s similarity index 96% rename from snes/Super Double Dragon.s rename to snes/NSPC/Robert C. Ashworth/Super Double Dragon.s index d7a3fced..c8535d2f 100644 --- a/snes/Super Double Dragon.s +++ b/snes/NSPC/Robert C. Ashworth/Super Double Dragon.s @@ -1516,4 +1516,4 @@ 0e8f: dw $05ae 0e91: dw $0526 0e93: dw $0540 -0e95: dw $0543 \ No newline at end of file +0e95: dw $0543 From ddb81ad6eb8a1f385418c0e10d5c557db449606e Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:03:17 -0800 Subject: [PATCH 102/116] Rename snes/Super Double Dragon ($0300).bin to snes/NSPC/Robert C. Ashworth/Super Double Dragon ($0300).bin --- .../Super Double Dragon ($0300).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => NSPC/Robert C. Ashworth}/Super Double Dragon ($0300).bin (100%) diff --git a/snes/Super Double Dragon ($0300).bin b/snes/NSPC/Robert C. Ashworth/Super Double Dragon ($0300).bin similarity index 100% rename from snes/Super Double Dragon ($0300).bin rename to snes/NSPC/Robert C. Ashworth/Super Double Dragon ($0300).bin From c2f270faad4f6575155cd5d2bc9c836d3e7ba0f4 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:03:52 -0800 Subject: [PATCH 103/116] Add files via upload --- snes/NSPC/F-1 Grand Prix Part III ($0400).bin | Bin 0 -> 3469 bytes snes/NSPC/F-1 Grand Prix Part III.s | 1741 ++++++++++++++ snes/NSPC/SD F-1 Grand Prix ($0420).bin | Bin 0 -> 3835 bytes snes/NSPC/SD F-1 Grand Prix.s | 2091 +++++++++++++++++ 4 files changed, 3832 insertions(+) create mode 100644 snes/NSPC/F-1 Grand Prix Part III ($0400).bin create mode 100644 snes/NSPC/F-1 Grand Prix Part III.s create mode 100644 snes/NSPC/SD F-1 Grand Prix ($0420).bin create mode 100644 snes/NSPC/SD F-1 Grand Prix.s diff --git a/snes/NSPC/F-1 Grand Prix Part III ($0400).bin b/snes/NSPC/F-1 Grand Prix Part III ($0400).bin new file mode 100644 index 0000000000000000000000000000000000000000..33e591a469df68674a43c4d69be810311d57405f GIT binary patch literal 3469 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 literal 0 HcmV?d00001 diff --git a/snes/NSPC/SD F-1 Grand Prix.s b/snes/NSPC/SD F-1 Grand Prix.s new file mode 100644 index 00000000..d4756d26 --- /dev/null +++ b/snes/NSPC/SD F-1 Grand Prix.s @@ -0,0 +1,2091 @@ +0420: 8f dc f5 mov $f5,#$dc +0423: 8f fe f4 mov $f4,#$fe +0426: 5f 49 04 jmp $0449 + +0429: dd mov a,y +042a: 8d 00 mov y,#$00 +042c: 7a ee addw ya,$ee +042e: da ee movw $ee,ya +0430: 8d 00 mov y,#$00 +0432: 5f 49 04 jmp $0449 + +0435: 68 02 cmp a,#$02 +0437: 90 09 bcc $0442 +0439: 7d mov a,x +043a: d7 ee mov ($ee)+y,a +043c: fc inc y +043d: e4 e3 mov a,$e3 +043f: d7 ee mov ($ee)+y,a +0441: fc inc y +0442: e4 e2 mov a,$e2 +0444: d7 ee mov ($ee)+y,a +0446: fc inc y +0447: 30 e0 bmi $0429 +0449: e4 f4 mov a,$f4 +044b: 64 f4 cmp a,$f4 +044d: d0 fa bne $0449 +044f: 64 1e cmp a,$1e +0451: f0 f6 beq $0449 +0453: fa f5 e2 mov ($e2),($f5) +0456: fa f6 e3 mov ($e3),($f6) +0459: f8 f7 mov x,$f7 +045b: c4 f4 mov $f4,a +045d: c4 1e mov $1e,a +045f: 63 1e 0e bbs3 $1e,$0470 +0462: 28 03 and a,#$03 +0464: d0 cf bne $0435 +0466: d8 ef mov $ef,x +0468: fa e3 ee mov ($ee),($e3) +046b: 8d 00 mov y,#$00 +046d: 5f 49 04 jmp $0449 + +0470: 8f 00 f5 mov $f5,#$00 +0473: 8f 00 f4 mov $f4,#$00 +0476: 6f ret + +0477: db $ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff,$ff + +0480: d3 1a 1a bbc6 $1a,$049d +0483: fa 23 06 mov ($06),($23) +0486: 58 ff 06 eor $06,#$ff +0489: 29 24 06 and ($06),($24) +048c: e4 21 mov a,$21 +048e: 04 22 or a,$22 +0490: 24 23 and a,$23 +0492: 0e 06 00 tset1 $0006 +0495: fa 46 09 mov ($09),($46) +0498: fa 48 08 mov ($08),($48) +049b: d2 1a clr6 $1a +049d: cd 00 mov x,#$00 +049f: 8f 00 04 mov $04,#$00 +04a2: e8 01 mov a,#$01 +04a4: fb d1 mov y,$d1+x +04a6: f0 07 beq $04af +04a8: 9b d1 dec $d1+x +04aa: d0 03 bne $04af +04ac: 0e 04 00 tset1 $0004 +04af: 03 1a 07 bbs0 $1a,$04b9 +04b2: 4d push x +04b3: 2d push a +04b4: 3f a3 0e call $0ea3 +04b7: ae pop a +04b8: ce pop x +04b9: 3d inc x +04ba: 3d inc x +04bb: 1c asl a +04bc: d0 e6 bne $04a4 +04be: 8f 00 03 mov $03,#$00 +04c1: cd 00 mov x,#$00 +04c3: f5 11 13 mov a,$1311+x +04c6: c4 f2 mov $f2,a +04c8: bf mov a,(x)+ +04c9: c4 f3 mov $f3,a +04cb: 3e 19 cmp x,$19 +04cd: d0 f4 bne $04c3 +04cf: 8f 00 04 mov $04,#$00 +04d2: 8f 00 00 mov $00,#$00 +04d5: 8f 00 2c mov $2c,#$00 +04d8: 3f 09 15 call $1509 +04db: 3f a3 0e call $0ea3 +04de: fa 1a f5 mov ($f5),($1a) +04e1: fa 23 f6 mov ($f6),($23) +04e4: b3 1a 17 bbc5 $1a,$04fe +04e7: e4 3b mov a,$3b +04e9: 60 clrc +04ea: 84 2a adc a,$2a +04ec: e3 2a 07 bbs7 $2a,$04f6 +04ef: 90 09 bcc $04fa +04f1: e8 ff mov a,#$ff +04f3: 5f f6 04 jmp $04f6 + +04f6: b0 02 bcs $04fa +04f8: e8 00 mov a,#$00 +04fa: c4 13 mov $13,a +04fc: b2 1a clr5 $1a +04fe: eb fd mov y,$fd +0500: f0 fc beq $04fe +0502: cb 18 mov $18,y +0504: e4 fe mov a,$fe +0506: f0 17 beq $051f +0508: 69 37 38 cmp ($38),($37) +050b: f0 0f beq $051c +050d: ab 38 inc $38 +050f: 30 0b bmi $051c +0511: 8f 06 19 mov $19,#$06 +0514: 69 37 38 cmp ($38),($37) +0517: d0 03 bne $051c +0519: 8f 0a 19 mov $19,#$0a +051c: 3f 64 0e call $0e64 +051f: e4 23 mov a,$23 +0521: f0 46 beq $0569 +0523: c4 1f mov $1f,a +0525: eb 18 mov y,$18 +0527: e8 3e mov a,#$3e +0529: cf mul ya +052a: 60 clrc +052b: 84 2b adc a,$2b +052d: c4 2b mov $2b,a +052f: 90 35 bcc $0566 +0531: cd 00 mov x,#$00 +0533: 8f 01 36 mov $36,#$01 +0536: 13 1f 22 bbc0 $1f,$055b +0539: 3f 37 06 call $0637 +053c: 90 06 bcc $0544 +053e: 3f ec 0f call $0fec +0541: 5f 5b 05 jmp $055b + +0544: 3f dc 07 call $07dc +0547: f4 61 mov a,$61+x +0549: f0 10 beq $055b +054b: 68 7f cmp a,#$7f +054d: f0 0c beq $055b +054f: 9b 61 dec $61+x +0551: d0 08 bne $055b +0553: f5 a1 03 mov a,$03a1+x +0556: f0 03 beq $055b +0558: 3f ec 0f call $0fec +055b: 3d inc x +055c: 3d inc x +055d: 4b 1f lsr $1f +055f: 0b 36 asl $36 +0561: 90 d3 bcc $0536 +0563: 5f 69 05 jmp $0569 + +0566: fa 23 20 mov ($20),($23) +0569: 03 1a 03 bbs0 $1a,$056f +056c: 5f 11 06 jmp $0611 + +056f: eb 18 mov y,$18 +0571: e4 13 mov a,$13 +0573: cf mul ya +0574: 60 clrc +0575: 84 39 adc a,$39 +0577: c4 39 mov $39,a +0579: b0 03 bcs $057e +057b: 5f 0a 06 jmp $060a + +057e: cd 00 mov x,#$00 +0580: fa 23 1f mov ($1f),($23) +0583: 8f 01 36 mov $36,#$01 +0586: 03 1f 16 bbs0 $1f,$059f +0589: f4 51 mov a,$51+x +058b: f0 12 beq $059f +058d: 3f 37 06 call $0637 +0590: 90 0d bcc $059f +0592: 12 e0 clr0 $e0 +0594: 3f 0f 0e call $0e0f +0597: 90 e5 bcc $057e +0599: 3f 66 11 call $1166 +059c: 5f 11 06 jmp $0611 + +059f: 3d inc x +05a0: 3d inc x +05a1: 4b 1f lsr $1f +05a3: 0b 36 asl $36 +05a5: d0 df bne $0586 +05a7: e4 3c mov a,$3c +05a9: f0 0d beq $05b8 +05ab: ba 3e movw ya,$3e +05ad: 7a 3a addw ya,$3a +05af: 6e 3c 02 dbnz $3c,$05b4 +05b2: ba 3c movw ya,$3c +05b4: da 3a movw $3a,ya +05b6: a2 1a set5 $1a +05b8: e4 4d mov a,$4d +05ba: f0 1b beq $05d7 +05bc: ba 49 movw ya,$49 +05be: 7a 45 addw ya,$45 +05c0: da 45 movw $45,ya +05c2: ba 4b movw ya,$4b +05c4: 7a 47 addw ya,$47 +05c6: 6e 4d 06 dbnz $4d,$05cf +05c9: ba 4d movw ya,$4d +05cb: da 45 movw $45,ya +05cd: eb 4f mov y,$4f +05cf: da 47 movw $47,ya +05d1: fa 46 09 mov ($09),($46) +05d4: fa 48 08 mov ($08),($48) +05d7: e4 41 mov a,$41 +05d9: f0 12 beq $05ed +05db: ba 43 movw ya,$43 +05dd: 7a 15 addw ya,$15 +05df: 6e 41 02 dbnz $41,$05e4 +05e2: ba 41 movw ya,$41 +05e4: da 15 movw $15,ya +05e6: e4 23 mov a,$23 +05e8: 48 ff eor a,#$ff +05ea: 0e 03 00 tset1 $0003 +05ed: fa 23 1f mov ($1f),($23) +05f0: 8f 01 36 mov $36,#$01 +05f3: cd 00 mov x,#$00 +05f5: f4 51 mov a,$51+x +05f7: f0 06 beq $05ff +05f9: 03 1f 03 bbs0 $1f,$05ff +05fc: 3f dc 07 call $07dc +05ff: 3d inc x +0600: 3d inc x +0601: 4b 1f lsr $1f +0603: 0b 36 asl $36 +0605: d0 ee bne $05f5 +0607: 5f 11 06 jmp $0611 + +060a: e4 23 mov a,$23 +060c: 48 ff eor a,#$ff +060e: 0e 20 00 tset1 $0020 +0611: fa 23 1f mov ($1f),($23) +0614: 8f 01 36 mov $36,#$01 +0617: cd 00 mov x,#$00 +0619: 03 1a 05 bbs0 $1a,$0621 +061c: 4d push x +061d: 3f a3 0e call $0ea3 +0620: ce pop x +0621: 4b 20 lsr $20 +0623: 90 07 bcc $062c +0625: f4 51 mov a,$51+x +0627: f0 03 beq $062c +0629: 3f 5f 09 call $095f +062c: 3d inc x +062d: 3d inc x +062e: 4b 1f lsr $1f +0630: 0b 36 asl $36 +0632: d0 e5 bne $0619 +0634: 5f 80 04 jmp $0480 + +0637: d8 35 mov $35,x +0639: 9b 70 dec $70+x +063b: f0 06 beq $0643 +063d: 3f ba 08 call $08ba +0640: 5f a5 06 jmp $06a5 + +0643: 4f 00 pcall $00 +0645: d0 1a bne $0661 +0647: f4 d0 mov a,$d0+x +0649: f0 14 beq $065f +064b: 3f 22 0d call $0d22 +064e: 9b d0 dec $d0+x +0650: d0 f1 bne $0643 +0652: f5 30 02 mov a,$0230+x +0655: d4 50 mov $50+x,a +0657: f5 31 02 mov a,$0231+x +065a: d4 51 mov $51+x,a +065c: 5f 43 06 jmp $0643 + +065f: 80 setc +0660: 6f ret + +0661: 30 0f bmi $0672 +0663: d5 00 02 mov $0200+x,a +0666: 4f 00 pcall $00 +0668: 30 08 bmi $0672 +066a: d5 a0 03 mov $03a0+x,a +066d: 3f fb 12 call $12fb +0670: 4f 00 pcall $00 +0672: 68 ca cmp a,#$ca +0674: 90 06 bcc $067c +0676: 3f 0c 0a call $0a0c +0679: 5f 43 06 jmp $0643 + +067c: 3f bc 06 call $06bc +067f: f5 00 02 mov a,$0200+x +0682: d4 70 mov $70+x,a +0684: fd mov y,a +0685: e7 50 mov a,($50+x) +0687: 68 ea cmp a,#$ea +0689: d0 0b bne $0696 +068b: 4f 02 pcall $02 +068d: e4 36 mov a,$36 +068f: 0e 17 00 tset1 $0017 +0692: e8 00 mov a,#$00 +0694: 2f 0d bra $06a3 +0696: e4 36 mov a,$36 +0698: 4e 17 00 tclr1 $0017 +069b: f5 01 02 mov a,$0201+x +069e: cf mul ya +069f: dd mov a,y +06a0: d0 01 bne $06a3 +06a2: bc inc a +06a3: d4 71 mov $71+x,a +06a5: f4 a0 mov a,$a0+x +06a7: d0 11 bne $06ba +06a9: e7 50 mov a,($50+x) +06ab: 68 e1 cmp a,#$e1 +06ad: d0 0b bne $06ba +06af: bb 50 inc $50+x +06b1: d0 02 bne $06b5 +06b3: bb 51 inc $51+x +06b5: 4f 00 pcall $00 +06b7: 3f c1 0c call $0cc1 +06ba: 60 clrc +06bb: 6f ret + +06bc: 09 36 03 or ($03),($36) +06bf: 68 c8 cmp a,#$c8 +06c1: b0 f8 bcs $06bb +06c3: 28 7f and a,#$7f +06c5: 60 clrc +06c6: 95 11 02 adc a,$0211+x +06c9: 03 1f 22 bbs0 $1f,$06ee +06cc: 60 clrc +06cd: 84 40 adc a,$40 +06cf: eb 26 mov y,$26 +06d1: f0 1b beq $06ee +06d3: 2d push a +06d4: e4 36 mov a,$36 +06d6: 24 12 and a,$12 +06d8: ae pop a +06d9: d0 13 bne $06ee +06db: 60 clrc +06dc: 84 26 adc a,$26 +06de: e3 26 09 bbs7 $26,$06ea +06e1: 68 47 cmp a,#$47 +06e3: 90 09 bcc $06ee +06e5: e8 47 mov a,#$47 +06e7: 5f ee 06 jmp $06ee + +06ea: b0 02 bcs $06ee +06ec: e8 00 mov a,#$00 +06ee: d5 01 01 mov $0101+x,a +06f1: f5 21 01 mov a,$0121+x +06f4: d5 00 01 mov $0100+x,a +06f7: e4 36 mov a,$36 +06f9: 24 17 and a,$17 +06fb: d0 05 bne $0702 +06fd: f5 41 01 mov a,$0141+x +0700: d4 d1 mov $d1+x,a +0702: f5 81 02 mov a,$0281+x +0705: 5c lsr a +0706: e8 00 mov a,#$00 +0708: d4 b0 mov $b0+x,a +070a: d5 81 00 mov $0081+x,a +070d: d4 c0 mov $c0+x,a +070f: d5 30 01 mov $0130+x,a +0712: 7c ror a +0713: d5 70 02 mov $0270+x,a +0716: f5 50 02 mov a,$0250+x +0719: d4 a0 mov $a0+x,a +071b: f0 1e beq $073b +071d: f5 51 02 mov a,$0251+x +0720: d4 a1 mov $a1+x,a +0722: f5 60 02 mov a,$0260+x +0725: d0 0a bne $0731 +0727: f5 01 01 mov a,$0101+x +072a: 80 setc +072b: b5 61 02 sbc a,$0261+x +072e: d5 01 01 mov $0101+x,a +0731: f5 61 02 mov a,$0261+x +0734: 60 clrc +0735: 95 01 01 adc a,$0101+x +0738: 3f d4 0c call $0cd4 +073b: 4f 26 pcall $26 +073d: 8d 00 mov y,#$00 +073f: e4 2f mov a,$2f +0741: 80 setc +0742: a8 34 sbc a,#$34 +0744: b0 09 bcs $074f +0746: e4 2f mov a,$2f +0748: 80 setc +0749: a8 13 sbc a,#$13 +074b: b0 06 bcs $0753 +074d: dc dec y +074e: 1c asl a +074f: 7a 2e addw ya,$2e +0751: da 2e movw $2e,ya +0753: e4 2f mov a,$2f +0755: 1c asl a +0756: 8d 00 mov y,#$00 +0758: cd 18 mov x,#$18 +075a: 9e div ya,x +075b: 5d mov x,a +075c: f6 c3 07 mov a,$07c3+y +075f: c4 e1 mov $e1,a +0761: f6 c2 07 mov a,$07c2+y +0764: c4 e0 mov $e0,a +0766: f6 c5 07 mov a,$07c5+y +0769: 2d push a +076a: f6 c4 07 mov a,$07c4+y +076d: ee pop y +076e: 9a e0 subw ya,$e0 +0770: eb 2e mov y,$2e +0772: cf mul ya +0773: dd mov a,y +0774: 8d 00 mov y,#$00 +0776: 7a e0 addw ya,$e0 +0778: cb e1 mov $e1,y +077a: 1c asl a +077b: 2b e1 rol $e1 +077d: 5f 84 07 jmp $0784 + +0780: 4b e1 lsr $e1 +0782: 7c ror a +0783: 3d inc x +0784: c8 06 cmp x,#$06 +0786: d0 f8 bne $0780 +0788: c4 e0 mov $e0,a +078a: f8 35 mov x,$35 +078c: f5 20 02 mov a,$0220+x +078f: eb e1 mov y,$e1 +0791: cf mul ya +0792: da e2 movw $e2,ya +0794: f5 20 02 mov a,$0220+x +0797: eb e0 mov y,$e0 +0799: cf mul ya +079a: 6d push y +079b: f5 21 02 mov a,$0221+x +079e: eb e0 mov y,$e0 +07a0: cf mul ya +07a1: 7a e2 addw ya,$e2 +07a3: da e2 movw $e2,ya +07a5: f5 21 02 mov a,$0221+x +07a8: eb e1 mov y,$e1 +07aa: cf mul ya +07ab: fd mov y,a +07ac: ae pop a +07ad: 7a e2 addw ya,$e2 +07af: da e2 movw $e2,ya +07b1: 7d mov a,x +07b2: 9f xcn a +07b3: 5c lsr a +07b4: 08 02 or a,#$02 +07b6: c4 f2 mov $f2,a +07b8: fa e2 f3 mov ($f3),($e2) +07bb: bc inc a +07bc: c4 f2 mov $f2,a +07be: fa e3 f3 mov ($f3),($e3) +07c1: 6f ret + +; pitch table +07c2: dw $085f +07c4: dw $08de +07c6: dw $0965 +07c8: dw $09f4 +07ca: dw $0a8c +07cc: dw $0b2c +07ce: dw $0bd6 +07d0: dw $0c8b +07d2: dw $0d4a +07d4: dw $0e14 +07d6: dw $0eea +07d8: dw $0fcd +07da: dw $10be + +07dc: f4 90 mov a,$90+x +07de: f0 25 beq $0805 +07e0: 09 36 03 or ($03),($36) +07e3: 9b 90 dec $90+x +07e5: f0 13 beq $07fa +07e7: f5 a0 02 mov a,$02a0+x +07ea: 60 clrc +07eb: 95 b0 02 adc a,$02b0+x +07ee: d5 a0 02 mov $02a0+x,a +07f1: f5 a1 02 mov a,$02a1+x +07f4: 95 b1 02 adc a,$02b1+x +07f7: 5f 02 08 jmp $0802 + +07fa: e8 00 mov a,#$00 +07fc: d5 a0 02 mov $02a0+x,a +07ff: f5 c0 02 mov a,$02c0+x +0802: d5 a1 02 mov $02a1+x,a +0805: fb c1 mov y,$c1+x +0807: f0 25 beq $082e +0809: f5 40 01 mov a,$0140+x +080c: de c0 1d cbne $c0+x,$082c +080f: 09 36 03 or ($03),($36) +0812: f5 30 01 mov a,$0130+x +0815: 10 08 bpl $081f +0817: fc inc y +0818: d0 05 bne $081f +081a: e8 80 mov a,#$80 +081c: 5f 23 08 jmp $0823 + +081f: 60 clrc +0820: 95 31 01 adc a,$0131+x +0823: d5 30 01 mov $0130+x,a +0826: 3f df 09 call $09df +0829: 5f 33 08 jmp $0833 + +082c: bb c0 inc $c0+x +082e: e8 ff mov a,#$ff +0830: 3f ea 09 call $09ea +0833: f4 91 mov a,$91+x +0835: f0 25 beq $085c +0837: 09 36 03 or ($03),($36) +083a: 9b 91 dec $91+x +083c: f0 13 beq $0851 +083e: 60 clrc +083f: f5 d0 02 mov a,$02d0+x +0842: 95 e0 02 adc a,$02e0+x +0845: d5 d0 02 mov $02d0+x,a +0848: f5 d1 02 mov a,$02d1+x +084b: 95 e1 02 adc a,$02e1+x +084e: 5f 59 08 jmp $0859 + +0851: e8 00 mov a,#$00 +0853: d5 d0 02 mov $02d0+x,a +0856: f5 f0 02 mov a,$02f0+x +0859: d5 d1 02 mov $02d1+x,a +085c: e4 36 mov a,$36 +085e: 24 03 and a,$03 +0860: f0 42 beq $08a4 +0862: f5 d1 02 mov a,$02d1+x +0865: fd mov y,a +0866: f5 d0 02 mov a,$02d0+x +0869: da 2e movw $2e,ya +086b: f3 1a 06 bbc7 $1a,$0874 +086e: 8f 0a 2f mov $2f,#$0a +0871: 8f 00 2e mov $2e,#$00 +0874: 7d mov a,x +0875: 9f xcn a +0876: 5c lsr a +0877: c4 30 mov $30,a +0879: eb 2f mov y,$2f +087b: f6 a6 08 mov a,$08a6+y +087e: 80 setc +087f: b6 a5 08 sbc a,$08a5+y +0882: eb 2e mov y,$2e +0884: cf mul ya +0885: dd mov a,y +0886: eb 2f mov y,$2f +0888: 60 clrc +0889: 96 a5 08 adc a,$08a5+y +088c: fd mov y,a +088d: f5 c1 02 mov a,$02c1+x +0890: cf mul ya +0891: e4 30 mov a,$30 +0893: c4 f2 mov $f2,a +0895: cb f3 mov $f3,y +0897: 8d 14 mov y,#$14 +0899: e8 00 mov a,#$00 +089b: 9a 2e subw ya,$2e +089d: da 2e movw $2e,ya +089f: ab 30 inc $30 +08a1: 33 30 d5 bbc1 $30,$0879 +08a4: 6f ret + +; pan table +08a5: db $00,$01,$03,$07,$0d,$15,$1e,$29 +08ad: db $34,$42,$51,$5e,$67,$6e,$73,$77 +08b5: db $7a,$7c,$7d,$7e,$7f + +08ba: f4 71 mov a,$71+x +08bc: f0 0e beq $08cc +08be: 9b 71 dec $71+x +08c0: d0 0a bne $08cc +08c2: 8f 5c f2 mov $f2,#$5c +08c5: fa 36 f3 mov ($f3),($36) +08c8: e8 00 mov a,#$00 +08ca: d4 d1 mov $d1+x,a +08cc: f2 31 clr7 $31 +08ce: f4 a0 mov a,$a0+x +08d0: f0 2e beq $0900 +08d2: f4 a1 mov a,$a1+x +08d4: f0 05 beq $08db +08d6: 9b a1 dec $a1+x +08d8: 5f 00 09 jmp $0900 + +08db: e2 31 set7 $31 +08dd: 9b a0 dec $a0+x +08df: f0 13 beq $08f4 +08e1: f5 00 01 mov a,$0100+x +08e4: 60 clrc +08e5: 95 10 01 adc a,$0110+x +08e8: d5 00 01 mov $0100+x,a +08eb: f5 01 01 mov a,$0101+x +08ee: 95 11 01 adc a,$0111+x +08f1: 5f fd 08 jmp $08fd + +08f4: f5 21 01 mov a,$0121+x +08f7: d5 00 01 mov $0100+x,a +08fa: f5 20 01 mov a,$0120+x +08fd: d5 01 01 mov $0101+x,a +0900: 4f 26 pcall $26 +0902: f5 70 03 mov a,$0370+x +0905: f0 4e beq $0955 +0907: f5 80 02 mov a,$0280+x +090a: de b0 46 cbne $b0+x,$0953 +090d: f5 81 00 mov a,$0081+x +0910: 75 81 02 cmp a,$0281+x +0913: f0 0f beq $0924 +0915: bb 81 inc $81+x +0917: fd mov y,a +0918: f0 03 beq $091d +091a: f5 70 03 mov a,$0370+x +091d: 60 clrc +091e: 95 90 02 adc a,$0290+x +0921: 5f 27 09 jmp $0927 + +0924: f5 91 02 mov a,$0291+x +0927: d5 70 03 mov $0370+x,a +092a: f5 70 02 mov a,$0270+x +092d: 60 clrc +092e: 95 71 02 adc a,$0271+x +0931: d5 70 02 mov $0270+x,a +0934: c4 30 mov $30,a +0936: 1c asl a +0937: 1c asl a +0938: 90 02 bcc $093c +093a: 48 ff eor a,#$ff +093c: fd mov y,a +093d: f5 70 03 mov a,$0370+x +0940: 68 f1 cmp a,#$f1 +0942: 90 06 bcc $094a +0944: 28 0f and a,#$0f +0946: cf mul ya +0947: 5f 4e 09 jmp $094e + +094a: cf mul ya +094b: dd mov a,y +094c: 8d 00 mov y,#$00 +094e: 4f 50 pcall $50 +0950: 5f 3d 07 jmp $073d + +0953: bb b0 inc $b0+x +0955: e3 31 f8 bbs7 $31,$0950 +0958: e4 36 mov a,$36 +095a: 24 2c and a,$2c +095c: d0 f2 bne $0950 +095e: 6f ret + +095f: d8 35 mov $35,x +0961: f2 31 clr7 $31 +0963: f4 c1 mov a,$c1+x +0965: f0 09 beq $0970 +0967: f5 40 01 mov a,$0140+x +096a: de c0 03 cbne $c0+x,$0970 +096d: 3f cd 09 call $09cd +0970: f5 d1 02 mov a,$02d1+x +0973: fd mov y,a +0974: f5 d0 02 mov a,$02d0+x +0977: da 2e movw $2e,ya +0979: f4 91 mov a,$91+x +097b: f0 0c beq $0989 +097d: f5 e1 02 mov a,$02e1+x +0980: fd mov y,a +0981: f5 e0 02 mov a,$02e0+x +0984: 4f 31 pcall $31 +0986: 5f 97 09 jmp $0997 + +0989: e3 31 0b bbs7 $31,$0997 +098c: e4 36 mov a,$36 +098e: 24 03 and a,$03 +0990: f0 08 beq $099a +0992: e8 ff mov a,#$ff +0994: 3f ea 09 call $09ea +0997: 3f 6b 08 call $086b +099a: f2 31 clr7 $31 +099c: 4f 26 pcall $26 +099e: f4 a0 mov a,$a0+x +09a0: f0 0d beq $09af +09a2: f4 a1 mov a,$a1+x +09a4: d0 09 bne $09af +09a6: f5 11 01 mov a,$0111+x +09a9: fd mov y,a +09aa: f5 10 01 mov a,$0110+x +09ad: 4f 31 pcall $31 +09af: f5 70 03 mov a,$0370+x +09b2: f0 a1 beq $0955 +09b4: f5 80 02 mov a,$0280+x +09b7: de b0 9b cbne $b0+x,$0955 +09ba: eb 39 mov y,$39 +09bc: 13 1f 02 bbc0 $1f,$09c1 +09bf: eb 2b mov y,$2b +09c1: f5 71 02 mov a,$0271+x +09c4: cf mul ya +09c5: dd mov a,y +09c6: 60 clrc +09c7: 95 70 02 adc a,$0270+x +09ca: 5f 34 09 jmp $0934 + +09cd: e2 31 set7 $31 +09cf: f5 31 01 mov a,$0131+x +09d2: eb 39 mov y,$39 +09d4: 13 1f 02 bbc0 $1f,$09d9 +09d7: eb 2b mov y,$2b +09d9: cf mul ya +09da: dd mov a,y +09db: 60 clrc +09dc: 95 30 01 adc a,$0130+x +09df: 1c asl a +09e0: 90 02 bcc $09e4 +09e2: 48 ff eor a,#$ff +09e4: fb c1 mov y,$c1+x +09e6: cf mul ya +09e7: dd mov a,y +09e8: 48 ff eor a,#$ff +09ea: 03 1f 09 bbs0 $1f,$09f6 +09ed: eb 1b mov y,$1b +09ef: cf mul ya +09f0: e4 16 mov a,$16 +09f2: cf mul ya +09f3: 5f fd 09 jmp $09fd + +09f6: eb 1c mov y,$1c +09f8: cf mul ya +09f9: f5 71 03 mov a,$0371+x +09fc: cf mul ya +09fd: f5 10 02 mov a,$0210+x +0a00: cf mul ya +0a01: f5 a1 02 mov a,$02a1+x +0a04: cf mul ya +0a05: dd mov a,y +0a06: cf mul ya +0a07: dd mov a,y +0a08: d5 c1 02 mov $02c1+x,a +0a0b: 6f ret + +0a0c: 13 1f 12 bbc0 $1f,$0a21 +0a0f: 68 d6 cmp a,#$d6 +0a11: b0 0e bcs $0a21 +0a13: fd mov y,a +0a14: f6 ba 09 mov a,$09ba+y +0a17: 60 clrc +0a18: 94 50 adc a,$50+x +0a1a: d4 50 mov $50+x,a +0a1c: 90 02 bcc $0a20 +0a1e: bb 51 inc $51+x +0a20: 6f ret + +; dispatch vcmd in A (??-ff) +0a21: 1c asl a +0a22: fd mov y,a +0a23: f6 a3 09 mov a,$09a3+y +0a26: 2d push a +0a27: f6 a2 09 mov a,$09a2+y +0a2a: 2d push a +0a2b: dd mov a,y +0a2c: 5c lsr a +0a2d: fd mov y,a +0a2e: f6 3a 0a mov a,$0a3a+y +0a31: f0 ed beq $0a20 +0a33: 5f 00 ff jmp $ff00 + +; vcmd dispatch list +0a36: dw $0aab ; ca - global transpose +0a38: dw $0aae ; cb - tempo +0a3a: dw $0ab5 ; cc - tempo fade +0a3c: dw $0ac7 ; cd - master volume +0a3e: dw $0acc ; ce - master volume fade +0a40: dw $0adc ; cf - echo vbits/volume +0a42: dw $0afe ; d0 - set echo params +0a44: dw $0b1f ; d1 - echo volume fade +0a46: dw $0b49 ; d2 - disable echo +0a48: dw $0b58 ; d3 +0a4a: dw $0b5b ; d4 +0a4c: dw $0b5e ; d5 +0a4e: dw $0bdd ; d6 - per-voice transpose +0a50: dw $0be1 ; d7 - pan +0a52: dw $0bec ; d8 - pan fade +0a54: dw $0c03 ; d9 - set instrument +0a56: dw $0c52 ; da - vibrato on +0a58: dw $0c5c ; db - vibrato off +0a5a: dw $0c68 ; dc - vibrato fade +0a5c: dw $0c79 ; dd - tremolo on +0a5e: dw $0c83 ; de - tremolo off +0a60: dw $0c86 ; df - volume +0a62: dw $0caa ; e0 - volume fade +0a64: dw $0cc1 ; e1 - pitch slide +0a66: dw $0ceb ; e2 - pitch envelope (release) +0a68: dw $0cf0 ; e3 - pitch envelope (attack) +0a6a: dw $0d04 ; e4 - pitch envelope off +0a6c: dw $0d08 ; e5 - tuning +0a6e: dw $0d0c ; e6 - call subroutine +0a70: dw $0d2d ; e7 - nop +0a72: dw $0d2e ; e8 +0a74: dw $0d32 ; e9 - add to volume +0a76: dw $0d4f ; ea - nop +0a78: dw $0d50 ; eb +0a7a: dw $0d55 ; ec +0a7c: dw $0d72 ; ed +0a7e: dw $0d9c ; ee +0a80: dw $0dc4 ; ef +0a82: dw $0dca ; f0 + +; vcmd lengths +0a83: db $01,$01,$02,$01,$02,$03,$03,$03 ; ca-d1 +0a8c: db $00,$01,$01,$00,$01,$01,$02,$01 ; d2-d9 +0a93: db $03,$00,$01,$03,$00,$01,$02,$03 ; da-e1 +0a9c: db $03,$03,$00,$01,$03,$01,$01,$01 ; e2-e9 +0aa3: db $00,$01,$01,$00,$00,$00,$00 ; ea-f0 + +; vcmd ca - global transpose +0aab: c4 40 mov $40,a +0aad: 6f ret + +; vcmd cb - tempo +0aae: e8 00 mov a,#$00 +0ab0: da 3a movw $3a,ya +0ab2: a2 1a set5 $1a +0ab4: 6f ret + +; vcmd cc - tempo fade +0ab5: c4 3c mov $3c,a +0ab7: 4f 00 pcall $00 +0ab9: c4 3d mov $3d,a +0abb: 80 setc +0abc: a4 3b sbc a,$3b +0abe: f8 3c mov x,$3c +0ac0: 4f 0a pcall $0a +0ac2: da 3e movw $3e,ya +0ac4: a2 1a set5 $1a +0ac6: 6f ret + +; vcmd cd - master volume +0ac7: e8 00 mov a,#$00 +0ac9: da 15 movw $15,ya +0acb: 6f ret + +; vcmd ce - master volume fade +0acc: c4 41 mov $41,a +0ace: 4f 00 pcall $00 +0ad0: c4 42 mov $42,a +0ad2: 80 setc +0ad3: a4 16 sbc a,$16 +0ad5: f8 41 mov x,$41 +0ad7: 4f 0a pcall $0a +0ad9: da 43 movw $43,ya +0adb: 6f ret + +; vcmd cf - echo vbits/volume +0adc: c4 24 mov $24,a +0ade: c2 1a set6 $1a +0ae0: 4f 00 pcall $00 +0ae2: e8 00 mov a,#$00 +0ae4: da 45 movw $45,ya +0ae6: 4f 00 pcall $00 +0ae8: e8 00 mov a,#$00 +0aea: da 47 movw $47,ya +0aec: b2 05 clr5 $05 +0aee: f3 1a 06 bbc7 $1a,$0af7 +0af1: e4 46 mov a,$46 +0af3: c4 46 mov $46,a +0af5: c4 48 mov $48,a +0af7: fa 46 09 mov ($09),($46) +0afa: fa 48 08 mov ($08),($48) +0afd: 6f ret + +; vcmd d0 - set echo params +0afe: 3f d2 0d call $0dd2 +0b01: 4f 00 pcall $00 +0b03: c4 07 mov $07,a +0b05: 4f 00 pcall $00 +0b07: 8d 08 mov y,#$08 +0b09: cf mul ya +0b0a: 5d mov x,a +0b0b: 8d 0f mov y,#$0f +0b0d: 60 clrc +0b0e: f5 c5 ff mov a,$ffc5+x +0b11: cb f2 mov $f2,y +0b13: c4 f3 mov $f3,a +0b15: 3d inc x +0b16: dd mov a,y +0b17: 88 10 adc a,#$10 +0b19: fd mov y,a +0b1a: 10 f2 bpl $0b0e +0b1c: f8 35 mov x,$35 +0b1e: 6f ret + +; vcmd d1 - echo volume fade +0b1f: c4 4d mov $4d,a +0b21: 4f 00 pcall $00 +0b23: c4 4e mov $4e,a +0b25: 4f 00 pcall $00 +0b27: f3 1a 02 bbc7 $1a,$0b2c +0b2a: c4 4e mov $4e,a +0b2c: c4 4f mov $4f,a +0b2e: 80 setc +0b2f: a4 48 sbc a,$48 +0b31: f8 4d mov x,$4d +0b33: 4f 0a pcall $0a +0b35: da 4b movw $4b,ya +0b37: e4 4e mov a,$4e +0b39: 80 setc +0b3a: a4 46 sbc a,$46 +0b3c: f8 4d mov x,$4d +0b3e: 4f 0a pcall $0a +0b40: da 49 movw $49,ya +0b42: fa 46 09 mov ($09),($46) +0b45: fa 48 08 mov ($08),($48) +0b48: 6f ret + +; vcmd d2 - disable echo +0b49: c4 4d mov $4d,a +0b4b: da 45 movw $45,ya +0b4d: da 47 movw $47,ya +0b4f: fa 46 09 mov ($09),($46) +0b52: fa 48 08 mov ($08),($48) +0b55: a2 05 set5 $05 +0b57: 6f ret + +; vcmd d3 +0b58: c4 12 mov $12,a +0b5a: 6f ret + +; vcmd d4 +0b5b: c4 11 mov $11,a +0b5d: 6f ret + +; vcmd d5 +0b5e: 7d mov a,x +0b5f: d0 fc bne $0b5d +0b61: e4 10 mov a,$10 +0b63: f0 f8 beq $0b5d +0b65: c4 e0 mov $e0,a +0b67: fa 23 e1 mov ($e1),($23) +0b6a: cd 0e mov x,#$0e +0b6c: 0b e0 asl $e0 +0b6e: 90 66 bcc $0bd6 +0b70: f5 91 03 mov a,$0391+x +0b73: f0 5b beq $0bd0 +0b75: c4 e3 mov $e3,a +0b77: f5 90 03 mov a,$0390+x +0b7a: c4 e2 mov $e2,a +0b7c: 8d 00 mov y,#$00 +0b7e: f7 e2 mov a,($e2)+y +0b80: 30 0e bmi $0b90 +0b82: d5 81 03 mov $0381+x,a +0b85: fc inc y +0b86: f7 e2 mov a,($e2)+y +0b88: 30 06 bmi $0b90 +0b8a: d5 a0 03 mov $03a0+x,a +0b8d: fc inc y +0b8e: f7 e2 mov a,($e2)+y +0b90: fc inc y +0b91: 68 ca cmp a,#$ca +0b93: 90 e9 bcc $0b7e +0b95: 68 d5 cmp a,#$d5 +0b97: f0 0d beq $0ba6 +0b99: d8 e4 mov $e4,x +0b9b: 5d mov x,a +0b9c: dd mov a,y +0b9d: 60 clrc +0b9e: 95 ba 09 adc a,$09ba+x +0ba1: fd mov y,a +0ba2: f8 e4 mov x,$e4 +0ba4: 2f d8 bra $0b7e +0ba6: dd mov a,y +0ba7: 8d 00 mov y,#$00 +0ba9: 7a e2 addw ya,$e2 +0bab: f3 e1 09 bbc7 $e1,$0bb7 +0bae: d5 90 03 mov $0390+x,a +0bb1: dd mov a,y +0bb2: d5 91 03 mov $0391+x,a +0bb5: 2f 1f bra $0bd6 +0bb7: d4 50 mov $50+x,a +0bb9: db 51 mov $51+x,y +0bbb: e8 00 mov a,#$00 +0bbd: d5 91 03 mov $0391+x,a +0bc0: bc inc a +0bc1: d5 70 00 mov $0070+x,a +0bc4: f5 81 03 mov a,$0381+x +0bc7: d5 00 02 mov $0200+x,a +0bca: f5 a0 03 mov a,$03a0+x +0bcd: 3f fb 12 call $12fb +0bd0: f5 06 10 mov a,$1006+x +0bd3: 4e 10 00 tclr1 $0010 +0bd6: 0b e1 asl $e1 +0bd8: 1d dec x +0bd9: 1d dec x +0bda: d0 90 bne $0b6c +0bdc: 6f ret + +; vcmd d6 - per-voice transpose +0bdd: d5 11 02 mov $0211+x,a +0be0: 6f ret + +; vcmd d7 - pan +0be1: 28 1f and a,#$1f +0be3: d5 d1 02 mov $02d1+x,a +0be6: e8 00 mov a,#$00 +0be8: d5 d0 02 mov $02d0+x,a +0beb: 6f ret + +; vcmd d8 - pan fade +0bec: d4 91 mov $91+x,a +0bee: 2d push a +0bef: 4f 00 pcall $00 +0bf1: d5 f0 02 mov $02f0+x,a +0bf4: 80 setc +0bf5: b5 d1 02 sbc a,$02d1+x +0bf8: ce pop x +0bf9: 4f 0a pcall $0a +0bfb: d5 e0 02 mov $02e0+x,a +0bfe: dd mov a,y +0bff: d5 e1 02 mov $02e1+x,a +0c02: 6f ret + +; vcmd d9 - set instrument +0c03: 8d 06 mov y,#$06 +0c05: cf mul ya +0c06: da e0 movw $e0,ya +0c08: 60 clrc +0c09: 03 1f 09 bbs0 $1f,$0c15 +0c0c: 98 00 e0 adc $e0,#$00 +0c0f: 98 19 e1 adc $e1,#$19 +0c12: 5f 1b 0c jmp $0c1b + +0c15: 98 80 e0 adc $e0,#$80 +0c18: 98 19 e1 adc $e1,#$19 +0c1b: 7d mov a,x +0c1c: 9f xcn a +0c1d: 5c lsr a +0c1e: 08 04 or a,#$04 +0c20: 5d mov x,a +0c21: e4 36 mov a,$36 +0c23: 4e 02 00 tclr1 $0002 +0c26: 8d 00 mov y,#$00 +0c28: f7 e0 mov a,($e0)+y +0c2a: 10 0c bpl $0c38 +0c2c: 28 1f and a,#$1f +0c2e: 38 20 05 and $05,#$20 +0c31: 0e 05 00 tset1 $0005 +0c34: 09 36 02 or ($02),($36) +0c37: dd mov a,y +0c38: d8 f2 mov $f2,x +0c3a: c4 f3 mov $f3,a +0c3c: 3d inc x +0c3d: fc inc y +0c3e: f7 e0 mov a,($e0)+y +0c40: ad 04 cmp y,#$04 +0c42: d0 f4 bne $0c38 +0c44: f8 35 mov x,$35 +0c46: f7 e0 mov a,($e0)+y +0c48: d5 21 02 mov $0221+x,a +0c4b: fc inc y +0c4c: f7 e0 mov a,($e0)+y +0c4e: d5 20 02 mov $0220+x,a +0c51: 6f ret + +; vcmd da - vibrato on +0c52: d5 80 02 mov $0280+x,a +0c55: 4f 00 pcall $00 +0c57: d5 71 02 mov $0271+x,a +0c5a: 4f 00 pcall $00 +; vcmd db - vibrato off +0c5c: d5 70 03 mov $0370+x,a +0c5f: d5 91 02 mov $0291+x,a +0c62: e8 00 mov a,#$00 +0c64: d5 81 02 mov $0281+x,a +0c67: 6f ret + +; vcmd dc - vibrato fade +0c68: d5 81 02 mov $0281+x,a +0c6b: 2d push a +0c6c: 8d 00 mov y,#$00 +0c6e: f5 70 03 mov a,$0370+x +0c71: ce pop x +0c72: 9e div ya,x +0c73: d5 90 02 mov $0290+x,a +0c76: f8 35 mov x,$35 +0c78: 6f ret + +; vcmd dd - tremolo on +0c79: d5 40 01 mov $0140+x,a +0c7c: 4f 00 pcall $00 +0c7e: d5 31 01 mov $0131+x,a +0c81: 4f 00 pcall $00 +; vcmd de - tremolo off +0c83: d4 c1 mov $c1+x,a +0c85: 6f ret + +; vcmd df - volume +0c86: f5 80 03 mov a,$0380+x +0c89: c4 e0 mov $e0,a +0c8b: dd mov a,y +0c8c: 60 clrc +0c8d: 95 80 03 adc a,$0380+x +0c90: e3 e0 07 bbs7 $e0,$0c9a +0c93: 90 0c bcc $0ca1 +0c95: e8 ff mov a,#$ff +0c97: 5f a1 0c jmp $0ca1 + +0c9a: 95 80 03 adc a,$0380+x +0c9d: b0 02 bcs $0ca1 +0c9f: e8 00 mov a,#$00 +0ca1: d5 a1 02 mov $02a1+x,a +0ca4: e8 00 mov a,#$00 +0ca6: d5 a0 02 mov $02a0+x,a +0ca9: 6f ret + +; vcmd e0 - volume fade +0caa: d4 90 mov $90+x,a +0cac: 2d push a +0cad: 4f 00 pcall $00 +0caf: d5 c0 02 mov $02c0+x,a +0cb2: 80 setc +0cb3: b5 a1 02 sbc a,$02a1+x +0cb6: ce pop x +0cb7: 4f 0a pcall $0a +0cb9: d5 b0 02 mov $02b0+x,a +0cbc: dd mov a,y +0cbd: d5 b1 02 mov $02b1+x,a +0cc0: 6f ret + +; vcmd e1 - pitch slide +0cc1: d4 a1 mov $a1+x,a +0cc3: 4f 00 pcall $00 +0cc5: d4 a0 mov $a0+x,a +0cc7: 4f 00 pcall $00 +0cc9: aa 1f 00 mov1 c,$001f,0 +0ccc: b0 02 bcs $0cd0 +0cce: 84 40 adc a,$40 +0cd0: 60 clrc +0cd1: 95 11 02 adc a,$0211+x +0cd4: 28 7f and a,#$7f +0cd6: d5 20 01 mov $0120+x,a +0cd9: 80 setc +0cda: b5 01 01 sbc a,$0101+x +0cdd: fb a0 mov y,$a0+x +0cdf: 6d push y +0ce0: ce pop x +0ce1: 4f 0a pcall $0a +0ce3: d5 10 01 mov $0110+x,a +0ce6: dd mov a,y +0ce7: d5 11 01 mov $0111+x,a +0cea: 6f ret + +; vcmd e2 - pitch envelope (release) +0ceb: e8 01 mov a,#$01 +0ced: 5f f2 0c jmp $0cf2 + +; vcmd e3 - pitch envelope (attack) +0cf0: e8 00 mov a,#$00 +0cf2: d5 60 02 mov $0260+x,a +0cf5: dd mov a,y +0cf6: d5 51 02 mov $0251+x,a +0cf9: 4f 00 pcall $00 +0cfb: d5 50 02 mov $0250+x,a +0cfe: 4f 00 pcall $00 +0d00: d5 61 02 mov $0261+x,a +0d03: 6f ret + +; vcmd e4 - pitch envelope off +0d04: d5 50 02 mov $0250+x,a +0d07: 6f ret + +; vcmd e5 - tuning +0d08: d5 21 01 mov $0121+x,a +0d0b: 6f ret + +; vcmd e6 - call subroutine +0d0c: d5 60 03 mov $0360+x,a +0d0f: 4f 00 pcall $00 +0d11: d5 61 03 mov $0361+x,a +0d14: 4f 00 pcall $00 +0d16: d4 d0 mov $d0+x,a +0d18: f4 50 mov a,$50+x +0d1a: d5 30 02 mov $0230+x,a +0d1d: f4 51 mov a,$51+x +0d1f: d5 31 02 mov $0231+x,a +0d22: f5 60 03 mov a,$0360+x +0d25: d4 50 mov $50+x,a +0d27: f5 61 03 mov a,$0361+x +0d2a: d4 51 mov $51+x,a +0d2c: 6f ret + +; vcmd e7 - nop +0d2d: 6f ret + +; vcmd e8 +0d2e: d5 80 03 mov $0380+x,a +0d31: 6f ret + +; vcmd e9 - add to volume +0d32: 60 clrc +0d33: 30 0a bmi $0d3f +0d35: 95 a1 02 adc a,$02a1+x +0d38: 90 0c bcc $0d46 +0d3a: e8 ff mov a,#$ff +0d3c: 5f 46 0d jmp $0d46 + +0d3f: 95 a1 02 adc a,$02a1+x +0d42: b0 02 bcs $0d46 +0d44: e8 00 mov a,#$00 +0d46: d5 a1 02 mov $02a1+x,a +0d49: e8 00 mov a,#$00 +0d4b: d5 a0 02 mov $02a0+x,a +0d4e: 6f ret + +; vcmd ea - nop +0d4f: 6f ret + +; vcmd eb +0d50: bc inc a +0d51: d5 41 01 mov $0141+x,a +0d54: 6f ret + +; vcmd ec +0d55: 2d push a +0d56: f4 80 mov a,$80+x +0d58: fd mov y,a +0d59: 60 clrc +0d5a: 88 10 adc a,#$10 +0d5c: d4 80 mov $80+x,a +0d5e: dd mov a,y +0d5f: 5c lsr a +0d60: 5d mov x,a +0d61: ae pop a +0d62: d5 00 03 mov $0300+x,a +0d65: f8 35 mov x,$35 +0d67: f4 50 mov a,$50+x +0d69: d6 20 03 mov $0320+y,a +0d6c: f4 51 mov a,$51+x +0d6e: d6 21 03 mov $0321+y,a +0d71: 6f ret + +; vcmd ed +0d72: f4 80 mov a,$80+x +0d74: 80 setc +0d75: a8 10 sbc a,#$10 +0d77: 2d push a +0d78: 5c lsr a +0d79: fd mov y,a +0d7a: f5 a1 03 mov a,$03a1+x +0d7d: d0 11 bne $0d90 +0d7f: f6 00 03 mov a,$0300+y +0d82: 68 ff cmp a,#$ff +0d84: f0 0a beq $0d90 +0d86: 9c dec a +0d87: d6 00 03 mov $0300+y,a +0d8a: d0 04 bne $0d90 +0d8c: ae pop a +0d8d: d4 80 mov $80+x,a +0d8f: 6f ret + +0d90: ee pop y +0d91: f6 20 03 mov a,$0320+y +0d94: d4 50 mov $50+x,a +0d96: f6 21 03 mov a,$0321+y +0d99: d4 51 mov $51+x,a +0d9b: 6f ret + +; vcmd ee +0d9c: f4 80 mov a,$80+x +0d9e: 80 setc +0d9f: a8 10 sbc a,#$10 +0da1: 2d push a +0da2: 5c lsr a +0da3: fd mov y,a +0da4: f6 00 03 mov a,$0300+y +0da7: 9c dec a +0da8: ae pop a +0da9: f0 0c beq $0db7 +0dab: f4 50 mov a,$50+x +0dad: 60 clrc +0dae: 88 02 adc a,#$02 +0db0: d4 50 mov $50+x,a +0db2: 90 02 bcc $0db6 +0db4: bb 51 inc $51+x +0db6: 6f ret + +0db7: d4 80 mov $80+x,a +0db9: 4f 00 pcall $00 +0dbb: 2d push a +0dbc: 4f 00 pcall $00 +0dbe: d4 51 mov $51+x,a +0dc0: ae pop a +0dc1: d4 50 mov $50+x,a +0dc3: 6f ret + +; vcmd ef +0dc4: 09 36 21 or ($21),($36) +0dc7: c2 1a set6 $1a +0dc9: 6f ret + +; vcmd f0 +0dca: e4 36 mov a,$36 +0dcc: 4e 21 00 tclr1 $0021 +0dcf: c2 1a set6 $1a +0dd1: 6f ret + +0dd2: c4 37 mov $37,a +0dd4: 8f 7d f2 mov $f2,#$7d +0dd7: e4 f3 mov a,$f3 +0dd9: 64 37 cmp a,$37 +0ddb: f0 2b beq $0e08 +0ddd: 28 0f and a,#$0f +0ddf: 48 ff eor a,#$ff +0de1: f3 38 03 bbc7 $38,$0de7 +0de4: 60 clrc +0de5: 84 38 adc a,$38 +0de7: c4 38 mov $38,a +0de9: 8f 05 19 mov $19,#$05 +0dec: 8d 04 mov y,#$04 +0dee: f6 10 13 mov a,$1310+y +0df1: c4 f2 mov $f2,a +0df3: e8 00 mov a,#$00 +0df5: c4 f3 mov $f3,a +0df7: fe f5 dbnz y,$0dee +0df9: e4 05 mov a,$05 +0dfb: 08 20 or a,#$20 +0dfd: 8f 6c f2 mov $f2,#$6c +0e00: c4 f3 mov $f3,a +0e02: 8f 7d f2 mov $f2,#$7d +0e05: fa 37 f3 mov ($f3),($37) +0e08: 8f 6d f2 mov $f2,#$6d +0e0b: fa 1d f3 mov ($f3),($1d) +0e0e: 6f ret + +0e0f: 4f 58 pcall $58 +0e11: d0 1e bne $0e31 +0e13: fd mov y,a +0e14: d0 05 bne $0e1b +0e16: 29 23 10 and ($10),($23) +0e19: 80 setc +0e1a: 6f ret + +0e1b: 8b 14 dec $14 +0e1d: 10 02 bpl $0e21 +0e1f: c4 14 mov $14,a +0e21: f0 07 beq $0e2a +0e23: 4f 58 pcall $58 +0e25: da 32 movw $32,ya +0e27: 5f 0f 0e jmp $0e0f + +0e2a: 3a 32 incw $32 +0e2c: 3a 32 incw $32 +0e2e: 5f 0f 0e jmp $0e0f + +0e31: da e2 movw $e2,ya +0e33: fa 23 1f mov ($1f),($23) +0e36: 8d 0f mov y,#$0f +0e38: f7 e2 mov a,($e2)+y +0e3a: dc dec y +0e3b: 0b 1f asl $1f +0e3d: b0 15 bcs $0e54 +0e3f: d6 51 00 mov $0051+y,a +0e42: f7 e2 mov a,($e2)+y +0e44: d6 50 00 mov $0050+y,a +0e47: dd mov a,y +0e48: 5d mov x,a +0e49: aa e0 00 mov1 c,$00e0,0 +0e4c: 4f 66 pcall $66 +0e4e: bc inc a +0e4f: d6 70 00 mov $0070+y,a +0e52: 2f 08 bra $0e5c +0e54: d6 91 03 mov $0391+y,a +0e57: f7 e2 mov a,($e2)+y +0e59: d6 90 03 mov $0390+y,a +0e5c: dc dec y +0e5d: 10 d9 bpl $0e38 +0e5f: 29 23 10 and ($10),($23) +0e62: 60 clrc +0e63: 6f ret + +0e64: 13 1a 3b bbc0 $1a,$0ea2 +0e67: e4 28 mov a,$28 +0e69: f0 37 beq $0ea2 +0e6b: 6e 29 34 dbnz $29,$0ea2 +0e6e: fa 28 29 mov ($29),($28) +0e71: f2 29 clr7 $29 +0e73: e4 23 mov a,$23 +0e75: 48 ff eor a,#$ff +0e77: 0e 03 00 tset1 $0003 +0e7a: aa 28 e0 mov1 c,$0028,7 +0e7d: b0 0e bcs $0e8d +0e7f: e8 20 mov a,#$20 +0e81: 84 1b adc a,$1b +0e83: c4 1b mov $1b,a +0e85: b0 13 bcs $0e9a +0e87: 69 27 1b cmp ($1b),($27) +0e8a: b0 0e bcs $0e9a +0e8c: 6f ret + +0e8d: e8 20 mov a,#$20 +0e8f: c4 e2 mov $e2,a +0e91: a9 e2 1b sbc ($1b),($e2) +0e94: 90 01 bcc $0e97 +0e96: 6f ret + +0e97: 3f 66 11 call $1166 +0e9a: 32 1a clr1 $1a +0e9c: fa 27 1b mov ($1b),($27) +0e9f: 8f 00 28 mov $28,#$00 +0ea2: 6f ret + +0ea3: e4 f4 mov a,$f4 +0ea5: 64 f4 cmp a,$f4 +0ea7: d0 fa bne $0ea3 +0ea9: 64 1e cmp a,$1e +0eab: f0 1b beq $0ec8 +0ead: c4 1e mov $1e,a +0eaf: e4 f5 mov a,$f5 +0eb1: 64 f5 cmp a,$f5 +0eb3: d0 fa bne $0eaf +0eb5: fd mov y,a +0eb6: fa 1e f4 mov ($f4),($1e) +0eb9: e4 1e mov a,$1e +0ebb: 1c asl a +0ebc: 68 e0 cmp a,#$e0 +0ebe: b0 59 bcs $0f19 +0ec0: 68 50 cmp a,#$50 +0ec2: b0 04 bcs $0ec8 +0ec4: 5d mov x,a +0ec5: 1f c9 0e jmp ($0ec9+x) + +0ec8: 6f ret + +0ec9: dw $0ec8 +0ecb: dw $1204 +0ecd: dw $11fa +0ecf: dw $11f2 +0ed1: dw $0ec8 +0ed3: dw $0ec8 +0ed5: dw $0ec8 +0ed7: dw $1641 +0ed9: dw $1490 +0edb: dw $14a5 +0edd: dw $14e4 +0edf: dw $14f6 +0ee1: dw $1600 +0ee3: dw $162c +0ee5: dw $11ec +0ee7: dw $11ef +0ee9: dw $1166 +0eeb: dw $11a5 +0eed: dw $0ec8 +0eef: dw $11b6 +0ef1: dw $11cd +0ef3: dw $11e4 +0ef5: dw $11e9 +0ef7: dw $1128 +0ef9: dw $1016 +0efb: dw $0ec8 +0efd: dw $0ec8 +0eff: dw $0ec8 +0f01: dw $0ec8 +0f03: dw $0ec8 +0f05: dw $0ec8 +0f07: dw $0ec8 +0f09: dw $0fd4 +0f0b: dw $0fce +0f0d: dw $0fc9 +0f0f: dw $0ec8 +0f11: dw $0ec8 +0f13: dw $0ec8 +0f15: dw $0ec8 +0f17: dw $0ec8 + +0f19: cb e0 mov $e0,y +0f1b: dd mov a,y +0f1c: 28 3f and a,#$3f +0f1e: 8d 05 mov y,#$05 +0f20: cf mul ya +0f21: bc inc a +0f22: fd mov y,a +0f23: cd 0e mov x,#$0e +0f25: 74 b1 cmp a,$b1+x +0f27: d0 0c bne $0f35 +0f29: f4 61 mov a,$61+x +0f2b: f0 55 beq $0f82 +0f2d: f5 a1 03 mov a,$03a1+x +0f30: f0 02 beq $0f34 +0f32: d4 61 mov $61+x,a +0f34: 6f ret + +0f35: 1d dec x +0f36: 1d dec x +0f37: 10 ec bpl $0f25 +0f39: f6 00 34 mov a,$3400+y +0f3c: 24 11 and a,$11 +0f3e: c4 e1 mov $e1,a +0f40: 8f 00 e4 mov $e4,#$00 +0f43: 8f 0e e5 mov $e5,#$0e +0f46: cd 0e mov x,#$0e +0f48: 0b e1 asl $e1 +0f4a: 90 0c bcc $0f58 +0f4c: f4 60 mov a,$60+x +0f4e: f0 18 beq $0f68 +0f50: 64 e4 cmp a,$e4 +0f52: 90 04 bcc $0f58 +0f54: c4 e4 mov $e4,a +0f56: d8 e5 mov $e5,x +0f58: 1d dec x +0f59: 1d dec x +0f5a: 10 ec bpl $0f48 +0f5c: f8 e5 mov x,$e5 +0f5e: f6 01 34 mov a,$3401+y +0f61: 64 e4 cmp a,$e4 +0f63: 90 03 bcc $0f68 +0f65: f0 01 beq $0f68 +0f67: 6f ret + +0f68: f5 06 10 mov a,$1006+x +0f6b: 24 23 and a,$23 +0f6d: d0 13 bne $0f82 +0f6f: 0e 10 00 tset1 $0010 +0f72: f5 00 02 mov a,$0200+x +0f75: d5 81 03 mov $0381+x,a +0f78: f4 50 mov a,$50+x +0f7a: d5 90 03 mov $0390+x,a +0f7d: f4 51 mov a,$51+x +0f7f: d5 91 03 mov $0391+x,a +0f82: 3f ec 0f call $0fec +0f85: e8 02 mov a,#$02 +0f87: d5 70 00 mov $0070+x,a +0f8a: d5 41 01 mov $0141+x,a +0f8d: f6 03 34 mov a,$3403+y +0f90: d4 50 mov $50+x,a +0f92: f6 04 34 mov a,$3404+y +0f95: d4 51 mov $51+x,a +0f97: e8 e6 mov a,#$e6 +0f99: d5 71 03 mov $0371+x,a +0f9c: f5 06 10 mov a,$1006+x +0f9f: 0e 23 00 tset1 $0023 +0fa2: f6 01 34 mov a,$3401+y +0fa5: d4 60 mov $60+x,a +0fa7: f6 02 34 mov a,$3402+y +0faa: 10 05 bpl $0fb1 +0fac: 28 7f and a,#$7f +0fae: d5 a1 03 mov $03a1+x,a +0fb1: d4 61 mov $61+x,a +0fb3: dd mov a,y +0fb4: d4 b1 mov $b1+x,a +0fb6: e4 e0 mov a,$e0 +0fb8: 28 c0 and a,#$c0 +0fba: 9f xcn a +0fbb: 5c lsr a +0fbc: 5c lsr a +0fbd: fd mov y,a +0fbe: f6 c5 0f mov a,$0fc5+y +0fc1: d5 d1 02 mov $02d1+x,a +0fc4: 6f ret + +0fc5: 0a 00 14 or1 c,$1400,0 +0fc8: 0a cb 22 or1 c,$02cb,1 +0fcb: c2 1a set6 $1a +0fcd: 6f ret + +0fce: cb 1c mov $1c,y +0fd0: 09 23 03 or ($03),($23) +0fd3: 6f ret + +0fd4: cb e0 mov $e0,y +0fd6: fa 23 e1 mov ($e1),($23) +0fd9: cd 0e mov x,#$0e +0fdb: 0b e0 asl $e0 +0fdd: 90 06 bcc $0fe5 +0fdf: f3 e1 03 bbc7 $e1,$0fe5 +0fe2: 3f ec 0f call $0fec +0fe5: 0b e1 asl $e1 +0fe7: 1d dec x +0fe8: 1d dec x +0fe9: 10 f0 bpl $0fdb +0feb: 6f ret + +0fec: f5 06 10 mov a,$1006+x +0fef: 4e 17 00 tclr1 $0017 +0ff2: 4e 23 00 tclr1 $0023 +0ff5: 0e 00 00 tset1 $0000 +0ff8: 80 setc +0ff9: 4f 66 pcall $66 +0ffb: d4 b1 mov $b1+x,a +0ffd: d4 60 mov $60+x,a +0fff: d4 61 mov $61+x,a +1001: d4 51 mov $51+x,a +1003: c2 1a set6 $1a +1005: 6f ret + +1006: 01 tcall 0 +1007: fe 02 dbnz y,$100b +1009: fd mov y,a +100a: 04 fb or a,$fb +100c: 08 f7 or a,#$f7 +100e: 10 ef bpl $0fff +1010: 20 clrp +1011: df daa a +1012: 40 setp +1013: bf mov a,(x)+ +1014: 80 setc +1015: 7f ret +i +1016: e5 b0 03 mov a,$03b0 +1019: c5 00 20 mov $2000,a +101c: c4 e0 mov $e0,a +101e: 8f 00 e1 mov $e1,#$00 +1021: 8f 00 e2 mov $e2,#$00 +1024: 8f 00 e3 mov $e3,#$00 +1027: f8 e3 mov x,$e3 +1029: 8d 06 mov y,#$06 +102b: f5 00 19 mov a,$1900+x +102e: d5 21 21 mov $2121+x,a +1031: 3d inc x +1032: fe f7 dbnz y,$102b +1034: d8 e3 mov $e3,x +1036: f5 fa 18 mov a,$18fa+x +1039: 1c asl a +103a: 1c asl a +103b: 5d mov x,a +103c: f5 00 17 mov a,$1700+x +103f: c4 e4 mov $e4,a +1041: f5 01 17 mov a,$1701+x +1044: c4 e5 mov $e5,a +1046: f5 02 17 mov a,$1702+x +1049: c4 e6 mov $e6,a +104b: f5 03 17 mov a,$1703+x +104e: c4 e7 mov $e7,a +1050: f5 05 17 mov a,$1705+x +1053: fd mov y,a +1054: f5 04 17 mov a,$1704+x +1057: f8 e2 mov x,$e2 +1059: 9a e4 subw ya,$e4 +105b: d5 03 20 mov $2003+x,a +105e: dd mov a,y +105f: d5 04 20 mov $2004+x,a +1062: e4 e4 mov a,$e4 +1064: d5 01 20 mov $2001+x,a +1067: e4 e5 mov a,$e5 +1069: d5 02 20 mov $2002+x,a +106c: ba e6 movw ya,$e6 +106e: 9a e4 subw ya,$e4 +1070: d5 93 20 mov $2093+x,a +1073: dd mov a,y +1074: d5 94 20 mov $2094+x,a +1077: eb e1 mov y,$e1 +1079: f6 b1 03 mov a,$03b1+y +107c: 28 7f and a,#$7f +107e: d5 91 20 mov $2091+x,a +1081: ab e1 inc $e1 +1083: 60 clrc +1084: 98 04 e2 adc $e2,#$04 +1087: 6e e0 9d dbnz $e0,$1027 +108a: 8f b0 e8 mov $e8,#$b0 +108d: 8f 03 e9 mov $e9,#$03 +1090: 8f 00 f6 mov $f6,#$00 +1093: 8f dc f5 mov $f5,#$dc +1096: 8f fe f4 mov $f4,#$fe +1099: 4f 9b pcall $9b +109b: 4f 9b pcall $9b +109d: e5 b0 03 mov a,$03b0 +10a0: c4 2d mov $2d,a +10a2: 8f 00 e1 mov $e1,#$00 +10a5: 8f 00 e2 mov $e2,#$00 +10a8: 8f 41 e3 mov $e3,#$41 +10ab: e5 00 20 mov a,$2000 +10ae: 1c asl a +10af: 1c asl a +10b0: 5d mov x,a +10b1: eb e1 mov y,$e1 +10b3: f6 b1 03 mov a,$03b1+y +10b6: f0 20 beq $10d8 +10b8: 1d dec x +10b9: 1d dec x +10ba: 1d dec x +10bb: 1d dec x +10bc: 30 1f bmi $10dd +10be: 75 91 20 cmp a,$2091+x +10c1: d0 f5 bne $10b8 +10c3: f5 02 20 mov a,$2002+x +10c6: fd mov y,a +10c7: f5 01 20 mov a,$2001+x +10ca: 5a e2 cmpw ya,$e2 +10cc: 90 0f bcc $10dd +10ce: 3f 38 12 call $1238 +10d1: ab e0 inc $e0 +10d3: eb e1 mov y,$e1 +10d5: f6 b1 03 mov a,$03b1+y +10d8: 08 80 or a,#$80 +10da: d6 b1 03 mov $03b1+y,a +10dd: ab e1 inc $e1 +10df: 6e 2d c9 dbnz $2d,$10ab +10e2: e5 b0 03 mov a,$03b0 +10e5: c4 2d mov $2d,a +10e7: 8d 00 mov y,#$00 +10e9: f6 b1 03 mov a,$03b1+y +10ec: 30 07 bmi $10f5 +10ee: 6d push y +10ef: 3f ac 12 call $12ac +10f2: ab e0 inc $e0 +10f4: ee pop y +10f5: fc inc y +10f6: 6e 2d f0 dbnz $2d,$10e9 +10f9: e4 e0 mov a,$e0 +10fb: 1c asl a +10fc: 1c asl a +10fd: 5d mov x,a +10fe: e4 e2 mov a,$e2 +1100: d5 00 17 mov $1700+x,a +1103: e4 e3 mov a,$e3 +1105: d5 01 17 mov $1701+x,a +1108: 8f 00 e8 mov $e8,#$00 +110b: 8f 20 e9 mov $e9,#$20 +110e: 8f 00 f6 mov $f6,#$00 +1111: 8f dc f5 mov $f5,#$dc +1114: 8f fe f4 mov $f4,#$fe +1117: 4f 9b pcall $9b +1119: 4f 9b pcall $9b +111b: 8f 33 f1 mov $f1,#$33 +111e: 8f 00 1e mov $1e,#$00 +1121: 8f 00 f5 mov $f5,#$00 +1124: 8f 00 f4 mov $f4,#$00 +1127: 6f ret + +1128: dd mov a,y +1129: 64 25 cmp a,$25 +112b: 65 00 20 cmp a,$2000 +112e: b0 35 bcs $1165 +1130: c4 25 mov $25,a +1132: 13 1a 05 bbc0 $1a,$113a +1135: 3f 80 11 call $1180 +1138: e4 25 mov a,$25 +113a: 1c asl a +113b: 5d mov x,a +113c: f5 02 20 mov a,$2002+x +113f: fd mov y,a +1140: f5 01 20 mov a,$2001+x +1143: da 32 movw $32,ya +1145: 02 e0 set0 $e0 +1147: 3f 0f 0e call $0e0f +114a: e8 00 mov a,#$00 +114c: c4 14 mov $14,a +114e: c4 41 mov $41,a +1150: c4 4d mov $4d,a +1152: c4 3c mov $3c,a +1154: c4 40 mov $40,a +1156: c4 12 mov $12,a +1158: 8f fe 11 mov $11,#$fe +115b: 8f c0 16 mov $16,#$c0 +115e: 8f 20 3b mov $3b,#$20 +1161: 02 1a set0 $1a +1163: a2 1a set5 $1a +1165: 6f ret + +1166: 8f ff 25 mov $25,#$ff +1169: fa 23 1f mov ($1f),($23) +116c: cd 0e mov x,#$0e +116e: e8 00 mov a,#$00 +1170: 0b 1f asl $1f +1172: b0 08 bcs $117c +1174: d5 51 00 mov $0051+x,a +1177: d5 91 03 mov $0391+x,a +117a: d4 d1 mov $d1+x,a +117c: 1d dec x +117d: 1d dec x +117e: 10 f0 bpl $1170 +1180: 12 1a clr0 $1a +1182: 32 1a clr1 $1a +1184: c2 1a set6 $1a +1186: e8 00 mov a,#$00 +1188: c4 24 mov $24,a +118a: c4 2a mov $2a,a +118c: c4 26 mov $26,a +118e: e4 23 mov a,$23 +1190: 48 ff eor a,#$ff +1192: 4e 17 00 tclr1 $0017 +1195: 0e 00 00 tset1 $0000 +1198: 8f ff 27 mov $27,#$ff +119b: fa 27 1b mov ($1b),($27) +119e: 8f 00 28 mov $28,#$00 +11a1: 8f fc 11 mov $11,#$fc +11a4: 6f ret + +11a5: cb 1b mov $1b,y +11a7: cb 27 mov $27,y +11a9: 32 1a clr1 $1a +11ab: 8f 00 28 mov $28,#$00 +11ae: e4 23 mov a,$23 +11b0: 48 ff eor a,#$ff +11b2: 0e 03 00 tset1 $0003 +11b5: 6f ret + +11b6: 03 1a 13 bbs0 $1a,$11cc +11b9: cb 28 mov $28,y +11bb: e8 80 mov a,#$80 +11bd: 80 setc +11be: a4 28 sbc a,$28 +11c0: c4 28 mov $28,a +11c2: c4 29 mov $29,a +11c4: fa 1b 27 mov ($27),($1b) +11c7: 8f 20 1b mov $1b,#$20 +11ca: 22 1a set1 $1a +11cc: 6f ret + +11cd: e4 28 mov a,$28 +11cf: d0 12 bne $11e3 +11d1: cb 28 mov $28,y +11d3: e8 80 mov a,#$80 +11d5: 80 setc +11d6: a4 28 sbc a,$28 +11d8: c4 28 mov $28,a +11da: c4 29 mov $29,a +11dc: e2 28 set7 $28 +11de: fa 1b 27 mov ($27),($1b) +11e1: 22 1a set1 $1a +11e3: 6f ret + +11e4: cb 2a mov $2a,y +11e6: a2 1a set5 $1a +11e8: 6f ret + +11e9: cb 26 mov $26,y +11eb: 6f ret + +11ec: f2 1a clr7 $1a +11ee: 6f ret + +11ef: e2 1a set7 $1a +11f1: 6f ret + +11f2: 8d ff mov y,#$ff +11f4: 3f d4 0f call $0fd4 +11f7: 5f 66 11 jmp $1166 + +11fa: 3f 20 04 call $0420 +11fd: 8f 33 f1 mov $f1,#$33 +1200: 8f 00 1e mov $1e,#$00 +1203: 6f ret + +1204: 8f 5c f2 mov $f2,#$5c +1207: 8f ff f3 mov $f3,#$ff +120a: cd ff mov x,#$ff +120c: bd mov sp,x +120d: 40 setp +120e: e8 00 mov a,#$00 +1210: 5d mov x,a +1211: af mov (x)+,a +1212: c8 00 cmp x,#$00 +1214: d0 fb bne $1211 +1216: 20 clrp +1217: 5d mov x,a +1218: af mov (x)+,a +1219: c8 f0 cmp x,#$f0 +121b: d0 fb bne $1218 +121d: 8f e6 1d mov $1d,#$e6 +1220: 3f d2 0d call $0dd2 +1223: 8f ff 25 mov $25,#$ff +1226: 8f ff 1b mov $1b,#$ff +1229: 8f ff 27 mov $27,#$ff +122c: 8f ff 1c mov $1c,#$ff +122f: 8f 05 19 mov $19,#$05 +1232: 8f 01 1e mov $1e,#$01 +1235: 5f 80 04 jmp $0480 + +; load song? +1238: f5 02 20 mov a,$2002+x +123b: fd mov y,a +123c: f5 01 20 mov a,$2001+x +123f: da e4 movw $e4,ya +1241: f5 04 20 mov a,$2004+x +1244: fd mov y,a +1245: f5 03 20 mov a,$2003+x +1248: da e8 movw $e8,ya +124a: ba e2 movw ya,$e2 +124c: 5a e4 cmpw ya,$e4 +124e: f0 13 beq $1263 +1250: da e6 movw $e6,ya +1252: 8d 00 mov y,#$00 +1254: f7 e4 mov a,($e4)+y +1256: d7 e6 mov ($e6)+y,a +1258: fc inc y +1259: d0 04 bne $125f +125b: ab e5 inc $e5 +125d: ab e7 inc $e7 +125f: 1a e8 decw $e8 +1261: d0 f1 bne $1254 +1263: e4 e0 mov a,$e0 +1265: 1c asl a +1266: 1c asl a +1267: fd mov y,a +1268: e4 e3 mov a,$e3 +126a: d6 01 17 mov $1701+y,a +126d: e4 e2 mov a,$e2 +126f: d6 00 17 mov $1700+y,a +1272: 95 93 20 adc a,$2093+x +1275: d6 02 17 mov $1702+y,a +1278: f5 94 20 mov a,$2094+x +127b: 84 e3 adc a,$e3 +127d: d6 03 17 mov $1703+y,a +1280: f5 04 20 mov a,$2004+x +1283: fd mov y,a +1284: f5 03 20 mov a,$2003+x +1287: 7a e2 addw ya,$e2 +1289: da e2 movw $e2,ya +128b: d8 e4 mov $e4,x +128d: 7d mov a,x +128e: 5c lsr a +128f: 84 e4 adc a,$e4 +1291: 5d mov x,a +1292: e4 e1 mov a,$e1 +1294: 8d 06 mov y,#$06 +1296: cf mul ya +1297: fd mov y,a +1298: e4 e0 mov a,$e0 +129a: d6 00 19 mov $1900+y,a +129d: 8f 05 e4 mov $e4,#$05 +12a0: f5 22 21 mov a,$2122+x +12a3: d6 01 19 mov $1901+y,a +12a6: 3d inc x +12a7: fc inc y +12a8: 6e e4 f5 dbnz $e4,$12a0 +12ab: 6f ret + +12ac: 2d push a +12ad: e8 06 mov a,#$06 +12af: cf mul ya +12b0: 5d mov x,a +12b1: 8f 01 e8 mov $e8,#$01 +12b4: 8f 19 e9 mov $e9,#$19 +12b7: 7a e8 addw ya,$e8 +12b9: da e8 movw $e8,ya +12bb: e4 e0 mov a,$e0 +12bd: d5 00 19 mov $1900+x,a +12c0: ae pop a +12c1: c4 f6 mov $f6,a +12c3: 8f dc f5 mov $f5,#$dc +12c6: 8f fe f4 mov $f4,#$fe +12c9: 4f 9b pcall $9b +12cb: 4f 9b pcall $9b +12cd: 8f e4 e8 mov $e8,#$e4 +12d0: 8f 00 e9 mov $e9,#$00 +12d3: 4f 9b pcall $9b +12d5: ba e2 movw ya,$e2 +12d7: da e8 movw $e8,ya +12d9: 4f 9b pcall $9b +12db: e4 e0 mov a,$e0 +12dd: 1c asl a +12de: 1c asl a +12df: 5d mov x,a +12e0: e4 e3 mov a,$e3 +12e2: d5 01 17 mov $1701+x,a +12e5: fd mov y,a +12e6: e4 e2 mov a,$e2 +12e8: d5 00 17 mov $1700+x,a +12eb: 7a e6 addw ya,$e6 +12ed: d5 02 17 mov $1702+x,a +12f0: dd mov a,y +12f1: d5 03 17 mov $1703+x,a +12f4: ba e2 movw ya,$e2 +12f6: 7a e4 addw ya,$e4 +12f8: da e2 movw $e2,ya +12fa: 6f ret + +12fb: 2d push a +12fc: 9f xcn a +12fd: 28 07 and a,#$07 +12ff: fd mov y,a +1300: f6 e5 ff mov a,$ffe5+y +1303: d5 01 02 mov $0201+x,a +1306: ae pop a +1307: 28 0f and a,#$0f +1309: fd mov y,a +130a: f6 ed ff mov a,$ffed+y +130d: d5 10 02 mov $0210+x,a +1310: 6f ret + +1311: db $5c,$2d,$3d,$5c,$4c,$6c,$4d,$0d,$3c,$2c + +ff00: e7 50 mov a,($50+x) +ff02: bb 50 inc $50+x +ff04: d0 02 bne $ff08 +ff06: bb 51 inc $51+x +ff08: fd mov y,a +ff09: 6f ret + +ff0a: ed notc +ff0b: 6b 30 ror $30 +ff0d: 10 03 bpl $ff12 +ff0f: 48 ff eor a,#$ff +ff11: bc inc a +ff12: 8d 00 mov y,#$00 +ff14: 9e div ya,x +ff15: 2d push a +ff16: e8 00 mov a,#$00 +ff18: 9e div ya,x +ff19: ee pop y +ff1a: f8 35 mov x,$35 +ff1c: f3 30 06 bbc7 $30,$ff25 +ff1f: da e0 movw $e0,ya +ff21: 9a e0 subw ya,$e0 +ff23: 9a e0 subw ya,$e0 +ff25: 6f ret + +ff26: f5 01 01 mov a,$0101+x +ff29: c4 2f mov $2f,a +ff2b: f5 00 01 mov a,$0100+x +ff2e: c4 2e mov $2e,a +ff30: 6f ret + +ff31: e2 31 set7 $31 +ff33: cb 30 mov $30,y +ff35: 4f 1c pcall $1c +ff37: 6d push y +ff38: eb 39 mov y,$39 +ff3a: 13 1f 02 bbc0 $1f,$ff3f +ff3d: eb 2b mov y,$2b +ff3f: cf mul ya +ff40: cb e0 mov $e0,y +ff42: 8f 00 e1 mov $e1,#$00 +ff45: eb 39 mov y,$39 +ff47: 13 1f 02 bbc0 $1f,$ff4c +ff4a: eb 2b mov y,$2b +ff4c: ae pop a +ff4d: cf mul ya +ff4e: 7a e0 addw ya,$e0 +ff50: 3f 1c ff call $ff1c +ff53: 7a 2e addw ya,$2e +ff55: da 2e movw $2e,ya +ff57: 6f ret + +ff58: 8d 00 mov y,#$00 +ff5a: f7 32 mov a,($32)+y +ff5c: 3a 32 incw $32 +ff5e: 2d push a +ff5f: f7 32 mov a,($32)+y +ff61: 3a 32 incw $32 +ff63: fd mov y,a +ff64: ae pop a +ff65: 6f ret + +ff66: 7d mov a,x +ff67: d4 80 mov $80+x,a +ff69: e8 0a mov a,#$0a +ff6b: d5 d1 02 mov $02d1+x,a +ff6e: e8 01 mov a,#$01 +ff70: d5 41 01 mov $0141+x,a +ff73: 9c dec a +ff74: d5 90 00 mov $0090+x,a +ff77: d5 91 00 mov $0091+x,a +ff7a: d5 a1 03 mov $03a1+x,a +ff7d: 90 1b bcc $ff9a +ff7f: d4 d0 mov $d0+x,a +ff81: d4 c1 mov $c1+x,a +ff83: d4 d1 mov $d1+x,a +ff85: d5 70 03 mov $0370+x,a +ff88: d5 21 01 mov $0121+x,a +ff8b: d5 11 02 mov $0211+x,a +ff8e: d5 50 02 mov $0250+x,a +ff91: d5 80 03 mov $0380+x,a +ff94: d5 d0 02 mov $02d0+x,a +ff97: d5 81 02 mov $0281+x,a +ff9a: 6f ret + +ff9b: cd 00 mov x,#$00 +ff9d: 2f 0a bra $ffa9 +ff9f: fd mov y,a +ffa0: f6 e9 00 mov a,$00e9+y +ffa3: c7 e8 mov ($e8+x),a +ffa5: 3a e8 incw $e8 +ffa7: fe f7 dbnz y,$ffa0 +ffa9: e4 f4 mov a,$f4 +ffab: 64 f4 cmp a,$f4 +ffad: d0 fa bne $ffa9 +ffaf: 64 1e cmp a,$1e +ffb1: f0 f6 beq $ffa9 +ffb3: c4 1e mov $1e,a +ffb5: fa f5 ea mov ($ea),($f5) +ffb8: fa f6 eb mov ($eb),($f6) +ffbb: fa f7 ec mov ($ec),($f7) +ffbe: c4 f4 mov $f4,a +ffc0: 28 03 and a,#$03 +ffc2: d0 db bne $ff9f +ffc4: 6f ret + +; echo FIR presets +ffc5: db $7f,$00,$00,$00,$00,$00,$00,$00 +ffcd: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +ffd5: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +ffdd: db $34,$33,$00,$d9,$e5,$01,$fc,$eb + +; note dur%'s +ffe5: db $00,$7f,$98,$b2,$cb,$e5,$fc,$ff +; per-note velocity values +ffed: db $19,$32,$4c,$65,$72,$7f,$8c,$98 +fff5: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc \ No newline at end of file From 8f63cfcd4e0dd290f08c5f8b957d88ee1e623f48 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:04:13 -0800 Subject: [PATCH 104/116] Rename snes/NSPC/F-1 Grand Prix Part III ($0400).bin to snes/NSPC/Video System/F-1 Grand Prix Part III ($0400).bin --- .../F-1 Grand Prix Part III ($0400).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Video System}/F-1 Grand Prix Part III ($0400).bin (100%) diff --git a/snes/NSPC/F-1 Grand Prix Part III ($0400).bin b/snes/NSPC/Video System/F-1 Grand Prix Part III ($0400).bin similarity index 100% rename from snes/NSPC/F-1 Grand Prix Part III ($0400).bin rename to snes/NSPC/Video System/F-1 Grand Prix Part III ($0400).bin From e557a966e2389e121454669cd2029edb8708468a Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:04:30 -0800 Subject: [PATCH 105/116] Update and rename snes/NSPC/F-1 Grand Prix Part III.s to snes/NSPC/Video System/F-1 Grand Prix Part III.s --- snes/NSPC/{ => Video System}/F-1 Grand Prix Part III.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Video System}/F-1 Grand Prix Part III.s (96%) diff --git a/snes/NSPC/F-1 Grand Prix Part III.s b/snes/NSPC/Video System/F-1 Grand Prix Part III.s similarity index 96% rename from snes/NSPC/F-1 Grand Prix Part III.s rename to snes/NSPC/Video System/F-1 Grand Prix Part III.s index a0df2f99..4328cfd6 100644 --- a/snes/NSPC/F-1 Grand Prix Part III.s +++ b/snes/NSPC/Video System/F-1 Grand Prix Part III.s @@ -1738,4 +1738,5 @@ 1184: 8d 5c mov y,#$5c 1186: cc f2 00 mov $00f2,y 1189: c5 f3 00 mov $00f3,a -118c: 6f ret \ No newline at end of file + +118c: 6f ret From 6e0d9a0593d08d69f14494be61471c309c547532 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:04:43 -0800 Subject: [PATCH 106/116] Rename snes/NSPC/SD F-1 Grand Prix ($0420).bin to snes/NSPC/Video System/SD F-1 Grand Prix ($0420).bin --- .../SD F-1 Grand Prix ($0420).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Video System}/SD F-1 Grand Prix ($0420).bin (100%) diff --git a/snes/NSPC/SD F-1 Grand Prix ($0420).bin b/snes/NSPC/Video System/SD F-1 Grand Prix ($0420).bin similarity index 100% rename from snes/NSPC/SD F-1 Grand Prix ($0420).bin rename to snes/NSPC/Video System/SD F-1 Grand Prix ($0420).bin From ee238dbc2478919f02ab2608e9d0f33aa76a1444 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:04:55 -0800 Subject: [PATCH 107/116] Update and rename snes/NSPC/SD F-1 Grand Prix.s to snes/NSPC/Video System/SD F-1 Grand Prix.s --- snes/NSPC/{ => Video System}/SD F-1 Grand Prix.s | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename snes/NSPC/{ => Video System}/SD F-1 Grand Prix.s (96%) diff --git a/snes/NSPC/SD F-1 Grand Prix.s b/snes/NSPC/Video System/SD F-1 Grand Prix.s similarity index 96% rename from snes/NSPC/SD F-1 Grand Prix.s rename to snes/NSPC/Video System/SD F-1 Grand Prix.s index d4756d26..61f59690 100644 --- a/snes/NSPC/SD F-1 Grand Prix.s +++ b/snes/NSPC/Video System/SD F-1 Grand Prix.s @@ -2088,4 +2088,4 @@ ffdd: db $34,$33,$00,$d9,$e5,$01,$fc,$eb ffe5: db $00,$7f,$98,$b2,$cb,$e5,$fc,$ff ; per-note velocity values ffed: db $19,$32,$4c,$65,$72,$7f,$8c,$98 -fff5: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc \ No newline at end of file +fff5: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc From 7e7ebd0ee5b7fbf6ed3e65eb43cb75ddf29103de Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:05:18 -0800 Subject: [PATCH 108/116] Add files via upload --- snes/NSPC/NFL Football ($0800).bin | Bin 0 -> 2788 bytes snes/NSPC/NFL Football.s | 1483 ++++++++++++++++++++++++++++ 2 files changed, 1483 insertions(+) create mode 100644 snes/NSPC/NFL Football ($0800).bin create mode 100644 snes/NSPC/NFL Football.s diff --git a/snes/NSPC/NFL Football ($0800).bin b/snes/NSPC/NFL Football ($0800).bin new file mode 100644 index 0000000000000000000000000000000000000000..b6a4fcc3256b5a550ea850d5969d17fd0b9ce88e GIT binary patch literal 2788 zcmZ`*4{Q_X761I5li0C+cXpicr*3QnlTuOd;si>Y5H3K9QXq&>K-Cr(BQ>3?HeCO~ zwhS7#B5V`2;#Nw=$V4du){2s*X#8msN-`Z%MjCvr?kIH|M&VL!Gi66|=LC`?dzbXj zCbgFDd+&Sqz0bezd++_81B1!43JSm9uL=`k30WkBB}7QbDxoY1WlJchLQs0xLh4Yd z5{Wz6JGpTm3`%)CY>LGB+eo3$-$i_d@+#=@+~ZklPN(gehnEQM>r2QCZ#zGNG8b*( zug{O7d)Ee-fns@f)ttJzZ=Rj~?3|khQYRXeKr*uXKK{N$4!EiK*pgdv1z5`Y@`Q`^ z*x8+qLBxJ;V-Cqy_3j{Qv4pgMO0afMMTH|Ij51$8xb)_Y=hoI$1nbt+JhHfyAs0PV ztXU-u=^Bbo3B;D(spzCIs|7uJcdUxn!t$fB!z=!j8n){h+hRqe>XjbBhsH1bEX#I`tj9TLh^B={L++CL- zCYif(cR||DcgsDd=xI21M!)Vc^lP5fhaKiZC6_f^k{e53VQDKNsaR|ikBar;c5z3K zxQRc@jejJ6DEX1xB?SAlbVg^`iu8y#{$=Vy?E_htx3FoPYp_IuNGawv`(y#x8ah55Xfv98JAS<#;@jPu@$dH|>M zlc@qzdXo+MJX16lfC04pq|ssOyWXm^VM8upZ|6?Rvx0JH!Q2iZ`{NM=8Od$2U9r{M zHT&zi4>~S6_BvO)yyU;hLFyyGI_4|$1``3hot9%u|fnUa#@rC?je0NLl%9cO{m$u1>x4nXdLs3iOcGTAS4J7!# zWT*PuZO(Vuxemc=sK4J^NMpVbX5)owI^|<-qzX)A{7L>yna}qZgFii1aLJFpq{qik z-mjqi2}ry+^~!10rXbVKXizce)J)Oj>TWD#DF~tsLHsV`%rZK5>X}m~g)axu1cD3JZ4C8FJ4QXP`K;JKld(UQt*5@r*5f~xtpq#A&Gu7_JCnAr>qhH(5CHazfxTx;v?{Tsz$q_N z9bJ`;OSdhyFECIY^598CgP>lPtNCTt#jse@Q+`K1aSlzD&MGHj{rOTgW%b zHgZ3Cfcz_YjO-)NlV6Y{PBKNinU zro54T2fh2s@~5kJevO&()-dFW_aD<~UNL#xDvVql^GfsZB#Z&fK`=S#16<^n-oOyr z1XwyTC+-O9olv@O;ETYI(m^~Vy^T4oPi&KxL)}Xuf}2)NMJk5J4Te4rrolMU+Aba# zFOez^EnkWQw_>_aLW-{s{FvM-iaGcWL^FULp7>fLXHt3P@5{`d3z6*$AcoaSL zu)45_s-7BMLPT~i;g`g%Gp$WAS>)cRTxtu%p95zZJV5w-zUrxX!1BBSD&jYw+K;uPC(p9*-K0MLfFdbR}uJ04f0a5dAy%+N| zCsmpaMp|x;V!h^Fge{vlqq(< zN816832@v2jzG}W>MH#WZ0HG`q9K=gPuiXNijJMSN}Jsv?T)lvr49WBoYX(SzC4e` zHXf z`}_q8`pi4Y*!R%|tj7)I@uz~%;4GVg*xKFgo1vKj0nQdT!%V?fHbwuB4}YQ6^RqPn zL?Gog%T4taXTc8iM6_RJqj%K@faHoBjE=UqoCb4Mo~6#;I}0`p;UG}uE#?ATYY^`D z7Sjt}L3oS~=A;~o*TF$X^0a0(Purtf+xIYzYk5j9Tu?JRPD3Nr+SJv0F>$4Jh5j_! z9wLM+eL2B6x}P>wthGg2D+#epr=jz@324~7$LCAn>M28Oi{4IT6;VmXYBp82(X(Y+ zZg=bTym1bG?Wk&>4j93{=K22mAvC%A+YpO`n0?AKnn$pQ=#e}VLbFP0d*Cpiz)Qh= z37}3+gL*$*uDglkP^6V6whX(k7%(_Z>NLZs79p$mD+kRNvq6 literal 0 HcmV?d00001 diff --git a/snes/NSPC/NFL Football.s b/snes/NSPC/NFL Football.s new file mode 100644 index 00000000..c71c749c --- /dev/null +++ b/snes/NSPC/NFL Football.s @@ -0,0 +1,1483 @@ +0800: 20 clrp +0801: cd cf mov x,#$cf +0803: bd mov sp,x +0804: e8 00 mov a,#$00 +0806: 5d mov x,a +0807: af mov (x)+,a +0808: c8 f0 cmp x,#$f0 +080a: d0 fb bne $0807 +080c: 5d mov x,a +080d: d5 00 01 mov $0100+x,a +0810: d5 00 02 mov $0200+x,a +0813: d5 00 03 mov $0300+x,a +0816: d5 00 04 mov $0400+x,a +0819: d5 00 05 mov $0500+x,a +081c: d5 00 06 mov $0600+x,a +081f: d5 00 07 mov $0700+x,a +0822: 3d inc x +0823: d0 e8 bne $080d +0825: bc inc a +0826: 3f 1e 0f call $0f1e +0829: a2 33 set5 $33 +082b: e8 60 mov a,#$60 +082d: 8d 0c mov y,#$0c +082f: 3f f9 0a call $0af9 +0832: 8d 1c mov y,#$1c +0834: 3f f9 0a call $0af9 +0837: e8 3b mov a,#$3b +0839: 8d 5d mov y,#$5d +083b: 3f f9 0a call $0af9 +083e: e8 90 mov a,#$90 +0840: c5 f1 00 mov $00f1,a +0843: e8 10 mov a,#$10 +0845: c5 fa 00 mov $00fa,a +0848: c4 3d mov $3d,a +084a: e8 81 mov a,#$81 +084c: c5 f1 00 mov $00f1,a +084f: 8d 0a mov y,#$0a +0851: ad 05 cmp y,#$05 +0853: f0 07 beq $085c +0855: b0 08 bcs $085f +0857: 69 38 37 cmp ($37),($38) +085a: d0 11 bne $086d +085c: e3 37 0e bbs7 $37,$086d +085f: f6 c4 08 mov a,$08c4+y +0862: c5 f2 00 mov $00f2,a +0865: f6 ce 08 mov a,$08ce+y +0868: 5d mov x,a +0869: e6 mov a,(x) +086a: c5 f3 00 mov $00f3,a +086d: fe e2 dbnz y,$0851 +086f: cb 2f mov $2f,y +0871: cb 30 mov $30,y +0873: e4 18 mov a,$18 +0875: 44 19 eor a,$19 +0877: 5c lsr a +0878: 5c lsr a +0879: ed notc +087a: 6b 18 ror $18 +087c: 6b 19 ror $19 +087e: ec fd 00 mov y,$00fd +0881: f0 fb beq $087e +0883: 6d push y +0884: e8 20 mov a,#$20 +0886: cf mul ya +0887: 60 clrc +0888: 84 1b adc a,$1b +088a: c4 1b mov $1b,a +088c: 90 07 bcc $0895 +088e: 69 38 37 cmp ($37),($38) +0891: f0 02 beq $0895 +0893: ab 37 inc $37 +0895: ee pop y +0896: e4 3d mov a,$3d +0898: cf mul ya +0899: 60 clrc +089a: 84 3b adc a,$3b +089c: c4 3b mov $3b,a +089e: 90 0d bcc $08ad +08a0: 3f 12 09 call $0912 +08a3: 3f 7c 0b call $0b7c +08a6: cd 00 mov x,#$00 +08a8: 3f d9 08 call $08d9 +08ab: 2f a2 bra $084f +08ad: e4 04 mov a,$04 +08af: f0 fa beq $08ab +08b1: cd 00 mov x,#$00 +08b3: 8f 01 31 mov $31,#$01 +08b6: f4 20 mov a,$20+x +08b8: f0 03 beq $08bd +08ba: 3f 09 12 call $1209 +08bd: 3d inc x +08be: 3d inc x +08bf: 0b 31 asl $31 +08c1: d0 f3 bne $08b6 +08c3: 2f e6 bra $08ab + +08c5: db $2c,$3c,$ec,$e7,$6c,$4c,$5c,$3d,$2d,$5c +08cf: db $4b,$4d,$39,$35,$33,$2f,$0e,$34,$36,$30 + +08d9: f4 04 mov a,$04+x +08db: d5 f4 00 mov $00f4+x,a +08de: f5 f4 00 mov a,$00f4+x +08e1: 68 ff cmp a,#$ff +08e3: d0 03 bne $08e8 +08e5: 5f c0 ff jmp $ffc0 + +08e8: 68 fc cmp a,#$fc +08ea: d0 17 bne $0903 +08ec: 8f 00 45 mov $45,#$00 +08ef: fa f7 44 mov ($44),($f7) +08f2: c4 f4 mov $f4,a +08f4: 5d mov x,a +08f5: e4 45 mov a,$45 +08f7: 80 setc +08f8: a4 43 sbc a,$43 +08fa: 3f 31 10 call $1031 +08fd: da 46 movw $46,ya +08ff: cd 00 mov x,#$00 +0901: 2f d6 bra $08d9 +0903: 75 f4 00 cmp a,$00f4+x +0906: d0 d6 bne $08de +0908: d4 00 mov $00+x,a +090a: 3d inc x +090b: c8 03 cmp x,#$03 +090d: d0 ca bne $08d9 +090f: cd 00 mov x,#$00 +0911: 6f ret + +0912: eb bd mov y,$bd +0914: d0 7f bne $0995 +0916: cd 01 mov x,#$01 +0918: 4d push x +0919: f4 00 mov a,$00+x +091b: f0 09 beq $0926 +091d: 74 04 cmp a,$04+x +091f: f0 05 beq $0926 +0921: 28 7f and a,#$7f +0923: 3f 34 09 call $0934 +0926: ce pop x +0927: f4 00 mov a,$00+x +0929: d4 04 mov $04+x,a +092b: d5 f4 00 mov $00f4+x,a +092e: 3d inc x +092f: c8 03 cmp x,#$03 +0931: d0 e5 bne $0918 +0933: 6f ret + +0934: eb bd mov y,$bd ; load song +0936: d0 5d bne $0995 +0938: 68 05 cmp a,#$05 +093a: 90 58 bcc $0994 +093c: 68 0b cmp a,#$0b +093e: b0 54 bcs $0994 +0940: d4 04 mov $04+x,a +0942: 78 08 b8 cmp $b8,#$08 +0945: f0 4d beq $0994 +0947: 1c asl a +0948: 5d mov x,a +0949: c4 be mov $be,a +094b: 8d 00 mov y,#$00 +094d: e4 bb mov a,$bb +094f: 5c lsr a +0950: 90 03 bcc $0955 +0952: fc inc y +0953: 2f fa bra $094f +0955: e4 bb mov a,$bb +0957: 16 eb 09 or a,$09eb+y +095a: c4 bb mov $bb,a +095c: e4 bc mov a,$bc +095e: 16 eb 09 or a,$09eb+y +0961: c4 bc mov $bc,a +0963: 6d push y +0964: ab b8 inc $b8 +0966: f5 e3 12 mov a,$12e3+x +0969: fd mov y,a +096a: f5 e2 12 mov a,$12e2+x +096d: da b9 movw $b9,ya +096f: ae pop a +0970: 1c asl a +0971: 5d mov x,a +0972: c4 be mov $be,a +0974: e8 0a mov a,#$0a +0976: 3f fd 0d call $0dfd +0979: d5 11 02 mov $0211+x,a +097c: d5 e1 02 mov $02e1+x,a +097f: d5 61 03 mov $0361+x,a +0982: d5 f0 02 mov $02f0+x,a +0985: d4 96 mov $96+x,a +0987: d4 a6 mov $a6+x,a +0989: d4 65 mov $65+x,a +098b: d4 75 mov $75+x,a +098d: d4 76 mov $76+x,a +098f: bc inc a +0990: d4 55 mov $55+x,a +0992: c4 bd mov $bd,a +0994: 6f ret + +0995: f8 be mov x,$be +0997: e4 b9 mov a,$b9 +0999: d5 1f 00 mov $001f+x,a +099c: e4 ba mov a,$ba +099e: d5 20 00 mov $0020+x,a +09a1: 3f ad 0d call $0dad +09a4: c4 bd mov $bd,a +09a6: f0 ec beq $0994 +09a8: 30 23 bmi $09cd +09aa: d5 00 02 mov $0200+x,a +09ad: 3f ad 0d call $0dad +09b0: c4 bd mov $bd,a +09b2: f0 e0 beq $0994 +09b4: 30 17 bmi $09cd +09b6: 2d push a +09b7: 9f xcn a +09b8: 28 07 and a,#$07 +09ba: fd mov y,a +09bb: f6 cc 12 mov a,$12cc+y +09be: d5 01 02 mov $0201+x,a +09c1: ae pop a +09c2: 28 0f and a,#$0f +09c4: fd mov y,a +09c5: f6 d4 12 mov a,$12d4+y +09c8: d5 10 02 mov $0210+x,a +09cb: 2f d4 bra $09a1 +09cd: 68 cb cmp a,#$cb +09cf: 90 05 bcc $09d6 +09d1: 3f 9b 0d call $0d9b +09d4: 2f cb bra $09a1 +09d6: 3f 04 0a call $0a04 +09d9: f5 00 02 mov a,$0200+x +09dc: d4 55 mov $55+x,a +09de: fd mov y,a +09df: f5 01 02 mov a,$0201+x +09e2: cf mul ya +09e3: dd mov a,y +09e4: d0 01 bne $09e7 +09e6: bc inc a +09e7: d4 56 mov $56+x,a +09e9: 2f b6 bra $09a1 + +09eb: db $01,$02,$04,$08,$10,$20,$40,$80 + +09f3: db $fe,$fd,$fb,$f7,$ef,$df,$bf,$7f + +09fb: db $01,$03,$07,$0f,$1f,$3f,$7f,$ff + +0a03: 6f ret + +; handle a note vcmd (80-cb) +0a04: ad ca cmp y,#$ca +0a06: 90 05 bcc $0a0d +; vcmd ca - percussion note +0a08: 3f b7 0d call $0db7 +0a0b: 8d a4 mov y,#$a4 +; vcmds 80-c7,c8,c9 - note/tie/rest +0a0d: ad c8 cmp y,#$c8 +0a0f: b0 f2 bcs $0a03 +0a11: e4 1a mov a,$1a +0a13: 24 31 and a,$31 +0a15: d0 ec bne $0a03 +; vcmds 80-c7 - note (note number in Y) +0a17: dd mov a,y +0a18: 28 7f and a,#$7f +0a1a: 60 clrc +0a1b: 84 3a adc a,$3a +0a1d: 60 clrc +0a1e: 95 61 03 adc a,$0361+x +0a21: d5 c1 02 mov $02c1+x,a +0a24: f5 e1 02 mov a,$02e1+x +0a27: d5 c0 02 mov $02c0+x,a +0a2a: f5 31 03 mov a,$0331+x +0a2d: 5c lsr a +0a2e: e8 00 mov a,#$00 +0a30: 7c ror a +0a31: d5 10 03 mov $0310+x,a +0a34: e8 00 mov a,#$00 +0a36: d4 95 mov $95+x,a +0a38: d5 66 00 mov $0066+x,a +0a3b: d5 50 03 mov $0350+x,a +0a3e: d4 a5 mov $a5+x,a +0a40: 09 31 48 or ($48),($31) +0a43: 09 31 2f or ($2f),($31) +0a46: f5 f0 02 mov a,$02f0+x +0a49: d4 85 mov $85+x,a +0a4b: f0 1e beq $0a6b +0a4d: f5 f1 02 mov a,$02f1+x +0a50: d4 86 mov $86+x,a +0a52: f5 00 03 mov a,$0300+x +0a55: d0 0a bne $0a61 +0a57: f5 c1 02 mov a,$02c1+x +0a5a: 80 setc +0a5b: b5 01 03 sbc a,$0301+x +0a5e: d5 c1 02 mov $02c1+x,a +0a61: f5 01 03 mov a,$0301+x +0a64: 60 clrc +0a65: 95 c1 02 adc a,$02c1+x +0a68: 3f e8 0f call $0fe8 +0a6b: 3f 00 10 call $1000 +0a6e: 8d 00 mov y,#$00 +0a70: e4 11 mov a,$11 +0a72: 80 setc +0a73: a8 34 sbc a,#$34 +0a75: b0 09 bcs $0a80 +0a77: e4 11 mov a,$11 +0a79: 80 setc +0a7a: a8 13 sbc a,#$13 +0a7c: b0 06 bcs $0a84 +0a7e: dc dec y +0a7f: 1c asl a +0a80: 7a 10 addw ya,$10 +0a82: da 10 movw $10,ya +0a84: 4d push x +0a85: e4 11 mov a,$11 +0a87: 1c asl a +0a88: 8d 00 mov y,#$00 +0a8a: cd 18 mov x,#$18 +0a8c: 9e div ya,x +0a8d: 5d mov x,a +0a8e: f6 01 0b mov a,$0b01+y +0a91: c4 15 mov $15,a +0a93: f6 00 0b mov a,$0b00+y +0a96: c4 14 mov $14,a +0a98: f6 03 0b mov a,$0b03+y +0a9b: 2d push a +0a9c: f6 02 0b mov a,$0b02+y +0a9f: ee pop y +0aa0: 9a 14 subw ya,$14 +0aa2: eb 10 mov y,$10 +0aa4: cf mul ya +0aa5: dd mov a,y +0aa6: 8d 00 mov y,#$00 +0aa8: 7a 14 addw ya,$14 +0aaa: cb 15 mov $15,y +0aac: 1c asl a +0aad: 2b 15 rol $15 +0aaf: c4 14 mov $14,a +0ab1: 2f 04 bra $0ab7 +0ab3: 4b 15 lsr $15 +0ab5: 7c ror a +0ab6: 3d inc x +0ab7: c8 06 cmp x,#$06 +0ab9: d0 f8 bne $0ab3 +0abb: c4 14 mov $14,a +0abd: ce pop x +0abe: f5 20 02 mov a,$0220+x +0ac1: eb 15 mov y,$15 +0ac3: cf mul ya +0ac4: da 16 movw $16,ya +0ac6: f5 20 02 mov a,$0220+x +0ac9: eb 14 mov y,$14 +0acb: cf mul ya +0acc: 6d push y +0acd: f5 21 02 mov a,$0221+x +0ad0: eb 14 mov y,$14 +0ad2: cf mul ya +0ad3: 7a 16 addw ya,$16 +0ad5: da 16 movw $16,ya +0ad7: f5 21 02 mov a,$0221+x +0ada: eb 15 mov y,$15 +0adc: cf mul ya +0add: fd mov y,a +0ade: ae pop a +0adf: 7a 16 addw ya,$16 +0ae1: da 16 movw $16,ya +0ae3: 7d mov a,x +0ae4: 9f xcn a +0ae5: 5c lsr a +0ae6: 08 02 or a,#$02 +0ae8: fd mov y,a +0ae9: e4 16 mov a,$16 +0aeb: 3f f1 0a call $0af1 +0aee: fc inc y +0aef: e4 17 mov a,$17 +0af1: 2d push a +0af2: e4 31 mov a,$31 +0af4: 24 1a and a,$1a +0af6: ae pop a +0af7: d0 06 bne $0aff +0af9: cc f2 00 mov $00f2,y +0afc: c5 f3 00 mov $00f3,a +0aff: 6f ret + +; pitch table +0b00: dw $085f +0b02: dw $08de +0b04: dw $0965 +0b06: dw $09f4 +0b08: dw $0a8c +0b0a: dw $0b2c +0b0c: dw $0bd6 +0b0e: dw $0c8b +0b10: dw $0d4a +0b12: dw $0e14 +0b14: dw $0eea +0b16: dw $0fcd +0b18: dw $10be + +; read $1C/1 into YA with advancing the pointer +0b1a: 8d 00 mov y,#$00 +0b1c: f7 1c mov a,($1c)+y +0b1e: 3a 1c incw $1c +0b20: 2d push a +0b21: f7 1c mov a,($1c)+y +0b23: 3a 1c incw $1c +0b25: fd mov y,a +0b26: ae pop a +0b27: 6f ret + +; play song in A +0b28: c4 04 mov $04,a +0b2a: 1c asl a +0b2b: f0 0d beq $0b3a +0b2d: 5d mov x,a +0b2e: f5 e3 12 mov a,$12e3+x +0b31: fd mov y,a +0b32: f5 e2 12 mov a,$12e2+x +0b35: da 1c movw $1c,ya +0b37: 8f 02 0c mov $0c,#$02 +0b3a: e4 1a mov a,$1a +0b3c: 48 ff eor a,#$ff +0b3e: 0e 30 00 tset1 $0030 +0b41: 6f ret + +; reset song params +0b42: cd 0e mov x,#$0e +0b44: 8f 80 31 mov $31,#$80 +0b47: e8 ff mov a,#$ff +0b49: d5 51 02 mov $0251+x,a +0b4c: e8 0a mov a,#$0a +0b4e: 3f fd 0d call $0dfd +0b51: d5 11 02 mov $0211+x,a +0b54: d5 e1 02 mov $02e1+x,a +0b57: d5 61 03 mov $0361+x,a +0b5a: d5 f0 02 mov $02f0+x,a +0b5d: d4 96 mov $96+x,a +0b5f: d4 a6 mov $a6+x,a +0b61: 1d dec x +0b62: 1d dec x +0b63: 4b 31 lsr $31 +0b65: d0 e0 bne $0b47 +0b67: c4 44 mov $44,a +0b69: c4 52 mov $52,a +0b6b: c4 3e mov $3e,a +0b6d: c4 3a mov $3a,a +0b6f: c4 1e mov $1e,a +0b71: c4 49 mov $49,a +0b73: c4 bb mov $bb,a +0b75: 8f c0 43 mov $43,#$c0 +0b78: 8f 20 3d mov $3d,#$20 +0b7b: 6f ret + +0b7c: eb 08 mov y,$08 +0b7e: e4 00 mov a,$00 +0b80: c4 08 mov $08,a +0b82: 7e 00 cmp y,$00 +0b84: d0 a2 bne $0b28 +0b86: 68 01 cmp a,#$01 +0b88: 90 f1 bcc $0b7b +0b8a: 68 08 cmp a,#$08 +0b8c: b0 ed bcs $0b7b +0b8e: e4 04 mov a,$04 +0b90: f0 e9 beq $0b7b +0b92: e4 0c mov a,$0c +0b94: f0 79 beq $0c0f +0b96: 6e 0c a9 dbnz $0c,$0b42 +0b99: 3f 1a 0b call $0b1a +0b9c: d0 14 bne $0bb2 +0b9e: fd mov y,a +0b9f: f0 87 beq $0b28 +; set/dec repeat count +0ba1: 8b 1e dec $1e +0ba3: 10 02 bpl $0ba7 +0ba5: c4 1e mov $1e,a +0ba7: 3f 1a 0b call $0b1a +0baa: f8 1e mov x,$1e +0bac: f0 eb beq $0b99 +0bae: da 1c movw $1c,ya +0bb0: 2f e7 bra $0b99 +; load start addresses - hi-byte not zero +0bb2: da 16 movw $16,ya +0bb4: 8d 00 mov y,#$00 +0bb6: f7 1c mov a,($1c)+y +0bb8: c4 b5 mov $b5,a +0bba: c4 b8 mov $b8,a +0bbc: 3a 1c incw $1c +0bbe: 1c asl a +0bbf: 9c dec a +0bc0: fd mov y,a +0bc1: c4 b7 mov $b7,a +0bc3: f7 16 mov a,($16)+y +0bc5: d6 1f 00 mov $001f+y,a +0bc8: dc dec y +0bc9: 10 f8 bpl $0bc3 +0bcb: f8 b5 mov x,$b5 +0bcd: 1d dec x +0bce: e8 00 mov a,#$00 +0bd0: 15 fb 09 or a,$09fb+x +0bd3: c4 bb mov $bb,a +0bd5: 8d 0f mov y,#$0f +0bd7: 7e b7 cmp y,$b7 +0bd9: f0 08 beq $0be3 +0bdb: e8 00 mov a,#$00 +0bdd: d6 1f 00 mov $001f+y,a +0be0: dc dec y +0be1: 2f f4 bra $0bd7 +0be3: cd 00 mov x,#$00 +0be5: 8f 00 b6 mov $b6,#$00 +0be8: 8f 01 31 mov $31,#$01 +0beb: f4 20 mov a,$20+x +0bed: f0 0a beq $0bf9 +0bef: f5 11 02 mov a,$0211+x +0bf2: d0 05 bne $0bf9 +0bf4: e8 00 mov a,#$00 +0bf6: 3f b7 0d call $0db7 +0bf9: e8 00 mov a,#$00 +0bfb: d4 65 mov $65+x,a +0bfd: d4 75 mov $75+x,a +0bff: d4 76 mov $76+x,a +0c01: bc inc a +0c02: d4 55 mov $55+x,a +0c04: 3d inc x +0c05: 3d inc x +0c06: 0b 31 asl $31 +0c08: ab b6 inc $b6 +0c0a: 69 b6 b5 cmp ($b5),($b6) +0c0d: d0 dc bne $0beb +0c0f: cd 00 mov x,#$00 +0c11: d8 48 mov $48,x +0c13: 8f 01 31 mov $31,#$01 +0c16: d8 32 mov $32,x +0c18: f4 20 mov a,$20+x +0c1a: d0 03 bne $0c1f +0c1c: 5f b2 0c jmp $0cb2 + +0c1f: 9b 55 dec $55+x +0c21: d0 76 bne $0c99 +0c23: f5 c0 00 mov a,$00c0+x +0c26: f0 09 beq $0c31 +0c28: d4 55 mov $55+x,a +0c2a: e8 00 mov a,#$00 +0c2c: d5 c0 00 mov $00c0+x,a +0c2f: 2f 68 bra $0c99 +0c31: 3f ad 0d call $0dad +0c34: d0 24 bne $0c5a +0c36: 7d mov a,x +0c37: 5c lsr a +0c38: fd mov y,a +0c39: e4 bc mov a,$bc +0c3b: 36 eb 09 and a,$09eb+y +0c3e: d0 61 bne $0ca1 +; vcmd 00 - end repeat/return +0c40: f4 65 mov a,$65+x +0c42: d0 03 bne $0c47 +0c44: 5f 99 0b jmp $0b99 + +; repeat/return from subroutine +0c47: 3f 23 10 call $1023 +0c4a: 9b 65 dec $65+x +0c4c: d0 e3 bne $0c31 +0c4e: f5 30 02 mov a,$0230+x +0c51: d4 1f mov $1f+x,a +0c53: f5 31 02 mov a,$0231+x +0c56: d4 20 mov $20+x,a +0c58: 2f d7 bra $0c31 +0c5a: 30 1f bmi $0c7b +0c5c: d5 00 02 mov $0200+x,a +0c5f: 3f ad 0d call $0dad +; vcmd branches +0c62: 30 17 bmi $0c7b +0c64: 2d push a +0c65: 9f xcn a +0c66: 28 07 and a,#$07 +0c68: fd mov y,a +0c69: f6 cc 12 mov a,$12cc+y +0c6c: d5 01 02 mov $0201+x,a +0c6f: ae pop a +0c70: 28 0f and a,#$0f +0c72: fd mov y,a +0c73: f6 d4 12 mov a,$12d4+y +0c76: d5 10 02 mov $0210+x,a +0c79: 2f b6 bra $0c31 +; vcmd branches 80-ff +0c7b: 68 cb cmp a,#$cb +0c7d: 90 05 bcc $0c84 +0c7f: 3f 9b 0d call $0d9b +0c82: 2f ad bra $0c31 +0c84: 3f 04 0a call $0a04 +0c87: f5 00 02 mov a,$0200+x +0c8a: d4 55 mov $55+x,a +0c8c: fd mov y,a +0c8d: f5 01 02 mov a,$0201+x +0c90: cf mul ya +0c91: dd mov a,y +0c92: d0 01 bne $0c95 +0c94: bc inc a +0c95: d4 56 mov $56+x,a +0c97: 2f 03 bra $0c9c +0c99: 3f 19 11 call $1119 +0c9c: 3f c8 0f call $0fc8 +0c9f: 2f 11 bra $0cb2 +0ca1: f6 eb 09 mov a,$09eb+y +0ca4: 4e bb 00 tclr1 $00bb +0ca7: 4e bc 00 tclr1 $00bc +0caa: e8 00 mov a,#$00 +0cac: d4 1f mov $1f+x,a +0cae: d4 20 mov $20+x,a +0cb0: 8b b8 dec $b8 +0cb2: 3d inc x +0cb3: 3d inc x +0cb4: 0b 31 asl $31 +0cb6: f0 03 beq $0cbb +0cb8: 5f 16 0c jmp $0c16 +0cbb: e4 3e mov a,$3e +0cbd: f0 0b beq $0cca +0cbf: ba 40 movw ya,$40 +0cc1: 7a 3c addw ya,$3c +0cc3: 6e 3e 02 dbnz $3e,$0cc8 +0cc6: ba 3e movw ya,$3e +0cc8: da 3c movw $3c,ya +0cca: e4 52 mov a,$52 +0ccc: f0 15 beq $0ce3 +0cce: ba 4e movw ya,$4e +0cd0: 7a 4a addw ya,$4a +0cd2: da 4a movw $4a,ya +0cd4: ba 50 movw ya,$50 +0cd6: 7a 4c addw ya,$4c +0cd8: 6e 52 06 dbnz $52,$0ce1 +0cdb: ba 52 movw ya,$52 +0cdd: da 4a movw $4a,ya +0cdf: eb 54 mov y,$54 +0ce1: da 4c movw $4c,ya +0ce3: e4 44 mov a,$44 +0ce5: f0 0e beq $0cf5 +0ce7: ba 46 movw ya,$46 +0ce9: 7a 42 addw ya,$42 +0ceb: 6e 44 02 dbnz $44,$0cf0 +0cee: ba 44 movw ya,$44 +0cf0: da 42 movw $42,ya +0cf2: 8f ff 48 mov $48,#$ff +0cf5: cd 00 mov x,#$00 +0cf7: 8f 01 31 mov $31,#$01 +0cfa: f4 20 mov a,$20+x +0cfc: f0 03 beq $0d01 +0cfe: 3f 4d 10 call $104d +0d01: 3d inc x +0d02: 3d inc x +0d03: 0b 31 asl $31 +0d05: d0 f3 bne $0cfa +0d07: 6f ret + +; vcmd dispatch table +0d08: dw $0db7 ; cb - set instrument +0d0a: dw $0df9 ; cc - set note length +0d0c: dw $0dfd ; cd - pan +0d0e: dw $0e0b ; ce - pan parameter +0d10: dw $0e0f ; cf - pan fade +0d12: dw $0e25 ; d0 - vibrato off +0d14: dw $0e32 ; d1 - vibrato on +0d16: dw $0e3b ; d2 - vibrato parameter 1 +0d18: dw $0e3f ; d3 - vibrato parameter 2 +0d1a: dw $0e43 ; d4 - vibrato parameter 3 +0d1c: dw $0e46 ; d5 - vibrato fade +0d1e: dw $0e56 ; d6 - master volume +0d20: dw $0e5b ; d7 - master volume parameter +0d22: dw $0e5e ; d8 - master volume fade +0d24: dw $0e6c ; d9 - tempo +0d26: dw $0e71 ; da - tempo fade parameter +0d28: dw $0e74 ; db - tempo fade +0d2a: dw $0e82 ; dc - global transpose +0d2c: dw $0e85 ; dd - per-voice transpose +0d2e: dw $0e89 ; de - tremolo on +0d30: dw $0e8f ; df - tremolo off +0d32: dw $0e92 ; e0 - pitch envelope (release) +0d34: dw $0e96 ; e1 - pitch envelope (attack) +0d36: dw $0e9a ; e2 - pitch envelope off +0d38: dw $0e9e ; e3 - volume +0d3a: dw $0ea7 ; e4 - volume fade parameter +0d3c: dw $0eab ; e5 - volume fade +0d3e: dw $0ec1 ; e6 - tuning +0d40: dw $0ec5 ; e7 +0d42: dw $0edb ; e8 +0d44: dw $0ef2 ; e9 - echo volume parameter 1 +0d46: dw $0ef7 ; ea - echo volume parameter 2 +0d48: dw $0efc ; eb - set echo params (1) +0d4a: dw $0f61 ; ec - disable echo +0d4c: dw $0f64 ; ed - set echo params (2) +0d4e: dw $0f7b ; ee +0d50: dw $0f80 ; ef +0d52: dw $0f85 ; f0 +0d54: dw $0fa9 ; f1 +0d56: dw $0fac ; f2 +0d58: dw $0fb0 ; f3 +0d5a: dw $0fb4 ; f4 +0d5c: dw $0fb8 ; f5 +0d5e: dw $0fbc ; f6 +0d60: dw $0fd8 ; f7 - pitch slide +0d62: dw $0fc0 ; f8 +0d64: dw $0fc4 ; f9 +0d66: dw $100b ; fa - call subroutine +0d68: dw $102e ; fb + +; vcmd lengths +0d6a: db $01,$01,$01,$01,$01,$00,$00,$01 ; cb-d2 +0d72: db $01,$01,$01,$01,$01,$01,$01,$01 ; d3-da +0d7a: db $01,$01,$01,$00,$00,$01,$01,$01 ; db-e2 +0d82: db $01,$01,$01,$01,$00,$00,$01,$01 ; e3-ea +0d8a: db $01,$01,$01,$01,$01,$01,$00,$00 ; eb-f2 +0d92: db $01,$01,$01,$01,$01,$01,$01,$03 ; f3-fa +0d9a: db $01 ; fb + +; dispatch vcmd in A (cb-ff) +0d9b: 1c asl a +0d9c: fd mov y,a +0d9d: f6 73 0c mov a,$0c73+y +0da0: 2d push a +0da1: f6 72 0c mov a,$0c72+y +0da4: 2d push a +0da5: dd mov a,y +0da6: 5c lsr a +0da7: fd mov y,a +0da8: f6 1f 0d mov a,$0d1f+y +0dab: f0 08 beq $0db5 +0dad: e7 1f mov a,($1f+x) +0daf: bb 1f inc $1f+x +0db1: d0 02 bne $0db5 +0db3: bb 20 inc $20+x +0db5: fd mov y,a +0db6: 6f ret + +; vcmd cb - set instrument +0db7: d5 11 02 mov $0211+x,a +0dba: fd mov y,a +0dbb: 10 06 bpl $0dc3 +0dbd: 80 setc +0dbe: a8 ca sbc a,#$ca +0dc0: 60 clrc +0dc1: 84 49 adc a,$49 +0dc3: 8d 06 mov y,#$06 +0dc5: cf mul ya +0dc6: da 14 movw $14,ya +0dc8: 60 clrc +0dc9: 98 a0 14 adc $14,#$a0 +0dcc: 98 3a 15 adc $15,#$3a +0dcf: e4 1a mov a,$1a +0dd1: 24 31 and a,$31 +0dd3: d0 23 bne $0df8 +0dd5: 4d push x +0dd6: 7d mov a,x +0dd7: 9f xcn a +0dd8: 5c lsr a +0dd9: 08 04 or a,#$04 +0ddb: 5d mov x,a +0ddc: 8d 00 mov y,#$00 +0dde: f7 14 mov a,($14)+y +0de0: c9 f2 00 mov $00f2,x +0de3: c5 f3 00 mov $00f3,a +0de6: 3d inc x +0de7: fc inc y +0de8: ad 04 cmp y,#$04 +0dea: d0 f2 bne $0dde +0dec: ce pop x +0ded: f7 14 mov a,($14)+y +0def: d5 21 02 mov $0221+x,a +0df2: fc inc y +0df3: f7 14 mov a,($14)+y +0df5: d5 20 02 mov $0220+x,a +0df8: 6f ret + +; vcmd cc - set note length +0df9: d5 c0 00 mov $00c0+x,a +0dfc: 6f ret + +; vcmd cd - pan +0dfd: d5 b1 02 mov $02b1+x,a +0e00: 28 1f and a,#$1f +0e02: d5 91 02 mov $0291+x,a +0e05: e8 00 mov a,#$00 +0e07: d5 90 02 mov $0290+x,a +0e0a: 6f ret + +; vcmd ce - pan parameter +0e0b: d5 b0 02 mov $02b0+x,a +0e0e: 6f ret + +; vcmd cf - pan fade +0e0f: d4 76 mov $76+x,a +0e11: 2d push a +0e12: f5 b0 02 mov a,$02b0+x +0e15: 80 setc +0e16: b5 91 02 sbc a,$0291+x +0e19: ce pop x +0e1a: 3f 31 10 call $1031 +0e1d: d5 a0 02 mov $02a0+x,a +0e20: dd mov a,y +0e21: d5 a1 02 mov $02a1+x,a +0e24: 6f ret + +; vcmd d0 - vibrato off +0e25: f4 c1 mov a,$c1+x +0e27: d4 96 mov $96+x,a +0e29: d5 41 03 mov $0341+x,a +0e2c: e8 00 mov a,#$00 +0e2e: d5 31 03 mov $0331+x,a +0e31: 6f ret + +; vcmd d1 - vibrato on +0e32: d4 96 mov $96+x,a +0e34: d5 41 03 mov $0341+x,a +0e37: d5 31 03 mov $0331+x,a +0e3a: 6f ret + +; vcmd d2 - vibrato parameter 1 +0e3b: d5 30 03 mov $0330+x,a +0e3e: 6f ret + +; vcmd d3 - vibrato parameter 2 +0e3f: d5 11 03 mov $0311+x,a +0e42: 6f ret + +; vcmd d4 - vibrato parameter 3 +0e43: d4 c1 mov $c1+x,a +0e45: 6f ret + +; vcmd d5 - vibrato fade +0e46: d5 31 03 mov $0331+x,a +0e49: 2d push a +0e4a: 8d 00 mov y,#$00 +0e4c: f4 96 mov a,$96+x +0e4e: ce pop x +0e4f: 9e div ya,x +0e50: f8 32 mov x,$32 +0e52: d5 40 03 mov $0340+x,a +0e55: 6f ret + +; vcmd d6 - master volume +0e56: e8 00 mov a,#$00 +0e58: da 42 movw $42,ya +0e5a: 6f ret + +; vcmd d7 - master volume parameter +0e5b: c4 45 mov $45,a +0e5d: 6f ret + +; vcmd d8 - master volume fade +0e5e: c4 44 mov $44,a +0e60: 5d mov x,a +0e61: e4 45 mov a,$45 +0e63: 80 setc +0e64: a4 43 sbc a,$43 +0e66: 3f 31 10 call $1031 +0e69: da 46 movw $46,ya +0e6b: 6f ret + +; vcmd d9 - tempo +0e6c: e8 00 mov a,#$00 +0e6e: da 3c movw $3c,ya +0e70: 6f ret + +; vcmd da - tempo fade parameter +0e71: c4 3f mov $3f,a +0e73: 6f ret + +; vcmd db - tempo fade +0e74: c4 3e mov $3e,a +0e76: 5d mov x,a +0e77: e4 3f mov a,$3f +0e79: 80 setc +0e7a: a4 3d sbc a,$3d +0e7c: 3f 31 10 call $1031 +0e7f: da 40 movw $40,ya +0e81: 6f ret + +; vcmd dc - global transpose +0e82: c4 3a mov $3a,a +0e84: 6f ret + +; vcmd dd - per-voice transpose +0e85: d5 61 03 mov $0361+x,a +0e88: 6f ret + +; vcmd de - tremolo on +0e89: f5 80 02 mov a,$0280+x +0e8c: d4 a6 mov $a6+x,a +0e8e: 6f ret + +; vcmd df - tremolo off +0e8f: d4 a6 mov $a6+x,a +0e91: 6f ret + +; vcmd e0 - pitch envelope (release) +0e92: d5 60 03 mov $0360+x,a +0e95: 6f ret + +; vcmd e1 - pitch envelope (attack) +0e96: d5 51 03 mov $0351+x,a +0e99: 6f ret + +; vcmd e2 - pitch envelope off +0e9a: d5 80 02 mov $0280+x,a +0e9d: 6f ret + +; vcmd e3 - volume +0e9e: d5 51 02 mov $0251+x,a +0ea1: e8 00 mov a,#$00 +0ea3: d5 50 02 mov $0250+x,a +0ea6: 6f ret + +; vcmd e4 - volume fade parameter +0ea7: d5 70 02 mov $0270+x,a +0eaa: 6f ret + +; vcmd e5 - volume fade +0eab: d4 75 mov $75+x,a +0ead: 2d push a +0eae: f5 70 02 mov a,$0270+x +0eb1: 80 setc +0eb2: b5 51 02 sbc a,$0251+x +0eb5: ce pop x +0eb6: 3f 31 10 call $1031 +0eb9: d5 60 02 mov $0260+x,a +0ebc: dd mov a,y +0ebd: d5 61 02 mov $0261+x,a +0ec0: 6f ret + +; vcmd e6 - tuning +0ec1: d5 e1 02 mov $02e1+x,a +0ec4: 6f ret + +; vcmd e7 +0ec5: 7d mov a,x +0ec6: 5c lsr a +0ec7: fd mov y,a +0ec8: e5 35 00 mov a,$0035 +0ecb: 16 eb 09 or a,$09eb+y +0ece: c4 35 mov $35,a +0ed0: ba d0 movw ya,$d0 +0ed2: da 4a movw $4a,ya +0ed4: ba d2 movw ya,$d2 +0ed6: da 4c movw $4c,ya +0ed8: b2 33 clr5 $33 +0eda: 6f ret + +; vcmd e8 +0edb: 7d mov a,x +0edc: 5c lsr a +0edd: fd mov y,a +0ede: e5 35 00 mov a,$0035 +0ee1: 36 f3 09 and a,$09f3+y +0ee4: c5 35 00 mov $0035,a +0ee7: 68 00 cmp a,#$00 +0ee9: d0 06 bne $0ef1 +0eeb: da 4a movw $4a,ya +0eed: da 4c movw $4c,ya +0eef: a2 33 set5 $33 +0ef1: 6f ret + +; vcmd e9 - echo volume parameter 1 +0ef2: e8 00 mov a,#$00 +0ef4: da d0 movw $d0,ya +0ef6: 6f ret + +; vcmd ea - echo volume parameter 2 +0ef7: e8 00 mov a,#$00 +0ef9: da d2 movw $d2,ya +0efb: 6f ret + +; vcmd eb - set echo params (1) +0efc: 3f 1e 0f call $0f1e +0eff: 3f ad 0d call $0dad +0f02: c4 39 mov $39,a +0f04: 3f ad 0d call $0dad +0f07: 8d 08 mov y,#$08 +0f09: cf mul ya +0f0a: 5d mov x,a +0f0b: 8d 0f mov y,#$0f +0f0d: f5 ac 12 mov a,$12ac+x +0f10: 3f f9 0a call $0af9 +0f13: 3d inc x +0f14: dd mov a,y +0f15: 60 clrc +0f16: 88 10 adc a,#$10 +0f18: fd mov y,a +0f19: 10 f2 bpl $0f0d +0f1b: f8 32 mov x,$32 +0f1d: 6f ret + +0f1e: c4 38 mov $38,a +0f20: 8d 7d mov y,#$7d +0f22: cc f2 00 mov $00f2,y +0f25: e5 f3 00 mov a,$00f3 +0f28: 64 38 cmp a,$38 +0f2a: f0 2b beq $0f57 +0f2c: 28 0f and a,#$0f +0f2e: 48 ff eor a,#$ff +0f30: f3 37 03 bbc7 $37,$0f36 +0f33: 60 clrc +0f34: 84 37 adc a,$37 +0f36: c4 37 mov $37,a +0f38: 8d 04 mov y,#$04 +0f3a: f6 c4 08 mov a,$08c4+y +0f3d: c5 f2 00 mov $00f2,a +0f40: e8 00 mov a,#$00 +0f42: c5 f3 00 mov $00f3,a +0f45: fe f3 dbnz y,$0f3a +0f47: e4 33 mov a,$33 +0f49: 08 20 or a,#$20 +0f4b: 8d 6c mov y,#$6c +0f4d: 3f f9 0a call $0af9 +0f50: e4 38 mov a,$38 +0f52: 8d 7d mov y,#$7d +0f54: 3f f9 0a call $0af9 +0f57: 1c asl a +0f58: 1c asl a +0f59: 1c asl a +0f5a: 48 ff eor a,#$ff +0f5c: 8d 6d mov y,#$6d +0f5e: 5f f9 0a jmp $0af9 + +; vcmd ec - disable echo +0f61: c4 39 mov $39,a +0f63: 6f ret + +; vcmd ed - set echo params (2) +0f64: 8d 08 mov y,#$08 +0f66: cf mul ya +0f67: 5d mov x,a +0f68: 8d 0f mov y,#$0f +0f6a: f5 ac 12 mov a,$12ac+x +0f6d: 3f f9 0a call $0af9 +0f70: 3d inc x +0f71: dd mov a,y +0f72: 60 clrc +0f73: 88 10 adc a,#$10 +0f75: fd mov y,a +0f76: 10 f2 bpl $0f6a +0f78: f8 32 mov x,$32 +0f7a: 6f ret + +; vcmd ee +0f7b: c4 53 mov $53,a +0f7d: e2 bf set7 $bf +0f7f: 6f ret + +; vcmd ef +0f80: c4 54 mov $54,a +0f82: c2 bf set6 $bf +0f84: 6f ret + +; vcmd f0 +0f85: c4 52 mov $52,a +0f87: 5d mov x,a +0f88: 0b bf asl $bf +0f8a: 90 0c bcc $0f98 +0f8c: e4 53 mov a,$53 +0f8e: 80 setc +0f8f: a4 4b sbc a,$4b +0f91: f8 52 mov x,$52 +0f93: 3f 31 10 call $1031 +0f96: da 4e movw $4e,ya +0f98: 0b bf asl $bf +0f9a: 90 0c bcc $0fa8 +0f9c: e4 54 mov a,$54 +0f9e: 80 setc +0f9f: a4 4d sbc a,$4d +0fa1: f8 52 mov x,$52 +0fa3: 3f 31 10 call $1031 +0fa6: da 50 movw $50,ya +0fa8: 6f ret + +; vcmd f1 +0fa9: f5 81 02 mov a,$0281+x +; vcmd f2 +0fac: d5 f0 02 mov $02f0+x,a +0faf: 6f ret + +; vcmd f3 +0fb0: d5 00 03 mov $0300+x,a +0fb3: 6f ret + +; vcmd f4 +0fb4: d5 f1 02 mov $02f1+x,a +0fb7: 6f ret + +; vcmd f5 +0fb8: d5 81 02 mov $0281+x,a +0fbb: 6f ret + +; vcmd f6 +0fbc: d5 01 03 mov $0301+x,a +0fbf: 6f ret + +; vcmd f8 +0fc0: d5 81 02 mov $0281+x,a +0fc3: 6f ret + +; vcmd f9 +0fc4: d5 21 03 mov $0321+x,a +0fc7: 6f ret + +0fc8: f4 85 mov a,$85+x +0fca: d0 33 bne $0fff +0fcc: e7 1f mov a,($1f+x) +0fce: 68 f7 cmp a,#$f7 +0fd0: d0 2d bne $0fff +0fd2: 3f af 0d call $0daf +0fd5: 3f ad 0d call $0dad +; vcmd f7 - pitch slide +0fd8: d4 86 mov $86+x,a +0fda: f5 20 03 mov a,$0320+x +0fdd: d4 85 mov $85+x,a +0fdf: f5 21 03 mov a,$0321+x +0fe2: 60 clrc +0fe3: 84 3a adc a,$3a +0fe5: 95 61 03 adc a,$0361+x +0fe8: 28 7f and a,#$7f +0fea: d5 e0 02 mov $02e0+x,a +0fed: 80 setc +0fee: b5 c1 02 sbc a,$02c1+x +0ff1: fb 85 mov y,$85+x +0ff3: 6d push y +0ff4: ce pop x +0ff5: 3f 31 10 call $1031 +0ff8: d5 d0 02 mov $02d0+x,a +0ffb: dd mov a,y +0ffc: d5 d1 02 mov $02d1+x,a +0fff: 6f ret + +1000: f5 c1 02 mov a,$02c1+x +1003: c4 11 mov $11,a +1005: f5 c0 02 mov a,$02c0+x +1008: c4 10 mov $10,a +100a: 6f ret + +; vcmd fa - call subroutine +100b: d5 40 02 mov $0240+x,a +100e: 3f ad 0d call $0dad +1011: d5 41 02 mov $0241+x,a +1014: 3f ad 0d call $0dad +1017: d4 65 mov $65+x,a +1019: f4 1f mov a,$1f+x +101b: d5 30 02 mov $0230+x,a +101e: f4 20 mov a,$20+x +1020: d5 31 02 mov $0231+x,a +1023: f5 40 02 mov a,$0240+x +1026: d4 1f mov $1f+x,a +1028: f5 41 02 mov a,$0241+x +102b: d4 20 mov $20+x,a +102d: 6f ret + +; vcmd fb +102e: c4 49 mov $49,a +1030: 6f ret + +1031: ed notc +1032: 6b 12 ror $12 +1034: 10 03 bpl $1039 +1036: 48 ff eor a,#$ff +1038: bc inc a +1039: 8d 00 mov y,#$00 +103b: 9e div ya,x +103c: 2d push a +103d: e8 00 mov a,#$00 +103f: 9e div ya,x +1040: ee pop y +1041: f8 32 mov x,$32 +1043: f3 12 06 bbc7 $12,$104c +1046: da 14 movw $14,ya +1048: ba 0e movw ya,$0e +104a: 9a 14 subw ya,$14 +104c: 6f ret + +104d: f4 75 mov a,$75+x +104f: f0 09 beq $105a +1051: e8 50 mov a,#$50 +1053: 8d 02 mov y,#$02 +1055: 9b 75 dec $75+x +1057: 3f f5 10 call $10f5 +105a: fb a6 mov y,$a6+x +105c: f0 23 beq $1081 +105e: f5 60 03 mov a,$0360+x +1061: de a5 1b cbne $a5+x,$107f +1064: 09 31 48 or ($48),($31) +1067: f5 50 03 mov a,$0350+x +106a: 10 07 bpl $1073 +106c: fc inc y +106d: d0 04 bne $1073 +106f: e8 80 mov a,#$80 +1071: 2f 04 bra $1077 +1073: 60 clrc +1074: 95 51 03 adc a,$0351+x +1077: d5 50 03 mov $0350+x,a +107a: 3f 8f 12 call $128f +107d: 2f 07 bra $1086 +107f: bb a5 inc $a5+x +1081: e8 ff mov a,#$ff +1083: 3f 9a 12 call $129a +1086: f4 76 mov a,$76+x +1088: f0 09 beq $1093 +108a: e8 90 mov a,#$90 +108c: 8d 02 mov y,#$02 +108e: 9b 76 dec $76+x +1090: 3f f5 10 call $10f5 +1093: e4 31 mov a,$31 +1095: 24 48 and a,$48 +1097: f0 46 beq $10df +1099: f5 91 02 mov a,$0291+x +109c: fd mov y,a +109d: f5 90 02 mov a,$0290+x +10a0: da 10 movw $10,ya +10a2: 7d mov a,x +10a3: 9f xcn a +10a4: 5c lsr a +10a5: c4 12 mov $12,a +10a7: eb 11 mov y,$11 +10a9: f6 e1 10 mov a,$10e1+y +10ac: 80 setc +10ad: b6 e0 10 sbc a,$10e0+y +10b0: eb 10 mov y,$10 +10b2: cf mul ya +10b3: dd mov a,y +10b4: eb 11 mov y,$11 +10b6: 60 clrc +10b7: 96 e0 10 adc a,$10e0+y +10ba: fd mov y,a +10bb: f5 71 02 mov a,$0271+x +10be: cf mul ya +10bf: f5 b1 02 mov a,$02b1+x +10c2: 1c asl a +10c3: 13 12 01 bbc0 $12,$10c7 +10c6: 1c asl a +10c7: dd mov a,y +10c8: 90 03 bcc $10cd +10ca: 48 ff eor a,#$ff +10cc: bc inc a +10cd: eb 12 mov y,$12 +10cf: 3f f1 0a call $0af1 +10d2: 8d 14 mov y,#$14 +10d4: e8 00 mov a,#$00 +10d6: 9a 10 subw ya,$10 +10d8: da 10 movw $10,ya +10da: ab 12 inc $12 +10dc: 33 12 c8 bbc1 $12,$10a7 +10df: 6f ret + + +10e0: db $00,$01,$03,$07,$0d,$15,$1e,$29 +10e8: db $34,$42,$51,$5e,$67,$6e,$73,$77 +10f0: db $7a,$7c,$7d,$7e,$7f + +10f5: 09 31 48 or ($48),($31) +10f8: da 14 movw $14,ya +10fa: da 16 movw $16,ya +10fc: 4d push x +10fd: ee pop y +10fe: 60 clrc +10ff: d0 0a bne $110b +1101: 98 1f 16 adc $16,#$1f +1104: e8 00 mov a,#$00 +1106: d7 14 mov ($14)+y,a +1108: fc inc y +1109: 2f 09 bra $1114 +110b: 98 10 16 adc $16,#$10 +110e: 3f 12 11 call $1112 +1111: fc inc y +1112: f7 14 mov a,($14)+y +1114: 97 16 adc a,($16)+y +1116: d7 14 mov ($14)+y,a +1118: 6f ret + +1119: f4 56 mov a,$56+x +111b: d0 03 bne $1120 +111d: 5f 9b 11 jmp $119b + +1120: 9b 56 dec $56+x +1122: d0 0a bne $112e +1124: f5 c0 00 mov a,$00c0+x +1127: f0 18 beq $1141 +1129: d4 56 mov $56+x,a +112b: 5f 9b 11 jmp $119b + +112e: e8 02 mov a,#$02 +1130: de 55 68 cbne $55+x,$119b +1133: f5 c0 00 mov a,$00c0+x +1136: f0 09 beq $1141 +1138: d4 55 mov $55+x,a +113a: e8 00 mov a,#$00 +113c: d5 c0 00 mov $00c0+x,a +113f: 2f 5a bra $119b +1141: f4 65 mov a,$65+x +1143: c4 17 mov $17,a +1145: f4 1f mov a,$1f+x +1147: fb 20 mov y,$20+x +1149: da 14 movw $14,ya +114b: 8d 00 mov y,#$00 +114d: f7 14 mov a,($14)+y +114f: f0 1c beq $116d +1151: 30 05 bmi $1158 +1153: fc inc y +1154: f7 14 mov a,($14)+y +1156: 10 fb bpl $1153 +1158: 68 c8 cmp a,#$c8 +115a: f0 3f beq $119b +115c: 68 fa cmp a,#$fa +115e: f0 29 beq $1189 +1160: 68 cb cmp a,#$cb +1162: 90 30 bcc $1194 +1164: 6d push y +1165: fd mov y,a +1166: ae pop a +1167: 96 9f 0c adc a,$0c9f+y +116a: fd mov y,a +116b: 2f e0 bra $114d +116d: e4 17 mov a,$17 +116f: f0 23 beq $1194 +1171: 8b 17 dec $17 +1173: d0 0a bne $117f +1175: f5 31 02 mov a,$0231+x +1178: 2d push a +1179: f5 30 02 mov a,$0230+x +117c: ee pop y +117d: 2f ca bra $1149 +117f: f5 41 02 mov a,$0241+x +1182: 2d push a +1183: f5 40 02 mov a,$0240+x +1186: ee pop y +1187: 2f c0 bra $1149 +1189: fc inc y +118a: f7 14 mov a,($14)+y +118c: 2d push a +118d: fc inc y +118e: f7 14 mov a,($14)+y +1190: fd mov y,a +1191: ae pop a +1192: 2f b5 bra $1149 +1194: e4 31 mov a,$31 +1196: 8d 5c mov y,#$5c +1198: 3f f1 0a call $0af1 +119b: f2 13 clr7 $13 +119d: f4 85 mov a,$85+x +119f: f0 13 beq $11b4 +11a1: f4 86 mov a,$86+x +11a3: f0 04 beq $11a9 +11a5: 9b 86 dec $86+x +11a7: 2f 0b bra $11b4 +11a9: e2 13 set7 $13 +11ab: e8 c0 mov a,#$c0 +11ad: 8d 02 mov y,#$02 +11af: 9b 85 dec $85+x +11b1: 3f f8 10 call $10f8 +11b4: 3f 00 10 call $1000 +11b7: f4 96 mov a,$96+x +11b9: f0 4a beq $1205 +11bb: f5 30 03 mov a,$0330+x +11be: de 95 42 cbne $95+x,$1203 +11c1: f5 66 00 mov a,$0066+x +11c4: 75 31 03 cmp a,$0331+x +11c7: d0 05 bne $11ce +11c9: f5 41 03 mov a,$0341+x +11cc: 2f 0b bra $11d9 +11ce: bb 66 inc $66+x +11d0: fd mov y,a +11d1: f0 02 beq $11d5 +11d3: f4 96 mov a,$96+x +11d5: 60 clrc +11d6: 95 40 03 adc a,$0340+x +11d9: d4 96 mov $96+x,a +11db: f5 10 03 mov a,$0310+x +11de: 60 clrc +11df: 95 11 03 adc a,$0311+x +11e2: d5 10 03 mov $0310+x,a +11e5: c4 12 mov $12,a +11e7: 1c asl a +11e8: 1c asl a +11e9: 90 02 bcc $11ed +11eb: 48 ff eor a,#$ff +11ed: fd mov y,a +11ee: f4 96 mov a,$96+x +11f0: 68 f1 cmp a,#$f1 +11f2: 90 05 bcc $11f9 +11f4: 28 0f and a,#$0f +11f6: cf mul ya +11f7: 2f 04 bra $11fd +11f9: cf mul ya +11fa: dd mov a,y +11fb: 8d 00 mov y,#$00 +11fd: 3f 7a 12 call $127a +1200: 5f 6e 0a jmp $0a6e + +1203: bb 95 inc $95+x +1205: e3 13 f8 bbs7 $13,$1200 +1208: 6f ret + +1209: f2 13 clr7 $13 +120b: f4 a6 mov a,$a6+x +120d: f0 09 beq $1218 +120f: f5 60 03 mov a,$0360+x +1212: de a5 03 cbne $a5+x,$1218 +1215: 3f 82 12 call $1282 +1218: f5 91 02 mov a,$0291+x +121b: fd mov y,a +121c: f5 90 02 mov a,$0290+x +121f: da 10 movw $10,ya +1221: f4 76 mov a,$76+x +1223: f0 0a beq $122f +1225: f5 a1 02 mov a,$02a1+x +1228: fd mov y,a +1229: f5 a0 02 mov a,$02a0+x +122c: 3f 64 12 call $1264 +122f: f3 13 03 bbc7 $13,$1235 +1232: 3f a2 10 call $10a2 +1235: f2 13 clr7 $13 +1237: 3f 00 10 call $1000 +123a: f4 85 mov a,$85+x +123c: f0 0e beq $124c +123e: f4 86 mov a,$86+x +1240: d0 0a bne $124c +1242: f5 d1 02 mov a,$02d1+x +1245: fd mov y,a +1246: f5 d0 02 mov a,$02d0+x +1249: 3f 64 12 call $1264 +124c: f4 96 mov a,$96+x +124e: f0 b5 beq $1205 +1250: f5 30 03 mov a,$0330+x +1253: de 95 af cbne $95+x,$1205 +1256: eb 3b mov y,$3b +1258: f5 11 03 mov a,$0311+x +125b: cf mul ya +125c: dd mov a,y +125d: 60 clrc +125e: 95 10 03 adc a,$0310+x +1261: 5f e5 11 jmp $11e5 + +1264: e2 13 set7 $13 +1266: cb 12 mov $12,y +1268: 3f 43 10 call $1043 +126b: 6d push y +126c: eb 3b mov y,$3b +126e: cf mul ya +126f: cb 14 mov $14,y +1271: 8f 00 15 mov $15,#$00 +1274: eb 3b mov y,$3b +1276: ae pop a +1277: cf mul ya +1278: 7a 14 addw ya,$14 +127a: 3f 43 10 call $1043 +127d: 7a 10 addw ya,$10 +127f: da 10 movw $10,ya +1281: 6f ret + +1282: e2 13 set7 $13 +1284: eb 3b mov y,$3b +1286: f5 51 03 mov a,$0351+x +1289: cf mul ya +128a: dd mov a,y +128b: 60 clrc +128c: 95 50 03 adc a,$0350+x +128f: 1c asl a +1290: 90 02 bcc $1294 +1292: 48 ff eor a,#$ff +1294: fb a6 mov y,$a6+x +1296: cf mul ya +1297: dd mov a,y +1298: 48 ff eor a,#$ff +129a: eb 43 mov y,$43 +129c: cf mul ya +129d: f5 10 02 mov a,$0210+x +12a0: cf mul ya +12a1: f5 51 02 mov a,$0251+x +12a4: cf mul ya +12a5: dd mov a,y +12a6: cf mul ya +12a7: dd mov a,y +12a8: d5 71 02 mov $0271+x,a +12ab: 6f ret + +12ac: db $7f,$00,$00,$00,$00,$00,$00,$00 +12b4: db $58,$bf,$db,$f0,$fe,$07,$0c,$0c +12bc: db $0c,$21,$2b,$2b,$13,$fe,$f3,$f9 +12c4: db $34,$33,$00,$d9,$e5,$01,$fc,$eb + +12cc: db $32,$65,$7f,$98,$b2,$cb,$e5,$fc + +12d4: db $19,$32,$4c,$65,$72,$7f,$8c,$98 +12dc: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc \ No newline at end of file From 7bcb52305ec7d4d7a994ae7391da20c6f9d5b3a3 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:05:37 -0800 Subject: [PATCH 109/116] Rename snes/NSPC/NFL Football ($0800).bin to snes/NSPC/Virgin/NFL Football ($0800).bin --- snes/NSPC/{ => Virgin}/NFL Football ($0800).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/NSPC/{ => Virgin}/NFL Football ($0800).bin (100%) diff --git a/snes/NSPC/NFL Football ($0800).bin b/snes/NSPC/Virgin/NFL Football ($0800).bin similarity index 100% rename from snes/NSPC/NFL Football ($0800).bin rename to snes/NSPC/Virgin/NFL Football ($0800).bin From 05c010509f7fe97377c34fc825c8cea3ec8797e9 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:05:49 -0800 Subject: [PATCH 110/116] Update and rename snes/NSPC/NFL Football.s to snes/NSPC/Virgin/NFL Football.s --- snes/NSPC/{ => Virgin}/NFL Football.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/NSPC/{ => Virgin}/NFL Football.s (96%) diff --git a/snes/NSPC/NFL Football.s b/snes/NSPC/Virgin/NFL Football.s similarity index 96% rename from snes/NSPC/NFL Football.s rename to snes/NSPC/Virgin/NFL Football.s index c71c749c..e2462c58 100644 --- a/snes/NSPC/NFL Football.s +++ b/snes/NSPC/Virgin/NFL Football.s @@ -1480,4 +1480,5 @@ 12cc: db $32,$65,$7f,$98,$b2,$cb,$e5,$fc 12d4: db $19,$32,$4c,$65,$72,$7f,$8c,$98 -12dc: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc \ No newline at end of file + +12dc: db $a5,$b2,$bf,$cb,$d8,$e5,$f2,$fc From cb3186dc7f816422dd500a98abbab3ec7cad72a2 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:06:44 -0800 Subject: [PATCH 111/116] Add files via upload --- ...ess Adventures of Mickey Mouse ($0200).bin | Bin 0 -> 3912 bytes ... The Timeless Adventures of Mickey Mouse.s | 1658 +++++++++++++++++ 2 files changed, 1658 insertions(+) create mode 100644 snes/Mickey Mania - The Timeless Adventures of Mickey Mouse ($0200).bin create mode 100644 snes/Mickey Mania - The Timeless Adventures of Mickey Mouse.s diff --git a/snes/Mickey Mania - The Timeless Adventures of Mickey Mouse ($0200).bin b/snes/Mickey Mania - The Timeless Adventures of Mickey Mouse ($0200).bin new file mode 100644 index 0000000000000000000000000000000000000000..e7d73e37d9948e3c63b8097a35aeaf469ba66e42 GIT binary patch literal 3912 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 Xe&XdP);+cEse{7@hZ}y}@Z-M$=Iw5) literal 0 HcmV?d00001 diff --git a/snes/Mickey Mania - The Timeless Adventures of Mickey Mouse.s b/snes/Mickey Mania - The Timeless Adventures of Mickey Mouse.s new file mode 100644 index 00000000..0ed25b3f --- /dev/null +++ b/snes/Mickey Mania - The Timeless Adventures of Mickey Mouse.s @@ -0,0 +1,1658 @@ +0200: c0 di +0201: cd ff mov x,#$ff +0203: bd mov sp,x +0204: e8 00 mov a,#$00 +0206: 2d push a +0207: 8e pop psw +0208: 20 clrp +0209: 8f 37 f1 mov $f1,#$37 +020c: cd 00 mov x,#$00 +020e: f5 b0 05 mov a,$05b0+x +0211: c4 f2 mov $f2,a +0213: f5 b1 05 mov a,$05b1+x +0216: c4 f3 mov $f3,a +0218: 3d inc x +0219: 3d inc x +021a: c8 14 cmp x,#$14 +021c: d0 f0 bne $020e +021e: cd 00 mov x,#$00 +0220: af mov (x)+,a +0221: c8 f0 cmp x,#$f0 +0223: d0 fb bne $0220 +0225: 8f 00 08 mov $08,#$00 +0228: 8f 11 09 mov $09,#$11 +022b: e8 00 mov a,#$00 +022d: fd mov y,a +022e: d7 08 mov ($08)+y,a +0230: cd 05 mov x,#$05 +0232: 1d dec x +0233: d0 fd bne $0232 +0235: 3a 08 incw $08 +0237: 78 ff 09 cmp $09,#$ff +023a: d0 f2 bne $022e +023c: c4 f7 mov $f7,a +023e: c4 f4 mov $f4,a +0240: cd ff mov x,#$ff +0242: bd mov sp,x +0243: 8f 04 1e mov $1e,#$04 +0246: e8 01 mov a,#$01 +0248: c4 1d mov $1d,a +024a: c4 3c mov $3c,a +024c: 3f ee 05 call $05ee +024f: 8f 3f 48 mov $48,#$3f +0252: 3f df 10 call $10df +0255: cd ff mov x,#$ff +0257: bd mov sp,x +0258: 3f 70 02 call $0270 +025b: 3f b9 02 call $02b9 +025e: e4 3c mov a,$3c +0260: d0 f3 bne $0255 +0262: e4 fd mov a,$fd +0264: f0 ef beq $0255 +0266: 2d push a +0267: 3f 7c 0e call $0e7c +026a: ae pop a +026b: 9c dec a +026c: d0 f8 bne $0266 +026e: 2f e5 bra $0255 +0270: e4 f6 mov a,$f6 +0272: c4 49 mov $49,a +0274: 78 00 3a cmp $3a,#$00 +0277: f0 02 beq $027b +0279: e8 00 mov a,#$00 +027b: 68 80 cmp a,#$80 +027d: b0 1b bcs $029a +027f: 8f 0c f2 mov $f2,#$0c +0282: c4 f3 mov $f3,a +0284: 8f 1c f2 mov $f2,#$1c +0287: c4 f3 mov $f3,a +0289: 80 setc +028a: a8 22 sbc a,#$22 +028c: b0 02 bcs $0290 +028e: e8 00 mov a,#$00 +0290: 8f 2c f2 mov $f2,#$2c +0293: c4 f3 mov $f3,a +0295: 8f 3c f2 mov $f2,#$3c +0298: c4 f3 mov $f3,a +029a: e4 3b mov a,$3b +029c: 04 32 or a,$32 +029e: 04 33 or a,$33 +02a0: 04 34 or a,$34 +02a2: 04 35 or a,$35 +02a4: 04 3a or a,$3a +02a6: 08 20 or a,#$20 +02a8: 04 46 or a,$46 +02aa: c4 f4 mov $f4,a +02ac: 3f 98 05 call $0598 +02af: 1c asl a +02b0: 5d mov x,a +02b1: 1f b4 02 jmp ($02b4+x) + +02b4: dw $02b8 +02b6: dw $0345 + +02b8: ret + +02b9: e4 f4 mov a,$f4 +02bb: 28 80 and a,$80 +02bd: 64 3b cmp a,$3b +02bf: f0 42 beq $0303 +02c1: e4 3b mov a,$3b +02c3: 48 80 eor a,#$80 +02c5: c4 3b mov $3b,a +02c7: f8 f4 mov x,$f4 +02c9: eb f5 mov y,$f5 +02cb: 04 32 or a,$32 +02cd: 04 33 or a,$33 +02cf: 04 34 or a,$34 +02d1: 04 35 or a,$35 +02d3: 04 3a or a,$3a +02d5: 08 20 or a,#$20 +02d7: 04 46 or a,$46 +02d9: c4 f4 mov $f4,a +02db: 7d mov a,x +02dc: 28 7f and a,#$7f +02de: 1c asl a +02df: 30 23 bmi $0304 +02e1: 68 1a cmp a,#$1a +02e3: b0 1e bcs $0303 +02e5: 5d mov x,a +02e6: 1f e9 02 jmp ($02e9+x) + +02e9: dw $0303 +02eb: dw $0b15 +02ed: dw $0a7c +02ef: dw $0ac7 +02f1: dw $030a +02f3: dw $030e +02f5: dw $0312 +02f7: dw $0318 +02f9: dw $0323 +02fb: dw $0307 +02fd: dw $0a11 +02ff: dw $0f17 +0301: dw $0338 + +0303: 6f ret + +0304: 5f c5 0e jmp $0ec5 +0307: cb 3f mov $3f,y +0309: 6f ret + +030a: 8f 10 3a mov $3a,#$10 +030d: 6f ret + +030e: 8f 00 3a mov $3a,#$00 +0311: 6f ret + +0312: 8f 00 32 mov $32,#$00 +0315: 5f 9e 03 jmp $039e + +0318: 78 00 35 cmp $35,#$00 +031b: d0 11 bne $032e +031d: 8f 00 33 mov $33,#$00 +0320: 5f c2 03 jmp $03c2 + +0323: 78 00 35 cmp $35,#$00 +0326: d0 06 bne $032e +0328: 8f 00 34 mov $34,#$00 +032b: 5f c6 03 jmp $03c6 + +032e: 3f 1d 03 call $031d +0331: 3f 28 03 call $0328 +0334: 8f 00 35 mov $35,#$00 +0337: 6f ret + +0338: 8f 01 47 mov $47,#$01 +033b: 3f 7f 10 call $107f +033e: e4 30 mov a,$30 +0340: 28 7f and a,#$7f +0342: c4 f6 mov $f6,a +0344: 6f ret + +0345: 8d 00 mov y,#$00 +0347: dd mov a,y +0348: c4 32 mov $32,a +034a: c4 33 mov $33,a +034c: c4 34 mov $34,a +034e: d6 84 12 mov $1284+y,a +0351: d6 84 13 mov $1384+y,a +0354: d6 84 15 mov $1584+y,a +0357: fc inc y +0358: d0 f4 bne $034e +035a: 3f 98 03 call $0398 +035d: 3f 67 04 call $0467 +0360: 8f 10 04 mov $04,#$10 +0363: 8f 00 05 mov $05,#$00 +0366: 8d 00 mov y,#$00 +0368: e8 02 mov a,#$02 +036a: 3f 65 05 call $0565 +036d: e4 10 mov a,$10 +036f: 3f d7 03 call $03d7 +0372: e4 11 mov a,$11 +0374: 3f e8 03 call $03e8 +0377: e4 10 mov a,$10 +0379: 30 03 bmi $037e +037b: 3f 76 04 call $0476 +037e: e4 11 mov a,$11 +0380: 30 03 bmi $0385 +0382: 3f 6e 04 call $046e +0385: 3f 9a 04 call $049a +0388: e8 00 mov a,#$00 +038a: c4 3c mov $3c,a +038c: c4 3b mov $3b,a +038e: c4 f4 mov $f4,a +0390: 78 00 f4 cmp $f4,#$00 +0393: d0 fb bne $0390 +0395: e4 fd mov a,$fd +0397: 6f ret + +0398: 8f 08 0c mov $0c,#$08 +039b: 5f a1 03 jmp $03a1 + +039e: 8f 06 0c mov $0c,#$06 +03a1: cd 00 mov x,#$00 +03a3: e8 00 mov a,#$00 +03a5: d4 7a mov $7a+x,a +03a7: d4 82 mov $82+x,a +03a9: d5 57 06 mov $0657+x,a +03ac: d4 52 mov $52+x,a +03ae: d4 4a mov $4a+x,a +03b0: 3d inc x +03b1: 3e 0c cmp x,$0c +03b3: d0 f0 bne $03a5 +03b5: cd 00 mov x,#$00 +03b7: 4d push x +03b8: 3f c8 07 call $07c8 +03bb: ce pop x +03bc: 3d inc x +03bd: c8 08 cmp x,#$08 +03bf: d0 f6 bne $03b7 +03c1: 6f ret + +03c2: cd 06 mov x,#$06 +03c4: 2f 02 bra $03c8 +03c6: cd 07 mov x,#$07 +03c8: e8 00 mov a,#$00 +03ca: d4 7a mov $7a+x,a +03cc: d4 82 mov $82+x,a +03ce: d5 57 06 mov $0657+x,a +03d1: 6d push y +03d2: 3f c8 07 call $07c8 +03d5: ee pop y +03d6: 6f ret + +03d7: fa 16 12 mov ($12),($16) +03da: fa 17 13 mov ($13),($17) +03dd: 68 ff cmp a,#$ff +03df: f0 06 beq $03e7 +03e1: 3f 46 04 call $0446 +03e4: 3f 01 04 call $0401 +03e7: 6f ret + +03e8: fa 16 14 mov ($14),($16) +03eb: fa 17 15 mov ($15),($17) +03ee: 68 ff cmp a,#$ff +03f0: f0 06 beq $03f8 +03f2: 3f 46 04 call $0446 +03f5: 3f f9 03 call $03f9 +03f8: 6f ret + +03f9: fa 14 08 mov ($08),($14) +03fc: fa 15 09 mov ($09),($15) +03ff: 2f 06 bra $0407 +0401: fa 12 08 mov ($08),($12) +0404: fa 13 09 mov ($09),($13) +0407: 8d 51 mov y,#$51 +0409: 3f 36 04 call $0436 +040c: 8d 4d mov y,#$4d +040e: f7 08 mov a,($08)+y +0410: f0 23 beq $0435 +0412: 5d mov x,a +0413: 8d 51 mov y,#$51 +0415: f7 08 mov a,($08)+y +0417: c4 0a mov $0a,a +0419: fc inc y +041a: f7 08 mov a,($08)+y +041c: c4 0b mov $0b,a +041e: 8d 00 mov y,#$00 +0420: f7 0a mov a,($0a)+y +0422: 60 clrc +0423: 84 08 adc a,$08 +0425: d7 0a mov ($0a)+y,a +0427: fc inc y +0428: f7 0a mov a,($0a)+y +042a: 84 09 adc a,$09 +042c: d7 0a mov ($0a)+y,a +042e: 3a 0a incw $0a +0430: 3a 0a incw $0a +0432: 1d dec x +0433: d0 e9 bne $041e +0435: 6f ret + +0436: f7 08 mov a,($08)+y +0438: 60 clrc +0439: 84 08 adc a,$08 +043b: d7 08 mov ($08)+y,a +043d: fc inc y +043e: f7 08 mov a,($08)+y +0440: 84 09 adc a,$09 +0442: d7 08 mov ($08)+y,a +0444: dc dec y +0445: 6f ret + +0446: 8f 0c 04 mov $04,#$0c +0449: 8f 00 05 mov $05,#$00 +044c: e8 02 mov a,#$02 +044e: 8d 00 mov y,#$00 +0450: 3f 65 05 call $0565 +0453: fa 16 04 mov ($04),($16) +0456: fa 17 05 mov ($05),($17) +0459: e4 0c mov a,$0c +045b: eb 0d mov y,$0d +045d: 3f 65 05 call $0565 +0460: fa 04 16 mov ($16),($04) +0463: fa 05 17 mov ($17),($05) +0466: 6f ret + +0467: 8f ec 16 mov $16,#$ec +046a: 8f 17 17 mov $17,#$17 +046d: 6f ret + +046e: 8f 84 02 mov $02,#$84 +0471: 8f 12 03 mov $03,#$12 +0474: 2f 06 bra $047c +0476: 8f 84 02 mov $02,#$84 +0479: 8f 14 03 mov $03,#$14 +047c: e8 1f mov a,#$1f +047e: 2d push a +047f: e4 02 mov a,$02 +0481: c4 04 mov $04,a +0483: e4 03 mov a,$03 +0485: c4 05 mov $05,a +0487: e8 10 mov a,#$10 +0489: 8d 00 mov y,#$00 +048b: 3f 65 05 call $0565 +048e: 60 clrc +048f: 98 10 02 adc $02,#$10 +0492: 98 00 03 adc $03,#$00 +0495: ae pop a +0496: 9c dec a +0497: d0 e5 bne $047e +0499: 6f ret + +049a: 8f 84 0a mov $0a,#$84 +049d: 8f 12 0b mov $0b,#$12 +04a0: 8f 04 08 mov $08,#$04 +04a3: 8f 12 09 mov $09,#$12 +04a6: 8d 7f mov y,#$7f +04a8: e8 00 mov a,#$00 +04aa: d7 08 mov ($08)+y,a +04ac: dc dec y +04ad: 10 fb bpl $04aa +04af: e8 3f mov a,#$3f +04b1: cd 00 mov x,#$00 +04b3: 2d push a +04b4: 8d 02 mov y,#$02 +04b6: f7 0a mov a,($0a)+y +04b8: 28 7f and a,#$7f +04ba: fd mov y,a +04bb: f7 08 mov a,($08)+y +04bd: d0 1a bne $04d9 +04bf: 7d mov a,x +04c0: 6d push y +04c1: 8d 0d mov y,#$0d +04c3: d7 0a mov ($0a)+y,a +04c5: 8d 02 mov y,#$02 +04c7: f7 0a mov a,($0a)+y +04c9: ee pop y +04ca: 2d push a +04cb: 7d mov a,x +04cc: 08 80 or a,#$80 +04ce: d7 08 mov ($08)+y,a +04d0: ae pop a +04d1: 4d push x +04d2: 3f fe 04 call $04fe +04d5: ce pop x +04d6: 3d inc x +04d7: 2f 06 bra $04df +04d9: 28 7f and a,#$7f +04db: 8d 0d mov y,#$0d +04dd: d7 0a mov ($0a)+y,a +04df: 60 clrc +04e0: 98 10 0a adc $0a,#$10 +04e3: 98 00 0b adc $0b,#$00 +04e6: ae pop a +04e7: 9c dec a +04e8: d0 c9 bne $04b3 +04ea: e8 ff mov a,#$ff +04ec: c4 f4 mov $f4,a +04ee: 3f f1 04 call $04f1 +04f1: e4 0f mov a,$0f +04f3: 64 f7 cmp a,$f7 +04f5: f0 fc beq $04f3 +04f7: ab 0f inc $0f +04f9: e4 0f mov a,$0f +04fb: c4 f7 mov $f7,a +04fd: 6f ret + +04fe: c4 f4 mov $f4,a +0500: 7d mov a,x +0501: 1c asl a +0502: 1c asl a +0503: fd mov y,a +0504: e4 16 mov a,$16 +0506: d6 00 11 mov $1100+y,a +0509: e4 17 mov a,$17 +050b: d6 01 11 mov $1101+y,a +050e: e4 0f mov a,$0f +0510: 64 f7 cmp a,$f7 +0512: f0 fc beq $0510 +0514: ab 0f inc $0f +0516: e4 0f mov a,$0f +0518: c4 f7 mov $f7,a +051a: e4 0f mov a,$0f +051c: 64 f7 cmp a,$f7 +051e: f0 fc beq $051c +0520: e4 f5 mov a,$f5 +0522: c4 06 mov $06,a +0524: e4 f6 mov a,$f6 +0526: c4 07 mov $07,a +0528: ab 0f inc $0f +052a: e4 0f mov a,$0f +052c: c4 f7 mov $f7,a +052e: e4 06 mov a,$06 +0530: 04 07 or a,$07 +0532: f0 30 beq $0564 +0534: 1a 06 decw $06 +0536: 1a 06 decw $06 +0538: e4 0f mov a,$0f +053a: 64 f7 cmp a,$f7 +053c: f0 fc beq $053a +053e: e4 f5 mov a,$f5 +0540: 60 clrc +0541: 84 16 adc a,$16 +0543: d6 02 11 mov $1102+y,a +0546: e4 f6 mov a,$f6 +0548: 84 17 adc a,$17 +054a: d6 03 11 mov $1103+y,a +054d: ab 0f inc $0f +054f: e4 0f mov a,$0f +0551: c4 f7 mov $f7,a +0553: fa 16 04 mov ($04),($16) +0556: fa 17 05 mov ($05),($17) +0559: ba 16 movw ya,$16 +055b: 7a 06 addw ya,$06 +055d: da 16 movw $16,ya +055f: ba 06 movw ya,$06 +0561: 3f 65 05 call $0565 +0564: 6f ret + +0565: 2d push a ; copy data to SPC700 +0566: 28 01 and a,#$01 +0568: ae pop a +0569: f0 09 beq $0574 +056b: 60 clrc +056c: 88 01 adc a,#$01 +056e: 2d push a +056f: dd mov a,y +0570: 88 00 adc a,#$00 +0572: fd mov y,a +0573: ae pop a +0574: da 06 movw $06,ya +0576: 4b 07 lsr $07 +0578: 6b 06 ror $06 +057a: cd 00 mov x,#$00 +057c: e4 0f mov a,$0f +057e: 64 f7 cmp a,$f7 +0580: f0 fc beq $057e +0582: e4 f5 mov a,$f5 +0584: c7 04 mov ($04+x),a +0586: 3a 04 incw $04 +0588: e4 f6 mov a,$f6 +058a: c7 04 mov ($04+x),a +058c: 3a 04 incw $04 +058e: ab 0f inc $0f +0590: fa 0f f7 mov ($f7),($0f) +0593: 1a 06 decw $06 +0595: d0 e5 bne $057c +0597: 6f ret + +0598: e4 0f mov a,$0f +059a: 64 f7 cmp a,$f7 +059c: f0 0f beq $05ad +059e: 4d push x +059f: f8 f5 mov x,$f5 +05a1: f0 07 beq $05aa +05a3: eb f6 mov y,$f6 +05a5: ab 0f inc $0f +05a7: bc inc a +05a8: c4 f7 mov $f7,a +05aa: 7d mov a,x +05ab: ce pop x +05ac: 6f ret + +05ad: e8 00 mov a,#$00 +05af: 6f ret + +05b0: db $6c,$73,$6d,$df,$7d,$04,$0d,$00,$5c,$ff,$4d,$00,$0c,$00,$1c,$00,$2c,$00,$3c,$00,$5d,$11,$2d,$00,$3d,$00,$0f,$7f,$1f,$00,$2f,$00,$3f,$00,$4f,$00,$5f,$00,$6f,$00,$7f,$00,$5c,$00,$0c,$7f,$1c,$7f,$0c,$7f,$1c,$7f,$2c,$5a,$3c,$5a,$4d,$00,$0d,$28,$6c,$13,$cd,$00,$f5,$c4,$05,$c4,$f2,$f5,$c5,$05,$c4,$f3,$3d,$3d,$c8,$2a,$d0,$f0,$8f,$07,$f1,$8f,$00,$f1,$e4,$fd,$8f,$28,$fa,$8f,$01,$f1,$6f + +060f: db $3a,$31,$12,$00,$00,$00,$69,$69 + +0617: db $27,$30,$17,$00,$00,$00,$64,$64,$01,$09,$02,$02,$02,$02,$02,$02,$8b,$dd,$9f,$ff,$ff,$ff,$8f,$8f,$a0,$ef,$17,$1f,$1f,$1f,$df,$df + +0637: db $60,$00,$00,$00,$00,$00,$00,$00,$03,$00,$00,$00,$00,$00,$00,$00,$08,$00,$00,$00,$00,$00,$00,$00 + +064f: db $40,$00,$00,$00,$00,$00,$00,$00,$02,$00,$00,$00,$00,$00,$00,$00,$02,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$08,$01,$01,$01,$01,$01,$01 + +067f: 8f 00 09 mov $09,#$00 +0682: 1c asl a ; restore original value +0683: 1c asl a +0684: 1c asl a +0685: c4 08 mov $08,a +0687: 0b 08 asl $08 +0689: 2b 09 rol $09 +068b: 60 clrc +068c: 98 84 08 adc $08,#$84 ; copy instrument/DSP data to work space +068f: 98 12 09 adc $09,#$12 +0692: c8 06 cmp x,#$06 +0694: 90 07 bcc $069d +0696: 60 clrc +0697: 98 00 08 adc $08,#$00 +069a: 98 02 09 adc $09,#$02 + +06ae: f7 08 mov a,($08)+y +06b0: d7 0a mov ($0a)+y,a +06b2: 3a 08 incw $08 +06b4: 98 08 0a adc $0a,#$08 +06b7: 98 00 0b adc $0b,#$00 +06ba: 6e 0d f1 dbnz $0d,$06ae +06bd: f5 4f 06 mov a,$064f+x +06c0: d4 d2 mov $d2+x,a +06c2: f5 37 06 mov a,$0637+x +06c5: d4 8a mov $8a+x,a +06c7: e8 00 mov a,#$00 +06c9: d4 92 mov $92+x,a +06cb: d4 9a mov $9a+x,a +06cd: d4 4a mov $4a+x,a +06cf: d4 52 mov $52+x,a +06d1: f4 ca mov a,$ca+x +06d3: f0 03 beq $06d8 +06d5: 3f 08 07 call $0708 +06d8: 78 00 3f cmp $3f,#$00 +06db: f0 20 beq $06fd +06dd: f5 0f 06 mov a,$060f+x +06e0: 10 05 bpl $06e7 +06e2: 48 ff eor a,#$ff +06e4: 60 clrc +06e5: 88 01 adc a,#$01 +06e7: c4 0d mov $0d,a +06e9: f5 17 06 mov a,$0617+x +06ec: 10 05 bpl $06f3 +06ee: 48 ff eor a,#$ff +06f0: 60 clrc +06f1: 88 01 adc a,#$01 +06f3: 60 clrc +06f4: 84 0d adc a,$0d +06f6: 5c lsr a +06f7: d5 0f 06 mov $060f+x,a +06fa: d5 17 06 mov $0617+x,a +06fd: f5 0f 06 mov a,$060f+x +0700: d4 7a mov $7a+x,a +0702: f5 17 06 mov a,$0617+x +0705: d4 82 mov $82+x,a +0707: 6f ret + +0708: 78 00 3f cmp $3f,#$00 +070b: f0 01 beq $070e +070d: 6f ret + +070e: 2d push a +070f: f5 0f 06 mov a,$060f+x +0712: 10 05 bpl $0719 +0714: 48 ff eor a,#$ff +0716: 60 clrc +0717: 88 01 adc a,#$01 +0719: c4 0c mov $0c,a +071b: f5 17 06 mov a,$0617+x +071e: 10 05 bpl $0725 +0720: 48 ff eor a,#$ff +0722: 60 clrc +0723: 88 01 adc a,#$01 +0725: 60 clrc +0726: 84 0c adc a,$0c +0728: 5c lsr a +0729: c4 0c mov $0c,a +072b: ae pop a +072c: 6d push y +072d: 2d push a +072e: eb 0c mov y,$0c +0730: cf mul ya +0731: cb 0d mov $0d,y +0733: 1c asl a +0734: 2b 0d rol $0d +0736: e4 0d mov a,$0d +0738: d5 0f 06 mov $060f+x,a +073b: ae pop a +073c: c4 0d mov $0d,a +073e: e8 80 mov a,#$80 +0740: 80 setc +0741: a4 0d sbc a,$0d +0743: eb 0c mov y,$0c +0745: cf mul ya +0746: cb 0d mov $0d,y +0748: 1c asl a +0749: 2b 0d rol $0d +074b: e4 0d mov a,$0d +074d: d5 17 06 mov $0617+x,a +0750: ee pop y +0751: 6f ret + +0752: d4 c2 mov $c2+x,a ; play note +0754: 5c lsr a +0755: 5c lsr a +0756: fd mov y,a +0757: f6 b9 0c mov a,$0cb9+y +075a: d4 da mov $da+x,a +075c: f4 c2 mov a,$c2+x +075e: 9c dec a +075f: 1c asl a +0760: fd mov y,a +0761: f6 d4 0d mov a,$0dd4+y +0764: d4 5a mov $5a+x,a +0766: f6 d5 0d mov a,$0dd5+y +0769: d4 62 mov $62+x,a +076b: f5 0f 06 mov a,$060f+x +076e: d4 7a mov $7a+x,a +0770: f5 17 06 mov a,$0617+x +0773: d4 82 mov $82+x,a +0775: f5 4f 06 mov a,$064f+x +0778: d4 d2 mov $d2+x,a +077a: f5 37 06 mov a,$0637+x +077d: d4 8a mov $8a+x,a +077f: e8 00 mov a,#$00 +0781: d4 92 mov $92+x,a +0783: d4 9a mov $9a+x,a +0785: d4 4a mov $4a+x,a +0787: d4 52 mov $52+x,a +0789: e8 ff mov a,#$ff +078b: d4 a2 mov $a2+x,a +078d: c8 06 cmp x,#$06 +078f: 90 16 bcc $07a7 +0791: f5 67 06 mov a,$0667+x +0794: 28 02 and a,#$02 +0796: f0 0f beq $07a7 +0798: 8f 6c f2 mov $f2,#$6c +079b: f4 c2 mov a,$c2+x +079d: 9c dec a +079e: 28 1f and a,#$1f +07a0: c4 f3 mov $f3,a +07a2: 1c asl a +07a3: 1c asl a +07a4: 1c asl a +07a5: c4 42 mov $42,a +07a7: 6f ret + +07a8: f4 aa mov a,$aa+x +07aa: 30 0e bmi $07ba +07ac: 60 clrc +07ad: 84 42 adc a,$42 +07af: c4 42 mov $42,a +07b1: 8f 6c f2 mov $f2,#$6c +07b4: 5c lsr a +07b5: 5c lsr a +07b6: 5c lsr a +07b7: c4 f3 mov $f3,a +07b9: 6f ret + +07ba: 48 ff eor a,#$ff +07bc: 60 clrc +07bd: 88 01 adc a,#$01 +07bf: c4 0a mov $0a,a +07c1: e4 42 mov a,$42 +07c3: 80 setc +07c4: a4 0a sbc a,$0a +07c6: 2f e7 bra $07af +07c8: f4 d2 mov a,$d2+x +07ca: f0 05 beq $07d1 +07cc: 9c dec a +07cd: d4 d2 mov $d2+x,a +07cf: 2f 37 bra $0808 +07d1: f5 57 06 mov a,$0657+x +07d4: f0 32 beq $0808 +07d6: f5 5f 06 mov a,$065f+x +07d9: 60 clrc +07da: 94 92 adc a,$92+x +07dc: d4 92 mov $92+x,a +07de: 2d push a +07df: f5 57 06 mov a,$0657+x +07e2: 28 07 and a,#$07 +07e4: 48 ff eor a,#$ff +07e6: bc inc a +07e7: 28 07 and a,#$07 +07e9: fd mov y,a +07ea: ae pop a +07eb: f0 0c beq $07f9 +07ed: 2d push a +07ee: 28 80 and a,#$80 +07f0: c4 0c mov $0c,a +07f2: ae pop a +07f3: 5c lsr a +07f4: 04 0c or a,$0c +07f6: dc dec y +07f7: d0 fa bne $07f3 +07f9: 3f 3b 09 call $093b +07fc: 4d push x +07fd: 2d push a +07fe: 7d mov a,x +07ff: 60 clrc +0800: 88 08 adc a,#$08 +0802: 5d mov x,a +0803: ae pop a +0804: 3f 3b 09 call $093b +0807: ce pop x +0808: f4 4a mov a,$4a+x +080a: c4 0a mov $0a,a +080c: f4 52 mov a,$52+x +080e: c4 0b mov $0b,a +0810: 04 0a or a,$0a +0812: f0 22 beq $0836 +0814: f5 67 06 mov a,$0667+x +0817: 28 02 and a,#$02 +0819: f0 03 beq $081e +081b: 3f a8 07 call $07a8 +081e: f4 62 mov a,$62+x +0820: 5c lsr a +0821: 5c lsr a +0822: 5c lsr a +0823: f0 07 beq $082c +0825: 0b 0a asl $0a +0827: 2b 0b rol $0b +0829: 9c dec a +082a: d0 f9 bne $0825 +082c: fb 62 mov y,$62+x +082e: f4 5a mov a,$5a+x +0830: 7a 0a addw ya,$0a +0832: d4 5a mov $5a+x,a +0834: db 62 mov $62+x,y +0836: f4 5a mov a,$5a+x +0838: d4 6a mov $6a+x,a +083a: f4 62 mov a,$62+x +083c: d4 72 mov $72+x,a +083e: f5 3f 06 mov a,$063f+x +0841: f0 49 beq $088c +0843: f4 8a mov a,$8a+x +0845: f0 05 beq $084c +0847: 9c dec a +0848: d4 8a mov $8a+x,a +084a: 2f 40 bra $088c +084c: f5 47 06 mov a,$0647+x +084f: 60 clrc +0850: 94 9a adc a,$9a+x +0852: d4 9a mov $9a+x,a +0854: fd mov y,a +0855: f6 d4 0c mov a,$0cd4+y +0858: 0d push psw +0859: 10 03 bpl $085e +085b: 48 ff eor a,#$ff +085d: bc inc a +085e: fd mov y,a +085f: f5 3f 06 mov a,$063f+x +0862: cf mul ya +0863: da 0c movw $0c,ya +0865: 4b 0d lsr $0d +0867: 6b 0c ror $0c +0869: f4 da mov a,$da+x +086b: f0 07 beq $0874 +086d: 4b 0d lsr $0d +086f: 6b 0c ror $0c +0871: 9c dec a +0872: d0 f9 bne $086d +0874: 8e pop psw +0875: 10 08 bpl $087f +0877: 58 ff 0c eor $0c,#$ff +087a: 58 ff 0d eor $0d,#$ff +087d: 3a 0c incw $0c +087f: e4 0c mov a,$0c +0881: 60 clrc +0882: 94 6a adc a,$6a+x +0884: d4 6a mov $6a+x,a +0886: e4 0d mov a,$0d +0888: 94 72 adc a,$72+x +088a: d4 72 mov $72+x,a +088c: 78 00 47 cmp $47,#$00 +088f: f0 0c beq $089d +0891: c8 04 cmp x,#$04 +0893: d0 08 bne $089d +0895: 38 ef 41 and $41,#$ef +0898: e8 00 mov a,#$00 +089a: d4 a2 mov $a2+x,a +089c: 6f ret + +089d: f5 2b 09 mov a,$092b+x +08a0: c4 0d mov $0d,a +08a2: 48 ff eor a,#$ff +08a4: c4 43 mov $43,a +08a6: f5 33 09 mov a,$0933+x +08a9: fd mov y,a +08aa: dd mov a,y +08ab: 08 00 or a,#$00 +08ad: c4 f2 mov $f2,a +08af: f4 7a mov a,$7a+x +08b1: c4 f3 mov $f3,a +08b3: dd mov a,y +08b4: 08 01 or a,#$01 +08b6: c4 f2 mov $f2,a +08b8: f4 82 mov a,$82+x +08ba: c4 f3 mov $f3,a +08bc: dd mov a,y +08bd: 08 02 or a,#$02 +08bf: c4 f2 mov $f2,a +08c1: f4 6a mov a,$6a+x +08c3: c4 f3 mov $f3,a +08c5: dd mov a,y +08c6: 08 03 or a,#$03 +08c8: c4 f2 mov $f2,a +08ca: f4 72 mov a,$72+x +08cc: c4 f3 mov $f3,a +08ce: dd mov a,y +08cf: 08 05 or a,#$05 +08d1: c4 f2 mov $f2,a +08d3: f5 27 06 mov a,$0627+x +08d6: c4 f3 mov $f3,a +08d8: dd mov a,y +08d9: 08 06 or a,#$06 +08db: c4 f2 mov $f2,a +08dd: f5 2f 06 mov a,$062f+x +08e0: c4 f3 mov $f3,a +08e2: dd mov a,y +08e3: 08 07 or a,#$07 +08e5: c4 f2 mov $f2,a +08e7: f5 6f 06 mov a,$066f+x +08ea: c4 f3 mov $f3,a +08ec: dd mov a,y +08ed: 08 04 or a,#$04 +08ef: c4 f2 mov $f2,a +08f1: f5 77 06 mov a,$0677+x +08f4: c4 f3 mov $f3,a +08f6: f5 67 06 mov a,$0667+x +08f9: 29 43 40 and ($40),($43) +08fc: 29 43 41 and ($41),($43) +08ff: 28 02 and a,#$02 +0901: f0 03 beq $0906 +0903: 09 0d 40 or ($40),($0d) +0906: f5 67 06 mov a,$0667+x +0909: 28 01 and a,#$01 +090b: f0 03 beq $0910 +090d: 09 0d 41 or ($41),($0d) +0910: 8f 3d f2 mov $f2,#$3d +0913: fa 40 f3 mov ($f3),($40) +0916: 8f 4d f2 mov $f2,#$4d +0919: fa 41 f3 mov ($f3),($41) +091c: f4 a2 mov a,$a2+x +091e: f0 0a beq $092a +0920: 8f 4c f2 mov $f2,#$4c +0923: fa 0d f3 mov ($f3),($0d) +0926: e8 00 mov a,#$00 +0928: d4 a2 mov $a2+x,a +092a: 6f ret + +092b: db $01,$02,$04,$08,$10,$20,$40,$80,$00,$10,$20,$30,$40,$50,$60,$70 + +093b: 2d push a +093c: 60 clrc +093d: 08 00 or a,#$00 +093f: 30 09 bmi $094a +0941: 95 0f 06 adc a,$060f+x +0944: 10 02 bpl $0948 +0946: e8 7f mov a,#$7f +0948: 2f 11 bra $095b +094a: 60 clrc +094b: 48 ff eor a,#$ff +094d: 88 01 adc a,#$01 +094f: c4 0c mov $0c,a +0951: f5 0f 06 mov a,$060f+x +0954: 80 setc +0955: a4 0c sbc a,$0c +0957: 10 02 bpl $095b +0959: e8 00 mov a,#$00 +095b: d4 7a mov $7a+x,a +095d: ae pop a +095e: 6f ret + +095f: 78 00 47 cmp $47,#$00 ; get next pattern byte +0962: f0 1a beq $097e +0964: 3f 7f 10 call $107f +0967: e4 f4 mov a,$f4 +0969: 28 80 and a,#$80 +096b: 64 3b cmp a,$3b +096d: f0 0f beq $097e +096f: e4 f4 mov a,$f4 +0971: 28 7f and a,#$7f +0973: 68 0b cmp a,#$0b +0975: d0 07 bne $097e +0977: 4d push x +0978: 6d push y +0979: 3f b9 02 call $02b9 +097c: ee pop y +097d: ce pop x +097e: f6 23 00 mov a,$0023+y +0981: c4 08 mov $08,a +0983: f6 24 00 mov a,$0024+y +0986: c4 09 mov $09,a +0988: 68 ff cmp a,#$ff ; check for "empty rows" flag +098a: d0 05 bne $0991 +098c: e4 08 mov a,$08 +098e: d4 ba mov $ba+x,a +0990: 6f ret + +0991: 5c lsr a ; get the "final" command value - divide by 2... +0992: 28 7f and a,#$7f ; ...and mask out bit 1 +0994: 68 6d cmp a,#$6d ; is it 6d? +0996: b0 57 bcs $09ef ; if not, then... +0998: f6 23 00 mov a,$0023+y +099b: 16 24 00 or a,$0024+y +099e: d0 01 bne $09a1 ; is it a note? +09a0: 6f ret + +09a1: 4b 09 lsr $09 +09a3: 6b 08 ror $08 +09a5: e4 08 mov a,$08 +09a7: 5c lsr a +09a8: 5c lsr a +09a9: 5c lsr a +09aa: 28 1f and a,#$1f +09ac: f0 06 beq $09b4 +09ae: 9c dec a ; set instrument/sample +09af: 6d push y +09b0: 3f 7f 06 call $067f +09b3: ee pop y +09b4: f6 24 00 mov a,$0024+y +09b7: 5c lsr a +09b8: f0 07 beq $09c1 +09ba: 6d push y +09bb: 4d push x +09bc: 3f 52 07 call $0752 +09bf: ce pop x +09c0: ee pop y +09c1: f6 23 00 mov a,$0023+y +09c4: 28 0f and a,#$0f +09c6: f0 26 beq $09ee +09c8: c4 09 mov $09,a +09ca: 28 07 and a,#$07 +09cc: 2d push a +09cd: e4 09 mov a,$09 +09cf: 28 08 and a,#$08 +09d1: ae pop a +09d2: f0 03 beq $09d7 +09d4: 48 ff eor a,#$ff +09d6: bc inc a +09d7: d4 aa mov $aa+x,a +09d9: 1c asl a +09da: c4 08 mov $08,a +09dc: 8f 00 09 mov $09,#$00 +09df: 28 80 and a,#$80 +09e1: f0 03 beq $09e6 +09e3: 8f ff 09 mov $09,#$ff +09e6: e4 08 mov a,$08 +09e8: d4 4a mov $4a+x,a +09ea: e4 09 mov a,$09 +09ec: d4 52 mov $52+x,a +09ee: 6f ret + +09ef: 68 7d cmp a,#$7d ; vcmd ff (7d) - empty rows +09f1: d0 4f bne $0a42 ; if 7d, then... +09f3: e4 08 mov a,$08 ; check for these values +09f5: c8 06 cmp x,#$06 +09f7: f0 0e beq $0a07 +09f9: c8 07 cmp x,#$07 +09fb: f0 0f beq $0a0c +09fd: c4 3e mov $3e,a ; otherwise, check for other commands +09ff: 3f 1c 0a call $0a1c +0a02: c4 1e mov $1e,a +0a04: c4 1d mov $1d,a +0a06: 6f ret + +0a07: c4 20 mov $20,a +0a09: c4 1f mov $1f,a +0a0b: 6f ret + +0a0c: c4 22 mov $22,a +0a0e: c4 21 mov $21,a +0a10: 6f ret + +0a11: cb 3d mov $3d,y +0a13: fa 3e 08 mov ($08),($3e) +0a16: 3f 1c 0a call $0a1c +0a19: c4 1e mov $1e,a +0a1b: 6f ret + +0a1c: e4 3d mov a,$3d +0a1e: 30 0b bmi $0a2b +0a20: 60 clrc +0a21: 84 08 adc a,$08 +0a23: b0 02 bcs $0a27 +0a25: d0 14 bne $0a3b +0a27: e8 ff mov a,#$ff +0a29: 2f 10 bra $0a3b +0a2b: 48 ff eor a,#$ff +0a2d: 60 clrc +0a2e: 88 01 adc a,#$01 +0a30: c4 09 mov $09,a +0a32: e4 08 mov a,$08 +0a34: 80 setc +0a35: a4 09 sbc a,$09 +0a37: b0 02 bcs $0a3b +0a39: e8 01 mov a,#$01 +0a3b: 68 04 cmp a,#$04 +0a3d: b0 02 bcs $0a41 +0a3f: e8 04 mov a,#$04 +0a41: 6f ret + +0a42: c8 07 cmp x,#$07 +0a44: d0 06 bne $0a4c +0a46: 78 00 35 cmp $35,#$00 +0a49: f0 01 beq $0a4c +0a4b: 1d dec x +0a4c: 68 7e cmp a,#$7e ; vcmd fc (7e) - jump to position +0a4e: f0 0f beq $0a5f +0a50: 68 7f cmp a,#$7f ; vcmd fe (7f) - pattern break +0a52: f0 01 beq $0a55 +0a54: 6f ret + +0a55: c8 06 cmp x,#$06 +0a57: f0 19 beq $0a72 +0a59: c8 07 cmp x,#$07 +0a5b: f0 1b beq $0a78 +0a5d: 2f 0d bra $0a6c +0a5f: e4 08 mov a,$08 +0a61: 9c dec a +0a62: c8 06 cmp x,#$06 +0a64: f0 0a beq $0a70 +0a66: c8 07 cmp x,#$07 +0a68: f0 0c beq $0a76 +0a6a: c4 2f mov $2f,a +0a6c: 8f 3f 30 mov $30,#$3f +0a6f: 6f ret + +0a70: c4 36 mov $36,a +0a72: 8f 3f 37 mov $37,#$3f +0a75: 6f ret + +0a76: c4 38 mov $38,a +0a78: 8f 3f 39 mov $39,#$3f +0a7b: 6f ret + +0a7c: 78 00 35 cmp $35,#$00 +0a7f: f0 06 beq $0a87 +0a81: 3f c6 03 call $03c6 +0a84: 8f 00 34 mov $34,#$00 +0a87: 8f 00 35 mov $35,#$00 +0a8a: 3f c2 03 call $03c2 +0a8d: cd 06 mov x,#$06 +0a8f: 3f 05 0b call $0b05 +0a92: dd mov a,y +0a93: c4 36 mov $36,a +0a95: e8 00 mov a,#$00 +0a97: c4 b8 mov $b8,a +0a99: c4 c0 mov $c0,a +0a9b: 8f 00 37 mov $37,#$00 +0a9e: 8f 02 33 mov $33,#$02 +0aa1: cb 0c mov $0c,y +0aa3: 3f 3a 0b call $0b3a +0aa6: 8d 01 mov y,#$01 +0aa8: f7 0c mov a,($0c)+y +0aaa: f0 14 beq $0ac0 +0aac: 8f 08 35 mov $35,#$08 +0aaf: e8 00 mov a,#$00 +0ab1: c4 b9 mov $b9,a +0ab3: c4 c1 mov $c1,a +0ab5: 3f c6 03 call $03c6 +0ab8: cd 07 mov x,#$07 +0aba: 3f 05 0b call $0b05 +0abd: 8f 00 34 mov $34,#$00 +0ac0: 8f 01 1f mov $1f,#$01 +0ac3: 8f 02 20 mov $20,#$02 +0ac6: 6f ret + +0ac7: 78 00 35 cmp $35,#$00 +0aca: f0 06 beq $0ad2 +0acc: 3f c2 03 call $03c2 +0acf: 8f 00 33 mov $33,#$00 +0ad2: 3f c6 03 call $03c6 +0ad5: e8 00 mov a,#$00 +0ad7: c4 b9 mov $b9,a +0ad9: c4 c1 mov $c1,a +0adb: cb 0c mov $0c,y +0add: 3f 3a 0b call $0b3a +0ae0: 6d push y +0ae1: 8d 01 mov y,#$01 +0ae3: f7 0c mov a,($0c)+y +0ae5: ee pop y +0ae6: f0 05 beq $0aed +0ae8: 8f 08 35 mov $35,#$08 +0aeb: 2f 9d bra $0a8a +0aed: 8f 00 35 mov $35,#$00 +0af0: dd mov a,y +0af1: c4 38 mov $38,a +0af3: 8f 00 39 mov $39,#$00 +0af6: 8f 04 34 mov $34,#$04 +0af9: 8f 01 21 mov $21,#$01 +0afc: 8f 02 22 mov $22,#$02 +0aff: cd 07 mov x,#$07 +0b01: 3f 05 0b call $0b05 +0b04: 6f ret + +0b05: e4 f6 mov a,$f6 +0b07: 68 81 cmp a,#$81 +0b09: 90 05 bcc $0b10 +0b0b: 28 7f and a,#$7f +0b0d: d4 ca mov $ca+x,a +0b0f: 6f ret + +0b10: e8 00 mov a,#$00 +0b12: d4 ca mov $ca+x,a +0b14: 6f ret + +0b15: cb 2f mov $2f,y +0b17: 3f 9e 03 call $039e +0b1a: 8f 00 30 mov $30,#$00 +0b1d: 8f 01 32 mov $32,#$01 +0b20: 3f 2d 0b call $0b2d +0b23: 8f 01 32 mov $32,#$01 +0b26: 8f 02 1d mov $1d,#$02 +0b29: 8f 0a 1e mov $1e,#$0a +0b2c: 6f ret + +0b2d: cd 00 mov x,#$00 +0b2f: 7d mov a,x +0b30: d4 b2 mov $b2+x,a +0b32: d4 ba mov $ba+x,a +0b34: 3d inc x +0b35: c8 06 cmp x,#$06 +0b37: d0 f7 bne $0b30 +0b39: 6f ret + +0b3a: fa 12 08 mov ($08),($12) +0b3d: fa 13 09 mov ($09),($13) +0b40: 60 clrc +0b41: 98 53 08 adc $08,#$53 +0b44: 98 00 09 adc $09,#$00 +0b47: 8f 00 0d mov $0d,#$00 +0b4a: 0b 0c asl $0c +0b4c: 2b 0d rol $0d +0b4e: 60 clrc +0b4f: 89 08 0c adc ($0c),($08) +0b52: 89 09 0d adc ($0d),($09) +0b55: 6f ret + +0b56: 78 00 34 cmp $34,#$00 +0b59: f0 fa beq $0b55 +0b5b: fa 38 0c mov ($0c),($38) +0b5e: fa 39 31 mov ($31),($39) +0b61: cd 07 mov x,#$07 +0b63: 2f 0d bra $0b72 +0b65: 78 00 33 cmp $33,#$00 +0b68: f0 71 beq $0bdb +0b6a: fa 36 0c mov ($0c),($36) +0b6d: fa 37 31 mov ($31),($37) +0b70: cd 06 mov x,#$06 +0b72: 3f 3a 0b call $0b3a +0b75: c8 06 cmp x,#$06 +0b77: d0 1d bne $0b96 +0b79: 78 00 35 cmp $35,#$00 +0b7c: f0 18 beq $0b96 +0b7e: e4 0c mov a,$0c +0b80: 2d push a +0b81: e4 0d mov a,$0d +0b83: 2d push a +0b84: 3f 4a 0c call $0c4a +0b87: ae pop a +0b88: c4 0d mov $0d,a +0b8a: ae pop a +0b8b: c4 0c mov $0c,a +0b8d: 3a 0c incw $0c +0b8f: 3d inc x +0b90: 3f 4a 0c call $0c4a +0b93: 1d dec x +0b94: 2f 03 bra $0b99 +0b96: 3f 4a 0c call $0c4a +0b99: c8 06 cmp x,#$06 +0b9b: f0 27 beq $0bc4 +0b9d: ab 39 inc $39 +0b9f: 78 40 39 cmp $39,#$40 +0ba2: d0 37 bne $0bdb +0ba4: 8f 00 39 mov $39,#$00 +0ba7: ab 38 inc $38 +0ba9: d0 03 bne $0bae +0bab: 8f 00 34 mov $34,#$00 +0bae: 3f b2 0b call $0bb2 +0bb1: 6f ret + +0bb2: e8 00 mov a,#$00 +0bb4: d4 ba mov $ba+x,a +0bb6: d4 b2 mov $b2+x,a +0bb8: c8 06 cmp x,#$06 +0bba: d0 1f bne $0bdb +0bbc: 78 00 35 cmp $35,#$00 +0bbf: f0 1a beq $0bdb +0bc1: 3d inc x +0bc2: 2f f0 bra $0bb4 +0bc4: ab 37 inc $37 +0bc6: 78 40 37 cmp $37,#$40 +0bc9: d0 10 bne $0bdb +0bcb: 8f 00 37 mov $37,#$00 +0bce: ab 36 inc $36 +0bd0: d0 06 bne $0bd8 +0bd2: 8f 00 33 mov $33,#$00 +0bd5: 8f 00 35 mov $35,#$00 +0bd8: 3f b2 0b call $0bb2 +0bdb: 6f ret + +0bdc: 78 00 32 cmp $32,#$00 +0bdf: d0 01 bne $0be2 +0be1: 6f ret + +0be2: fa 30 31 mov ($31),($30) +0be5: fa 14 08 mov ($08),($14) +0be8: fa 15 09 mov ($09),($15) +0beb: 60 clrc +0bec: 98 53 08 adc $08,#$53 +0bef: 98 00 09 adc $09,#$00 +0bf2: fa 2f 0c mov ($0c),($2f) +0bf5: 8f 00 0d mov $0d,#$00 +0bf8: 0b 0c asl $0c +0bfa: 2b 0d rol $0d +0bfc: fa 0c 0a mov ($0a),($0c) +0bff: fa 0d 0b mov ($0b),($0d) +0c02: 0b 0c asl $0c +0c04: 2b 0d rol $0d +0c06: 60 clrc +0c07: e4 0c mov a,$0c +0c09: 84 0a adc a,$0a +0c0b: c4 0c mov $0c,a +0c0d: e4 0d mov a,$0d +0c0f: 84 0b adc a,$0b +0c11: c4 0d mov $0d,a +0c13: 60 clrc +0c14: 89 08 0c adc ($0c),($08) +0c17: 89 09 0d adc ($0d),($09) +0c1a: cd 00 mov x,#$00 +0c1c: e4 0c mov a,$0c +0c1e: 2d push a +0c1f: e4 0d mov a,$0d +0c21: 2d push a +0c22: 3f 4a 0c call $0c4a +0c25: ae pop a +0c26: c4 0d mov $0d,a +0c28: ae pop a +0c29: c4 0c mov $0c,a +0c2b: 3a 0c incw $0c +0c2d: 3d inc x +0c2e: c8 06 cmp x,#$06 +0c30: d0 ea bne $0c1c +0c32: ab 30 inc $30 +0c34: 78 40 30 cmp $30,#$40 +0c37: d0 10 bne $0c49 +0c39: 8f 00 30 mov $30,#$00 +0c3c: ab 2f inc $2f +0c3e: d0 06 bne $0c46 +0c40: 8f 00 32 mov $32,#$00 +0c43: 3f 9e 03 call $039e +0c46: 3f 2d 0b call $0b2d +0c49: 6f ret + +0c4a: f4 ba mov a,$ba+x ; load music and sound effects data +0c4c: d0 60 bne $0cae +0c4e: 8d 00 mov y,#$00 +0c50: f7 0c mov a,($0c)+y +0c52: c4 0a mov $0a,a +0c54: 8f 00 0b mov $0b,#$00 +0c57: 0b 0a asl $0a +0c59: 2b 0b rol $0b +0c5b: fa 12 08 mov ($08),($12) ; sound effects pointer +0c5e: fa 13 09 mov ($09),($13) +0c61: c8 06 cmp x,#$06 +0c63: f0 0a beq $0c6f +0c65: c8 07 cmp x,#$07 +0c67: f0 06 beq $0c6f +0c69: fa 14 08 mov ($08),($14) ; music pointer +0c6c: fa 15 09 mov ($09),($15) +0c6f: 60 clrc +0c70: 98 51 08 adc $08,#$51 ; get start of channel patterns +0c73: 98 00 09 adc $09,#$00 +0c76: f7 08 mov a,($08)+y +0c78: 60 clrc +0c79: 84 0a adc a,$0a ; store current channel pattern pointer +0c7b: c4 0a mov $0a,a +0c7d: fc inc y +0c7e: f7 08 mov a,($08)+y +0c80: 84 0b adc a,$0b +0c82: c4 0b mov $0b,a +0c84: dc dec y +0c85: f7 0a mov a,($0a)+y +0c87: c4 08 mov $08,a +0c89: fc inc y +0c8a: f7 0a mov a,($0a)+y +0c8c: c4 09 mov $09,a +0c8e: f4 b2 mov a,$b2+x +0c90: c4 0a mov $0a,a +0c92: e4 31 mov a,$31 +0c94: 80 setc +0c95: a4 0a sbc a,$0a +0c97: 1c asl a +0c98: 60 clrc +0c99: 84 08 adc a,$08 ; get current pattern bytes +0c9b: c4 08 mov $08,a +0c9d: 98 00 09 adc $09,#$00 +0ca0: 8d 01 mov y,#$01 +0ca2: f7 08 mov a,($08)+y +0ca4: c4 24 mov $24,a +0ca6: dc dec y +0ca7: f7 08 mov a,($08)+y +0ca9: c4 23 mov $23,a +0cab: 5f 5f 09 jmp $095f + +0cae: f4 ba mov a,$ba+x +0cb0: 9c dec a +0cb1: d4 ba mov $ba+x,a +0cb3: f4 b2 mov a,$b2+x +0cb5: bc inc a +0cb6: d4 b2 mov $b2+x,a +0cb8: 6f ret + +0cb9: db $07,$07,$07,$06,$06,$06,$05,$05,$05,$04,$04,$04,$03,$03,$03,$02,$02,$02,$01,$01,$01,$00,$00,$00,$00,$00,$00,$00,$01,$02,$03,$04,$05,$06,$07,$08,$09,$0a,$0b,$0c,$0d,$0e,$0f,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$1a,$1b,$1c,$1d,$1e,$1f,$20,$21,$22,$23,$24,$25,$26,$27,$28,$29,$2a,$2b,$2c,$2d,$2e,$2f,$30,$31,$32,$33,$34,$35,$36,$37,$38,$39,$3a,$3b,$3c,$3d,$3e,$3f,$3f,$3e,$3d,$3c,$3b,$3a,$39,$38,$37,$36,$35,$34,$33,$32,$31,$30,$2f,$2e,$2d,$2c,$2b,$2a,$29,$28,$27,$26,$25,$24,$23,$22,$21,$20,$1f,$1e,$1d,$1c,$1b,$1a,$19,$18,$17,$16,$15,$14,$13,$12,$11,$10,$0f,$0e,$0d,$0c,$0b,$0a,$09,$08,$07,$06,$05,$04,$03,$02,$01,$00,$00,$ff,$fe,$fd,$fc,$fb,$fa,$f9,$f8,$f7,$f6,$f5,$f4,$f3,$f2,$f1,$f0,$ef,$ee,$ed,$ec,$eb,$ea,$e9,$e8,$e7,$e6,$e5,$e4,$e3,$e2,$e1,$e0,$df,$de,$dd,$dc,$db,$da,$d9,$d8,$d7,$d6,$d5,$d4,$d3,$d2,$d1,$d0,$cf,$ce,$cd,$cc,$cb,$ca,$c9,$c8,$c7,$c6,$c5,$c4,$c3,$c2,$c1,$c1,$c2,$c3,$c4,$c5,$c6,$c7,$c8,$c9,$ca,$cb,$cc,$cd,$ce,$cf,$d0,$d1,$d2,$d3,$d4,$d5,$d6,$d7,$d8,$d9,$da,$db,$dc,$dd,$de,$df,$e0,$e1,$e2,$e3,$e4,$e5,$e6,$e7,$e8,$e9,$ea,$eb,$ec,$ed,$ee,$ef,$f0,$f1,$f2,$f3,$f4,$f5,$f6,$f7,$f8,$f9,$fa,$fb,$fc,$fd,$fe,$ff,$00 + +0dd4: db $84,$00,$8c,$00,$95,$00,$9d,$00,$a6,$00,$b1,$00,$bb,$00,$c6,$00,$d1,$00,$de,$00,$eb,$00,$fa,$00,$08,$01,$18,$01,$2a,$01,$3a,$01,$4d,$01,$62,$01,$77,$01,$8c,$01,$a3,$01,$bd,$01,$d7,$01,$f5,$01,$10,$02,$30,$02,$54,$02,$75,$02,$9a,$02,$c4,$02,$ee,$02,$18,$03,$47,$03,$7b,$03,$af,$03,$ea,$03,$20,$04,$60,$04,$a8,$04,$ea,$04,$34,$05,$88,$05,$dc,$05,$30,$06,$8e,$06,$f7,$06,$5f,$07,$d4,$07,$40,$08,$c0,$08,$50,$09,$d4,$09,$68,$0a,$10,$0b,$b8,$0b,$60,$0c,$1c,$0d,$ef,$0d,$bf,$0e,$a8,$0f,$80,$10,$80,$11,$a0,$12,$a8,$13,$d0,$14,$20,$16,$70,$17,$c0,$18,$38,$1a,$de,$1b,$7e,$1d,$50,$1f,$00,$21,$00,$23,$40,$25,$50,$27,$a0,$29,$40,$2c,$e0,$2e,$80,$31,$70,$34,$bc,$37,$fc,$3a,$a0,$3e + +0e7c: 78 00 3a cmp $3a,#$00 +0e7f: f0 01 beq $0e82 +0e81: 6f ret + +0e82: cd 00 mov x,#$00 +0e84: 4d push x +0e85: e4 47 mov a,$47 +0e87: f0 03 beq $0e8c +0e89: 3f 7f 10 call $107f +0e8c: 3f c8 07 call $07c8 +0e8f: 3f b9 02 call $02b9 +0e92: ce pop x +0e93: 3d inc x +0e94: c8 08 cmp x,#$08 +0e96: d0 ec bne $0e84 +0e98: 8b 1d dec $1d +0e9a: d0 14 bne $0eb0 +0e9c: fa 1e 1d mov ($1d),($1e) +0e9f: fa 2f f5 mov ($f5),($2f) +0ea2: e4 30 mov a,$30 +0ea4: 78 00 47 cmp $47,#$00 +0ea7: f0 02 beq $0eab +0ea9: 08 80 or a,#$80 +0eab: c4 f6 mov $f6,a +0ead: 3f dc 0b call $0bdc +0eb0: 8b 1f dec $1f +0eb2: d0 06 bne $0eba +0eb4: fa 20 1f mov ($1f),($20) +0eb7: 3f 65 0b call $0b65 +0eba: 8b 21 dec $21 +0ebc: d0 06 bne $0ec4 +0ebe: fa 22 21 mov ($21),($22) +0ec1: 3f 56 0b call $0b56 +0ec4: 6f ret + +0ec5: 5c lsr a +0ec6: 28 3f and a,#$3f +0ec8: c4 45 mov $45,a +0eca: cb 44 mov $44,y +0ecc: cd 00 mov x,#$00 +0ece: e8 00 mov a,#$00 +0ed0: 78 3f 48 cmp $48,#$3f +0ed3: f0 14 beq $0ee9 +0ed5: e8 00 mov a,#$00 +0ed7: d6 84 16 mov $1684+y,a +0eda: d6 85 16 mov $1685+y,a +0edd: d6 86 16 mov $1686+y,a +0ee0: fc inc y +0ee1: fc inc y +0ee2: fc inc y +0ee3: ad b4 cmp y,#$b4 +0ee5: d0 f0 bne $0ed7 +0ee7: 2f 12 bra $0efb +0ee9: e8 00 mov a,#$00 +0eeb: d6 38 17 mov $1738+y,a +0eee: d6 39 17 mov $1739+y,a +0ef1: d6 3a 17 mov $173a+y,a +0ef4: fc inc y +0ef5: fc inc y +0ef6: fc inc y +0ef7: ad b4 cmp y,#$b4 +0ef9: d0 f0 bne $0eeb +0efb: e8 03 mov a,#$03 +0efd: c4 47 mov $47,a +0eff: c5 2f 17 mov $172f,a +0f02: c5 e3 17 mov $17e3,a +0f05: e8 00 mov a,#$00 +0f07: c5 8d 16 mov $168d,a +0f0a: c5 41 17 mov $1741,a +0f0d: 8f 44 f2 mov $f2,#$44 +0f10: fa 48 f3 mov ($f3),($48) +0f13: 8f 40 46 mov $46,#$40 +0f16: 6f ret + +0f17: 8f 01 f4 mov $f4,#$01 +0f1a: 8f 01 f5 mov $f5,#$01 +0f1d: fa 49 f6 mov ($f6),($49) +0f20: 8f 84 04 mov $04,#$84 +0f23: 8f 16 05 mov $05,#$16 +0f26: e8 b1 mov a,#$b1 +0f28: c5 54 0f mov $0f54,a +0f2b: e8 0f mov a,#$0f +0f2d: c5 55 0f mov $0f55,a +0f30: 78 3f 48 cmp $48,#$3f +0f33: d0 10 bne $0f45 +0f35: e8 fe mov a,#$fe +0f37: c5 54 0f mov $0f54,a +0f3a: e8 0f mov a,#$0f +0f3c: c5 55 0f mov $0f55,a +0f3f: 8f 38 04 mov $04,#$38 +0f42: 8f 17 05 mov $05,#$17 +0f45: 8d 00 mov y,#$00 +0f47: cd 11 mov x,#$11 +0f49: 69 0f f7 cmp ($f7),($0f) +0f4c: f0 fb beq $0f49 +0f4e: ab 0f inc $0f +0f50: fa 0f f7 mov ($f7),($0f) +0f53: 3f b1 0f call $0fb1 +0f56: f0 4b beq $0fa3 +0f58: 1d dec x +0f59: d0 f8 bne $0f53 +0f5b: dd mov a,y +0f5c: 80 setc +0f5d: a8 09 sbc a,#$09 +0f5f: fd mov y,a +0f60: f7 04 mov a,($04)+y +0f62: 08 03 or a,#$03 +0f64: d7 04 mov ($04)+y,a +0f66: 8f 00 46 mov $46,#$00 +0f69: 78 03 47 cmp $47,#$03 +0f6c: d0 11 bne $0f7f +0f6e: 8b 47 dec $47 +0f70: 3f a8 10 call $10a8 +0f73: 8f 4c f2 mov $f2,#$4c +0f76: 8f 10 f3 mov $f3,#$10 +0f79: 8f 44 f2 mov $f2,#$44 +0f7c: fa 48 f3 mov ($f3),($48) +0f7f: e4 3b mov a,$3b +0f81: 04 32 or a,$32 +0f83: 04 33 or a,$33 +0f85: 04 34 or a,$34 +0f87: 04 35 or a,$35 +0f89: 04 3a or a,$3a +0f8b: 08 20 or a,#$20 +0f8d: c4 f4 mov $f4,a +0f8f: fa 2f f5 mov ($f5),($2f) +0f92: e4 30 mov a,$30 +0f94: 08 80 or a,#$80 +0f96: c4 f6 mov $f6,a +0f98: 69 f7 0f cmp ($0f),($f7) +0f9b: f0 fb beq $0f98 +0f9d: ab 0f inc $0f +0f9f: fa 0f f7 mov ($f7),($0f) +0fa2: 6f ret + +0fa3: 8f 01 47 mov $47,#$01 +0fa6: 1d dec x +0fa7: f0 b2 beq $0f5b +0fa9: 3f 4b 10 call $104b +0fac: 1d dec x +0fad: d0 fa bne $0fa9 +0faf: 2f aa bra $0f5b +0fb1: 8f 00 f4 mov $f4,#$00 +0fb4: 8f 00 f5 mov $f5,#$00 +0fb7: 69 f7 0f cmp ($0f),($f7) +0fba: f0 fb beq $0fb7 +0fbc: ab 0f inc $0f +0fbe: e4 f4 mov a,$f4 +0fc0: 28 fc and a,#$fc +0fc2: d6 84 16 mov $1684+y,a +0fc5: e4 f5 mov a,$f5 +0fc7: d6 85 16 mov $1685+y,a +0fca: fa 0f f7 mov ($f7),($0f) +0fcd: e4 f6 mov a,$f6 +0fcf: d6 86 16 mov $1686+y,a +0fd2: e4 f4 mov a,$f4 +0fd4: d6 87 16 mov $1687+y,a +0fd7: e4 f5 mov a,$f5 +0fd9: d6 88 16 mov $1688+y,a +0fdc: 8f 01 f4 mov $f4,#$01 +0fdf: e4 f6 mov a,$f6 +0fe1: d6 89 16 mov $1689+y,a +0fe4: e4 f4 mov a,$f4 +0fe6: d6 8a 16 mov $168a+y,a +0fe9: e4 f5 mov a,$f5 +0feb: d6 8b 16 mov $168b+y,a +0fee: 8f 01 f5 mov $f5,#$01 +0ff1: e4 f6 mov a,$f6 +0ff3: d6 8c 16 mov $168c+y,a +0ff6: dd mov a,y +0ff7: 60 clrc +0ff8: 88 09 adc a,#$09 +0ffa: fd mov y,a +0ffb: 1a 44 decw $44 +0ffd: 6f ret + +0ffe: 8f 00 f4 mov $f4,#$00 +1001: 8f 00 f5 mov $f5,#$00 +1004: 69 f7 0f cmp ($0f),($f7) +1007: f0 fb beq $1004 +1009: ab 0f inc $0f +100b: e4 f4 mov a,$f4 +100d: 28 fc and a,#$fc +100f: d6 38 17 mov $1738+y,a +1012: e4 f5 mov a,$f5 +1014: d6 39 17 mov $1739+y,a +1017: fa 0f f7 mov ($f7),($0f) +101a: e4 f6 mov a,$f6 +101c: d6 3a 17 mov $173a+y,a +101f: e4 f4 mov a,$f4 +1021: d6 3b 17 mov $173b+y,a +1024: e4 f5 mov a,$f5 +1026: d6 3c 17 mov $173c+y,a +1029: 8f 01 f4 mov $f4,#$01 +102c: e4 f6 mov a,$f6 +102e: d6 3d 17 mov $173d+y,a +1031: e4 f4 mov a,$f4 +1033: d6 3e 17 mov $173e+y,a +1036: e4 f5 mov a,$f5 +1038: d6 3f 17 mov $173f+y,a +103b: 8f 01 f5 mov $f5,#$01 +103e: e4 f6 mov a,$f6 +1040: d6 40 17 mov $1740+y,a +1043: dd mov a,y +1044: 60 clrc +1045: 88 09 adc a,#$09 +1047: fd mov y,a +1048: 1a 44 decw $44 +104a: 6f ret + +104b: 8f 00 f4 mov $f4,#$00 +104e: 8f 00 f5 mov $f5,#$00 +1051: 69 f7 0f cmp ($0f),($f7) +1054: f0 fb beq $1051 +1056: e8 00 mov a,#$00 +1058: d7 04 mov ($04)+y,a +105a: fc inc y +105b: d7 04 mov ($04)+y,a +105d: fc inc y +105e: d7 04 mov ($04)+y,a +1060: fc inc y +1061: ab 0f inc $0f +1063: fa 0f f7 mov ($f7),($0f) +1066: d7 04 mov ($04)+y,a +1068: fc inc y +1069: d7 04 mov ($04)+y,a +106b: fc inc y +106c: d7 04 mov ($04)+y,a +106e: fc inc y +106f: 8f 01 f4 mov $f4,#$01 +1072: d7 04 mov ($04)+y,a +1074: fc inc y +1075: d7 04 mov ($04)+y,a +1077: fc inc y +1078: d7 04 mov ($04)+y,a +107a: fc inc y +107b: 8f 01 f5 mov $f5,#$01 +107e: 6f ret + +107f: 78 01 47 cmp $47,#$01 +1082: f0 18 beq $109c +1084: 8f 7c f2 mov $f2,#$7c +1087: e4 f3 mov a,$f3 +1089: 28 10 and a,#$10 +108b: f0 0e beq $109b +108d: c4 f3 mov $f3,a +108f: 8f 44 f2 mov $f2,#$44 +1092: 58 7f 48 eor $48,#$7f +1095: fa 48 f3 mov ($f3),($48) +1098: 8f 40 46 mov $46,#$40 +109b: 6f ret + +109c: 8f 00 47 mov $47,#$00 +109f: e8 01 mov a,#$01 +10a1: c5 8d 16 mov $168d,a +10a4: c5 41 17 mov $1741,a +10a7: 6f ret + +10a8: 8f 40 f2 mov $f2,#$40 +10ab: 8f 3f f3 mov $f3,#$3f +10ae: 8f 41 f2 mov $f2,#$41 +10b1: 8f 3f f3 mov $f3,#$3f +10b4: 8f 45 f2 mov $f2,#$45 +10b7: 8f 00 f3 mov $f3,#$00 +10ba: 8f 47 f2 mov $f2,#$47 +10bd: 8f 7f f3 mov $f3,#$7f +10c0: 8f 42 f2 mov $f2,#$42 +10c3: 8f 30 f3 mov $f3,#$30 +10c6: 8f 43 f2 mov $f2,#$43 +10c9: 8f 05 f3 mov $f3,#$05 +10cc: 8f 4d f2 mov $f2,#$4d +10cf: 38 ef 41 and $41,#$ef +10d2: e4 f3 mov a,$f3 +10d4: 28 ef and a,#$ef +10d6: c4 f3 mov $f3,a +10d8: 8f 4c f2 mov $f2,#$4c +10db: 8f 10 f3 mov $f3,#$10 +10de: 6f ret + +10df: e8 84 mov a,#$84 +10e1: c5 fc 11 mov $11fc,a +10e4: c5 02 12 mov $1202,a +10e7: e8 16 mov a,#$16 +10e9: c5 fd 11 mov $11fd,a +10ec: c5 03 12 mov $1203,a +10ef: e8 38 mov a,#$38 +10f1: c5 00 12 mov $1200,a +10f4: c5 fe 11 mov $11fe,a +10f7: e8 17 mov a,#$17 +10f9: c5 01 12 mov $1201,a +10fc: c5 ff 11 mov $11ff,a +10ff: 6f ret + +; sample pointer table +1100: dw $2056 +1102: dw $21d9 +1104: dw $26c5 +1106: dw $28d8 +1108: dw $298c +110a: dw $298c +110c: dw $2d19 +110e: dw $2d19 +1110: dw $31cf +1112: dw $31cf +1114: dw $363d +1116: dw $3742 +1118: dw $3a12 +111a: dw $3d57 +111c: dw $4078 +111e: dw $4078 +1120: dw $488e +1122: dw $4a7d +1124: dw $4c09 +1126: dw $4fb1 +1128: dw $5509 +112a: dw $5509 +112c: dw $599b +112e: dw $5bc9 +1130: dw $6616 +1132: dw $68c2 +1134: dw $68c2 +1136: dw $6b2f +1138: dw $6b2f +113a: dw $7195 +113c: dw $7195 +113e: dw $772c +1140: dw $772c +1142: dw $7da4 +1144: dw $7da4 +1146: dw $8329 +1148: dw $8329 \ No newline at end of file From e3e714ff6c01c5691179cc7d0c99b549fbafb73f Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:07:00 -0800 Subject: [PATCH 112/116] Rename snes/Mickey Mania - The Timeless Adventures of Mickey Mouse ($0200).bin to snes/Krisalis/Mickey Mania - The Timeless Adventures of Mickey Mouse ($0200).bin --- ... Timeless Adventures of Mickey Mouse ($0200).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => Krisalis}/Mickey Mania - The Timeless Adventures of Mickey Mouse ($0200).bin (100%) diff --git a/snes/Mickey Mania - The Timeless Adventures of Mickey Mouse ($0200).bin b/snes/Krisalis/Mickey Mania - The Timeless Adventures of Mickey Mouse ($0200).bin similarity index 100% rename from snes/Mickey Mania - The Timeless Adventures of Mickey Mouse ($0200).bin rename to snes/Krisalis/Mickey Mania - The Timeless Adventures of Mickey Mouse ($0200).bin From 5f313f3de0b0e3561c41ecce2a5d58a46bb7eadd Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:07:13 -0800 Subject: [PATCH 113/116] Update and rename snes/Mickey Mania - The Timeless Adventures of Mickey Mouse.s to snes/Krisalis/Mickey Mania - The Timeless Adventures of Mickey Mouse.s --- .../Mickey Mania - The Timeless Adventures of Mickey Mouse.s | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) rename snes/{ => Krisalis}/Mickey Mania - The Timeless Adventures of Mickey Mouse.s (96%) diff --git a/snes/Mickey Mania - The Timeless Adventures of Mickey Mouse.s b/snes/Krisalis/Mickey Mania - The Timeless Adventures of Mickey Mouse.s similarity index 96% rename from snes/Mickey Mania - The Timeless Adventures of Mickey Mouse.s rename to snes/Krisalis/Mickey Mania - The Timeless Adventures of Mickey Mouse.s index 0ed25b3f..499c6ada 100644 --- a/snes/Mickey Mania - The Timeless Adventures of Mickey Mouse.s +++ b/snes/Krisalis/Mickey Mania - The Timeless Adventures of Mickey Mouse.s @@ -1655,4 +1655,5 @@ 1142: dw $7da4 1144: dw $7da4 1146: dw $8329 -1148: dw $8329 \ No newline at end of file + +1148: dw $8329 From 15c4340da3d6cddaae1330661e8583e968bcdce9 Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:07:33 -0800 Subject: [PATCH 114/116] Add files via upload --- snes/Dark Law - Meaning of Death ($0800).bin | Bin 0 -> 5611 bytes snes/Dark Law - Meaning of Death.s | 2920 ++++++++++++++++++ 2 files changed, 2920 insertions(+) create mode 100644 snes/Dark Law - Meaning of Death ($0800).bin create mode 100644 snes/Dark Law - Meaning of Death.s diff --git a/snes/Dark Law - Meaning of Death ($0800).bin b/snes/Dark Law - Meaning of Death ($0800).bin new file mode 100644 index 0000000000000000000000000000000000000000..32c6cf2768e509b0f3e34050b2280dd090fccbfd GIT binary patch literal 5611 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 bnbo3U6~Q}UTm?E60O}ZSmmwmf Date: Sat, 17 Jan 2026 15:07:48 -0800 Subject: [PATCH 115/116] Rename snes/Dark Law - Meaning of Death ($0800).bin to snes/KAZe/Dark Law - Meaning of Death ($0800).bin --- .../Dark Law - Meaning of Death ($0800).bin | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename snes/{ => KAZe}/Dark Law - Meaning of Death ($0800).bin (100%) diff --git a/snes/Dark Law - Meaning of Death ($0800).bin b/snes/KAZe/Dark Law - Meaning of Death ($0800).bin similarity index 100% rename from snes/Dark Law - Meaning of Death ($0800).bin rename to snes/KAZe/Dark Law - Meaning of Death ($0800).bin From a4be076d0bfe2fd054c066fd9559621954d923da Mon Sep 17 00:00:00 2001 From: turboboy215 Date: Sat, 17 Jan 2026 15:08:01 -0800 Subject: [PATCH 116/116] Update and rename snes/Dark Law - Meaning of Death.s to snes/KAZe/Dark Law - Meaning of Death.s --- snes/{ => KAZe}/Dark Law - Meaning of Death.s | 1 + 1 file changed, 1 insertion(+) rename snes/{ => KAZe}/Dark Law - Meaning of Death.s (96%) diff --git a/snes/Dark Law - Meaning of Death.s b/snes/KAZe/Dark Law - Meaning of Death.s similarity index 96% rename from snes/Dark Law - Meaning of Death.s rename to snes/KAZe/Dark Law - Meaning of Death.s index 6df58ec3..860dbd41 100644 --- a/snes/Dark Law - Meaning of Death.s +++ b/snes/KAZe/Dark Law - Meaning of Death.s @@ -2918,3 +2918,4 @@ 1de8: d0 df bne $1dc9 1dea: 6f ret +