Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
Final Fantasy VI/ROM map/Assembly C12: Difference between revisions
< Final Fantasy VI | ROM map
Jump to navigation
Jump to search
(assembly C12) |
(clean up) |
||
Line 1: | Line 1: | ||
==C1/2020 unknow== | |||
C1/2020: 7B TDC (from C1/23DA, C1/2499, C1/257C) | C1/2020: 7B TDC (from C1/23DA, C1/2499, C1/257C) | ||
C1/2021: AA TAX | C1/2021: AA TAX | ||
Line 8: | Line 8: | ||
C1/202C: D0F4 BNE $2022 | C1/202C: D0F4 BNE $2022 | ||
C1/202E: 60 RTS | C1/202E: 60 RTS | ||
==C1/202F unknow== | |||
C1/202F: AD A7 81 LDA $81A7 (enemy # in formation?) (from only C1/2084?) | C1/202F: AD A7 81 LDA $81A7 (enemy # in formation?) (from only C1/2084?) | ||
C1/2032: 0A ASL | C1/2032: 0A ASL | ||
Line 32: | Line 31: | ||
C1/2057: E2 20 SEP #$20 (set 8-bit accumulator) | C1/2057: E2 20 SEP #$20 (set 8-bit accumulator) | ||
C1/2059: 60 RTS | C1/2059: 60 RTS | ||
==C1/205A unknow== | |||
C1/205A: 8D A7 81 STA $81A7 | C1/205A: 8D A7 81 STA $81A7 | ||
C1/205D: 0A ASL (monster index in formation * 2) | C1/205D: 0A ASL (monster index in formation * 2) | ||
Line 96: | Line 94: | ||
C1/20D8: 85 12 STA $12 (point to special mould index, specific enemy slot) | C1/20D8: 85 12 STA $12 (point to special mould index, specific enemy slot) | ||
C1/20DA: A7 12 LDA [$12] (get 1st two bytes, which seem to be byte panning) | C1/20DA: A7 12 LDA [$12] (get 1st two bytes, which seem to be byte panning) | ||
C1/20DC: 18 CLC | C1/20DC: 18 CLC | ||
C1/20DD: 69 3F AE ADC #$AE3F | C1/20DD: 69 3F AE ADC #$AE3F | ||
Line 135: | Line 131: | ||
C1/211C: 85 66 STA $66 | C1/211C: 85 66 STA $66 | ||
C1/211E: 60 RTS | C1/211E: 60 RTS | ||
==C1/211F unknow== | |||
C1/211F: 20 5F 21 JSR $215F | C1/211F: 20 5F 21 JSR $215F | ||
C1/2122: AD 58 82 LDA $8258 | C1/2122: AD 58 82 LDA $8258 | ||
Line 166: | Line 161: | ||
C1/215C: E2 20 SEP #$20 | C1/215C: E2 20 SEP #$20 | ||
C1/215E: 60 RTS | C1/215E: 60 RTS | ||
==C1/215F unknow== | |||
C1/215F: 7B TDC (from C1/211F, C1/24E5) | C1/215F: 7B TDC (from C1/211F, C1/24E5) | ||
C1/2160: AA TAX | C1/2160: AA TAX | ||
Line 253: | Line 248: | ||
C1/2205: 9C4E82 STZ $824E | C1/2205: 9C4E82 STZ $824E | ||
C1/2208: 60 RTS | C1/2208: 60 RTS | ||
==C1/2209 unknow== | |||
C1/2209: AD4D82 LDA $824D (from C1/22A7, C1/237F) | C1/2209: AD4D82 LDA $824D (from C1/22A7, C1/237F) | ||
C1/220C: D01B BNE $2229 | C1/220C: D01B BNE $2229 | ||
Line 271: | Line 265: | ||
C1/222F: 2E5082 ROL $8250 | C1/222F: 2E5082 ROL $8250 | ||
C1/2232: 60 RTS | C1/2232: 60 RTS | ||
==C1/2233 unknow== | |||
C1/2233: 5A PHY (from C1/22AC, C1/2384) | C1/2233: 5A PHY (from C1/22AC, C1/2384) | ||
C1/2234: C220 REP #$20 | C1/2234: C220 REP #$20 | ||
Line 333: | Line 326: | ||
C1/22A2: E220 SEP #$20 | C1/22A2: E220 SEP #$20 | ||
C1/22A4: 60 RTS | C1/22A4: 60 RTS | ||
==C1/22A5 unknow== | |||
C1/22A5: A400 LDY $00 (from C1/24A2, C1/25AA) | C1/22A5: A400 LDY $00 (from C1/24A2, C1/25AA) | ||
C1/22A7: 200922 JSR $2209 | C1/22A7: 200922 JSR $2209 | ||
Line 361: | Line 354: | ||
C1/22DA: D0C9 BNE $22A5 | C1/22DA: D0C9 BNE $22A5 | ||
C1/22DC: 60 RTS | C1/22DC: 60 RTS | ||
==C1/22DD unknow== | |||
C1/22DD: C220 REP #$20 (from C1/1118, C1/936C) | C1/22DD: C220 REP #$20 (from C1/1118, C1/936C) | ||
C1/22DF: 6410 STZ $10 | C1/22DF: 6410 STZ $10 | ||
Line 437: | Line 430: | ||
C1/2369: E220 SEP #$20 | C1/2369: E220 SEP #$20 | ||
C1/236B: 60 RTS | C1/236B: 60 RTS | ||
==C1/236C unknow== | |||
C1/236C: A000C5 LDY #$C500 (from only C1/2403) | C1/236C: A000C5 LDY #$C500 (from only C1/2403) | ||
C1/236F: 8414 STY $14 | C1/236F: 8414 STY $14 | ||
Line 497: | Line 490: | ||
C1/23D5: D0A4 BNE $237B | C1/23D5: D0A4 BNE $237B | ||
C1/23D7: 60 RTS | C1/23D7: 60 RTS | ||
==C1/23D8 unknow== | |||
C1/23D8: 8610 STX $10 (from C1/2400, C1/240A) | C1/23D8: 8610 STX $10 (from C1/2400, C1/240A) | ||
C1/23DA: 202020 JSR $2020 | C1/23DA: 202020 JSR $2020 | ||
C1/23DD: 20F524 JSR $24F5 | C1/23DD: 20F524 JSR $24F5 | ||
C1/23E0: 4CE524 JMP $24E5 | C1/23E0: 4CE524 JMP $24E5 | ||
==C1/23E3 unknow== | |||
C1/23E3: A93F LDA #$3F (from C1/2406, C1/244E) | C1/23E3: A93F LDA #$3F (from C1/2406, C1/244E) | ||
C1/23E5: 8514 STA $14 | C1/23E5: 8514 STA $14 | ||
Line 514: | Line 507: | ||
C1/23FB: A97F LDA #$7F | C1/23FB: A97F LDA #$7F | ||
C1/23FD: 4C8D19 JMP $198D | C1/23FD: 4C8D19 JMP $198D | ||
==C1/2400 unknow== | |||
C1/2400: 20D823 JSR $23D8 | C1/2400: 20D823 JSR $23D8 | ||
C1/2403: 206C23 JSR $236C | C1/2403: 206C23 JSR $236C | ||
C1/2406: 20E323 JSR $23E3 | C1/2406: 20E323 JSR $23E3 | ||
C1/2409: 6B RTL | C1/2409: 6B RTL | ||
==C1/240A unknow== | |||
C1/240A: 20D823 JSR $23D8 | C1/240A: 20D823 JSR $23D8 | ||
C1/240D: A000CA LDY #$CA00 | C1/240D: A000CA LDY #$CA00 | ||
Line 552: | Line 545: | ||
C1/244E: 20E323 JSR $23E3 | C1/244E: 20E323 JSR $23E3 | ||
C1/2451: 6B RTL | C1/2451: 6B RTL | ||
==C1/2452 unknow== | |||
C1/2452: 205624 JSR $2456 (from C2/EAB6, C2/F10C, C2/F198, C2/F206, C2/F234) | C1/2452: 205624 JSR $2456 (from C2/EAB6, C2/F10C, C2/F198, C2/F206, C2/F234) | ||
C1/2455: 6B RTL | C1/2455: 6B RTL | ||
C1/2456: 209724 JSR $2497 (from only C1/2452) | C1/2456: 209724 JSR $2497 (from only C1/2452) | ||
C1/2459: A20018 LDX #$1800 | C1/2459: A20018 LDX #$1800 | ||
Line 566: | Line 556: | ||
C1/2464: A97E LDA #$7E | C1/2464: A97E LDA #$7E | ||
C1/2466: 4C8D19 JMP $198D | C1/2466: 4C8D19 JMP $198D | ||
==C1/2469 unknow== | |||
C1/2469: A28F01 LDX #$018F (from C2/BBB8) | C1/2469: A28F01 LDX #$018F (from C2/BBB8) | ||
C1/246C: 209724 JSR $2497 | C1/246C: 209724 JSR $2497 | ||
Line 576: | Line 566: | ||
C1/247C: 208D19 JSR $198D | C1/247C: 208D19 JSR $198D | ||
C1/247F: 6B RTL | C1/247F: 6B RTL | ||
==C1/2480 unknow== | |||
C1/2480: 208424 JSR $2484 | |||
C1/2480: 208424 JSR $2484 | |||
C1/2483: 6B RTL | C1/2483: 6B RTL | ||
C1/2484: 209724 JSR $2497 | C1/2484: 209724 JSR $2497 | ||
C1/2487: A20014 LDX #$1400 | C1/2487: A20014 LDX #$1400 | ||
Line 590: | Line 577: | ||
C1/2492: A97E LDA #$7E | C1/2492: A97E LDA #$7E | ||
C1/2494: 4C8D19 JMP $198D | C1/2494: 4C8D19 JMP $198D | ||
==C1/2497 unknow== | |||
C1/2497: 8610 STX $10 (from C1/2456, C1/246C, C1/2484, C1/24A9, C1/24D1) | C1/2497: 8610 STX $10 (from C1/2456, C1/246C, C1/2484, C1/24A9, C1/24D1) | ||
C1/2499: 202020 JSR $2020 | C1/2499: 202020 JSR $2020 | ||
Line 596: | Line 583: | ||
C1/249F: 20E524 JSR $24E5 | C1/249F: 20E524 JSR $24E5 | ||
C1/24A2: 4CA522 JMP $22A5 | C1/24A2: 4CA522 JMP $22A5 | ||
==C1/24A5 unknow== | |||
C1/24A5: 20A924 JSR $24A9 | C1/24A5: 20A924 JSR $24A9 | ||
C1/24A8: 6B RTL | C1/24A8: 6B RTL | ||
C1/24A9: 209724 JSR $2497 (from only C1/24A5) | C1/24A9: 209724 JSR $2497 (from only C1/24A5) | ||
C1/24AC: 7B TDC | C1/24AC: 7B TDC | ||
Line 624: | Line 608: | ||
C1/24CE: D0DD BNE $24AD | C1/24CE: D0DD BNE $24AD | ||
C1/24D0: 60 RTS | C1/24D0: 60 RTS | ||
==C1/24D1 unknow== | |||
C1/24D1: 209724 JSR $2497 | C1/24D1: 209724 JSR $2497 | ||
C1/24D4: A20020 LDX #$2000 | C1/24D4: A20020 LDX #$2000 | ||
Line 633: | Line 617: | ||
C1/24E1: 208D19 JSR $198D | C1/24E1: 208D19 JSR $198D | ||
C1/24E4: 6B RTL | C1/24E4: 6B RTL | ||
==C1/24E5 unknow== | |||
C1/24E5: 205F21 JSR $215F (from C1/23E0, C1/249F) | C1/24E5: 205F21 JSR $215F (from C1/23E0, C1/249F) | ||
C1/24E8: AD5182 LDA $8251 | C1/24E8: AD5182 LDA $8251 | ||
Line 640: | Line 624: | ||
C1/24F1: 8D6C61 STA $616C | C1/24F1: 8D6C61 STA $616C | ||
C1/24F4: 60 RTS | C1/24F4: 60 RTS | ||
==C1/24F5 unknow== | |||
C1/24F5: C220 REP #$20 (from C1/23DD, C1/249C) | C1/24F5: C220 REP #$20 (from C1/23DD, C1/249C) | ||
C1/24F7: A510 LDA $10 | C1/24F7: A510 LDA $10 | ||
Line 709: | Line 693: | ||
C1/2577: 8566 STA $66 | C1/2577: 8566 STA $66 | ||
C1/2579: 4C0B21 JMP $210B | C1/2579: 4C0B21 JMP $210B | ||
==C1/257C unknow== | |||
C1/257C: 202020 JSR $2020 (from C1/1115, C1/91D4, C1/9369, C1/93C5, C1/D71F) | C1/257C: 202020 JSR $2020 (from C1/1115, C1/91D4, C1/9369, C1/93C5, C1/D71F) | ||
C1/257F: 7B TDC | C1/257F: 7B TDC | ||
Line 740: | Line 724: | ||
C1/25BA: D0D6 BNE $2592 | C1/25BA: D0D6 BNE $2592 | ||
C1/25BC: 60 RTS | C1/25BC: 60 RTS | ||
==C1/25BD unknow== | |||
C1/25BD: 20C125 JSR $25C1 | C1/25BD: 20C125 JSR $25C1 | ||
C1/25C0: 6B RTL | C1/25C0: 6B RTL | ||
C1/25C1: A20020 LDX #$2000 (from C1/25BD, C1/9375, C1/93C8, C1/D722) | C1/25C1: A20020 LDX #$2000 (from C1/25BD, C1/9375, C1/93C8, C1/D722) | ||
C1/25C4: 8610 STX $10 | C1/25C4: 8610 STX $10 | ||
Line 753: | Line 734: | ||
C1/25CC: A97E LDA #$7E | C1/25CC: A97E LDA #$7E | ||
C1/25CE: 4C8D19 JMP $198D | C1/25CE: 4C8D19 JMP $198D | ||
==C1/25D1 unknow== | |||
C1/25D1: A20020 LDX #$2000 | C1/25D1: A20020 LDX #$2000 | ||
C1/25D4: 8636 STX $36 | C1/25D4: 8636 STX $36 | ||
Line 760: | Line 741: | ||
C1/25DC: A97E LDA #$7E | C1/25DC: A97E LDA #$7E | ||
C1/25DE: 4C2B1A JMP $1A2B | C1/25DE: 4C2B1A JMP $1A2B | ||
==C1/25E1 unknow== | |||
C1/25E1: ADD162 LDA $62D1 | C1/25E1: ADD162 LDA $62D1 | ||
C1/25E4: F022 BEQ $2608 | C1/25E4: F022 BEQ $2608 | ||
Line 783: | Line 764: | ||
C1/2605: D0E1 BNE $25E8 | C1/2605: D0E1 BNE $25E8 | ||
C1/2607: 60 RTS | C1/2607: 60 RTS | ||
==C1/2608 unknow== | |||
C1/2608: ADAA60 LDA $60AA (from C1/25E4, C1/25FD) | C1/2608: ADAA60 LDA $60AA (from C1/25E4, C1/25FD) | ||
C1/260B: F00A BEQ $2617 | C1/260B: F00A BEQ $2617 | ||
Line 811: | Line 792: | ||
C1/263F: D0E0 BNE $2621 | C1/263F: D0E0 BNE $2621 | ||
C1/2641: 60 RTS | C1/2641: 60 RTS | ||
==C1/2642 unknow== | |||
C1/2642: ADD162 LDA $62D1 (from C1/27D5, C1/2944) | C1/2642: ADD162 LDA $62D1 (from C1/27D5, C1/2944) | ||
C1/2645: F022 BEQ $2669 | C1/2645: F022 BEQ $2669 | ||
Line 834: | Line 815: | ||
C1/2666: D0E1 BNE $2649 | C1/2666: D0E1 BNE $2649 | ||
C1/2668: 60 RTS | C1/2668: 60 RTS | ||
==C1/2669 unknow== | |||
C1/2669: ADAA60 LDA $60AA | C1/2669: ADAA60 LDA $60AA | ||
C1/266C: F00A BEQ $2678 | C1/266C: F00A BEQ $2678 | ||
C1/266E: A50E LDA $0E | C1/266E: A50E LDA $0E | ||
Line 865: | Line 846: | ||
C1/26A7: D0D9 BNE $2682 | C1/26A7: D0D9 BNE $2682 | ||
C1/26A9: 60 RTS | C1/26A9: 60 RTS | ||
==C1/26AA unknow== | |||
C1/26AA: 8EFA7A STX $7AFA (from C1/262B, C1/2693) | C1/26AA: 8EFA7A STX $7AFA (from C1/262B, C1/2693) | ||
C1/26AD: BDE464 LDA $64E4,X | C1/26AD: BDE464 LDA $64E4,X | ||
Line 959: | Line 940: | ||
C1/2768: 4CE826 JMP $26E8 | C1/2768: 4CE826 JMP $26E8 | ||
C1/276B: 60 RTS | C1/276B: 60 RTS | ||
==C1/276C unknow== | |||
C1/276C: AD1E20 LDA $201E (Load valid monster targets) (from only C1/0CC6) | C1/276C: AD1E20 LDA $201E (Load valid monster targets) (from only C1/0CC6) | ||
C1/276F: 2DAB61 AND $61AB | C1/276F: 2DAB61 AND $61AB | ||
Line 995: | Line 976: | ||
C1/27B4: AA TAX | C1/27B4: AA TAX | ||
C1/27B5: 7CB827 JMP ($27B8,X) | C1/27B5: 7CB827 JMP ($27B8,X) | ||
==C1/27B8 unknow (2-byte pointers)== | |||
C1/27B8: BC27 (0) | C1/27B8: BC27 (0) | ||
C1/27BA: BF27 (1) (why not go directly there?) | C1/27BA: BF27 (1) (why not go directly there?) | ||
==C1/27BC unknow== | |||
C1/27BC: | C1/27BC: 4C9728 JMP $2897 (from C1/27B5, X = 0) | ||
C1/27BF: 4C6928 JMP $2869 (from C1/27B5, X = 1) | C1/27BF: 4C6928 JMP $2869 (from C1/27B5, X = 1) | ||
==C1/27C2 unknow== | |||
C1/27C2: ADD288 LDA $88D2 (from only C1/2923) | C1/27C2: ADD288 LDA $88D2 (from only C1/2923) | ||
C1/27C5: 48 PHA | C1/27C5: 48 PHA | ||
Line 1,083: | Line 1,061: | ||
C1/2867: 68 PLA | C1/2867: 68 PLA | ||
C1/2868: 60 RTS | C1/2868: 60 RTS | ||
==C1/2869 unknow== | |||
C1/2869: 207A28 JSR $287A (from only C1/27BF) | C1/2869: 207A28 JSR $287A (from only C1/27BF) | ||
C1/286C: 49FF EOR #$FF | C1/286C: 49FF EOR #$FF | ||
Line 1,090: | Line 1,068: | ||
C1/2874: 8DD188 STA $88D1 | C1/2874: 8DD188 STA $88D1 | ||
C1/2877: 4C9728 JMP $2897 | C1/2877: 4C9728 JMP $2897 | ||
==C1/287A unknow== | |||
C1/287A: 7B TDC (atomic, from only C1/2869) | C1/287A: 7B TDC (atomic, from only C1/2869) | ||
C1/287B: AA TAX | C1/287B: AA TAX | ||
Line 1,107: | Line 1,085: | ||
C1/2893: 8DD188 STA $88D1 | C1/2893: 8DD188 STA $88D1 | ||
C1/2896: 60 RTS | C1/2896: 60 RTS | ||
==C1/2897 unknow== | |||
C1/2897: AD0C7B LDA $7B0C (from C1/27BC, C1/2877) | C1/2897: AD0C7B LDA $7B0C (from C1/27BC, C1/2877) | ||
C1/289A: F02E BEQ $28CA | C1/289A: F02E BEQ $28CA | ||
Line 1,214: | Line 1,192: | ||
C1/297B: 8D687B STA $7B68 | C1/297B: 8D687B STA $7B68 | ||
C1/297E: 60 RTS | C1/297E: 60 RTS | ||
==C1/297F unknow== | |||
C1/297F: 48 PHA (from only C1/2948) | C1/297F: 48 PHA (from only C1/2948) | ||
C1/2980: 2903 AND #$03 | C1/2980: 2903 AND #$03 | ||
Line 1,294: | Line 1,272: | ||
C1/2A23: 68 PLA | C1/2A23: 68 PLA | ||
C1/2A24: 60 RTS | C1/2A24: 60 RTS | ||
==C1/2A25 unknow== | |||
C1/2A25: 68 PLA (from C1/2995, C1/29A9) | C1/2A25: 68 PLA (from C1/2995, C1/29A9) | ||
C1/2A26: 60 RTS | C1/2A26: 60 RTS | ||
==C1/2A27 unknow== | |||
C1/2A27: 48 PHA (from C1/2A0F, C1/2A1D) | C1/2A27: 48 PHA (from C1/2A0F, C1/2A1D) | ||
C1/2A28: 2903 AND #$03 | C1/2A28: 2903 AND #$03 | ||
Line 1,318: | Line 1,295: | ||
C1/2A48: 68 PLA | C1/2A48: 68 PLA | ||
C1/2A49: 60 RTS | C1/2A49: 60 RTS | ||
==C1/2A4A unknow== | |||
C1/2A4A: 48 PHA (from only C1/2A12) | C1/2A4A: 48 PHA (from only C1/2A12) | ||
C1/2A4B: 2903 AND #$03 | C1/2A4B: 2903 AND #$03 | ||
Line 1,327: | Line 1,304: | ||
C1/2A57: 68 PLA | C1/2A57: 68 PLA | ||
C1/2A58: 60 RTS | C1/2A58: 60 RTS | ||
==C1/2A59 unknow== | |||
C1/2A59: A50E LDA $0E (from only C1/2A55) | C1/2A59: A50E LDA $0E (from only C1/2A55) | ||
C1/2A5B: 2DD562 AND $62D5 (Echo speed. 00 is fastst, 7F is slowest) | C1/2A5B: 2DD562 AND $62D5 (Echo speed. 00 is fastst, 7F is slowest) | ||
Line 1,334: | Line 1,311: | ||
C1/2A63: C220 REP #$20 | C1/2A63: C220 REP #$20 | ||
C1/2A65: BDCE62 LDA $62CE,X | C1/2A65: BDCE62 LDA $62CE,X | ||
C1/2A68: 9DD662 STA $62D6,X (The echo buffer | C1/2A68: 9DD662 STA $62D6,X (The echo buffer) | ||
C1/2A6B: BDD062 LDA $62D0,X | C1/2A6B: BDD062 LDA $62D0,X | ||
C1/2A6E: 9DD862 STA $62D8,X | C1/2A6E: 9DD862 STA $62D8,X | ||
Line 1,413: | Line 1,390: | ||
C1/2B28: 68 PLA | C1/2B28: 68 PLA | ||
C1/2B29: 60 RTS | C1/2B29: 60 RTS | ||
==C1/2B2A unknow== | |||
C1/2B2A: 20672C JSR $2C67 (from C1/27DB, C1/29AC) | C1/2B2A: 20672C JSR $2C67 (from C1/27DB, C1/29AC) | ||
C1/2B2D: 48 PHA | C1/2B2D: 48 PHA | ||
Line 1,516: | Line 1,493: | ||
C1/2BFA: 68 PLA | C1/2BFA: 68 PLA | ||
C1/2BFB: 60 RTS | C1/2BFB: 60 RTS | ||
==C1/2BFC unknow== | |||
C1/2BFC: A53A LDA $3A (from C1/2B35, C1/2C6C, C1/2CAC) | C1/2BFC: A53A LDA $3A (from C1/2B35, C1/2C6C, C1/2CAC) | ||
C1/2BFE: 102A BPL $2C2A | C1/2BFE: 102A BPL $2C2A | ||
Line 1,527: | Line 1,504: | ||
C1/2C0F: 38 SEC | C1/2C0F: 38 SEC | ||
C1/2C10: 60 RTS | C1/2C10: 60 RTS | ||
==C1/2C11 unknow== | |||
C1/2C11: BD107B LDA $7B10,X (from only C1/2C0D) | C1/2C11: BD107B LDA $7B10,X (from only C1/2C0D) | ||
C1/2C14: 852C STA $2C | C1/2C14: 852C STA $2C | ||
Line 1,565: | Line 1,542: | ||
C1/2C5C: 18 CLC | C1/2C5C: 18 CLC | ||
C1/2C5D: 60 RTS | C1/2C5D: 60 RTS | ||
==C1/2C5E unknow== | |||
C1/2C5E: A53A LDA $3A (from only C1/2C35) | C1/2C5E: A53A LDA $3A (from only C1/2C35) | ||
C1/2C60: 18 CLC | C1/2C60: 18 CLC | ||
Line 1,572: | Line 1,549: | ||
C1/2C65: 38 SEC | C1/2C65: 38 SEC | ||
C1/2C66: 60 RTS | C1/2C66: 60 RTS | ||
==C1/2C67 unknow== | |||
C1/2C67: 8D4161 STA $6141 | C1/2C67: 8D4161 STA $6141 | ||
C1/2C6A: 853A STA $3A | C1/2C6A: 853A STA $3A | ||
Line 1,592: | Line 1,569: | ||
C1/2C8D: AD4161 LDA $6141 | C1/2C8D: AD4161 LDA $6141 | ||
C1/2C90: 60 RTS | C1/2C90: 60 RTS | ||
==C1/2C91 unknow== | |||
C1/2C91: 7B TDC | C1/2C91: 7B TDC | ||
C1/2C92: AA TAX | C1/2C92: AA TAX | ||
Line 1,618: | Line 1,595: | ||
C1/2CBE: AD4161 LDA $6141 | C1/2CBE: AD4161 LDA $6141 | ||
C1/2CC1: 60 RTS | C1/2CC1: 60 RTS | ||
==C1/2CC2 unknow== | |||
C1/2CC2: 48 PHA | C1/2CC2: 48 PHA | ||
C1/2CC3: BD2263 LDA $6322,X | C1/2CC3: BD2263 LDA $6322,X | ||
Line 1,628: | Line 1,604: | ||
C1/2CD0: 68 PLA | C1/2CD0: 68 PLA | ||
C1/2CD1: 60 RTS | C1/2CD1: 60 RTS | ||
==C1/2CD2 unknow== | |||
C1/2CD2: DA PHX | C1/2CD2: DA PHX | ||
C1/2CD3: AA TAX | C1/2CD3: AA TAX | ||
Line 1,726: | Line 1,701: | ||
C1/2D90: 68 PLA | C1/2D90: 68 PLA | ||
C1/2D91: 60 RTS | C1/2D91: 60 RTS | ||
==C1/2D92 unknow== | |||
C1/2D92: 48 PHA | C1/2D92: 48 PHA | ||
C1/2D93: AD687B LDA $7B68 | C1/2D93: AD687B LDA $7B68 | ||
Line 1,756: | Line 1,731: | ||
C1/2DD1: 68 PLA | C1/2DD1: 68 PLA | ||
C1/2DD2: 60 RTS | C1/2DD2: 60 RTS | ||
==C1/2DD3 unknow== | |||
C1/2DD3: AD9800 LDA $0098 (from C1/0CDA, C1/3D33) | C1/2DD3: AD9800 LDA $0098 (from C1/0CDA, C1/3D33) | ||
C1/2DD6: 1A INC A | C1/2DD6: 1A INC A | ||
Line 1,767: | Line 1,742: | ||
C1/2DDE: A8 TAY | C1/2DDE: A8 TAY | ||
C1/2DDF: 5A PHY | C1/2DDF: 5A PHY | ||
C1/2DE0: A21800 LDX #$0018 | C1/2DE0: A21800 LDX #$0018 | ||
C1/2DE3: B9AD81 LDA $81AD,Y | C1/2DE3: B9AD81 LDA $81AD,Y | ||
C1/2DE6: 99807F STA $7F80,Y (set character palette's 1 - 4) | C1/2DE6: 99807F STA $7F80,Y (set character palette's 1 - 4) | ||
Line 1,789: | Line 1,759: | ||
C1/2DFF: 20B52E JSR $2EB5 | C1/2DFF: 20B52E JSR $2EB5 | ||
C1/2E02: 4CB42E JMP $2EB4 (uhhh, this jumps to an RTS...) | C1/2E02: 4CB42E JMP $2EB4 (uhhh, this jumps to an RTS...) | ||
==C1/2E05 unknow== | |||
C1/2E05: C220 REP #$20 (from C1/2DF1) | C1/2E05: C220 REP #$20 (from C1/2DF1) | ||
C1/2E07: B9C12E LDA $2EC1,Y | C1/2E07: B9C12E LDA $2EC1,Y | ||
Line 1,809: | Line 1,779: | ||
C1/2E28: D0F2 BNE $2E1C | C1/2E28: D0F2 BNE $2E1C | ||
C1/2E2A: 4CB42E JMP $2EB4 (uhhh, this jumps to an RTS...) | C1/2E2A: 4CB42E JMP $2EB4 (uhhh, this jumps to an RTS...) | ||
==C1/2E2D unknow== | |||
C1/2E2D: A539 LDA $39 (from C1/2E18) | C1/2E2D: A539 LDA $39 (from C1/2E18) | ||
C1/2E2F: 2902 AND #$02 | C1/2E2F: 2902 AND #$02 | ||
Line 1,876: | Line 1,846: | ||
C1/2EB2: 8000 BRA $2EB4 | C1/2EB2: 8000 BRA $2EB4 | ||
C1/2EB4: 60 RTS | C1/2EB4: 60 RTS | ||
==C1/2EB5 unknow== | |||
C1/2EB5: 48 PHA (from only C1/2DFF) | C1/2EB5: 48 PHA (from only C1/2DFF) | ||
C1/2EB6: B9CD61 LDA $61CD,Y | C1/2EB6: B9CD61 LDA $61CD,Y | ||
Line 1,886: | Line 1,856: | ||
C1/2EC0: 68 PLA | C1/2EC0: 68 PLA | ||
C1/2EC1: 8006 BRA $2EC9 | C1/2EC1: 8006 BRA $2EC9 | ||
==C1/2EC3 change outline color for status== | |||
C1/2EC3: 48 PHA | C1/2EC3: 48 PHA | ||
C1/2EC4: A50E LDA $0E | C1/2EC4: A50E LDA $0E | ||
Line 1,930: | Line 1,897: | ||
C1/2F0A: E220 SEP #$20 (8 bit accum./memory) | C1/2F0A: E220 SEP #$20 (8 bit accum./memory) | ||
C1/2F0C: 60 RTS | C1/2F0C: 60 RTS | ||
==C1/2F0D change flesh color for status== | |||
C1/2F0D: 0A ASL A (from C1/2E4C, C1/2E59, C1/2E66) | C1/2F0D: 0A ASL A (from C1/2E4C, C1/2E59, C1/2E66) | ||
C1/2F0E: 0A ASL A | C1/2F0E: 0A ASL A | ||
Line 1,945: | Line 1,909: | ||
C1/2F21: E220 SEP #$20 (8 bit accum./memory) | C1/2F21: E220 SEP #$20 (8 bit accum./memory) | ||
C1/2F23: 60 RTS | C1/2F23: 60 RTS | ||
==C1/2F24 setup head graphics for character with status== | |||
C1/2F24: DA PHX | C1/2F24: DA PHX | ||
C1/2F25: BDBE2E LDA $2EBE,X | C1/2F25: BDBE2E LDA $2EBE,X | ||
Line 1,989: | Line 1,950: | ||
C1/2F73: FA PLX | C1/2F73: FA PLX | ||
C1/2F74: 60 RTS | C1/2F74: 60 RTS | ||
==C1/2F75 unknow== | |||
C1/2F75: 20792F JSR $2F79 (from C2/C165) | C1/2F75: 20792F JSR $2F79 (from C2/C165) | ||
C1/2F78: 6B RTL | C1/2F78: 6B RTL | ||
C1/2F79: AD787B LDA $7B78 | C1/2F79: AD787B LDA $7B78 | ||
C1/2F7C: 2903 AND #$03 | C1/2F7C: 2903 AND #$03 | ||
Line 2,008: | Line 1,966: | ||
C1/2F88: F003 BEQ $2F8D | C1/2F88: F003 BEQ $2F8D | ||
C1/2F8A: 4C4C30 JMP $304C | C1/2F8A: 4C4C30 JMP $304C | ||
C1/2F8D: A901 LDA #$01 | C1/2F8D: A901 LDA #$01 | ||
C1/2F8F: 9DCE61 STA $61CE,X | C1/2F8F: 9DCE61 STA $61CE,X |
Revision as of 09:56, 19 November 2013
C1/2020 unknow
C1/2020: 7B TDC (from C1/23DA, C1/2499, C1/257C) C1/2021: AA TAX C1/2022: 9D3FAE STA $AE3F,X C1/2025: 9D3FBE STA $BE3F,X C1/2028: E8 INX C1/2029: E00010 CPX #$1000 C1/202C: D0F4 BNE $2022 C1/202E: 60 RTS
C1/202F unknow
C1/202F: AD A7 81 LDA $81A7 (enemy # in formation?) (from only C1/2084?) C1/2032: 0A ASL C1/2033: A8 TAY (Y = enemy # in formation * 2) C1/2034: C2 20 REP #$20 (set 16-bit accumulator) C1/2036: B9 2F 81 LDA $812F,Y (adjusted enemy width/8 and height/8) C1/2039: 85 22 STA $22 (store it: $22 = width, $23 = height) C1/203B: 29 FF 00 AND #$00FF (isolate the width/8) C1/203E: 0A ASL (width/8 * 2) C1/203F: AA TAX C1/2040: BF 70 BB C2 LDA $C2BB70,X (lookup some other width from tiles-width pointer?) C1/2044: 85 26 STA $26 C1/2046: A5 23 LDA $23 C1/2048: 29 FF 00 AND #$00FF (now isolate height/8) C1/204B: 0A ASL (height/8 * 2) C1/204C: AA TAX C1/204D: BF 92 BB C2 LDA $C2BB92,X (lookup some other height from tiles-height pointer?) C1/2051: 18 CLC C1/2052: 65 26 ADC $26 C1/2054: 85 26 STA $26 (bottom byte of $26 = some width, top = some height) C1/2056: 7B TDC C1/2057: E2 20 SEP #$20 (set 8-bit accumulator) C1/2059: 60 RTS
C1/205A unknow
C1/205A: 8D A7 81 STA $81A7 C1/205D: 0A ASL (monster index in formation * 2) C1/205E: AA TAX C1/205F: DA PHX C1/2060: C2 20 REP #$20 (Set 16-bit accumulator) C1/2062: 64 26 STZ $26 C1/2064: BD 01 20 LDA $2001,X (get monster #) C1/2067: 0A ASL C1/2068: 0A ASL C1/2069: 18 CLC C1/206A: 7D 01 20 ADC $2001,X C1/206D: AA TAX (X = monster # x 5) C1/206E: BF 02 70 D2 LDA $D27002,X (get index to palette) C1/2072: EB XBA C1/2073: 29 FF 03 AND #$03FF (save palette index, zeroing out stencil bit and others) C1/2076: 85 16 STA $16 C1/2078: 7B TDC C1/2079: E2 20 SEP #$20 (Set 8-bit accumulator) C1/207B: AD A7 81 LDA $81A7 C1/207E: A8 TAY C1/207F: B9 C2 62 LDA $62C2,Y C1/2082: F0 06 BEQ $208A C1/2084: 20 2F 20 JSR $202F C1/2087: A2 16 08 LDX #$0816 C1/208A: C2 20 REP #$20 (set 16-bit accumulator) C1/208C: BF 00 70 D2 LDA $D27000,X (tile bank pointer) C1/2090: 29 FF 7F AND #$7FFF (zero out top bit that indicates 8 vs 16 colors) C1/2093: 8D A8 81 STA $81A8 C1/2096: 7B TDC (clear accumulator) C1/2097: E2 20 SEP #$20 (Set 8-bit accumulator) C1/2099: BF 01 70 D2 LDA $D27001,X C1/209D: 29 80 AND #$80 (get bit indicating 8 vs 16 color bitmap) C1/209F: 8D AC 81 STA $81AC C1/20A2: BF 02 70 D2 LDA $D27002,X C1/20A6: 4A LSR C1/20A7: 0D AC 81 ORA $81AC C1/20AA: 8D AC 81 STA $81AC C1/20AD: 4A LSR C1/20AE: 4A LSR C1/20AF: 4A LSR C1/20B0: 4A LSR C1/20B1: 4A LSR C1/20B2: 29 01 AND #$01 (isolate stencil bit) C1/20B4: 8D AB 81 STA $81AB C1/20B7: BF 04 70 D2 LDA $D27004,X (index to map used) C1/20BB: 8D AA 81 STA $81AA C1/20BE: AD A7 81 LDA $81A7 C1/20C1: 0A ASL C1/20C2: 0A ASL C1/20C3: AA TAX (X = monster # in formation * 4) C1/20C4: 86 10 STX $10 (^mould templates are 4 bytes each) C1/20C6: A9 C2 LDA #$C2 C1/20C8: 85 14 STA $14 C1/20CA: AD 00 20 LDA $2000 (group formation mould index?) C1/20CD: 0A ASL C1/20CE: AA TAX C1/20CF: C2 20 REP #$20 (Set 16-bit Accumulator) C1/20D1: BF 1A D0 C2 LDA $C2D01A,X (pointer table to mould info) C1/20D5: 18 CLC C1/20D6: 65 10 ADC $10 C1/20D8: 85 12 STA $12 (point to special mould index, specific enemy slot) C1/20DA: A7 12 LDA [$12] (get 1st two bytes, which seem to be byte panning) C1/20DC: 18 CLC C1/20DD: 69 3F AE ADC #$AE3F C1/20E0: 65 26 ADC $26 C1/20E2: 85 61 STA $61 C1/20E4: E6 12 INC $12 C1/20E6: E6 12 INC $12 (point to mould info bytes 3 and 4) C1/20E8: A7 12 LDA [$12] C1/20EA: 8D 56 82 STA $8256 (save width/8 in 8256, and height/8 in 8257) C1/20ED: AD A8 81 LDA $81A8 (get tile bank pointer) C1/20F0: 0A ASL C1/20F1: 0A ASL C1/20F2: 0A ASL (multiply by 8) C1/20F3: 85 64 STA $64 C1/20F5: 9C 54 82 STZ $8254 C1/20F8: FA PLX (retrieve X, which was monster formation # x 2) C1/20F9: A5 16 LDA $16 (palette index) C1/20FB: 9D 17 81 STA $8117,X C1/20FE: 7B TDC (clear accumulator) C1/20FF: E2 20 SEP #$20 (set 8-bit accumulator) C1/2101: AD A9 81 LDA $81A9 C1/2104: 4A LSR C1/2105: 4A LSR C1/2106: 4A LSR C1/2107: 4A LSR C1/2108: 4A LSR C1/2109: 85 66 STA $66 C1/210B: A5 64 LDA $64 C1/210D: 18 CLC C1/210E: 69 00 ADC #$00 C1/2110: 85 64 STA $64 C1/2112: A5 65 LDA $65 C1/2114: 69 70 ADC #$70 C1/2116: 85 65 STA $65 C1/2118: A5 66 LDA $66 C1/211A: 69 E9 ADC #$E9 C1/211C: 85 66 STA $66 C1/211E: 60 RTS
C1/211F unknow
C1/211F: 20 5F 21 JSR $215F C1/2122: AD 58 82 LDA $8258 C1/2125: AA TAX C1/2126: BD C2 62 LDA $62C2,X C1/2129: D0 33 BNE $215E C1/212B: AD 58 82 LDA $8258 C1/212E: 0A ASL C1/212F: AA TAX (X = enemy # in formation * 2) C1/2130: AD 51 82 LDA $8251 C1/2133: 9D 2F 81 STA $812F,X (save adjusted enemy width/8) C1/2136: AD 53 82 LDA $8253 C1/2139: 9D 30 81 STA $8130,X (save adjusted enemy height/8) C1/213C: DA PHX C1/213D: C2 20 REP #$20 (set 16-bit accumulator) C1/213F: BD 01 20 LDA $2001,X C1/2142: C9 06 01 CMP #$0106 (is enemy the GhostTrain?) C1/2145: D0 08 BNE $214F (if not, branch) C1/2147: 48 PHA (save accumulator) C1/2148: A9 10 0E LDA #$0E10 (if it was, use hardcoded image dimensions) C1/214B: 9D 2F 81 STA $812F,X (Store that adjusted width/8 and height/8) C1/214E: 68 PLA (restore accumulator) C1/214F: AA TAX C1/2150: BF 00 36 CF LDA $CF3600,X C1/2154: FA PLX C1/2155: 29 FF 00 AND #$00FF C1/2158: 9D 57 80 STA $8057,X C1/215B: 7B TDC C1/215C: E2 20 SEP #$20 C1/215E: 60 RTS
C1/215F unknow
C1/215F: 7B TDC (from C1/211F, C1/24E5) C1/2160: AA TAX C1/2161: 9D2D82 STA $822D,X C1/2164: E8 INX C1/2165: E02000 CPX #$0020 C1/2168: D0F7 BNE $2161 C1/216A: ADAC81 LDA $81AC C1/216D: 2940 AND #$40 C1/216F: D024 BNE $2195 C1/2171: C220 REP #$20 C1/2173: ADAA81 LDA $81AA C1/2176: 0A ASL A C1/2177: 0A ASL A C1/2178: 0A ASL A C1/2179: 18 CLC C1/217A: 6F20A8D2 ADC $D2A820 C1/217E: AA TAX C1/217F: 7B TDC C1/2180: E220 SEP #$20 C1/2182: A400 LDY $00 C1/2184: BF0000D2 LDA $D20000,X C1/2188: 992D82 STA $822D,Y C1/218B: C8 INY C1/218C: C8 INY C1/218D: E8 INX C1/218E: C01000 CPY #$0010 C1/2191: D0F1 BNE $2184 C1/2193: 8023 BRA $21B8 C1/2195: C220 REP #$20 C1/2197: ADAA81 LDA $81AA C1/219A: 0A ASL A C1/219B: 0A ASL A C1/219C: 0A ASL A C1/219D: 0A ASL A C1/219E: 0A ASL A C1/219F: 18 CLC C1/21A0: 6F22A8D2 ADC $D2A822 (Load Pointer to 16-High Monster Composition Data) C1/21A4: AA TAX C1/21A5: 7B TDC C1/21A6: E220 SEP #$20 C1/21A8: A400 LDY $00 C1/21AA: BF0000D2 LDA $D20000,X C1/21AE: 992D82 STA $822D,Y C1/21B1: C8 INY C1/21B2: E8 INX C1/21B3: C02000 CPY #$0020 C1/21B6: D0F2 BNE $21AA C1/21B8: A600 LDX $00 C1/21BA: C220 REP #$20 C1/21BC: 6410 STZ $10 C1/21BE: BD2D82 LDA $822D,X C1/21C1: F00B BEQ $21CE C1/21C3: 0510 ORA $10 C1/21C5: 8510 STA $10 C1/21C7: E8 INX C1/21C8: E8 INX C1/21C9: E02000 CPX #$0020 C1/21CC: D0F0 BNE $21BE C1/21CE: A400 LDY $00 C1/21D0: A510 LDA $10 C1/21D2: EB XBA C1/21D3: 8510 STA $10 C1/21D5: 0610 ASL $10 C1/21D7: 9002 BCC $21DB C1/21D9: 8412 STY $12 C1/21DB: C8 INY C1/21DC: C01000 CPY #$0010 C1/21DF: D0F4 BNE $21D5 C1/21E1: 7B TDC C1/21E2: E220 SEP #$20 C1/21E4: 8A TXA C1/21E5: 4A LSR A C1/21E6: CD5782 CMP $8257 C1/21E9: 9003 BCC $21EE C1/21EB: AD5782 LDA $8257 C1/21EE: 8D5382 STA $8253 C1/21F1: A512 LDA $12 C1/21F3: 1A INC A C1/21F4: CD5682 CMP $8256 C1/21F7: 9003 BCC $21FC C1/21F9: AD5682 LDA $8256 C1/21FC: 8D5182 STA $8251 C1/21FF: 8D5282 STA $8252 C1/2202: 9C4D82 STZ $824D C1/2205: 9C4E82 STZ $824E C1/2208: 60 RTS
C1/2209 unknow
C1/2209: AD4D82 LDA $824D (from C1/22A7, C1/237F) C1/220C: D01B BNE $2229 C1/220E: A910 LDA #$10 C1/2210: 8D4D82 STA $824D C1/2213: AD4E82 LDA $824E C1/2216: AA TAX C1/2217: BD2D82 LDA $822D,X C1/221A: 8D5082 STA $8250 C1/221D: BD2E82 LDA $822E,X C1/2220: 8D4F82 STA $824F C1/2223: EE4E82 INC $824E C1/2226: EE4E82 INC $824E C1/2229: CE4D82 DEC $824D C1/222C: 0E4F82 ASL $824F C1/222F: 2E5082 ROL $8250 C1/2232: 60 RTS
C1/2233 unknow
C1/2233: 5A PHY (from C1/22AC, C1/2384) C1/2234: C220 REP #$20 C1/2236: 98 TYA C1/2237: 18 CLC C1/2238: 6561 ADC $61 C1/223A: 8510 STA $10 C1/223C: 7B TDC C1/223D: E220 SEP #$20 C1/223F: ADAC81 LDA $81AC C1/2242: 1037 BPL $227B C1/2244: C220 REP #$20 C1/2246: AD5482 LDA $8254 C1/2249: A8 TAY C1/224A: 18 CLC C1/224B: 691800 ADC #$0018 C1/224E: 8D5482 STA $8254 C1/2251: A90800 LDA #$0008 C1/2254: 8512 STA $12 C1/2256: B764 LDA [$64],Y C1/2258: 9210 STA ($10) C1/225A: E610 INC $10 C1/225C: E610 INC $10 C1/225E: C8 INY C1/225F: C8 INY C1/2260: C612 DEC $12 C1/2262: D0F2 BNE $2256 C1/2264: A90800 LDA #$0008 C1/2267: 8512 STA $12 C1/2269: B764 LDA [$64],Y C1/226B: 29FF00 AND #$00FF C1/226E: 9210 STA ($10) C1/2270: E610 INC $10 C1/2272: E610 INC $10 C1/2274: C8 INY C1/2275: C612 DEC $12 C1/2277: D0F0 BNE $2269 C1/2279: 8020 BRA $229B C1/227B: C220 REP #$20 C1/227D: AD5482 LDA $8254 C1/2280: A8 TAY C1/2281: 18 CLC C1/2282: 692000 ADC #$0020 C1/2285: 8D5482 STA $8254 C1/2288: A91000 LDA #$0010 C1/228B: 8512 STA $12 C1/228D: B764 LDA [$64],Y C1/228F: 9210 STA ($10) C1/2291: E610 INC $10 C1/2293: E610 INC $10 C1/2295: C8 INY C1/2296: C8 INY C1/2297: C612 DEC $12 C1/2299: D0F2 BNE $228D C1/229B: 68 PLA C1/229C: 18 CLC C1/229D: 692000 ADC #$0020 C1/22A0: A8 TAY C1/22A1: 7B TDC C1/22A2: E220 SEP #$20 C1/22A4: 60 RTS
C1/22A5 unknow
C1/22A5: A400 LDY $00 (from C1/24A2, C1/25AA) C1/22A7: 200922 JSR $2209 C1/22AA: 9005 BCC $22B1 C1/22AC: 203322 JSR $2233 C1/22AF: 800B BRA $22BC C1/22B1: C220 REP #$20 C1/22B3: 98 TYA C1/22B4: 18 CLC C1/22B5: 692000 ADC #$0020 C1/22B8: A8 TAY C1/22B9: 7B TDC C1/22BA: E220 SEP #$20 C1/22BC: CE5282 DEC $8252 C1/22BF: D0E6 BNE $22A7 C1/22C1: 9C4D82 STZ $824D C1/22C4: AD5182 LDA $8251 C1/22C7: 8D5282 STA $8252 C1/22CA: C220 REP #$20 C1/22CC: A561 LDA $61 C1/22CE: 18 CLC C1/22CF: 690002 ADC #$0200 C1/22D2: 8561 STA $61 C1/22D4: 7B TDC C1/22D5: E220 SEP #$20 C1/22D7: CE5382 DEC $8253 C1/22DA: D0C9 BNE $22A5 C1/22DC: 60 RTS
C1/22DD unknow
C1/22DD: C220 REP #$20 (from C1/1118, C1/936C) C1/22DF: 6410 STZ $10 C1/22E1: A600 LDX $00 C1/22E3: BD1781 LDA $8117,X C1/22E6: C9FFFF CMP #$FFFF C1/22E9: F017 BEQ $2302 C1/22EB: A400 LDY $00 C1/22ED: D92381 CMP $8123,Y C1/22F0: F010 BEQ $2302 C1/22F2: C8 INY C1/22F3: C8 INY C1/22F4: C00C00 CPY #$000C C1/22F7: D0F4 BNE $22ED C1/22F9: A410 LDY $10 C1/22FB: 992381 STA $8123,Y C1/22FE: C8 INY C1/22FF: C8 INY C1/2300: 8410 STY $10 C1/2302: E8 INX C1/2303: E8 INX C1/2304: E00C00 CPX #$000C C1/2307: D0DA BNE $22E3 C1/2309: A600 LDX $00 C1/230B: BD1781 LDA $8117,X C1/230E: A400 LDY $00 C1/2310: D92381 CMP $8123,Y C1/2313: F009 BEQ $231E C1/2315: C8 INY C1/2316: C8 INY C1/2317: C00600 CPY #$0006 C1/231A: D0F4 BNE $2310 C1/231C: A400 LDY $00 C1/231E: 98 TYA C1/231F: 4A LSR A C1/2320: 0A ASL A C1/2321: 9DDB80 STA $80DB,X C1/2324: A93100 LDA #$0031 C1/2327: 9DDC80 STA $80DC,X C1/232A: A92000 LDA #$0020 C1/232D: 9D0081 STA $8100,X C1/2330: E8 INX C1/2331: E8 INX C1/2332: E00C00 CPX #$000C C1/2335: D0D4 BNE $230B C1/2337: A9007F LDA #$7F00 C1/233A: 8510 STA $10 C1/233C: A400 LDY $00 C1/233E: B92381 LDA $8123,Y C1/2341: 0A ASL A C1/2342: 0A ASL A C1/2343: 0A ASL A C1/2344: 0A ASL A C1/2345: AA TAX C1/2346: 5A PHY C1/2347: A400 LDY $00 C1/2349: BF2078D2 LDA $D27820,X (Monster palette) C1/234D: 9110 STA ($10),Y C1/234F: E8 INX C1/2350: E8 INX C1/2351: C8 INY C1/2352: C8 INY C1/2353: C02000 CPY #$0020 C1/2356: D0F1 BNE $2349 C1/2358: A510 LDA $10 C1/235A: 18 CLC C1/235B: 692000 ADC #$0020 C1/235E: 8510 STA $10 C1/2360: 7A PLY C1/2361: C8 INY C1/2362: C8 INY C1/2363: C00600 CPY #$0006 C1/2366: D0D6 BNE $233E C1/2368: 7B TDC C1/2369: E220 SEP #$20 C1/236B: 60 RTS
C1/236C unknow
C1/236C: A000C5 LDY #$C500 (from only C1/2403) C1/236F: 8414 STY $14 C1/2371: A97F LDA #$7F C1/2373: 8516 STA $16 C1/2375: 6418 STZ $18 C1/2377: 7B TDC C1/2378: AA TAX C1/2379: 861A STX $1A C1/237B: A400 LDY $00 C1/237D: 641C STZ $1C C1/237F: 200922 JSR $2209 C1/2382: 9015 BCC $2399 C1/2384: 203322 JSR $2233 C1/2387: 5A PHY C1/2388: A41A LDY $1A C1/238A: A518 LDA $18 C1/238C: 9714 STA [$14],Y C1/238E: C8 INY C1/238F: C8 INY C1/2390: 841A STY $1A C1/2392: E618 INC $18 C1/2394: E61C INC $1C C1/2396: 7A PLY C1/2397: 800C BRA $23A5 C1/2399: 5A PHY C1/239A: A41A LDY $1A C1/239C: A93F LDA #$3F C1/239E: 9714 STA [$14],Y C1/23A0: C8 INY C1/23A1: C8 INY C1/23A2: 841A STY $1A C1/23A4: 7A PLY C1/23A5: CE5282 DEC $8252 C1/23A8: D0D5 BNE $237F C1/23AA: 9C4D82 STZ $824D C1/23AD: AD5182 LDA $8251 C1/23B0: 8D5282 STA $8252 C1/23B3: A51C LDA $1C C1/23B5: C220 REP #$20 C1/23B7: 0A ASL A C1/23B8: 0A ASL A C1/23B9: 0A ASL A C1/23BA: 0A ASL A C1/23BB: 0A ASL A C1/23BC: 851C STA $1C C1/23BE: A514 LDA $14 C1/23C0: 18 CLC C1/23C1: 690001 ADC #$0100 C1/23C4: 8514 STA $14 C1/23C6: A561 LDA $61 C1/23C8: 18 CLC C1/23C9: 651C ADC $1C C1/23CB: 8561 STA $61 C1/23CD: 641A STZ $1A C1/23CF: 7B TDC C1/23D0: E220 SEP #$20 C1/23D2: CE5382 DEC $8253 C1/23D5: D0A4 BNE $237B C1/23D7: 60 RTS
C1/23D8 unknow
C1/23D8: 8610 STX $10 (from C1/2400, C1/240A) C1/23DA: 202020 JSR $2020 C1/23DD: 20F524 JSR $24F5 C1/23E0: 4CE524 JMP $24E5
C1/23E3 unknow
C1/23E3: A93F LDA #$3F (from C1/2406, C1/244E) C1/23E5: 8514 STA $14 C1/23E7: A97E LDA #$7E C1/23E9: A23FAE LDX #$AE3F C1/23EC: 2227C0C2 JSL $C2C027 C1/23F0: A20020 LDX #$2000 C1/23F3: 8610 STX $10 C1/23F5: A200C4 LDX #$C400 C1/23F8: A00000 LDY #$0000 C1/23FB: A97F LDA #$7F C1/23FD: 4C8D19 JMP $198D
C1/2400 unknow
C1/2400: 20D823 JSR $23D8 C1/2403: 206C23 JSR $236C C1/2406: 20E323 JSR $23E3 C1/2409: 6B RTL
C1/240A unknow
C1/240A: 20D823 JSR $23D8 C1/240D: A000CA LDY #$CA00 C1/2410: 206F23 JSR $236F C1/2413: 8B PHB C1/2414: A97F LDA #$7F C1/2416: 48 PHA C1/2417: AB PLB C1/2418: 7B TDC C1/2419: AA TAX C1/241A: BD10CA LDA $CA10,X C1/241D: 9D00CE STA $CE00,X C1/2420: A93F LDA #$3F C1/2422: 9D10CA STA $CA10,X C1/2425: BD10CB LDA $CB10,X C1/2428: 9D00CF STA $CF00,X C1/242B: A93F LDA #$3F C1/242D: 9D10CB STA $CB10,X C1/2430: BD10CC LDA $CC10,X C1/2433: 9D00D0 STA $D000,X C1/2436: A93F LDA #$3F C1/2438: 9D10CC STA $CC10,X C1/243B: BD10CD LDA $CD10,X C1/243E: 9D00D1 STA $D100,X C1/2441: A93F LDA #$3F C1/2443: 9D10CD STA $CD10,X C1/2446: E8 INX C1/2447: E8 INX C1/2448: E01000 CPX #$0010 C1/244B: D0CD BNE $241A C1/244D: AB PLB C1/244E: 20E323 JSR $23E3 C1/2451: 6B RTL
C1/2452 unknow
C1/2452: 205624 JSR $2456 (from C2/EAB6, C2/F10C, C2/F198, C2/F206, C2/F234) C1/2455: 6B RTL
C1/2456: 209724 JSR $2497 (from only C1/2452) C1/2459: A20018 LDX #$1800 C1/245C: 8610 STX $10 C1/245E: A23FAE LDX #$AE3F C1/2461: A00000 LDY #$0000 C1/2464: A97E LDA #$7E C1/2466: 4C8D19 JMP $198D
C1/2469 unknow
C1/2469: A28F01 LDX #$018F (from C2/BBB8) C1/246C: 209724 JSR $2497 C1/246F: A20008 LDX #$0800 C1/2472: 8610 STX $10 C1/2474: A23FAE LDX #$AE3F C1/2477: A00020 LDY #$2000 C1/247A: A97E LDA #$7E C1/247C: 208D19 JSR $198D C1/247F: 6B RTL
C1/2480 unknow
C1/2480: 208424 JSR $2484 C1/2483: 6B RTL
C1/2484: 209724 JSR $2497 C1/2487: A20014 LDX #$1400 C1/248A: 8610 STX $10 C1/248C: A23FAE LDX #$AE3F C1/248F: A00024 LDY #$2400 C1/2492: A97E LDA #$7E C1/2494: 4C8D19 JMP $198D
C1/2497 unknow
C1/2497: 8610 STX $10 (from C1/2456, C1/246C, C1/2484, C1/24A9, C1/24D1) C1/2499: 202020 JSR $2020 C1/249C: 20F524 JSR $24F5 C1/249F: 20E524 JSR $24E5 C1/24A2: 4CA522 JMP $22A5
C1/24A5 unknow
C1/24A5: 20A924 JSR $24A9 C1/24A8: 6B RTL
C1/24A9: 209724 JSR $2497 (from only C1/24A5) C1/24AC: 7B TDC C1/24AD: AA TAX C1/24AE: 48 PHA C1/24AF: C220 REP #$20 C1/24B1: A98001 LDA #$0180 C1/24B4: 8510 STA $10 C1/24B6: BF73D4C2 LDA $C2D473,X C1/24BA: A8 TAY C1/24BB: BF71D4C2 LDA $C2D471,X C1/24BF: AA TAX C1/24C0: 7B TDC C1/24C1: E220 SEP #$20 C1/24C3: A97E LDA #$7E C1/24C5: 208D19 JSR $198D C1/24C8: 68 PLA C1/24C9: 18 CLC C1/24CA: 6904 ADC #$04 C1/24CC: C928 CMP #$28 C1/24CE: D0DD BNE $24AD C1/24D0: 60 RTS
C1/24D1 unknow
C1/24D1: 209724 JSR $2497 C1/24D4: A20020 LDX #$2000 C1/24D7: 8610 STX $10 C1/24D9: A23FAE LDX #$AE3F C1/24DC: A00000 LDY #$0000 C1/24DF: A97E LDA #$7E C1/24E1: 208D19 JSR $198D C1/24E4: 6B RTL
C1/24E5 unknow
C1/24E5: 205F21 JSR $215F (from C1/23E0, C1/249F) C1/24E8: AD5182 LDA $8251 C1/24EB: 8D6B61 STA $616B C1/24EE: AD5382 LDA $8253 C1/24F1: 8D6C61 STA $616C C1/24F4: 60 RTS
C1/24F5 unknow
C1/24F5: C220 REP #$20 (from C1/23DD, C1/249C) C1/24F7: A510 LDA $10 C1/24F9: 0A ASL A C1/24FA: 0A ASL A C1/24FB: 18 CLC C1/24FC: 6510 ADC $10 C1/24FE: AA TAX C1/24FF: BF0270D2 LDA $D27002,X (Monster visual specs) C1/2503: EB XBA C1/2504: 29FF03 AND #$03FF C1/2507: 0A ASL A C1/2508: 0A ASL A C1/2509: 0A ASL A C1/250A: 0A ASL A C1/250B: 8D6961 STA $6169 C1/250E: BF0070D2 LDA $D27000,X (Monster visual specs) C1/2512: 29FF7F AND #$7FFF C1/2515: 8DA881 STA $81A8 C1/2518: 7B TDC C1/2519: E220 SEP #$20 C1/251B: BF0170D2 LDA $D27001,X (Monster visual specs) C1/251F: 2980 AND #$80 C1/2521: 8DAC81 STA $81AC C1/2524: BF0270D2 LDA $D27002,X (Monster visual specs) C1/2528: 4A LSR A C1/2529: 0DAC81 ORA $81AC C1/252C: 8DAC81 STA $81AC C1/252F: 4A LSR A C1/2530: 4A LSR A C1/2531: 4A LSR A C1/2532: 4A LSR A C1/2533: 4A LSR A C1/2534: 2901 AND #$01 C1/2536: 8DAB81 STA $81AB C1/2539: BF0470D2 LDA $D27004,X (Monster visual specs) C1/253D: 8DAA81 STA $81AA C1/2540: A9C2 LDA #$C2 C1/2542: 8514 STA $14 C1/2544: A906 LDA #$06 C1/2546: 0A ASL A C1/2547: AA TAX C1/2548: C220 REP #$20 C1/254A: BF1AD0C2 LDA $C2D01A,X (Load pointer to monster formation size templates) C1/254E: 8512 STA $12 C1/2550: A712 LDA [$12] C1/2552: 18 CLC C1/2553: 693FAE ADC #$AE3F C1/2556: 8561 STA $61 C1/2558: E612 INC $12 C1/255A: E612 INC $12 C1/255C: A712 LDA [$12] C1/255E: 8D5682 STA $8256 C1/2561: ADA881 LDA $81A8 C1/2564: 0A ASL A C1/2565: 0A ASL A C1/2566: 0A ASL A C1/2567: 8564 STA $64 C1/2569: 9C5482 STZ $8254 C1/256C: 7B TDC C1/256D: E220 SEP #$20 C1/256F: ADA981 LDA $81A9 C1/2572: 4A LSR A C1/2573: 4A LSR A C1/2574: 4A LSR A C1/2575: 4A LSR A C1/2576: 4A LSR A C1/2577: 8566 STA $66 C1/2579: 4C0B21 JMP $210B
C1/257C unknow
C1/257C: 202020 JSR $2020 (from C1/1115, C1/91D4, C1/9369, C1/93C5, C1/D71F) C1/257F: 7B TDC C1/2580: AA TAX C1/2581: A9FF LDA #$FF C1/2583: 9D1781 STA $8117,X C1/2586: 9D2381 STA $8123,X C1/2589: E8 INX C1/258A: E00C00 CPX #$000C C1/258D: D0F4 BNE $2583 C1/258F: 9C5882 STZ $8258 C1/2592: AD5882 LDA $8258 C1/2595: 0A ASL A C1/2596: AA TAX C1/2597: BD0220 LDA $2002,X C1/259A: C9FF CMP #$FF C1/259C: F014 BEQ $25B2 C1/259E: DA PHX C1/259F: DA PHX C1/25A0: AD5882 LDA $8258 C1/25A3: 205A20 JSR $205A C1/25A6: FA PLX C1/25A7: 201F21 JSR $211F C1/25AA: 20A522 JSR $22A5 C1/25AD: FA PLX C1/25AE: 2232B5C2 JSL $C2B532 C1/25B2: EE5882 INC $8258 C1/25B5: AD5882 LDA $8258 C1/25B8: C906 CMP #$06 C1/25BA: D0D6 BNE $2592 C1/25BC: 60 RTS
C1/25BD unknow
C1/25BD: 20C125 JSR $25C1 C1/25C0: 6B RTL
C1/25C1: A20020 LDX #$2000 (from C1/25BD, C1/9375, C1/93C8, C1/D722) C1/25C4: 8610 STX $10 C1/25C6: A23FAE LDX #$AE3F C1/25C9: A00030 LDY #$3000 C1/25CC: A97E LDA #$7E C1/25CE: 4C8D19 JMP $198D
C1/25D1 unknow
C1/25D1: A20020 LDX #$2000 C1/25D4: 8636 STX $36 C1/25D6: A23FAE LDX #$AE3F C1/25D9: A00030 LDY #$3000 C1/25DC: A97E LDA #$7E C1/25DE: 4C2B1A JMP $1A2B
C1/25E1 unknow
C1/25E1: ADD162 LDA $62D1 C1/25E4: F022 BEQ $2608 C1/25E6: 7B TDC C1/25E7: A8 TAY C1/25E8: A57B LDA $7B C1/25EA: D94261 CMP $6142,Y C1/25ED: D012 BNE $2601 C1/25EF: 5A PHY C1/25F0: 98 TYA C1/25F1: 0A ASL A C1/25F2: AA TAX C1/25F3: C220 REP #$20 C1/25F5: BF8BCEC2 LDA $C2CE8B,X C1/25F9: AA TAX C1/25FA: 7B TDC C1/25FB: E220 SEP #$20 C1/25FD: 200826 JSR $2608 C1/2600: 7A PLY C1/2601: C8 INY C1/2602: C00A00 CPY #$000A C1/2605: D0E1 BNE $25E8 C1/2607: 60 RTS
C1/2608 unknow
C1/2608: ADAA60 LDA $60AA (from C1/25E4, C1/25FD) C1/260B: F00A BEQ $2617 C1/260D: A50E LDA $0E C1/260F: 2901 AND #$01 C1/2611: F004 BEQ $2617 C1/2613: A902 LDA #$02 C1/2615: 8003 BRA $261A C1/2617: AD0D7B LDA $7B0D C1/261A: 3025 BMI $2641 C1/261C: 290F AND #$0F C1/261E: 8DFC7A STA $7AFC C1/2621: BDDE64 LDA $64DE,X C1/2624: F00B BEQ $2631 C1/2626: BDE764 LDA $64E7,X C1/2629: F006 BEQ $2631 C1/262B: 20AA26 JSR $26AA C1/262E: AEFA7A LDX $7AFA C1/2631: C220 REP #$20 C1/2633: 8A TXA C1/2634: 18 CLC C1/2635: 691000 ADC #$0010 C1/2638: AA TAX C1/2639: 7B TDC C1/263A: E220 SEP #$20 C1/263C: CEFC7A DEC $7AFC C1/263F: D0E0 BNE $2621 C1/2641: 60 RTS
C1/2642 unknow
C1/2642: ADD162 LDA $62D1 (from C1/27D5, C1/2944) C1/2645: F022 BEQ $2669 C1/2647: 7B TDC C1/2648: A8 TAY C1/2649: A57B LDA $7B C1/264B: D94261 CMP $6142,Y C1/264E: D012 BNE $2662 C1/2650: 5A PHY C1/2651: 98 TYA C1/2652: 0A ASL A C1/2653: AA TAX C1/2654: C220 REP #$20 C1/2656: BF8BCEC2 LDA $C2CE8B,X C1/265A: AA TAX C1/265B: 7B TDC C1/265C: E220 SEP #$20 C1/265E: 206926 JSR $2669 C1/2661: 7A PLY C1/2662: C8 INY C1/2663: C00A00 CPY #$000A C1/2666: D0E1 BNE $2649 C1/2668: 60 RTS
C1/2669 unknow
C1/2669: ADAA60 LDA $60AA C1/266C: F00A BEQ $2678 C1/266E: A50E LDA $0E C1/2670: 2901 AND #$01 C1/2672: F004 BEQ $2678 C1/2674: A902 LDA #$02 C1/2676: 8003 BRA $267B C1/2678: AD0D7B LDA $7B0D C1/267B: 302C BMI $26A9 C1/267D: 290F AND #$0F C1/267F: 8DFC7A STA $7AFC C1/2682: BDDE64 LDA $64DE,X C1/2685: F012 BEQ $2699 C1/2687: BD866F LDA $6F86,X C1/268A: 2903 AND #$03 C1/268C: D00B BNE $2699 C1/268E: BDE764 LDA $64E7,X C1/2691: D006 BNE $2699 C1/2693: 20AA26 JSR $26AA C1/2696: AEFA7A LDX $7AFA C1/2699: C220 REP #$20 C1/269B: 8A TXA C1/269C: 18 CLC C1/269D: 691000 ADC #$0010 C1/26A0: AA TAX C1/26A1: 7B TDC C1/26A2: E220 SEP #$20 C1/26A4: CEFC7A DEC $7AFC C1/26A7: D0D9 BNE $2682 C1/26A9: 60 RTS
C1/26AA unknow
C1/26AA: 8EFA7A STX $7AFA (from C1/262B, C1/2693) C1/26AD: BDE464 LDA $64E4,X C1/26B0: 853C STA $3C C1/26B2: C220 REP #$20 C1/26B4: BDDF64 LDA $64DF,X C1/26B7: 8536 STA $36 C1/26B9: BDE164 LDA $64E1,X C1/26BC: 8538 STA $38 C1/26BE: BDE564 LDA $64E5,X C1/26C1: 853A STA $3A C1/26C3: BDE364 LDA $64E3,X C1/26C6: 29FF00 AND #$00FF C1/26C9: 0A ASL A C1/26CA: AA TAX C1/26CB: A53A LDA $3A C1/26CD: 294000 AND #$0040 C1/26D0: F006 BEQ $26D8 C1/26D2: BF24C4C2 LDA $C2C424,X C1/26D6: 8004 BRA $26DC C1/26D8: BFE4C3C2 LDA $C2C3E4,X C1/26DC: AA TAX C1/26DD: A571 LDA $71 C1/26DF: 29FF00 AND #$00FF C1/26E2: 0A ASL A C1/26E3: 0A ASL A C1/26E4: A8 TAY C1/26E5: 7B TDC C1/26E6: E220 SEP #$20 C1/26E8: BD0000 LDA $0000,X C1/26EB: C9FF CMP #$FF C1/26ED: F07C BEQ $276B C1/26EF: 100C BPL $26FD C1/26F1: 18 CLC C1/26F2: 6536 ADC $36 C1/26F4: 990003 STA $0300,Y C1/26F7: A537 LDA $37 C1/26F9: 6901 ADC #$01 C1/26FB: 800A BRA $2707 C1/26FD: 18 CLC C1/26FE: 6536 ADC $36 C1/2700: 990003 STA $0300,Y C1/2703: A537 LDA $37 C1/2705: 6900 ADC #$00 C1/2707: 2901 AND #$01 C1/2709: F011 BEQ $271C C1/270B: 863E STX $3E C1/270D: B97FA1 LDA $A17F,Y C1/2710: AA TAX C1/2711: BD0005 LDA $0500,X C1/2714: 197FA7 ORA $A77F,Y C1/2717: 9D0005 STA $0500,X C1/271A: A63E LDX $3E C1/271C: 18 CLC C1/271D: BD0100 LDA $0001,X C1/2720: 100B BPL $272D C1/2722: 6538 ADC $38 C1/2724: 853E STA $3E C1/2726: A539 LDA $39 C1/2728: 6901 ADC #$01 C1/272A: 4C3527 JMP $2735 C1/272D: 6538 ADC $38 C1/272F: 853E STA $3E C1/2731: A539 LDA $39 C1/2733: 6900 ADC #$00 C1/2735: 2901 AND #$01 C1/2737: F009 BEQ $2742 C1/2739: A53E LDA $3E C1/273B: C9E0 CMP #$E0 C1/273D: B00B BCS $274A C1/273F: 4C4827 JMP $2748 C1/2742: A53E LDA $3E C1/2744: C997 CMP #$97 C1/2746: 9002 BCC $274A C1/2748: A9E0 LDA #$E0 C1/274A: 990103 STA $0301,Y C1/274D: BD0200 LDA $0002,X C1/2750: 18 CLC C1/2751: 653C ADC $3C C1/2753: 990203 STA $0302,Y C1/2756: BD0300 LDA $0003,X C1/2759: 053B ORA $3B C1/275B: 990303 STA $0303,Y C1/275E: E8 INX C1/275F: E8 INX C1/2760: E8 INX C1/2761: E8 INX C1/2762: C8 INY C1/2763: C8 INY C1/2764: C8 INY C1/2765: C8 INY C1/2766: E671 INC $71 C1/2768: 4CE826 JMP $26E8 C1/276B: 60 RTS
C1/276C unknow
C1/276C: AD1E20 LDA $201E (Load valid monster targets) (from only C1/0CC6) C1/276F: 2DAB61 AND $61AB C1/2772: 2DAB60 AND $60AB C1/2775: 8DD188 STA $88D1 C1/2778: 7B TDC C1/2779: AA TAX C1/277A: BD1A63 LDA $631A,X C1/277D: 297F AND #$7F C1/277F: F029 BEQ $27AA C1/2781: BD1E63 LDA $631E,X C1/2784: C904 CMP #$04 C1/2786: 9012 BCC $279A C1/2788: 38 SEC C1/2789: E904 SBC #$04 C1/278B: DA PHX C1/278C: 20091A JSR $1A09 C1/278F: FA PLX C1/2790: 2DD188 AND $88D1 C1/2793: D015 BNE $27AA C1/2795: 9E1A63 STZ $631A,X C1/2798: 8010 BRA $27AA C1/279A: DA PHX C1/279B: 20091A JSR $1A09 C1/279E: FA PLX C1/279F: 2D1D20 AND $201D (Remove any invalid character targets) C1/27A2: 2DAC61 AND $61AC C1/27A5: D003 BNE $27AA C1/27A7: 9E1A63 STZ $631A,X C1/27AA: E8 INX C1/27AB: E00400 CPX #$0004 C1/27AE: D0CA BNE $277A C1/27B0: AD677B LDA $7B67 C1/27B3: 0A ASL A C1/27B4: AA TAX C1/27B5: 7CB827 JMP ($27B8,X)
C1/27B8 unknow (2-byte pointers)
C1/27B8: BC27 (0) C1/27BA: BF27 (1) (why not go directly there?)
C1/27BC unknow
C1/27BC: 4C9728 JMP $2897 (from C1/27B5, X = 0) C1/27BF: 4C6928 JMP $2869 (from C1/27B5, X = 1)
C1/27C2 unknow
C1/27C2: ADD288 LDA $88D2 (from only C1/2923) C1/27C5: 48 PHA C1/27C6: 857B STA $7B C1/27C8: 0A ASL A C1/27C9: AA TAX C1/27CA: C220 REP #$20 C1/27CC: BF93CEC2 LDA $C2CE93,X C1/27D0: AA TAX C1/27D1: 7B TDC C1/27D2: E220 SEP #$20 C1/27D4: DA PHX C1/27D5: 204226 JSR $2642 C1/27D8: ADD288 LDA $88D2 C1/27DB: 202A2B JSR $2B2A C1/27DE: A571 LDA $71 C1/27E0: 8D6000 STA $0060 C1/27E3: ADD288 LDA $88D2 C1/27E6: 20091A JSR $1A09 C1/27E9: 2DD188 AND $88D1 C1/27EC: 2D1E20 AND $201E (Remove any invalid monster targets) C1/27EF: 2DAB61 AND $61AB C1/27F2: 2DE6E9 AND $E9E6 C1/27F5: 2D9161 AND $6191 C1/27F8: F064 BEQ $285E C1/27FA: 203539 JSR $3935 C1/27FD: ADD288 LDA $88D2 C1/2800: 2907 AND #$07 C1/2802: 20091A JSR $1A09 C1/2805: 2D9D61 AND $619D (mirrored enemies byte) C1/2808: F054 BEQ $285E C1/280A: ADD288 LDA $88D2 C1/280D: 2907 AND #$07 C1/280F: 0A ASL A C1/2810: AA TAX C1/2811: BD3081 LDA $8130,X C1/2814: C220 REP #$20 C1/2816: 0A ASL A C1/2817: 0A ASL A C1/2818: 0A ASL A C1/2819: 8536 STA $36 C1/281B: BDCF80 LDA $80CF,X C1/281E: 48 PHA C1/281F: 18 CLC C1/2820: 6536 ADC $36 C1/2822: 9DCF80 STA $80CF,X C1/2825: 7B TDC C1/2826: E220 SEP #$20 C1/2828: BDDC80 LDA $80DC,X C1/282B: 48 PHA C1/282C: BDF380 LDA $80F3,X C1/282F: 5D7E61 EOR $617E,X C1/2832: 48 PHA C1/2833: DA PHX C1/2834: BDF380 LDA $80F3,X C1/2837: 5D7E61 EOR $617E,X C1/283A: 0902 ORA #$02 C1/283C: 9DF380 STA $80F3,X C1/283F: BDDC80 LDA $80DC,X C1/2842: 29CF AND #$CF C1/2844: 0920 ORA #$20 C1/2846: 9DDC80 STA $80DC,X C1/2849: 203539 JSR $3935 C1/284C: FA PLX C1/284D: 68 PLA C1/284E: 9DF380 STA $80F3,X C1/2851: 68 PLA C1/2852: 9DDC80 STA $80DC,X C1/2855: C220 REP #$20 C1/2857: 68 PLA C1/2858: 9DCF80 STA $80CF,X C1/285B: 7B TDC C1/285C: E220 SEP #$20 C1/285E: AD6000 LDA $0060 C1/2861: 8571 STA $71 C1/2863: FA PLX C1/2864: 20E125 JSR $25E1 C1/2867: 68 PLA C1/2868: 60 RTS
C1/2869 unknow
C1/2869: 207A28 JSR $287A (from only C1/27BF) C1/286C: 49FF EOR #$FF C1/286E: 2D1E20 AND $201E (Remove any invalid monster targets) C1/2871: 2DAB61 AND $61AB C1/2874: 8DD188 STA $88D1 C1/2877: 4C9728 JMP $2897
C1/287A unknow
C1/287A: 7B TDC (atomic, from only C1/2869) C1/287B: AA TAX C1/287C: 9CD188 STZ $88D1 C1/287F: BDF480 LDA $80F4,X C1/2882: 4A LSR A C1/2883: 0DD188 ORA $88D1 C1/2886: 6A ROR A C1/2887: 8DD188 STA $88D1 C1/288A: E8 INX C1/288B: E8 INX C1/288C: E00C00 CPX #$000C C1/288F: D0EE BNE $287F C1/2891: 4A LSR A C1/2892: 4A LSR A C1/2893: 8DD188 STA $88D1 C1/2896: 60 RTS
C1/2897 unknow
C1/2897: AD0C7B LDA $7B0C (from C1/27BC, C1/2877) C1/289A: F02E BEQ $28CA C1/289C: 9C0C7B STZ $7B0C C1/289F: 7B TDC C1/28A0: AA TAX C1/28A1: C220 REP #$20 C1/28A3: E210 SEP #$10 C1/28A5: BD1F7A LDA $7A1F,X C1/28A8: 9D477A STA $7A47,X C1/28AB: BD217A LDA $7A21,X C1/28AE: 9D497A STA $7A49,X C1/28B1: BD337A LDA $7A33,X C1/28B4: 9D5B7A STA $7A5B,X C1/28B7: BD357A LDA $7A35,X C1/28BA: 9D5D7A STA $7A5D,X C1/28BD: E8 INX C1/28BE: E8 INX C1/28BF: E8 INX C1/28C0: E8 INX C1/28C1: E014 CPX #$14 C1/28C3: D0E0 BNE $28A5 C1/28C5: 7B TDC C1/28C6: E220 SEP #$20 C1/28C8: C210 REP #$10 C1/28CA: 20263A JSR $3A26 C1/28CD: ADB062 LDA $62B0 C1/28D0: D00B BNE $28DD C1/28D2: A901 LDA #$01 C1/28D4: 8D0D7B STA $7B0D C1/28D7: A22005 LDX #$0520 C1/28DA: 206926 JSR $2669 C1/28DD: A901 LDA #$01 C1/28DF: 8D0D7B STA $7B0D C1/28E2: A23005 LDX #$0530 C1/28E5: 206926 JSR $2669 C1/28E8: A901 LDA #$01 C1/28EA: 8D0D7B STA $7B0D C1/28ED: A24005 LDX #$0540 C1/28F0: 206926 JSR $2669 C1/28F3: 7B TDC C1/28F4: AA TAX C1/28F5: DA PHX C1/28F6: AD0E7B LDA $7B0E C1/28F9: 8D0D7B STA $7B0D C1/28FC: BD497A LDA $7A49,X C1/28FF: C904 CMP #$04 C1/2901: 9025 BCC $2928 C1/2903: C90A CMP #$0A C1/2905: B054 BCS $295B C1/2907: 38 SEC C1/2908: E904 SBC #$04 C1/290A: AA TAX C1/290B: 8DD288 STA $88D2 C1/290E: BF011AC1 LDA $C11A01,X C1/2912: 2DAF62 AND $62AF C1/2915: D00C BNE $2923 C1/2917: BF011AC1 LDA $C11A01,X C1/291B: 2D1E20 AND $201E (Remove any invalid monster targets) C1/291E: 2DAB61 AND $61AB C1/2921: F038 BEQ $295B C1/2923: 20C227 JSR $27C2 C1/2926: 8033 BRA $295B C1/2928: 0980 ORA #$80 C1/292A: 857B STA $7B C1/292C: 2903 AND #$03 C1/292E: 0A ASL A C1/292F: AA TAX C1/2930: C220 REP #$20 C1/2932: BF8BCEC2 LDA $C2CE8B,X C1/2936: AA TAX C1/2937: 7B TDC C1/2938: E220 SEP #$20 C1/293A: AD0F7B LDA $7B0F C1/293D: 8D0D7B STA $7B0D C1/2940: DA PHX C1/2941: A57B LDA $7B C1/2943: 48 PHA C1/2944: 204226 JSR $2642 C1/2947: 68 PLA C1/2948: 207F29 JSR $297F C1/294B: 297F AND #$7F C1/294D: CD687B CMP $7B68 C1/2950: D003 BNE $2955 C1/2952: 20922D JSR $2D92 C1/2955: FA PLX C1/2956: 48 PHA C1/2957: 20E125 JSR $25E1 C1/295A: 68 PLA C1/295B: FA PLX C1/295C: E8 INX C1/295D: E8 INX C1/295E: E8 INX C1/295F: E8 INX C1/2960: E02800 CPX #$0028 C1/2963: D090 BNE $28F5 C1/2965: ADB062 LDA $62B0 C1/2968: F00B BEQ $2975 C1/296A: A901 LDA #$01 C1/296C: 8D0D7B STA $7B0D C1/296F: A22005 LDX #$0520 C1/2972: 206926 JSR $2669 C1/2975: AD687B LDA $7B68 C1/2978: 1A INC A C1/2979: 2903 AND #$03 C1/297B: 8D687B STA $7B68 C1/297E: 60 RTS
C1/297F unknow
C1/297F: 48 PHA (from only C1/2948) C1/2980: 2903 AND #$03 C1/2982: AA TAX C1/2983: DA PHX C1/2984: BF011AC1 LDA $C11A01,X C1/2988: 852C STA $2C C1/298A: FA PLX C1/298B: AD1D20 LDA $201D (Load valid character targets) C1/298E: 2DAC61 AND $61AC C1/2991: 252C AND $2C C1/2993: D003 BNE $2998 C1/2995: 4C252A JMP $2A25 C1/2998: BF5BCFC2 LDA $C2CF5B,X C1/299C: AA TAX C1/299D: BDAE2E LDA $2EAE,X C1/29A0: C9FF CMP #$FF C1/29A2: F0F1 BEQ $2995 C1/29A4: BDC02E LDA $2EC0,X C1/29A7: 2920 AND #$20 C1/29A9: D07A BNE $2A25 C1/29AB: 68 PLA C1/29AC: 202A2B JSR $2B2A C1/29AF: 8536 STA $36 C1/29B1: ADBD62 LDA $62BD C1/29B4: D06E BNE $2A24 C1/29B6: A536 LDA $36 C1/29B8: 48 PHA C1/29B9: ADBA64 LDA $64BA C1/29BC: D05A BNE $2A18 C1/29BE: 68 PLA C1/29BF: 20A333 JSR $33A3 C1/29C2: 20DB34 JSR $34DB C1/29C5: 48 PHA C1/29C6: 2903 AND #$03 C1/29C8: 8536 STA $36 C1/29CA: 20091A JSR $1A09 C1/29CD: 2D9C61 AND $619C (Characters marked to be mirrored) C1/29D0: F03C BEQ $2A0E C1/29D2: A536 LDA $36 C1/29D4: 2903 AND #$03 C1/29D6: AA TAX C1/29D7: BF5BCFC2 LDA $C2CF5B,X C1/29DB: AA TAX C1/29DC: C220 REP #$20 C1/29DE: BDB961 LDA $61B9,X C1/29E1: 48 PHA C1/29E2: 18 CLC C1/29E3: 691800 ADC #$0018 C1/29E6: 9DB961 STA $61B9,X C1/29E9: BDBD61 LDA $61BD,X C1/29EC: 48 PHA C1/29ED: DA PHX C1/29EE: 7B TDC C1/29EF: E220 SEP #$20 C1/29F1: BDBD61 LDA $61BD,X C1/29F4: 29CF AND #$CF C1/29F6: 09A0 ORA #$A0 C1/29F8: 9DBD61 STA $61BD,X C1/29FB: A536 LDA $36 C1/29FD: 20DB34 JSR $34DB C1/2A00: C220 REP #$20 C1/2A02: FA PLX C1/2A03: 68 PLA C1/2A04: 9DBD61 STA $61BD,X C1/2A07: 68 PLA C1/2A08: 9DB961 STA $61B9,X C1/2A0B: 7B TDC C1/2A0C: E220 SEP #$20 C1/2A0E: 68 PLA C1/2A0F: 20272A JSR $2A27 C1/2A12: 204A2A JSR $2A4A C1/2A15: 4C7531 JMP $3175 C1/2A18: 68 PLA C1/2A19: 48 PHA C1/2A1A: 20DB34 JSR $34DB C1/2A1D: 20272A JSR $2A27 C1/2A20: 209F32 JSR $329F C1/2A23: 68 PLA C1/2A24: 60 RTS
C1/2A25 unknow
C1/2A25: 68 PLA (from C1/2995, C1/29A9) C1/2A26: 60 RTS
C1/2A27 unknow
C1/2A27: 48 PHA (from C1/2A0F, C1/2A1D) C1/2A28: 2903 AND #$03 C1/2A2A: 0A ASL A C1/2A2B: A8 TAY C1/2A2C: AA TAX C1/2A2D: ADDAE9 LDA $E9DA C1/2A30: 4A LSR A C1/2A31: 2908 AND #$08 C1/2A33: 8536 STA $36 C1/2A35: 8A TXA C1/2A36: 18 CLC C1/2A37: 6536 ADC $36 C1/2A39: AA TAX C1/2A3A: BF43BFC2 LDA $C2BF43,X C1/2A3E: 99D2E9 STA $E9D2,Y C1/2A41: BF44BFC2 LDA $C2BF44,X C1/2A45: 99D3E9 STA $E9D3,Y C1/2A48: 68 PLA C1/2A49: 60 RTS
C1/2A4A unknow
C1/2A4A: 48 PHA (from only C1/2A12) C1/2A4B: 2903 AND #$03 C1/2A4D: CDD362 CMP $62D3 (Sprites that get an echo effect) C1/2A50: D005 BNE $2A57 C1/2A52: ADD462 LDA $62D4 (Echo on? 1 = yes) C1/2A55: D002 BNE $2A59 C1/2A57: 68 PLA C1/2A58: 60 RTS
C1/2A59 unknow
C1/2A59: A50E LDA $0E (from only C1/2A55) C1/2A5B: 2DD562 AND $62D5 (Echo speed. 00 is fastst, 7F is slowest) C1/2A5E: D047 BNE $2AA7 C1/2A60: A23800 LDX #$0038 C1/2A63: C220 REP #$20 C1/2A65: BDCE62 LDA $62CE,X C1/2A68: 9DD662 STA $62D6,X (The echo buffer) C1/2A6B: BDD062 LDA $62D0,X C1/2A6E: 9DD862 STA $62D8,X C1/2A71: BDD262 LDA $62D2,X C1/2A74: 9DDA62 STA $62DA,X C1/2A77: BDD462 LDA $62D4,X C1/2A7A: 9DDC62 STA $62DC,X C1/2A7D: 8A TXA C1/2A7E: 38 SEC C1/2A7F: E90800 SBC #$0008 C1/2A82: AA TAX C1/2A83: D0E0 BNE $2A65 C1/2A85: A571 LDA $71 C1/2A87: 29FF00 AND #$00FF C1/2A8A: 3A DEC A C1/2A8B: 3A DEC A C1/2A8C: 0A ASL A C1/2A8D: 0A ASL A C1/2A8E: AA TAX C1/2A8F: BD0003 LDA $0300,X C1/2A92: 8DD662 STA $62D6 C1/2A95: BD0203 LDA $0302,X C1/2A98: 8DD862 STA $62D8 C1/2A9B: BD0403 LDA $0304,X C1/2A9E: 8DDA62 STA $62DA C1/2AA1: BD0603 LDA $0306,X C1/2AA4: 8DDC62 STA $62DC C1/2AA7: C220 REP #$20 C1/2AA9: A571 LDA $71 C1/2AAB: 29FF00 AND #$00FF C1/2AAE: 0A ASL A C1/2AAF: 0A ASL A C1/2AB0: AA TAX C1/2AB1: A50E LDA $0E C1/2AB3: 290100 AND #$0001 C1/2AB6: F005 BEQ $2ABD C1/2AB8: A00800 LDY #$0008 C1/2ABB: 8001 BRA $2ABE C1/2ABD: A8 TAY C1/2ABE: B9D662 LDA $62D6,Y C1/2AC1: 9D0003 STA $0300,X C1/2AC4: B9D862 LDA $62D8,Y C1/2AC7: 9D0203 STA $0302,X C1/2ACA: B9DA62 LDA $62DA,Y C1/2ACD: 9D0403 STA $0304,X C1/2AD0: B9DC62 LDA $62DC,Y C1/2AD3: 9D0603 STA $0306,X C1/2AD6: B9E662 LDA $62E6,Y C1/2AD9: 9D0803 STA $0308,X C1/2ADC: B9E862 LDA $62E8,Y C1/2ADF: 9D0A03 STA $030A,X C1/2AE2: B9EA62 LDA $62EA,Y C1/2AE5: 9D0C03 STA $030C,X C1/2AE8: B9EC62 LDA $62EC,Y C1/2AEB: 9D0E03 STA $030E,X C1/2AEE: B9F662 LDA $62F6,Y C1/2AF1: 9D1003 STA $0310,X C1/2AF4: B9F862 LDA $62F8,Y C1/2AF7: 9D1203 STA $0312,X C1/2AFA: B9FA62 LDA $62FA,Y C1/2AFD: 9D1403 STA $0314,X C1/2B00: B9FC62 LDA $62FC,Y C1/2B03: 9D1603 STA $0316,X C1/2B06: B90663 LDA $6306,Y C1/2B09: 9D1803 STA $0318,X C1/2B0C: B90863 LDA $6308,Y C1/2B0F: 9D1A03 STA $031A,X C1/2B12: B90A63 LDA $630A,Y C1/2B15: 9D1C03 STA $031C,X C1/2B18: B90C63 LDA $630C,Y C1/2B1B: 9D1E03 STA $031E,X C1/2B1E: 7B TDC C1/2B1F: E220 SEP #$20 C1/2B21: A571 LDA $71 C1/2B23: 18 CLC C1/2B24: 6908 ADC #$08 C1/2B26: 8571 STA $71 C1/2B28: 68 PLA C1/2B29: 60 RTS
C1/2B2A unknow
C1/2B2A: 20672C JSR $2C67 (from C1/27DB, C1/29AC) C1/2B2D: 48 PHA C1/2B2E: 853A STA $3A C1/2B30: AD3E7B LDA $7B3E C1/2B33: F01F BEQ $2B54 C1/2B35: 20FC2B JSR $2BFC C1/2B38: B011 BCS $2B4B C1/2B3A: A53A LDA $3A C1/2B3C: AA TAX C1/2B3D: BD3F7B LDA $7B3F,X C1/2B40: 297F AND #$7F C1/2B42: F007 BEQ $2B4B C1/2B44: BD497B LDA $7B49,X C1/2B47: C940 CMP #$40 C1/2B49: D00C BNE $2B57 C1/2B4B: A53A LDA $3A C1/2B4D: AA TAX C1/2B4E: 9E3F7B STZ $7B3F,X C1/2B51: 9E497B STZ $7B49,X C1/2B54: 4CFA2B JMP $2BFA C1/2B57: DA PHX C1/2B58: AA TAX C1/2B59: BF93CFC2 LDA $C2CF93,X C1/2B5D: 853C STA $3C C1/2B5F: FA PLX C1/2B60: FE497B INC $7B49,X C1/2B63: 6441 STZ $41 C1/2B65: BD537B LDA $7B53,X C1/2B68: 8540 STA $40 C1/2B6A: 1002 BPL $2B6E C1/2B6C: C641 DEC $41 C1/2B6E: C220 REP #$20 C1/2B70: A536 LDA $36 C1/2B72: 38 SEC C1/2B73: E540 SBC $40 C1/2B75: 8536 STA $36 C1/2B77: 7B TDC C1/2B78: E220 SEP #$20 C1/2B7A: A538 LDA $38 C1/2B7C: 38 SEC C1/2B7D: E53C SBC $3C C1/2B7F: 8538 STA $38 C1/2B81: A571 LDA $71 C1/2B83: C220 REP #$20 C1/2B85: 0A ASL A C1/2B86: 0A ASL A C1/2B87: A8 TAY C1/2B88: 7B TDC C1/2B89: E220 SEP #$20 C1/2B8B: A53A LDA $3A C1/2B8D: AA TAX C1/2B8E: BD3F7B LDA $7B3F,X C1/2B91: 2980 AND #$80 C1/2B93: D004 BNE $2B99 C1/2B95: A938 LDA #$38 C1/2B97: 8002 BRA $2B9B C1/2B99: A93A LDA #$3A C1/2B9B: 990303 STA $0303,Y C1/2B9E: 990703 STA $0307,Y C1/2BA1: A536 LDA $36 C1/2BA3: 990003 STA $0300,Y C1/2BA6: A537 LDA $37 C1/2BA8: 2901 AND #$01 C1/2BAA: F00F BEQ $2BBB C1/2BAC: DA PHX C1/2BAD: B97FA1 LDA $A17F,Y C1/2BB0: AA TAX C1/2BB1: BD0005 LDA $0500,X C1/2BB4: 197FA7 ORA $A77F,Y C1/2BB7: 9D0005 STA $0500,X C1/2BBA: FA PLX C1/2BBB: C220 REP #$20 C1/2BBD: A536 LDA $36 C1/2BBF: 18 CLC C1/2BC0: 691000 ADC #$0010 C1/2BC3: 8536 STA $36 C1/2BC5: 7B TDC C1/2BC6: E220 SEP #$20 C1/2BC8: A536 LDA $36 C1/2BCA: 990403 STA $0304,Y C1/2BCD: A537 LDA $37 C1/2BCF: 2901 AND #$01 C1/2BD1: F00F BEQ $2BE2 C1/2BD3: DA PHX C1/2BD4: B983A1 LDA $A183,Y C1/2BD7: AA TAX C1/2BD8: BD0005 LDA $0500,X C1/2BDB: 1983A7 ORA $A783,Y C1/2BDE: 9D0005 STA $0500,X C1/2BE1: FA PLX C1/2BE2: A538 LDA $38 C1/2BE4: 990103 STA $0301,Y C1/2BE7: 990503 STA $0305,Y C1/2BEA: BF98E3C2 LDA $C2E398,X C1/2BEE: 990203 STA $0302,Y C1/2BF1: 1A INC A C1/2BF2: 1A INC A C1/2BF3: 990603 STA $0306,Y C1/2BF6: E671 INC $71 C1/2BF8: E671 INC $71 C1/2BFA: 68 PLA C1/2BFB: 60 RTS
C1/2BFC unknow
C1/2BFC: A53A LDA $3A (from C1/2B35, C1/2C6C, C1/2CAC) C1/2BFE: 102A BPL $2C2A C1/2C00: 2903 AND #$03 C1/2C02: 853A STA $3A C1/2C04: 20091A JSR $1A09 C1/2C07: 2D1D20 AND $201D (Remove any invalid character targets) C1/2C0A: 2DAC61 AND $61AC C1/2C0D: D002 BNE $2C11 C1/2C0F: 38 SEC C1/2C10: 60 RTS
C1/2C11 unknow
C1/2C11: BD107B LDA $7B10,X (from only C1/2C0D) C1/2C14: 852C STA $2C C1/2C16: 8A TXA C1/2C17: 0A ASL A C1/2C18: AA TAX C1/2C19: BD4380 LDA $8043,X C1/2C1C: 8538 STA $38 C1/2C1E: BD3480 LDA $8034,X C1/2C21: 8537 STA $37 C1/2C23: BD3380 LDA $8033,X C1/2C26: 8536 STA $36 C1/2C28: 8032 BRA $2C5C C1/2C2A: A53A LDA $3A C1/2C2C: 20091A JSR $1A09 C1/2C2F: 2D1E20 AND $201E (Remove any invalid monster targets) C1/2C32: 2DAB61 AND $61AB C1/2C35: F027 BEQ $2C5E C1/2C37: 8A TXA C1/2C38: 0A ASL A C1/2C39: AA TAX C1/2C3A: BD2780 LDA $8027,X (bottom Y-coordinate of monster - 8) C1/2C3D: 8538 STA $38 C1/2C3F: BD0F80 LDA $800F,X (Get X-coordinate of middle of monster) C1/2C42: 8536 STA $36 C1/2C44: BD1080 LDA $8010,X C1/2C47: 8537 STA $37 C1/2C49: BDF380 LDA $80F3,X C1/2C4C: 5D7E61 EOR $617E,X C1/2C4F: 2901 AND #$01 C1/2C51: 4901 EOR #$01 C1/2C53: 852C STA $2C C1/2C55: A53A LDA $3A C1/2C57: 18 CLC C1/2C58: 6904 ADC #$04 C1/2C5A: 853A STA $3A C1/2C5C: 18 CLC C1/2C5D: 60 RTS
C1/2C5E unknow
C1/2C5E: A53A LDA $3A (from only C1/2C35) C1/2C60: 18 CLC C1/2C61: 6904 ADC #$04 C1/2C63: 853A STA $3A C1/2C65: 38 SEC C1/2C66: 60 RTS
C1/2C67 unknow
C1/2C67: 8D4161 STA $6141 C1/2C6A: 853A STA $3A C1/2C6C: 20FC2B JSR $2BFC C1/2C6F: 9020 BCC $2C91 C1/2C71: 7B TDC C1/2C72: AA TAX C1/2C73: BD1A63 LDA $631A,X C1/2C76: 297F AND #$7F C1/2C78: F00D BEQ $2C87 C1/2C7A: BD1E63 LDA $631E,X C1/2C7D: C53A CMP $3A C1/2C7F: D006 BNE $2C87 C1/2C81: 9E1A63 STZ $631A,X C1/2C84: 9E2263 STZ $6322,X C1/2C87: E8 INX C1/2C88: E00400 CPX #$0004 C1/2C8B: D0E6 BNE $2C73 C1/2C8D: AD4161 LDA $6141 C1/2C90: 60 RTS
C1/2C91 unknow
C1/2C91: 7B TDC C1/2C92: AA TAX C1/2C93: BD1A63 LDA $631A,X C1/2C96: 297F AND #$7F C1/2C98: F01E BEQ $2CB8 C1/2C9A: BD1E63 LDA $631E,X C1/2C9D: C53A CMP $3A C1/2C9F: D017 BNE $2CB8 C1/2CA1: A53A LDA $3A C1/2CA3: 48 PHA C1/2CA4: DA PHX C1/2CA5: 863C STX $3C C1/2CA7: AD4161 LDA $6141 C1/2CAA: 853A STA $3A C1/2CAC: 20FC2B JSR $2BFC C1/2CAF: A63C LDX $3C C1/2CB1: 20C22C JSR $2CC2 C1/2CB4: FA PLX C1/2CB5: 68 PLA C1/2CB6: 853A STA $3A C1/2CB8: E8 INX C1/2CB9: E00400 CPX #$0004 C1/2CBC: D0D5 BNE $2C93 C1/2CBE: AD4161 LDA $6141 C1/2CC1: 60 RTS
C1/2CC2 unknow
C1/2CC2: 48 PHA C1/2CC3: BD2263 LDA $6322,X C1/2CC6: C940 CMP #$40 C1/2CC8: D008 BNE $2CD2 C1/2CCA: 9E1A63 STZ $631A,X C1/2CCD: 9E2263 STZ $6322,X C1/2CD0: 68 PLA C1/2CD1: 60 RTS
C1/2CD2 unknow
C1/2CD2: DA PHX C1/2CD3: AA TAX C1/2CD4: BF93CFC2 LDA $C2CF93,X C1/2CD8: 853C STA $3C C1/2CDA: FA PLX C1/2CDB: FE2263 INC $6322,X C1/2CDE: 6441 STZ $41 C1/2CE0: BD2663 LDA $6326,X C1/2CE3: 8540 STA $40 C1/2CE5: 1002 BPL $2CE9 C1/2CE7: C641 DEC $41 C1/2CE9: C220 REP #$20 C1/2CEB: A536 LDA $36 C1/2CED: 38 SEC C1/2CEE: E540 SBC $40 C1/2CF0: 8536 STA $36 C1/2CF2: 7B TDC C1/2CF3: E220 SEP #$20 C1/2CF5: A538 LDA $38 C1/2CF7: 38 SEC C1/2CF8: E53C SBC $3C C1/2CFA: 8538 STA $38 C1/2CFC: A53A LDA $3A C1/2CFE: C904 CMP #$04 C1/2D00: 900C BCC $2D0E C1/2D02: 38 SEC C1/2D03: E904 SBC #$04 C1/2D05: 0A ASL A C1/2D06: A8 TAY C1/2D07: B9E880 LDA $80E8,Y C1/2D0A: 853A STA $3A C1/2D0C: 8004 BRA $2D12 C1/2D0E: A9FF LDA #$FF C1/2D10: 853A STA $3A C1/2D12: A571 LDA $71 C1/2D14: C220 REP #$20 C1/2D16: 0A ASL A C1/2D17: 0A ASL A C1/2D18: A8 TAY C1/2D19: 7B TDC C1/2D1A: E220 SEP #$20 C1/2D1C: BD1A63 LDA $631A,X C1/2D1F: 2980 AND #$80 C1/2D21: D004 BNE $2D27 C1/2D23: A938 LDA #$38 C1/2D25: 8002 BRA $2D29 C1/2D27: A93A LDA #$3A C1/2D29: 253A AND $3A C1/2D2B: 990303 STA $0303,Y C1/2D2E: 990703 STA $0307,Y C1/2D31: A536 LDA $36 C1/2D33: 990003 STA $0300,Y C1/2D36: A537 LDA $37 C1/2D38: 2901 AND #$01 C1/2D3A: F00F BEQ $2D4B C1/2D3C: DA PHX C1/2D3D: B97FA1 LDA $A17F,Y C1/2D40: AA TAX C1/2D41: BD0005 LDA $0500,X C1/2D44: 197FA7 ORA $A77F,Y C1/2D47: 9D0005 STA $0500,X C1/2D4A: FA PLX C1/2D4B: C220 REP #$20 C1/2D4D: A536 LDA $36 C1/2D4F: 18 CLC C1/2D50: 691000 ADC #$0010 C1/2D53: 8536 STA $36 C1/2D55: 7B TDC C1/2D56: E220 SEP #$20 C1/2D58: A536 LDA $36 C1/2D5A: 990403 STA $0304,Y C1/2D5D: A537 LDA $37 C1/2D5F: 2901 AND #$01 C1/2D61: F00F BEQ $2D72 C1/2D63: DA PHX C1/2D64: B983A1 LDA $A183,Y C1/2D67: AA TAX C1/2D68: BD0005 LDA $0500,X C1/2D6B: 1983A7 ORA $A783,Y C1/2D6E: 9D0005 STA $0500,X C1/2D71: FA PLX C1/2D72: A538 LDA $38 C1/2D74: C997 CMP #$97 C1/2D76: 9002 BCC $2D7A C1/2D78: A9E0 LDA #$E0 C1/2D7A: 990103 STA $0301,Y C1/2D7D: 990503 STA $0305,Y C1/2D80: BF94E3C2 LDA $C2E394,X C1/2D84: 990203 STA $0302,Y C1/2D87: 1A INC A C1/2D88: 1A INC A C1/2D89: 990603 STA $0306,Y C1/2D8C: E671 INC $71 C1/2D8E: E671 INC $71 C1/2D90: 68 PLA C1/2D91: 60 RTS
C1/2D92 unknow
C1/2D92: 48 PHA C1/2D93: AD687B LDA $7B68 C1/2D96: AA TAX C1/2D97: DA PHX C1/2D98: BF011AC1 LDA $C11A01,X C1/2D9C: 852C STA $2C C1/2D9E: FA PLX C1/2D9F: AD1D20 LDA $201D (Load valid character targets) C1/2DA2: 2DAC61 AND $61AC C1/2DA5: 252C AND $2C C1/2DA7: F028 BEQ $2DD1 C1/2DA9: BF5BCFC2 LDA $C2CF5B,X C1/2DAD: AA TAX C1/2DAE: BDAE2E LDA $2EAE,X C1/2DB1: C9FF CMP #$FF C1/2DB3: F01C BEQ $2DD1 C1/2DB5: BDC02E LDA $2EC0,X C1/2DB8: 2920 AND #$20 C1/2DBA: D015 BNE $2DD1 C1/2DBC: BDC22E LDA $2EC2,X C1/2DBF: 2904 AND #$04 C1/2DC1: F00E BEQ $2DD1 C1/2DC3: A901 LDA #$01 C1/2DC5: 8D697B STA $7B69 C1/2DC8: AD687B LDA $7B68 C1/2DCB: 20DB34 JSR $34DB C1/2DCE: 9C697B STZ $7B69 C1/2DD1: 68 PLA C1/2DD2: 60 RTS
C1/2DD3 unknow
C1/2DD3: AD9800 LDA $0098 (from C1/0CDA, C1/3D33) C1/2DD6: 1A INC A C1/2DD7: 2903 AND #$03 C1/2DD9: 0A ASL A C1/2DDA: 0A ASL A C1/2DDB: 0A ASL A C1/2DDC: 0A ASL A C1/2DDD: 0A ASL A C1/2DDE: A8 TAY C1/2DDF: 5A PHY C1/2DE0: A21800 LDX #$0018 C1/2DE3: B9AD81 LDA $81AD,Y C1/2DE6: 99807F STA $7F80,Y (set character palette's 1 - 4) C1/2DE9: C8 INY C1/2DEA: CA DEX C1/2DEB: D0F6 BNE $2DE3 C1/2DED: 7A PLY C1/2DEE: B9CD61 LDA $61CD,Y C1/2DF1: F012 BEQ $2E05 C1/2DF3: 3A DEC A C1/2DF4: 3A DEC A C1/2DF5: 99CD61 STA $61CD,Y C1/2DF8: D003 BNE $2DFD C1/2DFA: 9C6A7B STZ $7B6A C1/2DFD: A905 LDA #$05 C1/2DFF: 20B52E JSR $2EB5 C1/2E02: 4CB42E JMP $2EB4 (uhhh, this jumps to an RTS...)
C1/2E05 unknow
C1/2E05: C220 REP #$20 (from C1/2DF1) C1/2E07: B9C12E LDA $2EC1,Y C1/2E0A: 8536 STA $36 C1/2E0C: B9C32E LDA $2EC3,Y C1/2E0F: 8538 STA $38 C1/2E11: 7B TDC C1/2E12: E220 SEP #$20 C1/2E14: A536 LDA $36 C1/2E16: 2940 AND #$40 C1/2E18: F013 BEQ $2E2D C1/2E1A: 7B TDC C1/2E1B: AA TAX C1/2E1C: BFECCFC2 LDA $C2CFEC,X C1/2E20: 99827F STA $7F82,Y C1/2E23: C8 INY C1/2E24: E8 INX C1/2E25: E01600 CPX #$0016 C1/2E28: D0F2 BNE $2E1C C1/2E2A: 4CB42E JMP $2EB4 (uhhh, this jumps to an RTS...)
C1/2E2D unknow
C1/2E2D: A539 LDA $39 (from C1/2E18) C1/2E2F: 2902 AND #$02 C1/2E31: F012 BEQ $2E45 (Branch if not frozen) C1/2E33: 7B TDC C1/2E34: AA TAX C1/2E35: 5A PHY C1/2E36: BF04D0C2 LDA $C2D004,X C1/2E3A: 99827F STA $7F82,Y C1/2E3D: C8 INY C1/2E3E: E8 INX C1/2E3F: E01600 CPX #$0016 C1/2E42: D0F2 BNE $2E36 C1/2E44: 7A PLY C1/2E45: A536 LDA $36 C1/2E47: 2904 AND #$04 C1/2E49: F006 BEQ $2E51 (Branch if not poisoned) C1/2E4B: 7B TDC C1/2E4C: 200D2F JSR $2F0D C1/2E4F: 8063 BRA $2EB4 C1/2E51: A536 LDA $36 C1/2E53: 2902 AND #$02 C1/2E55: F007 BEQ $2E5E (Branch if not zombied) C1/2E57: A901 LDA #$01 C1/2E59: 200D2F JSR $2F0D C1/2E5C: 8056 BRA $2EB4 C1/2E5E: A537 LDA $37 C1/2E60: 2910 AND #$10 C1/2E62: F007 BEQ $2E6B (Branch if not berzerked) C1/2E64: A902 LDA #$02 C1/2E66: 200D2F JSR $2F0D C1/2E69: 8049 BRA $2EB4 C1/2E6B: A538 LDA $38 C1/2E6D: 1006 BPL $2E75 (Branch if not reflect) C1/2E6F: 7B TDC C1/2E70: 20C32E JSR $2EC3 C1/2E73: 803F BRA $2EB4 C1/2E75: 2940 AND #$40 C1/2E77: F007 BEQ $2E80 (Branch if not safe) C1/2E79: A901 LDA #$01 C1/2E7B: 20C32E JSR $2EC3 C1/2E7E: 8034 BRA $2EB4 C1/2E80: A538 LDA $38 C1/2E82: 2920 AND #$20 C1/2E84: F007 BEQ $2E8D (Branch if not shell) C1/2E86: A902 LDA #$02 C1/2E88: 20C32E JSR $2EC3 C1/2E8B: 8027 BRA $2EB4 C1/2E8D: A538 LDA $38 C1/2E8F: 2910 AND #$10 C1/2E91: F007 BEQ $2E9A (Branch if not stop) C1/2E93: A907 LDA #$07 C1/2E95: 20C32E JSR $2EC3 C1/2E98: 801A BRA $2EB4 C1/2E9A: A538 LDA $38 C1/2E9C: 2908 AND #$08 C1/2E9E: F007 BEQ $2EA7 (Branch if not haste) C1/2EA0: A903 LDA #$03 C1/2EA2: 20C32E JSR $2EC3 C1/2EA5: 800D BRA $2EB4 C1/2EA7: A538 LDA $38 C1/2EA9: 2904 AND #$04 C1/2EAB: F007 BEQ $2EB4 (Branch if not slow) C1/2EAD: A904 LDA #$04 C1/2EAF: 20C32E JSR $2EC3 C1/2EB2: 8000 BRA $2EB4 C1/2EB4: 60 RTS
C1/2EB5 unknow
C1/2EB5: 48 PHA (from only C1/2DFF) C1/2EB6: B9CD61 LDA $61CD,Y C1/2EB9: 0A ASL A C1/2EBA: 0A ASL A C1/2EBB: 18 CLC C1/2EBC: 6940 ADC #$40 C1/2EBE: 852C STA $2C C1/2EC0: 68 PLA C1/2EC1: 8006 BRA $2EC9
C1/2EC3 change outline color for status
C1/2EC3: 48 PHA C1/2EC4: A50E LDA $0E C1/2EC6: 852C STA $2C C1/2EC8: 68 PLA C1/2EC9: 48 PHA (why such redundancy?) C1/2ECA: A52C LDA $2C C1/2ECC: 2903 AND #$03 C1/2ECE: AA TAX C1/2ECF: BFAAE3C2 LDA $C2E3AA,X C1/2ED3: 18 CLC C1/2ED4: 652C ADC $2C C1/2ED6: 8536 STA $36 C1/2ED8: 2940 AND #$40 C1/2EDA: F012 BEQ $2EEE C1/2EDC: A536 LDA $36 C1/2EDE: 293C AND #$3C C1/2EE0: 4A LSR A C1/2EE1: 852C STA $2C C1/2EE3: A91F LDA #$1F C1/2EE5: 38 SEC C1/2EE6: E52C SBC $2C C1/2EE8: 852C STA $2C C1/2EEA: 642D STZ $2D C1/2EEC: 8009 BRA $2EF7 C1/2EEE: A536 LDA $36 C1/2EF0: 293C AND #$3C C1/2EF2: 4A LSR A C1/2EF3: 852C STA $2C C1/2EF5: 642D STZ $2D C1/2EF7: 68 PLA C1/2EF8: 0A ASL A C1/2EF9: AA TAX C1/2EFA: C220 REP #$20 (16 bit accum./memory) C1/2EFC: 20E441 JSR $41E4 C1/2EFF: BFBAE3C2 LDA $C2E3BA,X C1/2F03: 200242 JSR $4202 C1/2F06: 99827F STA $7F82,Y C1/2F09: 7B TDC C1/2F0A: E220 SEP #$20 (8 bit accum./memory) C1/2F0C: 60 RTS
C1/2F0D change flesh color for status
C1/2F0D: 0A ASL A (from C1/2E4C, C1/2E59, C1/2E66) C1/2F0E: 0A ASL A C1/2F0F: AA TAX C1/2F10: C220 REP #$20 (16 bit accum./memory) C1/2F12: BFAEE3C2 LDA $C2E3AE,X C1/2F16: 998C7F STA $7F8C,Y C1/2F19: BFB0E3C2 LDA $C2E3B0,X C1/2F1D: 998E7F STA $7F8E,Y C1/2F20: 7B TDC C1/2F21: E220 SEP #$20 (8 bit accum./memory) C1/2F23: 60 RTS
C1/2F24 setup head graphics for character with status
C1/2F24: DA PHX C1/2F25: BDBE2E LDA $2EBE,X C1/2F28: 8510 STA $10 C1/2F2A: 1004 BPL $2F30 C1/2F2C: A906 LDA #$06 C1/2F2E: 8040 BRA $2F70 C1/2F30: A510 LDA $10 C1/2F32: 2920 AND #$20 C1/2F34: F004 BEQ $2F3A C1/2F36: A902 LDA #$02 C1/2F38: 8036 BRA $2F70 C1/2F3A: A510 LDA $10 C1/2F3C: 2910 AND #$10 C1/2F3E: F004 BEQ $2F44 C1/2F40: A904 LDA #$04 C1/2F42: 802C BRA $2F70 C1/2F44: BDC02E LDA $2EC0,X C1/2F47: 2901 AND #$01 C1/2F49: F004 BEQ $2F4F C1/2F4B: A904 LDA #$04 C1/2F4D: 8021 BRA $2F70 C1/2F4F: BDBD2E LDA $2EBD,X C1/2F52: 2904 AND #$04 C1/2F54: F004 BEQ $2F5A C1/2F56: A901 LDA #$01 C1/2F58: 8016 BRA $2F70 C1/2F5A: BDBD2E LDA $2EBD,X C1/2F5D: 2901 AND #$01 C1/2F5F: F004 BEQ $2F65 C1/2F61: A903 LDA #$03 C1/2F63: 800B BRA $2F70 C1/2F65: A510 LDA $10 C1/2F67: 2908 AND #$08 C1/2F69: F004 BEQ $2F6F C1/2F6B: A905 LDA #$05 C1/2F6D: 8001 BRA $2F70 C1/2F6F: 7B TDC C1/2F70: 9DCF61 STA $61CF,X C1/2F73: FA PLX C1/2F74: 60 RTS
C1/2F75 unknow
C1/2F75: 20792F JSR $2F79 (from C2/C165) C1/2F78: 6B RTL
C1/2F79: AD787B LDA $7B78 C1/2F7C: 2903 AND #$03 C1/2F7E: A8 TAY C1/2F7F: 0A ASL A C1/2F80: 0A ASL A C1/2F81: 0A ASL A C1/2F82: 0A ASL A C1/2F83: 0A ASL A C1/2F84: AA TAX C1/2F85: BDCD61 LDA $61CD,X C1/2F88: F003 BEQ $2F8D C1/2F8A: 4C4C30 JMP $304C
C1/2F8D: A901 LDA #$01 C1/2F8F: 9DCE61 STA $61CE,X C1/2F92: AD4B2F LDA $2F4B (Monst. Form. Aux. Byte 4) C1/2F95: 2901 AND #$01 C1/2F97: D038 BNE $2FD1 C1/2F99: BDC02E LDA $2EC0,X C1/2F9C: 2908 AND #$08 C1/2F9E: F015 BEQ $2FB5 C1/2FA0: B96C7B LDA $7B6C,Y C1/2FA3: C912 CMP #$12 C1/2FA5: F03F BEQ $2FE6 C1/2FA7: A912 LDA #$12 C1/2FA9: 996C7B STA $7B6C,Y C1/2FAC: 205731 JSR $3157 C1/2FAF: 7B TDC C1/2FB0: 99707B STA $7B70,Y C1/2FB3: 8031 BRA $2FE6 C1/2FB5: BDBD2E LDA $2EBD,X C1/2FB8: 2920 AND #$20 C1/2FBA: F015 BEQ $2FD1 C1/2FBC: B96C7B LDA $7B6C,Y C1/2FBF: C90F CMP #$0F C1/2FC1: F023 BEQ $2FE6 C1/2FC3: A90F LDA #$0F C1/2FC5: 996C7B STA $7B6C,Y C1/2FC8: 205731 JSR $3157 C1/2FCB: 7B TDC C1/2FCC: 99707B STA $7B70,Y C1/2FCF: 8015 BRA $2FE6 C1/2FD1: B96C7B LDA $7B6C,Y C1/2FD4: DDAE2E CMP $2EAE,X C1/2FD7: F00D BEQ $2FE6 C1/2FD9: BDAE2E LDA $2EAE,X C1/2FDC: 996C7B STA $7B6C,Y C1/2FDF: 205731 JSR $3157 C1/2FE2: 7B TDC C1/2FE3: 99707B STA $7B70,Y C1/2FE6: AD4B2F LDA $2F4B (Monst. Form. Aux. Byte 4) C1/2FE9: 2901 AND #$01 C1/2FEB: D026 BNE $3013 C1/2FED: BDBD2E LDA $2EBD,X C1/2FF0: 2910 AND #$10 C1/2FF2: F01F BEQ $3013 C1/2FF4: B9707B LDA $7B70,Y C1/2FF7: D039 BNE $3032 C1/2FF9: AD6A7B LDA $7B6A C1/2FFC: D034 BNE $3032 C1/2FFE: EE6A7B INC $7B6A C1/3001: 205030 JSR $3050 C1/3004: 200631 JSR $3106 C1/3007: A901 LDA #$01 C1/3009: 99707B STA $7B70,Y C1/300C: A91E LDA #$1E C1/300E: 9DCD61 STA $61CD,X C1/3011: 801F BRA $3032 C1/3013: B9707B LDA $7B70,Y C1/3016: F01A BEQ $3032 C1/3018: AD6A7B LDA $7B6A C1/301B: D015 BNE $3032 C1/301D: EE6A7B INC $7B6A C1/3020: 205030 JSR $3050 C1/3023: B96C7B LDA $7B6C,Y C1/3026: 205731 JSR $3157 C1/3029: 7B TDC C1/302A: 99707B STA $7B70,Y C1/302D: A91E LDA #$1E C1/302F: 9DCD61 STA $61CD,X C1/3032: 9ECE61 STZ $61CE,X C1/3035: 207130 JSR $3071 C1/3038: 20242F JSR $2F24 (Setup the status graphics for character X) C1/303B: C220 REP #$20 C1/303D: BDBD2E LDA $2EBD,X C1/3040: 9DC12E STA $2EC1,X C1/3043: BDBF2E LDA $2EBF,X C1/3046: 9DC32E STA $2EC3,X C1/3049: 7B TDC C1/304A: E220 SEP #$20 C1/304C: EE787B INC $7B78 C1/304F: 60 RTS