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 C16: Difference between revisions
< Final Fantasy VI | ROM map
Jump to navigation
Jump to search
(assembly C16) |
(clean up) |
||
Line 1: | Line 1: | ||
==C1/6019 display spell name== | |||
C1/6019: EB XBA (from only C1/5FBF) | C1/6019: EB XBA (from only C1/5FBF) | ||
C1/601A: A907 LDA #$07 (7 = spell name length) | C1/601A: A907 LDA #$07 (7 = spell name length) | ||
Line 20: | Line 19: | ||
C1/6040: D0EF BNE $6031 | C1/6040: D0EF BNE $6031 | ||
C1/6042: 60 RTS | C1/6042: 60 RTS | ||
==C1/6043 unknow== | |||
C1/6043: 20EC66 JSR $66EC (from C1/5E51, X = E) | C1/6043: 20EC66 JSR $66EC (from C1/5E51, X = E) | ||
C1/6046: A748 LDA [$48] | C1/6046: A748 LDA [$48] | ||
Line 27: | Line 26: | ||
C1/604C: A90D LDA #$0D | C1/604C: A90D LDA #$0D | ||
C1/604E: 4CA85F JMP $5FA8 | C1/604E: 4CA85F JMP $5FA8 | ||
==C1/6051 display item name== | |||
C1/6051: EB XBA (from C1/604A) | C1/6051: EB XBA (from C1/604A) | ||
C1/6052: A90D LDA #$0D (13 = item name length) | C1/6052: A90D LDA #$0D (13 = item name length) | ||
Line 50: | Line 46: | ||
C1/6078: D0EF BNE $6069 | C1/6078: D0EF BNE $6069 | ||
C1/607A: 60 RTS | C1/607A: 60 RTS | ||
==C1/607B unknow== | |||
C1/607B: A54B LDA $4B (from C1/5E51, X = 4) | C1/607B: A54B LDA $4B (from C1/5E51, X = 4) | ||
C1/607D: 4901 EOR #$01 | C1/607D: 4901 EOR #$01 | ||
C1/607F: 854B STA $4B | C1/607F: 854B STA $4B | ||
C1/6081: 60 RTS | C1/6081: 60 RTS | ||
==C1/6082 unknow== | |||
Data | Data | ||
C1/6082: 00 | C1/6082: 00 | ||
C1/6083: 5A | C1/6083: 5A | ||
Line 68: | Line 63: | ||
C1/608A: 00 | C1/608A: 00 | ||
C1/608B: 58 | C1/608B: 58 | ||
==C1/608C unknow== | |||
C1/608C: 647A STZ $7A (from C1/5E51, X = 1) | C1/608C: 647A STZ $7A (from C1/5E51, X = 1) | ||
C1/608E: ADC3E9 LDA $E9C3 | C1/608E: ADC3E9 LDA $E9C3 | ||
Line 101: | Line 96: | ||
C1/60D4: EEC2E9 INC $E9C2 | C1/60D4: EEC2E9 INC $E9C2 | ||
C1/60D7: 60 RTS | C1/60D7: 60 RTS | ||
==C1/60D8 unknow== | |||
C1/60D8: A910 LDA #$10 (from C1/6091) | C1/60D8: A910 LDA #$10 (from C1/6091) | ||
C1/60DA: 48 PHA | C1/60DA: 48 PHA | ||
Line 130: | Line 124: | ||
C1/6106: D0D2 BNE $60DA | C1/6106: D0D2 BNE $60DA | ||
C1/6108: 60 RTS | C1/6108: 60 RTS | ||
==C1/6109 unknow== | |||
Data | Data | ||
C1/6109: 04 (from C1/61CB) | C1/6109: 04 (from C1/61CB) | ||
C1/610A: 00 | C1/610A: 00 | ||
Line 142: | Line 134: | ||
C1/610F: 01 | C1/610F: 01 | ||
C1/6110: 00 | C1/6110: 00 | ||
==C1/6111 unknow== | |||
C1/6111: 8DF0EC STA $ECF0 | |||
C1/6111: 8DF0EC STA $ECF0 | |||
C1/6114: 38 SEC | C1/6114: 38 SEC | ||
C1/6115: E980 SBC #$80 | C1/6115: E980 SBC #$80 | ||
Line 156: | Line 147: | ||
C1/6124: F003 BEQ $6129 | C1/6124: F003 BEQ $6129 | ||
C1/6126: 4C5662 JMP $6256 | C1/6126: 4C5662 JMP $6256 | ||
==C1/6129 unknow== | |||
C1/6129: A57A LDA $7A (from C1/6124) | C1/6129: A57A LDA $7A (from C1/6124) | ||
C1/612B: 29F8 AND #$F8 | C1/612B: 29F8 AND #$F8 | ||
Line 170: | Line 160: | ||
C1/613C: D003 BNE $6141 | C1/613C: D003 BNE $6141 | ||
C1/613E: 4CC461 JMP $61C4 | C1/613E: 4CC461 JMP $61C4 | ||
C1/6141: A57A LDA $7A (from C1/613C) | C1/6141: A57A LDA $7A (from C1/613C) | ||
C1/6143: 290300 AND #$0003 | C1/6143: 290300 AND #$0003 | ||
Line 182: | Line 171: | ||
C1/6152: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) | C1/6152: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) | ||
C1/6156: 800B BRA $6163 | C1/6156: 800B BRA $6163 | ||
C1/6158: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) | C1/6158: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) | ||
C1/615C: 4A LSR A | C1/615C: 4A LSR A | ||
Line 229: | Line 218: | ||
C1/61BC: F003 BEQ $61C1 | C1/61BC: F003 BEQ $61C1 | ||
C1/61BE: 4C4A61 JMP $614A | C1/61BE: 4C4A61 JMP $614A | ||
C1/61C1: 4C2E62 JMP $622E | C1/61C1: 4C2E62 JMP $622E | ||
==C1/61C4 unknow== | |||
C1/61C4: A57A LDA $7A | C1/61C4: A57A LDA $7A | ||
C1/61C6: 290300 AND #$0003 | C1/61C6: 290300 AND #$0003 | ||
Line 298: | Line 286: | ||
C1/624C: 7A PLY | C1/624C: 7A PLY | ||
C1/624D: 60 RTS | C1/624D: 60 RTS | ||
==C1/624E unknow== | |||
Data | Data | ||
C1/624E: 00 | C1/624E: 00 | ||
C1/624F: 80 | C1/624F: 80 | ||
Line 309: | Line 296: | ||
C1/6254: FC | C1/6254: FC | ||
C1/6255: FE | C1/6255: FE | ||
==C1/6256 unknow== | |||
C1/6256: A57A LDA $7A | C1/6256: A57A LDA $7A | ||
C1/6258: 2907 AND #$07 | C1/6258: 2907 AND #$07 | ||
Line 327: | Line 314: | ||
C1/6274: D003 BNE $6279 | C1/6274: D003 BNE $6279 | ||
C1/6276: 4C0763 JMP $6307 | C1/6276: 4C0763 JMP $6307 | ||
C1/6279: A57A LDA $7A | C1/6279: A57A LDA $7A | ||
C1/627B: 290300 AND #$0003 | C1/627B: 290300 AND #$0003 | ||
Line 338: | Line 325: | ||
C1/628A: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) | C1/628A: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) | ||
C1/628E: 800B BRA $629B | C1/628E: 800B BRA $629B | ||
C1/6290: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) | C1/6290: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) | ||
C1/6294: 4A LSR A | C1/6294: 4A LSR A | ||
Line 389: | Line 376: | ||
C1/62FF: F003 BEQ $6304 | C1/62FF: F003 BEQ $6304 | ||
C1/6301: 4C8262 JMP $6282 | C1/6301: 4C8262 JMP $6282 | ||
C1/6304: 4C7B63 JMP $637B (BRA would work) | C1/6304: 4C7B63 JMP $637B (BRA would work) | ||
==C1/6307 unknow== | |||
C1/6307: A57A LDA $7A | C1/6307: A57A LDA $7A | ||
C1/6309: 290300 AND #$0003 | C1/6309: 290300 AND #$0003 | ||
Line 446: | Line 430: | ||
C1/6376: F003 BEQ $637B | C1/6376: F003 BEQ $637B | ||
C1/6378: 4C1663 JMP $6316 | C1/6378: 4C1663 JMP $6316 | ||
C1/637B: 7B TDC | C1/637B: 7B TDC | ||
C1/637C: E220 SEP #$20 | C1/637C: E220 SEP #$20 | ||
Line 466: | Line 449: | ||
C1/6399: 7A PLY | C1/6399: 7A PLY | ||
C1/639A: 60 RTS | C1/639A: 60 RTS | ||
==C1/639B unknow== | |||
C1/639B: A20004 LDX #$0400 | C1/639B: A20004 LDX #$0400 | ||
C1/639E: 8610 STX $10 | C1/639E: 8610 STX $10 | ||
Line 474: | Line 456: | ||
C1/63A5: ACBFE9 LDY $E9BF | C1/63A5: ACBFE9 LDY $E9BF | ||
C1/63A8: 4C8D19 JMP $198D | C1/63A8: 4C8D19 JMP $198D | ||
==C1/63AB unknow== | |||
C1/63AB: ADE288 LDA $88E2 | |||
C1/63AB: ADE288 LDA $88E2 | C1/63AE: 8556 STA $56 | ||
C1/63AE: 8556 STA $56 | |||
C1/63B0: 8558 STA $58 | C1/63B0: 8558 STA $58 | ||
C1/63B2: 855A STA $5A | C1/63B2: 855A STA $5A | ||
Line 504: | Line 485: | ||
C1/63E3: E650 INC $50 | C1/63E3: E650 INC $50 | ||
C1/63E5: 4CD463 JMP $63D4 (BRA would be better) | C1/63E5: 4CD463 JMP $63D4 (BRA would be better) | ||
==C1/63E8 unknow== | |||
C1/63E8: 200B64 JSR $640B | C1/63E8: 200B64 JSR $640B | ||
C1/63EB: E64F INC $4F | C1/63EB: E64F INC $4F | ||
Line 511: | Line 491: | ||
C1/63EF: E650 INC $50 | C1/63EF: E650 INC $50 | ||
C1/63F1: 4CD463 JMP $63D4 (BRA would be better) | C1/63F1: 4CD463 JMP $63D4 (BRA would be better) | ||
==C1/63F4 unknow== | |||
C1/63F4: 7B TDC (from only C1/63DC) | C1/63F4: 7B TDC (from only C1/63DC) | ||
C1/63F5: EB XBA | C1/63F5: EB XBA | ||
C1/63F6: 60 RTS | C1/63F6: 60 RTS | ||
==C1/63F7 unknow== | |||
C1/63F7: E64F INC $4F | C1/63F7: E64F INC $4F | ||
C1/63F9: D002 BNE $63FD | C1/63F9: D002 BNE $63FD | ||
C1/63FB: E650 INC $50 | C1/63FB: E650 INC $50 | ||
C1/63FD: 60 RTS | C1/63FD: 60 RTS | ||
==C1/63FE unknow== | |||
C1/63FE: C220 REP #$20 (from C1/669C, etc.) | C1/63FE: C220 REP #$20 (from C1/669C, etc.) | ||
C1/6400: 9153 STA ($53),Y | C1/6400: 9153 STA ($53),Y | ||
Line 532: | Line 509: | ||
C1/6409: C8 INY | C1/6409: C8 INY | ||
C1/640A: 60 RTS | C1/640A: 60 RTS | ||
==C1/640B unknow== | |||
C1/640B: 852C STA $2C (from only C1/63E8) | C1/640B: 852C STA $2C (from only C1/63E8) | ||
C1/640D: 062C ASL $2C | C1/640D: 062C ASL $2C | ||
C1/640F: A62C LDX $2C | C1/640F: A62C LDX $2C | ||
C1/6411: 7C1464 JMP ($6414,X) | C1/6411: 7C1464 JMP ($6414,X) | ||
==C1/6414 table of text to load/display== | |||
(function) (value of $2C) | (function) (value of $2C) | ||
C1/6414: 4767 (00) (exits) (00 is used to end a set of commands...) | C1/6414: 4767 (00) (exits) (00 is used to end a set of commands...) | ||
Line 570: | Line 543: | ||
C1/6446: 5566 (19) (Display Lore name X?) | C1/6446: 5566 (19) (Display Lore name X?) | ||
C1/6448: 7D66 (1A) (Display Esper name X?) | C1/6448: 7D66 (1A) (Display Esper name X?) | ||
==C1/644A unknow== | |||
C1/644A: 20F763 JSR $63F7 (from C1/6411, X = 16) | C1/644A: 20F763 JSR $63F7 (from C1/6411, X = 16) | ||
C1/644D: 6440 STZ $40 | C1/644D: 6440 STZ $40 | ||
Line 611: | Line 583: | ||
C1/648F: 69B4 ADC #$B4 | C1/648F: 69B4 ADC #$B4 | ||
C1/6491: 4CFE63 JMP $63FE | C1/6491: 4CFE63 JMP $63FE | ||
==C1/6494 unknow== | |||
C1/6494: 20F763 JSR $63F7 (from C1/6411, X = 2) | C1/6494: 20F763 JSR $63F7 (from C1/6411, X = 2) | ||
C1/6497: 6440 STZ $40 | C1/6497: 6440 STZ $40 | ||
Line 621: | Line 592: | ||
C1/64A0: E640 INC $40 | C1/64A0: E640 INC $40 | ||
C1/64A2: 4C9B64 JMP $649B (why no BRA?) | C1/64A2: 4C9B64 JMP $649B (why no BRA?) | ||
C1/64A5: 18 CLC (from only C1/649E) | C1/64A5: 18 CLC (from only C1/649E) | ||
C1/64A6: 690A ADC #$0A | C1/64A6: 690A ADC #$0A | ||
Line 637: | Line 607: | ||
C1/64BC: A9FF LDA #$FF | C1/64BC: A9FF LDA #$FF | ||
C1/64BE: 4CFE63 JMP $63FE | C1/64BE: 4CFE63 JMP $63FE | ||
C1/64C1: A541 LDA $41 (from only C1/64BA) | C1/64C1: A541 LDA $41 (from only C1/64BA) | ||
C1/64C3: 18 CLC | C1/64C3: 18 CLC | ||
C1/64C4: 69B4 ADC #$B4 | C1/64C4: 69B4 ADC #$B4 | ||
C1/64C6: 4CFE63 JMP $63FE | C1/64C6: 4CFE63 JMP $63FE | ||
==C1/64C9 unknow== | |||
C1/64C9: 20F763 JSR $63F7 (from C1/6411, X = 3) | C1/64C9: 20F763 JSR $63F7 (from C1/6411, X = 3) | ||
C1/64CC: B24F LDA ($4F) | C1/64CC: B24F LDA ($4F) | ||
C1/64CE: 4CFE63 JMP $63FE | C1/64CE: 4CFE63 JMP $63FE | ||
==C1/64D1 unknow== | |||
C1/64D1: 20F763 JSR $63F7 (from C1/6411, X = 4) | C1/64D1: 20F763 JSR $63F7 (from C1/6411, X = 4) | ||
C1/64D4: B24F LDA ($4F) | C1/64D4: B24F LDA ($4F) | ||
Line 657: | Line 624: | ||
C1/64DC: EB XBA | C1/64DC: EB XBA | ||
C1/64DD: 60 RTS | C1/64DD: 60 RTS | ||
==C1/64DE unknow== | |||
C1/64DE: 20F763 JSR $63F7 (from C1/6411, X = 5) | C1/64DE: 20F763 JSR $63F7 (from C1/6411, X = 5) | ||
C1/64E1: B24F LDA ($4F) | C1/64E1: B24F LDA ($4F) | ||
Line 667: | Line 633: | ||
C1/64EC: D0F7 BNE $64E5 | C1/64EC: D0F7 BNE $64E5 | ||
C1/64EE: 60 RTS | C1/64EE: 60 RTS | ||
==C1/64EF unknow== | |||
C1/64EF: 20F763 JSR $63F7 (from C1/6411, X = 6) | C1/64EF: 20F763 JSR $63F7 (from C1/6411, X = 6) | ||
C1/64F2: B24F LDA ($4F) | C1/64F2: B24F LDA ($4F) | ||
Line 675: | Line 640: | ||
C1/64F8: A90A LDA #$0A | C1/64F8: A90A LDA #$0A | ||
C1/64FA: 4CA566 JMP $66A5 | C1/64FA: 4CA566 JMP $66A5 | ||
==C1/64FD unknow== | |||
C1/64FD: 852C STA $2C (from C1/64F6) | C1/64FD: 852C STA $2C (from C1/64F6) | ||
C1/64FF: A90A LDA #$0A (10 = Magitek attack name length) | C1/64FF: A90A LDA #$0A (10 = Magitek attack name length) | ||
Line 689: | Line 653: | ||
C1/6514: D0F4 BNE $650A | C1/6514: D0F4 BNE $650A | ||
C1/6516: 60 RTS | C1/6516: 60 RTS | ||
==C1/6517 draw text of item types== | |||
C1/6517: 20F763 JSR $63F7 (from C1/6411, X = 12) | C1/6517: 20F763 JSR $63F7 (from C1/6411, X = 12) | ||
C1/651A: B24F LDA ($4F) | C1/651A: B24F LDA ($4F) | ||
Line 699: | Line 660: | ||
C1/6520: A907 LDA #$07 | C1/6520: A907 LDA #$07 | ||
C1/6522: 4CA566 JMP $66A5 | C1/6522: 4CA566 JMP $66A5 | ||
C1/6525: 852C STA $2C (from C1/651E) | C1/6525: 852C STA $2C (from C1/651E) | ||
C1/6527: A90D LDA #$0D (13 = item name length) | C1/6527: A90D LDA #$0D (13 = item name length) | ||
Line 724: | Line 685: | ||
C1/6555: D0F4 BNE $654B | C1/6555: D0F4 BNE $654B | ||
C1/6557: 60 RTS | C1/6557: 60 RTS | ||
==C1/6558 unknow== | |||
C1/6558: 20F763 JSR $63F7 (from C1/6411, X = E) | C1/6558: 20F763 JSR $63F7 (from C1/6411, X = E) | ||
C1/655B: B24F LDA ($4F) | C1/655B: B24F LDA ($4F) | ||
Line 733: | Line 692: | ||
C1/6561: A90D LDA #$0D | C1/6561: A90D LDA #$0D | ||
C1/6563: 4CA566 JMP $66A5 | C1/6563: 4CA566 JMP $66A5 | ||
C1/6566: 852C STA $2C (from C1/655F) | C1/6566: 852C STA $2C (from C1/655F) | ||
C1/6568: A90D LDA #$0D | C1/6568: A90D LDA #$0D | ||
Line 749: | Line 708: | ||
C1/6582: D0F4 BNE $6578 | C1/6582: D0F4 BNE $6578 | ||
C1/6584: 60 RTS | C1/6584: 60 RTS | ||
==C1/6585 unknow== | |||
C1/6585: 209865 JSR $6598 (from C1/6411, X = 11) | C1/6585: 209865 JSR $6598 (from C1/6411, X = 11) | ||
C1/6588: B24F LDA ($4F) | C1/6588: B24F LDA ($4F) | ||
Line 758: | Line 716: | ||
C1/6590: 9001 BCC $6593 | C1/6590: 9001 BCC $6593 | ||
C1/6592: 60 RTS | C1/6592: 60 RTS | ||
C1/6593: A903 LDA #$03 (from C1/658C) | C1/6593: A903 LDA #$03 (from C1/658C) | ||
C1/6595: 4CA566 JMP $66A5 | C1/6595: 4CA566 JMP $66A5 | ||
==C1/6598 unknow== | |||
C1/6598: 20F763 JSR $63F7 (from C1/6411, X = F) | C1/6598: 20F763 JSR $63F7 (from C1/6411, X = F) | ||
C1/659B: B24F LDA ($4F) | C1/659B: B24F LDA ($4F) | ||
Line 770: | Line 727: | ||
C1/65A3: A907 LDA #$07 | C1/65A3: A907 LDA #$07 | ||
C1/65A5: 4CA566 JMP $66A5 | C1/65A5: 4CA566 JMP $66A5 | ||
C1/65A8: C936 CMP #$36 (from C1/65A1) | C1/65A8: C936 CMP #$36 (from C1/65A1) | ||
C1/65AA: 903C BCC $65E8 (Go to spell names) | C1/65AA: 903C BCC $65E8 (Go to spell names) | ||
Line 789: | Line 746: | ||
C1/65C9: D0F4 BNE $65BF | C1/65C9: D0F4 BNE $65BF | ||
C1/65CB: 60 RTS | C1/65CB: 60 RTS | ||
==C1/65CC unknow== | |||
C1/65CC: 38 SEC (from C1/65AE) | C1/65CC: 38 SEC (from C1/65AE) | ||
C1/65CD: E936 SBC #$36 | C1/65CD: E936 SBC #$36 | ||
Line 805: | Line 761: | ||
C1/65E5: D0F4 BNE $65DB | C1/65E5: D0F4 BNE $65DB | ||
C1/65E7: 60 RTS | C1/65E7: 60 RTS | ||
==C1/65E8 unknow== | |||
C1/65E8: A907 LDA #$07 (from C1/65AA)(7 = spell name length) | C1/65E8: A907 LDA #$07 (from C1/65AA)(7 = spell name length) | ||
C1/65EA: 852E STA $2E | C1/65EA: 852E STA $2E | ||
Line 818: | Line 773: | ||
C1/65FD: D0F4 BNE $65F3 | C1/65FD: D0F4 BNE $65F3 | ||
C1/65FF: 60 RTS | C1/65FF: 60 RTS | ||
==C1/6600 unknow== | |||
C1/6600: 20F763 JSR $63F7 (from C1/6411, X = 17) | C1/6600: 20F763 JSR $63F7 (from C1/6411, X = 17) | ||
C1/6603: B24F LDA ($4F) | C1/6603: B24F LDA ($4F) | ||
Line 827: | Line 781: | ||
C1/660B: A90C LDA #$0C | C1/660B: A90C LDA #$0C | ||
C1/660D: 4CA566 JMP $66A5 | C1/660D: 4CA566 JMP $66A5 | ||
C1/6610: A90C LDA #$0C (12 = Dance name length) | C1/6610: A90C LDA #$0C (12 = Dance name length) | ||
C1/6612: 852E STA $2E | C1/6612: 852E STA $2E | ||
Line 839: | Line 793: | ||
C1/6625: D0F4 BNE $661B | C1/6625: D0F4 BNE $661B | ||
C1/6627: 60 RTS | C1/6627: 60 RTS | ||
==C1/6628 unknow== | |||
C1/6628: 20F763 JSR $63F7 (from C1/6411, X = 18) | C1/6628: 20F763 JSR $63F7 (from C1/6411, X = 18) | ||
C1/662B: B24F LDA ($4F) | C1/662B: B24F LDA ($4F) | ||
Line 848: | Line 801: | ||
C1/6633: A90B LDA #$0B | C1/6633: A90B LDA #$0B | ||
C1/6635: 4CA566 JMP $66A5 | C1/6635: 4CA566 JMP $66A5 | ||
C1/6638: A90A LDA #$0A (from C1/6631)(10 = enemy name length) | C1/6638: A90A LDA #$0A (from C1/6631)(10 = enemy name length) | ||
C1/663A: 852E STA $2E | C1/663A: 852E STA $2E | ||
Line 862: | Line 815: | ||
C1/6651: 20FE63 JSR $63FE | C1/6651: 20FE63 JSR $63FE | ||
C1/6654: 60 RTS | C1/6654: 60 RTS | ||
==C1/6655 unknow== | |||
C1/6655: 20F763 JSR $63F7 (from C1/6411, X = 19) | C1/6655: 20F763 JSR $63F7 (from C1/6411, X = 19) | ||
C1/6658: B24F LDA ($4F) | C1/6658: B24F LDA ($4F) | ||
Line 871: | Line 823: | ||
C1/6660: A90A LDA #$0A | C1/6660: A90A LDA #$0A | ||
C1/6662: 4CA566 JMP $66A5 (BRA would work here) | C1/6662: 4CA566 JMP $66A5 (BRA would work here) | ||
C1/6665: A90A LDA #$0A (from C1/665E)(10 = lore name length) | C1/6665: A90A LDA #$0A (from C1/665E)(10 = lore name length) | ||
C1/6667: 852E STA $2E | C1/6667: 852E STA $2E | ||
Line 883: | Line 835: | ||
C1/667A: D0F4 BNE $6670 | C1/667A: D0F4 BNE $6670 | ||
C1/667C: 60 RTS | C1/667C: 60 RTS | ||
==C1/667D unknow== | |||
C1/667D: 20F763 JSR $63F7 (from C1/6411, X = 1A) | C1/667D: 20F763 JSR $63F7 (from C1/6411, X = 1A) | ||
C1/6680: B24F LDA ($4F) | C1/6680: B24F LDA ($4F) | ||
Line 892: | Line 843: | ||
C1/6688: A908 LDA #$08 | C1/6688: A908 LDA #$08 | ||
C1/668A: 4CA566 JMP $66A5 (BRA would work here) | C1/668A: 4CA566 JMP $66A5 (BRA would work here) | ||
C1/668D: A908 LDA #$08 (from C1/6686)(Sets name length?) | C1/668D: A908 LDA #$08 (from C1/6686)(Sets name length?) | ||
C1/668F: 852E STA $2E | C1/668F: 852E STA $2E | ||
Line 904: | Line 855: | ||
C1/66A2: D0F4 BNE $6698 | C1/66A2: D0F4 BNE $6698 | ||
C1/66A4: 60 RTS | C1/66A4: 60 RTS | ||
==C1/66A5 unknow== | |||
C1/66A5: 8540 STA $40 | |||
C1/66A5: 8540 STA $40 | |||
C1/66A7: A9FF LDA #$FF | C1/66A7: A9FF LDA #$FF | ||
C1/66A9: 20FE63 JSR $63FE | C1/66A9: 20FE63 JSR $63FE | ||
Line 912: | Line 862: | ||
C1/66AE: D0F7 BNE $66A7 | C1/66AE: D0F7 BNE $66A7 | ||
C1/66B0: 60 RTS | C1/66B0: 60 RTS | ||
==C1/66B1 unknow== | |||
C1/66B1: ADDC88 LDA $88DC | |||
C1/66B1: ADDC88 LDA $88DC | |||
C1/66B4: 854E STA $4E | C1/66B4: 854E STA $4E | ||
C1/66B6: 0EDB88 ASL $88DB | C1/66B6: 0EDB88 ASL $88DB | ||
Line 940: | Line 889: | ||
C1/66E9: 80E8 BRA $66D3 | C1/66E9: 80E8 BRA $66D3 | ||
C1/66EB: 60 RTS | C1/66EB: 60 RTS | ||
==C1/66EC unknow== | |||
C1/66EC: E648 INC $48 (from C1/66DE, C1/66E6) | C1/66EC: E648 INC $48 (from C1/66DE, C1/66E6) | ||
C1/66EE: D002 BNE $66F2 | C1/66EE: D002 BNE $66F2 | ||
C1/66F0: E649 INC $49 | C1/66F0: E649 INC $49 | ||
C1/66F2: 60 RTS | C1/66F2: 60 RTS | ||
==C1/66F3 unknow== | |||
C1/66F3: 914C STA ($4C),Y | C1/66F3: 914C STA ($4C),Y | ||
C1/66F5: A9FF LDA #$FF | C1/66F5: A9FF LDA #$FF | ||
C1/66F7: 914A STA ($4A),Y | C1/66F7: 914A STA ($4A),Y | ||
Line 956: | Line 904: | ||
C1/6700: C8 INY | C1/6700: C8 INY | ||
C1/6701: 60 RTS | C1/6701: 60 RTS | ||
==C1/6702 unknow== | |||
C1/6702: 0A ASL A (from C1/66E3) | C1/6702: 0A ASL A (from C1/66E3) | ||
C1/6703: AA TAX | C1/6703: AA TAX | ||
C1/6704: 7C0767 JMP ($6707,X) | C1/6704: 7C0767 JMP ($6707,X) | ||
==C1/6707 table (pointers)== | |||
(function) (value) | (function) (value) | ||
C1/6707: 4767 (00) (exits) | C1/6707: 4767 (00) (exits) | ||
Line 1,000: | Line 944: | ||
C1/6747: 60 RTS (from various, just exits) | C1/6747: 60 RTS (from various, just exits) | ||
==C1/6748 unknow== | |||
C1/6748: ADDB88 LDA $88DB (from C1/6411, X = 1; from C1/6704, X = 1) | C1/6748: ADDB88 LDA $88DB (from C1/6411, X = 1; from C1/6704, X = 1) | ||
C1/674B: C220 REP #$20 | C1/674B: C220 REP #$20 | ||
Line 1,016: | Line 960: | ||
C1/675C: E220 SEP #$20 | C1/675C: E220 SEP #$20 | ||
C1/675E: 60 RTS | C1/675E: 60 RTS | ||
==C1/675F unknow== | |||
C1/675F: 20EC66 JSR $66EC (from C1/6704, X = 2) | C1/675F: 20EC66 JSR $66EC (from C1/6704, X = 2) | ||
C1/6762: 6410 STZ $10 | C1/6762: 6410 STZ $10 | ||
Line 1,025: | Line 969: | ||
C1/676B: E610 INC $10 | C1/676B: E610 INC $10 | ||
C1/676D: 4C6667 JMP $6766 | C1/676D: 4C6667 JMP $6766 | ||
==C1/6770 unknow== | |||
C1/6770: 18 CLC (from C1/6769) | C1/6770: 18 CLC (from C1/6769) | ||
C1/6771: 690A ADC #$0A | C1/6771: 690A ADC #$0A | ||
Line 1,040: | Line 984: | ||
C1/6787: A9FF LDA #$FF | C1/6787: A9FF LDA #$FF | ||
C1/6789: 4CF366 JMP $66F3 | C1/6789: 4CF366 JMP $66F3 | ||
C1/678C: A511 LDA $11 (from C1/6785) | C1/678C: A511 LDA $11 (from C1/6785) | ||
C1/678E: 18 CLC | C1/678E: 18 CLC | ||
C1/678F: 69B4 ADC #$B4 | C1/678F: 69B4 ADC #$B4 | ||
C1/6791: 4CF366 JMP $66F3 | C1/6791: 4CF366 JMP $66F3 | ||
==C1/6794 unknow== | |||
C1/6794: 20EC66 JSR $66EC (from C1/6704, X = 3) | C1/6794: 20EC66 JSR $66EC (from C1/6704, X = 3) | ||
C1/6797: B248 LDA ($48) | C1/6797: B248 LDA ($48) | ||
C1/6799: 4CF366 JMP $66F3 | C1/6799: 4CF366 JMP $66F3 | ||
==C1/679C unknow== | |||
C1/679C: 20EC66 JSR $66EC (from C1/6704, X = 4) | C1/679C: 20EC66 JSR $66EC (from C1/6704, X = 4) | ||
C1/679F: B248 LDA ($48) | C1/679F: B248 LDA ($48) | ||
C1/67A1: 854E STA $4E | C1/67A1: 854E STA $4E | ||
C1/67A3: 60 RTS | C1/67A3: 60 RTS | ||
==C1/67A4 unknow== | |||
C1/67A4: 20EC66 JSR $66EC (from C1/6704, X = 5) | C1/67A4: 20EC66 JSR $66EC (from C1/6704, X = 5) | ||
C1/67A7: B248 LDA ($48) | C1/67A7: B248 LDA ($48) | ||
Line 1,063: | Line 1,007: | ||
C1/67B2: D0F7 BNE $67AB | C1/67B2: D0F7 BNE $67AB | ||
C1/67B4: 60 RTS | C1/67B4: 60 RTS | ||
==C1/67B5 unknow== | |||
C1/67B5: 7B TDC (from C1/6704, X = 7) | C1/67B5: 7B TDC (from C1/6704, X = 7) | ||
C1/67B6: 800A BRA $67C2 | C1/67B6: 800A BRA $67C2 | ||
==C1/67B8 unknow== | |||
C1/67B8: A901 LDA #$01 (from C1/6704, X = 8) | C1/67B8: A901 LDA #$01 (from C1/6704, X = 8) | ||
C1/67BA: 8006 BRA $67C2 | C1/67BA: 8006 BRA $67C2 | ||
==C1/67BC unknow== | |||
C1/67BC: A902 LDA #$02 (from C1/6704, X = 9) | C1/67BC: A902 LDA #$02 (from C1/6704, X = 9) | ||
C1/67BE: 8002 BRA $67C2 | C1/67BE: 8002 BRA $67C2 | ||
==C1/67C0 unknow== | |||
C1/67C0: A903 LDA #$03 (from C1/6704, X = A) | C1/67C0: A903 LDA #$03 (from C1/6704, X = A) | ||
C1/67C2: AA TAX | C1/67C2: AA TAX | ||
Line 1,081: | Line 1,025: | ||
C1/67CB: AA TAX | C1/67CB: AA TAX | ||
C1/67CC: 7CE367 JMP ($67E3,X) | C1/67CC: 7CE367 JMP ($67E3,X) | ||
==C1/67CF unknow== | |||
C1/67CF: 20EC66 JSR $66EC (from C1/67C8) | C1/67CF: 20EC66 JSR $66EC (from C1/67C8) | ||
C1/67D2: B248 LDA ($48) | C1/67D2: B248 LDA ($48) | ||
Line 1,087: | Line 1,031: | ||
C1/67D5: BFDC67C1 LDA $C167DC,X | C1/67D5: BFDC67C1 LDA $C167DC,X | ||
C1/67D9: 4C2568 JMP $6825 | C1/67D9: 4C2568 JMP $6825 | ||
==C1/67DC unknow (data)== | |||
C1/67DC: 06 | C1/67DC: 06 | ||
C1/67DD: 04 | C1/67DD: 04 | ||
Line 1,097: | Line 1,039: | ||
C1/67E1: 06 | C1/67E1: 06 | ||
C1/67E2: 06 | C1/67E2: 06 | ||
==C1/67E3 unknow (pointers)== | |||
C1/67E3: EB67 (00) | C1/67E3: EB67 (00) | ||
C1/67E5: F267 (01) | C1/67E5: F267 (01) | ||
C1/67E7: F967 (02) | C1/67E7: F967 (02) | ||
C1/67E9: 0068 (03) | C1/67E9: 0068 (03) | ||
==C1/67EB character name== | |||
C1/67EB: A2AE2E LDX #$2EAE (from C1/67CC, X = 0, where to look for character 1's name) | C1/67EB: A2AE2E LDX #$2EAE (from C1/67CC, X = 0, where to look for character 1's name) | ||
C1/67EE: A900 LDA #$00 | C1/67EE: A900 LDA #$00 | ||
C1/67F0: 8013 BRA $6805 | C1/67F0: 8013 BRA $6805 | ||
C1/67F2: A2CE2E LDX #$2ECE (from C1/67CC, X = 1, where to look for character 2's name) | C1/67F2: A2CE2E LDX #$2ECE (from C1/67CC, X = 1, where to look for character 2's name) | ||
C1/67F5: A901 LDA #$01 | C1/67F5: A901 LDA #$01 | ||
C1/67F7: 800C BRA $6805 | C1/67F7: 800C BRA $6805 | ||
C1/67F9: A2EE2E LDX #$2EEE (from C1/67CC, X = 2, where to look for character 3's name) | C1/67F9: A2EE2E LDX #$2EEE (from C1/67CC, X = 2, where to look for character 3's name) | ||
C1/67FC: A902 LDA #$02 | C1/67FC: A902 LDA #$02 | ||
C1/67FE: 8005 BRA $6805 | C1/67FE: 8005 BRA $6805 | ||
C1/6800: A20E2F LDX #$2F0E (from C1/67CC, X = 3, where to look for character 4's name) | C1/6800: A20E2F LDX #$2F0E (from C1/67CC, X = 3, where to look for character 4's name) | ||
C1/6803: A903 LDA #$03 | C1/6803: A903 LDA #$03 | ||
Line 1,128: | Line 1,068: | ||
C1/6813: AA TAX | C1/6813: AA TAX | ||
C1/6814: 7C1768 JMP ($6817,X) | C1/6814: 7C1768 JMP ($6817,X) | ||
==C1/6817 table of pointers== | |||
C1/6817: 2F68 (0) (Name) | C1/6817: 2F68 (0) (Name) | ||
C1/6819: 4168 (1) (Current HP) | C1/6819: 4168 (1) (Current HP) | ||
Line 1,138: | Line 1,076: | ||
C1/6821: 4E68 (5) | C1/6821: 4E68 (5) | ||
C1/6823: 4668 (6) | C1/6823: 4668 (6) | ||
==C1/6825 unknow== | |||
C1/6825: AA TAX | C1/6825: AA TAX | ||
C1/6826: A9FF LDA #$FF | C1/6826: A9FF LDA #$FF | ||
C1/6828: 20F366 JSR $66F3 | C1/6828: 20F366 JSR $66F3 | ||
C1/682B: CA DEX | C1/682B: CA DEX X holds how many spaces to draw. it'll be 6, 4, or 3 | ||
C1/682C: D0F8 BNE $6826 | C1/682C: D0F8 BNE $6826 | ||
C1/682E: 60 RTS | C1/682E: 60 RTS | ||
==C1/682F unknow== | |||
C1/682F: A610 LDX $10 (from C1/6814, X = 0, $10 holds $2EAE, $2ECE, $2EEE, or $2F0E) | C1/682F: A610 LDX $10 (from C1/6814, X = 0, $10 holds $2EAE, $2ECE, $2EEE, or $2F0E) | ||
C1/6831: A906 LDA #$06 | C1/6831: A906 LDA #$06 | ||
Line 1,155: | Line 1,093: | ||
C1/683E: D0F5 BNE $6835 (branch if haven't done all 6) | C1/683E: D0F5 BNE $6835 (branch if haven't done all 6) | ||
C1/6840: 60 RTS | C1/6840: 60 RTS | ||
==C1/6841 unknow== | |||
C1/6841: A907 LDA #$07 (from C1/6814, X = 1) | C1/6841: A907 LDA #$07 (from C1/6814, X = 1) | ||
C1/6843: 4C7569 JMP $6975 | C1/6843: 4C7569 JMP $6975 | ||
==C1/6846 unknow== | |||
C1/6846: A518 LDA $18 (from C1/6814, X = 6) | C1/6846: A518 LDA $18 (from C1/6814, X = 6) | ||
C1/6848: AA TAX | C1/6848: AA TAX | ||
C1/6849: BDA661 LDA $61A6,X | C1/6849: BDA661 LDA $61A6,X | ||
C1/684C: 8006 BRA $6854 | C1/684C: 8006 BRA $6854 | ||
==C1/684E unknow== | |||
C1/684E: A518 LDA $18 (from C1/6814, X = 5) | C1/684E: A518 LDA $18 (from C1/6814, X = 5) | ||
C1/6850: AA TAX | C1/6850: AA TAX | ||
Line 1,181: | Line 1,119: | ||
C1/686D: A9FA LDA #$FA (draw tail end of ATB gauge) | C1/686D: A9FA LDA #$FA (draw tail end of ATB gauge) | ||
C1/686F: 4CF366 JMP $66F3 (draw tile A) | C1/686F: 4CF366 JMP $66F3 (draw tile A) | ||
==C1/6872 character subcommand 02 - draw max HP or gauge== | |||
C1/6872: AD2120 LDA $2021 (from C1/6814, X = 2) | C1/6872: AD2120 LDA $2021 (from C1/6814, X = 2) | ||
C1/6875: 2901 AND #$01 (check Gauge on bit?) | C1/6875: 2901 AND #$01 (check Gauge on bit?) | ||
Line 1,202: | Line 1,139: | ||
C1/6895: 854E STA $4E (set text color) | C1/6895: 854E STA $4E (set text color) | ||
C1/6897: 60 RTS | C1/6897: 60 RTS | ||
==C1/6898 unknow== | |||
C1/6898: A9CE LDA #$CE ("~") (from only C1/6877) | C1/6898: A9CE LDA #$CE ("~") (from only C1/6877) | ||
C1/689A: 20F366 JSR $66F3 (draw tile A) | C1/689A: 20F366 JSR $66F3 (draw tile A) | ||
Line 1,209: | Line 1,146: | ||
C1/68A2: A9FF LDA #$FF (a space) | C1/68A2: A9FF LDA #$FF (a space) | ||
C1/68A4: 4CF366 JMP $66F3 (draw tile A) | C1/68A4: 4CF366 JMP $66F3 (draw tile A) | ||
==C1/68A7 unknow== | |||
C1/68A7: A90B LDA #$0B (cur. MP starts at 11th byte) (from C1/6814, X = 3) | C1/68A7: A90B LDA #$0B (cur. MP starts at 11th byte) (from C1/6814, X = 3) | ||
C1/68A9: 4C8469 JMP $6984 | C1/68A9: 4C8469 JMP $6984 | ||
==C1/68AC data for ATB gauge== | |||
C1/68AC: F1F0F0F0 | C1/68AC: F1F0F0F0 | ||
C1/68B0: F2F0F0F0 | C1/68B0: F2F0F0F0 | ||
Line 1,246: | Line 1,182: | ||
C1/6924: F8F8F8F7 | C1/6924: F8F8F8F7 | ||
C1/6928: F8F8F8F8 | C1/6928: F8F8F8F8 | ||
==C1/692C unknow== | |||
C1/692C: A90D LDA #$0D (max MP starts at 13th byte) (from C1/6814, X = 4) | C1/692C: A90D LDA #$0D (max MP starts at 13th byte) (from C1/6814, X = 4) | ||
C1/692E: 4C8469 JMP $6984 (BRA would work here) | C1/692E: 4C8469 JMP $6984 (BRA would work here) | ||
==C1/6931 unknow== | |||
C1/6931: 5A PHY (from only C1/6975) | C1/6931: 5A PHY (from only C1/6975) | ||
C1/6932: A8 TAY | C1/6932: A8 TAY | ||
Line 1,264: | Line 1,200: | ||
C1/6947: 7A PLY | C1/6947: 7A PLY | ||
C1/6948: 60 RTS | C1/6948: 60 RTS | ||
==C1/6949 unknow== | |||
C1/6949: 5A PHY (from only C1/6984) | C1/6949: 5A PHY (from only C1/6984) | ||
C1/694A: A8 TAY | C1/694A: A8 TAY | ||
Line 1,279: | Line 1,215: | ||
C1/695F: 7A PLY | C1/695F: 7A PLY | ||
C1/6960: 60 RTS | C1/6960: 60 RTS | ||
==C1/6961 unknow== | |||
C1/6961: A600 LDX $00 (from only C1/695A) | C1/6961: A600 LDX $00 (from only C1/695A) | ||
C1/6963: B569 LDA $69,X | C1/6963: B569 LDA $69,X | ||
Line 1,291: | Line 1,227: | ||
C1/6972: D0EF BNE $6963 | C1/6972: D0EF BNE $6963 | ||
C1/6974: 60 RTS | C1/6974: 60 RTS | ||
==C1/6975 unknow== | |||
C1/6975: 203169 JSR $6931 (from C1/6843, C1/689F) | C1/6975: 203169 JSR $6931 (from C1/6843, C1/689F) | ||
C1/6978: B569 LDA $69,X | C1/6978: B569 LDA $69,X | ||
Line 1,299: | Line 1,235: | ||
C1/6981: D0F5 BNE $6978 | C1/6981: D0F5 BNE $6978 | ||
C1/6983: 60 RTS | C1/6983: 60 RTS | ||
==C1/6984 unknow== | |||
C1/6984: 204969 JSR $6949 (from C1/68A9, C1/692E) | C1/6984: 204969 JSR $6949 (from C1/68A9, C1/692E) | ||
C1/6987: B56A LDA $6A,X | C1/6987: B56A LDA $6A,X | ||
Line 1,307: | Line 1,243: | ||
C1/6990: D0F5 BNE $6987 | C1/6990: D0F5 BNE $6987 | ||
C1/6992: 60 RTS | C1/6992: 60 RTS | ||
==C1/6993 unknow== | |||
C1/6993: 20EC66 JSR $66EC (from C1/6704, X = B) | C1/6993: 20EC66 JSR $66EC (from C1/6704, X = B) | ||
C1/6996: A90A LDA #$0A | C1/6996: A90A LDA #$0A | ||
Line 1,327: | Line 1,263: | ||
C1/69B5: D0F6 BNE $69AD | C1/69B5: D0F6 BNE $69AD | ||
C1/69B7: 60 RTS | C1/69B7: 60 RTS | ||
==C1/69b8 unknow== | |||
C1/69B8: C220 REP #$20 (from C1/69A6) | C1/69B8: C220 REP #$20 (from C1/69A6) | ||
C1/69BA: 8524 STA $24 | C1/69BA: 8524 STA $24 | ||
Line 1,343: | Line 1,279: | ||
C1/69D5: A9FF LDA #$FF (a space) | C1/69D5: A9FF LDA #$FF (a space) | ||
C1/69D7: 4CF366 JMP $66F3 (draw tile A) | C1/69D7: 4CF366 JMP $66F3 (draw tile A) | ||
==C1/69DA unknow== | |||
C1/69DA: 20EC66 JSR $66EC (from C1/6704, X = C) | C1/69DA: 20EC66 JSR $66EC (from C1/6704, X = C) | ||
C1/69DD: 60 RTS | C1/69DD: 60 RTS | ||
==C1/69DE unknow== | |||
C1/69DE: 20EC66 JSR $66EC (from C1/6704, X = D) | C1/69DE: 20EC66 JSR $66EC (from C1/6704, X = D) | ||
C1/69E1: B248 LDA ($48) | C1/69E1: B248 LDA ($48) | ||
Line 1,353: | Line 1,289: | ||
C1/69E7: A907 LDA #$07 | C1/69E7: A907 LDA #$07 | ||
C1/69E9: 4C3B6B JMP $6B3B | C1/69E9: 4C3B6B JMP $6B3B | ||
C1/69EC: EB XBA (from C1/69E5) | C1/69EC: EB XBA (from C1/69E5) | ||
C1/69ED: A907 LDA #$07 (7 = battle command name length) | C1/69ED: A907 LDA #$07 (7 = battle command name length) | ||
Line 1,369: | Line 1,305: | ||
C1/6A08: D0F4 BNE $69FE | C1/6A08: D0F4 BNE $69FE | ||
C1/6A0A: 60 RTS | C1/6A0A: 60 RTS | ||
==C1/6A0B unknow== | |||
C1/6A0B: 20EC66 JSR $66EC (from C1/6704, X = 10) | C1/6A0B: 20EC66 JSR $66EC (from C1/6704, X = 10) | ||
C1/6A0E: B248 LDA ($48) | C1/6A0E: B248 LDA ($48) | ||
Line 1,376: | Line 1,312: | ||
C1/6A14: A90A LDA #$0A | C1/6A14: A90A LDA #$0A | ||
C1/6A16: 4C3B6B JMP $6B3B | C1/6A16: 4C3B6B JMP $6B3B | ||
C1/6A19: EB XBA (from C1/6A12) | C1/6A19: EB XBA (from C1/6A12) | ||
C1/6A1A: A90A LDA #$0A (10 = length of battle status text) | C1/6A1A: A90A LDA #$0A (10 = length of battle status text) | ||
Line 1,392: | Line 1,328: | ||
C1/6A35: D0F4 BNE $6A2B | C1/6A35: D0F4 BNE $6A2B | ||
C1/6A37: 60 RTS | C1/6A37: 60 RTS | ||
==C1/6A38 unknow== | |||
C1/6A38: 20EC66 JSR $66EC (from C1/6704, X = 12) | C1/6A38: 20EC66 JSR $66EC (from C1/6704, X = 12) | ||
C1/6A3B: B248 LDA ($48) | C1/6A3B: B248 LDA ($48) | ||
Line 1,399: | Line 1,335: | ||
C1/6A41: A907 LDA #$07 | C1/6A41: A907 LDA #$07 | ||
C1/6A43: 4C3B6B JMP $6B3B | C1/6A43: 4C3B6B JMP $6B3B | ||
C1/6A46: EB XBA (from C1/6A3F) | C1/6A46: EB XBA (from C1/6A3F) | ||
C1/6A47: A90D LDA #$0D (13 = item name length) | C1/6A47: A90D LDA #$0D (13 = item name length) | ||
Line 1,429: | Line 1,365: | ||
C1/6A7F: D0F4 BNE $6A75 | C1/6A7F: D0F4 BNE $6A75 | ||
C1/6A81: 60 RTS | C1/6A81: 60 RTS | ||
==C1/6A82 unknow== | |||
C1/6A82: 20EC66 JSR $66EC (from C1/6704, X = E) | C1/6A82: 20EC66 JSR $66EC (from C1/6704, X = E) | ||
C1/6A85: B248 LDA ($48) | C1/6A85: B248 LDA ($48) | ||
Line 1,436: | Line 1,372: | ||
C1/6A8B: A90D LDA #$0D | C1/6A8B: A90D LDA #$0D | ||
C1/6A8D: 4C3B6B JMP $6B3B | C1/6A8D: 4C3B6B JMP $6B3B | ||
C1/6A90: EB XBA (from C1/6A89) | C1/6A90: EB XBA (from C1/6A89) | ||
C1/6A91: A90D LDA #$0D (13 = item name length) | C1/6A91: A90D LDA #$0D (13 = item name length) | ||
Line 1,452: | Line 1,388: | ||
C1/6AAC: D0F4 BNE $6AA2 | C1/6AAC: D0F4 BNE $6AA2 | ||
C1/6AAE: 60 RTS | C1/6AAE: 60 RTS | ||
==C1/6AAF unknow== | |||
C1/6AAF: 20C26A JSR $6AC2 (from C1/6704, X = 11) | C1/6AAF: 20C26A JSR $6AC2 (from C1/6704, X = 11) | ||
C1/6AB2: B248 LDA ($48) | C1/6AB2: B248 LDA ($48) | ||
Line 1,460: | Line 1,396: | ||
C1/6ABA: 9001 BCC $6ABD | C1/6ABA: 9001 BCC $6ABD | ||
C1/6ABC: 60 RTS | C1/6ABC: 60 RTS | ||
C1/6ABD: A903 LDA #$03 (from C1/6AB6, C1/6ABA) | C1/6ABD: A903 LDA #$03 (from C1/6AB6, C1/6ABA) | ||
C1/6ABF: 4C3B6B JMP $6B3B | C1/6ABF: 4C3B6B JMP $6B3B | ||
==C1/6AC2 unknow== | |||
C1/6AC2: 20EC66 JSR $66EC (from C1/6704, X = F) | C1/6AC2: 20EC66 JSR $66EC (from C1/6704, X = F) | ||
C1/6AC5: B248 LDA ($48) | C1/6AC5: B248 LDA ($48) | ||
Line 1,470: | Line 1,406: | ||
C1/6ACB: A907 LDA #$07 | C1/6ACB: A907 LDA #$07 | ||
C1/6ACD: 4C3B6B JMP $6B3B | C1/6ACD: 4C3B6B JMP $6B3B | ||
C1/6AD0: C936 CMP #$36 (from C1/6AC9) | C1/6AD0: C936 CMP #$36 (from C1/6AC9) | ||
C1/6AD2: 9048 BCC $6B1C | C1/6AD2: 9048 BCC $6B1C | ||
Line 1,492: | Line 1,428: | ||
C1/6AF7: D0F4 BNE $6AED | C1/6AF7: D0F4 BNE $6AED | ||
C1/6AF9: 60 RTS | C1/6AF9: 60 RTS | ||
==C1/6AFA unknow== | |||
C1/6AFA: 38 SEC (from C1/6AD6) | C1/6AFA: 38 SEC (from C1/6AD6) | ||
C1/6AFB: E936 SBC #$36 | C1/6AFB: E936 SBC #$36 | ||
Line 1,510: | Line 1,446: | ||
C1/6B19: D0F4 BNE $6B0F | C1/6B19: D0F4 BNE $6B0F | ||
C1/6B1B: 60 RTS | C1/6B1B: 60 RTS | ||
==C1/6B1C unknow== | |||
C1/6B1C: EB XBA (from C1/6AD2) | C1/6B1C: EB XBA (from C1/6AD2) | ||
C1/6B1D: A907 LDA #$07 | C1/6B1D: A907 LDA #$07 | ||
Line 1,526: | Line 1,462: | ||
C1/6B38: D0F4 BNE $6B2E | C1/6B38: D0F4 BNE $6B2E | ||
C1/6B3A: 60 RTS | C1/6B3A: 60 RTS | ||
==C1/6B3B unknow== | |||
C1/6B3B: 851A STA $1A (from various, above) | C1/6B3B: 851A STA $1A (from various, above) | ||
C1/6B3D: A9FF LDA #$FF | C1/6B3D: A9FF LDA #$FF | ||
Line 1,533: | Line 1,469: | ||
C1/6B44: D0F7 BNE $6B3D | C1/6B44: D0F7 BNE $6B3D | ||
C1/6B46: 60 RTS | C1/6B46: 60 RTS | ||
==C1/6B47 unknow== | |||
C1/6B47: A400 LDY $00 | C1/6B47: A400 LDY $00 | ||
C1/6B49: 7B TDC | C1/6B49: 7B TDC | ||
Line 1,545: | Line 1,481: | ||
C1/6B5C: D0EB BNE $6B49 | C1/6B5C: D0EB BNE $6B49 | ||
C1/6B5E: 60 RTS | C1/6B5E: 60 RTS | ||
==C1/6B5F unknow== | |||
C1/6B5F: 48 PHA | C1/6B5F: 48 PHA | ||
C1/6B60: 18 CLC | C1/6B60: 18 CLC | ||
Line 1,555: | Line 1,491: | ||
C1/6B6C: 997D5F STA $5F7D,Y | C1/6B6C: 997D5F STA $5F7D,Y | ||
C1/6B6F: 60 RTS | C1/6B6F: 60 RTS | ||
==C1/6B70 unknow== | |||
C1/6B70: 48 PHA | C1/6B70: 48 PHA | ||
C1/6B71: 18 CLC | C1/6B71: 18 CLC | ||
Line 1,565: | Line 1,501: | ||
C1/6B7D: 999D5F STA $5F9D,Y | C1/6B7D: 999D5F STA $5F9D,Y | ||
C1/6B80: 60 RTS | C1/6B80: 60 RTS | ||
==C1/6B81 unknow== | |||
C1/6B81: B98D5F LDA $5F8D,Y | C1/6B81: B98D5F LDA $5F8D,Y | ||
C1/6B84: 0A ASL A | C1/6B84: 0A ASL A | ||
Line 1,571: | Line 1,507: | ||
C1/6B87: B96D5F LDA $5F6D,Y | C1/6B87: B96D5F LDA $5F6D,Y | ||
C1/6B8A: 4C996B JMP $6B99 (BRA is better) | C1/6B8A: 4C996B JMP $6B99 (BRA is better) | ||
==C1/6B8D unknow== | |||
C1/6B8D: B99D5F LDA $5F9D,Y | C1/6B8D: B99D5F LDA $5F9D,Y | ||
C1/6B90: 0A ASL A | C1/6B90: 0A ASL A | ||
Line 1,577: | Line 1,513: | ||
C1/6B93: B97D5F LDA $5F7D,Y | C1/6B93: B97D5F LDA $5F7D,Y | ||
C1/6B96: 4C996B JMP $6B99 (pointless) | C1/6B96: 4C996B JMP $6B99 (pointless) | ||
==C1/6B99 unknow== | |||
C1/6B99: AA TAX | C1/6B99: AA TAX | ||
C1/6B9A: BF6DFEC2 LDA $C2FE6D,X | C1/6B9A: BF6DFEC2 LDA $C2FE6D,X (Load value from sine table) | ||
C1/6B9E: 101A BPL $6BBA | C1/6B9E: 101A BPL $6BBA | ||
C1/6BA0: 49FF EOR #$FF | C1/6BA0: 49FF EOR #$FF | ||
Line 1,592: | Line 1,528: | ||
C1/6BB8: 1A INC A | C1/6BB8: 1A INC A | ||
C1/6BB9: 60 RTS | C1/6BB9: 60 RTS | ||
==C1/6BBA unknow== | |||
C1/6BBA: 8F024200 STA $004202 | C1/6BBA: 8F024200 STA $004202 | ||
C1/6BBE: A524 LDA $24 | C1/6BBE: A524 LDA $24 | ||
Line 1,601: | Line 1,537: | ||
C1/6BCA: AF174200 LDA $004217 | C1/6BCA: AF174200 LDA $004217 | ||
C1/6BCE: 60 RTS | C1/6BCE: 60 RTS | ||
==C1/6BCF unknow== | |||
C1/6BCF: E230 SEP #$30 | C1/6BCF: E230 SEP #$30 | ||
C1/6BD1: 8B PHB | C1/6BD1: 8B PHB | ||
Line 1,628: | Line 1,564: | ||
C1/6C00: AB PLB | C1/6C00: AB PLB | ||
C1/6C01: 60 RTS | C1/6C01: 60 RTS | ||
==C1/6C02 unknow== | |||
C1/6C02: C210 REP #$10 | C1/6C02: C210 REP #$10 | ||
C1/6C04: A516 LDA $16 | C1/6C04: A516 LDA $16 | ||
Line 1,658: | Line 1,594: | ||
C1/6C3D: 1A INC A | C1/6C3D: 1A INC A | ||
C1/6C3E: 60 RTS | C1/6C3E: 60 RTS | ||
==C1/6C3F unknow== | |||
C1/6C3F: E210 SEP #$10 | C1/6C3F: E210 SEP #$10 | ||
C1/6C41: A624 LDX $24 | C1/6C41: A624 LDX $24 | ||
Line 1,679: | Line 1,615: | ||
C1/6C64: A528 LDA $28 | C1/6C64: A528 LDA $28 | ||
C1/6C66: 60 RTS | C1/6C66: 60 RTS | ||
==C1/6C67 unknow== | |||
C1/6C67: C220 REP #$20 | C1/6C67: C220 REP #$20 | ||
C1/6C69: 29FF00 AND #$00FF | C1/6C69: 29FF00 AND #$00FF | ||
Line 1,696: | Line 1,632: | ||
C1/6C85: E220 SEP #$20 | C1/6C85: E220 SEP #$20 | ||
C1/6C87: 60 RTS | C1/6C87: 60 RTS | ||
==C1/6C88 unknow== | |||
C1/6C88: 8522 STA $22 (Animation Script pointer) | C1/6C88: 8522 STA $22 (Animation Script pointer) | ||
C1/6C8A: 20CF6B JSR $6BCF | C1/6C8A: 20CF6B JSR $6BCF | ||
Line 1,702: | Line 1,638: | ||
C1/6C8E: E220 SEP #$20 | C1/6C8E: E220 SEP #$20 | ||
C1/6C90: 60 RTS | C1/6C90: 60 RTS | ||
==C1/6C91 unknow== | |||
C1/6C91: A57D LDA $7D | C1/6C91: A57D LDA $7D | ||
C1/6C93: 38 SEC | C1/6C93: 38 SEC | ||
Line 1,760: | Line 1,696: | ||
C1/6CF5: 8585 STA $85 | C1/6CF5: 8585 STA $85 | ||
C1/6CF7: 60 RTS | C1/6CF7: 60 RTS | ||
C1/6CF8: A980 LDA #$80 | C1/6CF8: A980 LDA #$80 | ||
C1/6CFA: 38 SEC | C1/6CFA: 38 SEC | ||
Line 1,766: | Line 1,702: | ||
C1/6CFD: 8585 STA $85 | C1/6CFD: 8585 STA $85 | ||
C1/6CFF: 60 RTS | C1/6CFF: 60 RTS | ||
==C1/6D00 unknow== | |||
C1/6D00: A584 LDA $84 | C1/6D00: A584 LDA $84 | ||
C1/6D02: 3007 BMI $6D0B | C1/6D02: 3007 BMI $6D0B | ||
Line 1,774: | Line 1,710: | ||
C1/6D09: 8585 STA $85 | C1/6D09: 8585 STA $85 | ||
C1/6D0B: 60 RTS | C1/6D0B: 60 RTS | ||
==C1/6D0C unknow== | |||
C1/6D0C: A245CD LDX #$CD45 | C1/6D0C: A245CD LDX #$CD45 | ||
C1/6D0F: 86F3 STX $F3 | C1/6D0F: 86F3 STX $F3 | ||
Line 1,812: | Line 1,748: | ||
C1/6D53: E220 SEP #$20 | C1/6D53: E220 SEP #$20 | ||
C1/6D55: 60 RTS | C1/6D55: 60 RTS | ||
==C1/6D56 unknow== | |||
C1/6D56: AD807B LDA $7B80 | C1/6D56: AD807B LDA $7B80 | ||
C1/6D59: 2903 AND #$03 | C1/6D59: 2903 AND #$03 | ||
Line 1,820: | Line 1,756: | ||
C1/6D5E: A8 TAY | C1/6D5E: A8 TAY | ||
C1/6D5F: 60 RTS | C1/6D5F: 60 RTS | ||
==C1/6D60 data== | |||
C1/6D60: 0100 | C1/6D60: 0100 | ||
C1/6D62: FFFFFF00 | C1/6D62: FFFFFF00 | ||
Line 1,829: | Line 1,763: | ||
C1/6D6A: 01FF | C1/6D6A: 01FF | ||
C1/6D6C: FF000100 | C1/6D6C: FF000100 | ||
==C1/6D70 unknow== | |||
C1/6D70: 2903 AND #$03 | C1/6D70: 2903 AND #$03 | ||
C1/6D72: 48 PHA | C1/6D72: 48 PHA | ||
Line 1,845: | Line 1,779: | ||
C1/6D8B: 38 SEC | C1/6D8B: 38 SEC | ||
C1/6D8C: 60 RTS | C1/6D8C: 60 RTS | ||
C1/6D8D: 68 PLA | C1/6D8D: 68 PLA | ||
C1/6D8E: 18 CLC | C1/6D8E: 18 CLC | ||
C1/6D8F: 60 RTS | C1/6D8F: 60 RTS | ||
==C1/6D90 unknow== | |||
C1/6D90: ADCB7B LDA $7BCB (from C1/5529, X = 38) | C1/6D90: ADCB7B LDA $7BCB (from C1/5529, X = 38) | ||
C1/6D93: F003 BEQ $6D98 | C1/6D93: F003 BEQ $6D98 | ||
C1/6D95: 4C576F JMP $6F57 | C1/6D95: 4C576F JMP $6F57 | ||
C1/6D98: AD847A LDA $7A84 (load character targeting) | C1/6D98: AD847A LDA $7A84 (load character targeting) | ||
C1/6D9B: 2910 AND #$10 (is auto confirm set?) | C1/6D9B: 2910 AND #$10 (is auto confirm set?) | ||
C1/6D9E: F003 BEQ $6DA2 (branch if not) | C1/6D9E: F003 BEQ $6DA2 (branch if not) | ||
C1/6DA0: 4C256F JMP $6F25 | C1/6DA0: 4C256F JMP $6F25 | ||
C1/6DA2: AD1D20 LDA $201D (Load valid character targets) | C1/6DA2: AD1D20 LDA $201D (Load valid character targets) | ||
C1/6DA5: 2DAC61 AND $61AC | C1/6DA5: 2DAC61 AND $61AC | ||
Line 1,869: | Line 1,803: | ||
C1/6DB8: D003 BNE $6DBD | C1/6DB8: D003 BNE $6DBD | ||
C1/6DBA: 4C576F JMP $6F57 | C1/6DBA: 4C576F JMP $6F57 | ||
C1/6DBD: AD847A LDA $7A84 (load character targeting) | C1/6DBD: AD847A LDA $7A84 (load character targeting) | ||
C1/6DC0: 8536 STA $36 (save it for now) | C1/6DC0: 8536 STA $36 (save it for now) | ||
Line 1,878: | Line 1,812: | ||
C1/6DCC: D06F BNE $6E3D | C1/6DCC: D06F BNE $6E3D | ||
C1/6DCE: 4C256F JMP $6F25 | C1/6DCE: 4C256F JMP $6F25 | ||
C1/6DD1: 4C406E JMP $6E40 | C1/6DD1: 4C406E JMP $6E40 | ||
C1/6DD4: ADB162 LDA $62B1 | C1/6DD4: ADB162 LDA $62B1 | ||
C1/6DD7: F01D BEQ $6DF6 | C1/6DD7: F01D BEQ $6DF6 | ||
Line 1,895: | Line 1,829: | ||
C1/6DF0: 8D7F7B STA $7B7F | C1/6DF0: 8D7F7B STA $7B7F | ||
C1/6DF3: 4C696F JMP $6F69 | C1/6DF3: 4C696F JMP $6F69 | ||
C1/6DF6: A50E LDA $0E | C1/6DF6: A50E LDA $0E | ||
C1/6DF8: 2903 AND #$03 | C1/6DF8: 2903 AND #$03 | ||
Line 1,916: | Line 1,850: | ||
C1/6E23: 9C7E7B STZ $7B7E | C1/6E23: 9C7E7B STZ $7B7E | ||
C1/6E26: 4C056F JMP $6F05 | C1/6E26: 4C056F JMP $6F05 | ||
==C1/6E29 unknow== | |||
C1/6E29: ADB362 LDA $62B3 | C1/6E29: ADB362 LDA $62B3 | ||
C1/6E2C: 2907 AND #$07 | C1/6E2C: 2907 AND #$07 | ||
Line 1,926: | Line 1,860: | ||
C1/6E3A: 9C7D7B STZ $7B7D | C1/6E3A: 9C7D7B STZ $7B7D | ||
C1/6E3D: 4C056F JMP $6F05 | C1/6E3D: 4C056F JMP $6F05 | ||
==C1/6E40 unknow== | |||
C1/6E40: A536 LDA $36 (load saved character targeting) | C1/6E40: A536 LDA $36 (load saved character targeting) | ||
C1/6E42: 290D AND #$0D (isolate some bits) | C1/6E42: 290D AND #$0D (isolate some bits) | ||
Line 1,984: | Line 1,918: | ||
C1/6EB9: 8D7F7B STA $7B7F | C1/6EB9: 8D7F7B STA $7B7F | ||
C1/6EBC: 4C056F JMP $6F05 (BRA fool!) | C1/6EBC: 4C056F JMP $6F05 (BRA fool!) | ||
==C1/6EBF unknow== | |||
C1/6EBF: ADCE7A LDA $7ACE | C1/6EBF: ADCE7A LDA $7ACE | ||
C1/6EC2: AA TAX | C1/6EC2: AA TAX | ||
Line 1,993: | Line 1,927: | ||
C1/6ECD: 8D7F7B STA $7B7F | C1/6ECD: 8D7F7B STA $7B7F | ||
C1/6ED0: 4C056F JMP $6F05 (BRA fool!) | C1/6ED0: 4C056F JMP $6F05 (BRA fool!) | ||
==C1/6ED3 unknow== | |||
C1/6ED3: A505 LDA $05 (load shared controller byte) | C1/6ED3: A505 LDA $05 (load shared controller byte) | ||
C1/6ED5: 290F AND #$0F (isolate directions) | C1/6ED5: 290F AND #$0F (isolate directions) | ||
Line 2,003: | Line 1,937: | ||
C1/6EE1: 208473 JSR $7384 | C1/6EE1: 208473 JSR $7384 | ||
C1/6EE4: 4C056F JMP $6F05 (BRA fool!) | C1/6EE4: 4C056F JMP $6F05 (BRA fool!) | ||
C1/6EE7: C904 CMP #$04 (is anyone pressing only down?) | C1/6EE7: C904 CMP #$04 (is anyone pressing only down?) | ||
C1/6EE9: D006 BNE $6EF1 (branch if not) | C1/6EE9: D006 BNE $6EF1 (branch if not) | ||
C1/6EEB: 20D673 JSR $73D6 | C1/6EEB: 20D673 JSR $73D6 | ||
C1/6EEE: 4C056F JMP $6F05 (BRA fool!) | C1/6EEE: 4C056F JMP $6F05 (BRA fool!) | ||
C1/6EF1: C902 CMP #$02 (is anyone pressing only left?) | C1/6EF1: C902 CMP #$02 (is anyone pressing only left?) | ||
C1/6EF3: D006 BNE $6EFB (branch if not) | C1/6EF3: D006 BNE $6EFB (branch if not) | ||
C1/6EF5: 203377 JSR $7733 | C1/6EF5: 203377 JSR $7733 | ||
C1/6EF8: 4C056F JMP $6F05 | C1/6EF8: 4C056F JMP $6F05 | ||
C1/6EFB: C901 CMP #$01 (is anyone pressing only right?) | C1/6EFB: C901 CMP #$01 (is anyone pressing only right?) | ||
C1/6EFD: D006 BNE $6F05 (branch if not) | C1/6EFD: D006 BNE $6F05 (branch if not) | ||
C1/6EFF: 204A77 JSR $774A | C1/6EFF: 204A77 JSR $774A | ||
C1/6F02: 4C056F JMP $6F05 (...) | C1/6F02: 4C056F JMP $6F05 (...) | ||
C1/6F05: A504 LDA $04 (load shared controller byte) | C1/6F05: A504 LDA $04 (load shared controller byte) | ||
C1/6F07: 1043 BPL $6F4C (branch if nobody is pressing A) | C1/6F07: 1043 BPL $6F4C (branch if nobody is pressing A) | ||
Line 2,045: | Line 1,979: | ||
C1/6F41: EEE97A INC $7AE9 | C1/6F41: EEE97A INC $7AE9 | ||
C1/6F44: 60 RTS | C1/6F44: 60 RTS | ||
C1/6F45: EECB7B INC $7BCB | C1/6F45: EECB7B INC $7BCB | ||
C1/6F48: EE807B INC $7B80 | C1/6F48: EE807B INC $7B80 | ||
C1/6F4B: 60 RTS | C1/6F4B: 60 RTS | ||
==C1/6F46 unknow== | |||
C1/6F4C: A509 LDA $09 (load controller 1) | C1/6F4C: A509 LDA $09 (load controller 1) | ||
C1/6F4E: 1019 BPL $6F69 (branch if not pressing B) | C1/6F4E: 1019 BPL $6F69 (branch if not pressing B) | ||
Line 2,062: | Line 1,996: | ||
C1/6F66: 9CE97A STZ $7AE9 | C1/6F66: 9CE97A STZ $7AE9 | ||
C1/6F69: 60 RTS | C1/6F69: 60 RTS | ||
==C1/6F6A data of keyboard keys== | |||
C1/6F6A: FFFF (Nothing) | C1/6F6A: FFFF (Nothing) | ||
C1/6F6C: 8000 (A) | C1/6F6C: 8000 (A) | ||
Line 2,079: | Line 2,012: | ||
C1/6F84: 000A (Up-Left) | C1/6F84: 000A (Up-Left) | ||
C1/6F86: 0002 (Left) | C1/6F86: 0002 (Left) | ||
==C1/6F88 data for blitz unknow== | |||
C1/6F88: 00 (Pummel) | C1/6F88: 00 (Pummel) | ||
C1/6F89: 0C (Aura Bolt) | C1/6F89: 0C (Aura Bolt) | ||
Line 2,088: | Line 2,021: | ||
C1/6F8E: 48 (Spiraler) | C1/6F8E: 48 (Spiraler) | ||
C1/6F8F: 54 (Bum Rush) | C1/6F8F: 54 (Bum Rush) | ||
==C1/6F90 unknow== | |||
C1/6F90: 6436 STZ $36 (from only C1/7045) | C1/6F90: 6436 STZ $36 (from only C1/7045) | ||
C1/6F92: A536 LDA $36 | C1/6F92: A536 LDA $36 | ||
Line 2,094: | Line 2,027: | ||
C1/6F95: BF886FC1 LDA $C16F88,X (Load offset into the blitz button structure for blitz) | C1/6F95: BF886FC1 LDA $C16F88,X (Load offset into the blitz button structure for blitz) | ||
C1/6F99: AA TAX | C1/6F99: AA TAX | ||
C1/6F9A: BF4B7AC4 LDA $C47A4B,X (Load the button presses for the blitz | C1/6F9A: BF4B7AC4 LDA $C47A4B,X (Load the button presses for the blitz) | ||
C1/6F9E: 3A DEC A | C1/6F9E: 3A DEC A | ||
C1/6F9F: 3A DEC A | C1/6F9F: 3A DEC A | ||
Line 2,102: | Line 2,035: | ||
C1/6FA5: A8 TAY | C1/6FA5: A8 TAY | ||
C1/6FA6: BF407AC4 LDA $C47A40,X (Load Blitz specification.) | C1/6FA6: BF407AC4 LDA $C47A40,X (Load Blitz specification.) | ||
00 = Nothing, 01 = A, 02 = B, 03 = X, 04 = Y, 05 = L, 06 = R, | |||
07 = Down-Left, 08 = Down, 09 = Down-Right, 0A = Right, | |||
0B = Up-Right, 0C = Up, 0D = Up-Left, 0E = Left ) | |||
C1/6FAA: 29FF00 AND #$00FF (Filter out to a single byteA) | |||
C1/6FAA: 29FF00 AND #$00FF (Filter out to a single | |||
C1/6FAD: 0A ASL A (Double it, to use as a pointer into data table) | C1/6FAD: 0A ASL A (Double it, to use as a pointer into data table) | ||
C1/6FAE: DA PHX | C1/6FAE: DA PHX | ||
Line 2,116: | Line 2,048: | ||
C1/6FB9: C8 INY | C1/6FB9: C8 INY | ||
C1/6FBA: E8 INX | C1/6FBA: E8 INX | ||
C1/6FBB: C01400 CPY #$0014 | C1/6FBB: C01400 CPY #$0014 | ||
C1/6FBD: D0E6 BNE $6FA6 | C1/6FBD: D0E6 BNE $6FA6 | ||
C1/6FBF: 7B TDC (Clear A) | C1/6FBF: 7B TDC (Clear A) | ||
Line 2,124: | Line 2,055: | ||
C1/6FC5: 852C STA $2C (Store to $2C) | C1/6FC5: 852C STA $2C (Store to $2C) | ||
C1/6FC7: B9FEE9 LDA $E9FE,Y (Load the actual-pressed button) | C1/6FC7: B9FEE9 LDA $E9FE,Y (Load the actual-pressed button) | ||
C1/6FCA: 252C AND $2C | C1/6FCA: 252C AND $2C | ||
C1/6FCC: F01C BEQ $6FEA | C1/6FCC: F01C BEQ $6FEA | ||
C1/6FCE: C8 INY | C1/6FCE: C8 INY | ||
C1/6FCF: C8 INY | C1/6FCF: C8 INY | ||
C1/6FD0: C438 CPY $38 ( | C1/6FD0: C438 CPY $38 (continue until only one button press left) | ||
C1/6FD2: D0EE BNE $6FC2 | C1/6FD2: D0EE BNE $6FC2 (Branch back to start of loop if not the last button yet) | ||
C1/6FD4: B9FCE9 LDA $E9FC,Y | C1/6FD4: B9FCE9 LDA $E9FC,Y (Load the actual-pressed button?) | ||
C1/6FD7: 298000 AND #$0080 (Filter out the bit for "A") | C1/6FD7: 298000 AND #$0080 (Filter out the bit for "A") | ||
C1/6FDA: D008 BNE $6FE4 (Branch if it is set, i.e. you confirmed) | C1/6FDA: D008 BNE $6FE4 (Branch if it is set, i.e. you confirmed) | ||
C1/6FDC: B9FEE9 LDA $E9FE,Y | C1/6FDC: B9FEE9 LDA $E9FE,Y (Load the actual-pressed button?) | ||
C1/6FDF: 298000 AND #$0080 (Filter out the bit for "A") | C1/6FDF: 298000 AND #$0080 (Filter out the bit for "A") | ||
C1/6FE2: F006 BEQ $6FEA (If it's clear, branch. You didn't have a match) | C1/6FE2: F006 BEQ $6FEA (If it's clear, branch. You didn't have a match) | ||
Line 2,142: | Line 2,071: | ||
C1/6FE7: A536 LDA $36 (Return number for the successful blitz) | C1/6FE7: A536 LDA $36 (Return number for the successful blitz) | ||
C1/6FE9: 60 RTS | C1/6FE9: 60 RTS | ||
==C1/EA wrong blitz input== | |||
C1/6FEA: 7B TDC (from C1/6FCC, C1/6FE2) | C1/6FEA: 7B TDC (from C1/6FCC, C1/6FE2) | ||
C1/6FEB: E220 SEP #$20 (8 bit accum./memory) | C1/6FEB: E220 SEP #$20 (8 bit accum./memory) | ||
Line 2,152: | Line 2,080: | ||
C1/6FF5: A9FF LDA #$FF (Return FF, for failure) | C1/6FF5: A9FF LDA #$FF (Return FF, for failure) | ||
C1/6FF7: 60 RTS | C1/6FF7: 60 RTS | ||
==C1/6FF8 unknow== | |||
C1/6FF8: ADCB7B LDA $7BCB (from C1/5529, X = 3D) | C1/6FF8: ADCB7B LDA $7BCB (from C1/5529, X = 3D) | ||
C1/6FFB: F003 BEQ $7000 | C1/6FFB: F003 BEQ $7000 | ||
C1/6FFD: 4C8370 JMP $7083 | C1/6FFD: 4C8370 JMP $7083 |
Revision as of 09:24, 24 November 2013
C1/6019 display spell name
C1/6019: EB XBA (from only C1/5FBF) C1/601A: A907 LDA #$07 (7 = spell name length) C1/601C: 8510 STA $10 C1/601E: 8D6D61 STA $616D C1/6021: 20CA18 JSR $18CA (half multiplier) C1/6024: C220 REP #$20 C1/6026: AF164200 LDA $004216 C1/602A: AA TAX C1/602B: 7B TDC C1/602C: E220 SEP #$20 C1/602E: CE6D61 DEC $616D C1/6031: BF68F5E6 LDA $E6F568,X (Load Spell name X) C1/6035: C9FF CMP #$FF C1/6037: F009 BEQ $6042 C1/6039: 201161 JSR $6111 C1/603C: E8 INX C1/603D: CE6D61 DEC $616D C1/6040: D0EF BNE $6031 C1/6042: 60 RTS
C1/6043 unknow
C1/6043: 20EC66 JSR $66EC (from C1/5E51, X = E) C1/6046: A748 LDA [$48] C1/6048: C9FF CMP #$FF C1/604A: D005 BNE $6051 C1/604C: A90D LDA #$0D C1/604E: 4CA85F JMP $5FA8
C1/6051 display item name
C1/6051: EB XBA (from C1/604A) C1/6052: A90D LDA #$0D (13 = item name length) C1/6054: 8510 STA $10 C1/6056: 8D6D61 STA $616D C1/6059: 20CA18 JSR $18CA (half multiplier) C1/605C: C220 REP #$20 C1/605E: AF164200 LDA $004216 C1/6062: AA TAX C1/6063: 7B TDC C1/6064: E220 SEP #$20 C1/6066: CE6D61 DEC $616D C1/6069: BF01B3D2 LDA $D2B301,X (Load item name X) C1/606D: C9FF CMP #$FF C1/606F: F009 BEQ $607A C1/6071: 201161 JSR $6111 C1/6074: E8 INX C1/6075: CE6D61 DEC $616D C1/6078: D0EF BNE $6069 C1/607A: 60 RTS
C1/607B unknow
C1/607B: A54B LDA $4B (from C1/5E51, X = 4) C1/607D: 4901 EOR #$01 C1/607F: 854B STA $4B C1/6081: 60 RTS
C1/6082 unknow
Data C1/6082: 00 C1/6083: 5A C1/6084: 00 C1/6085: 5C C1/6086: 00 C1/6087: 5E C1/6088: 00 C1/6089: 58 C1/608A: 00 C1/608B: 58
C1/608C unknow
C1/608C: 647A STZ $7A (from C1/5E51, X = 1) C1/608E: ADC3E9 LDA $E9C3 C1/6091: 1045 BPL $60D8 C1/6093: 20BB5D JSR $5DBB C1/6096: ADC1E9 LDA $E9C1 C1/6099: C904 CMP #$04 C1/609B: D003 BNE $60A0 C1/609D: 9CC1E9 STZ $E9C1 C1/60A0: ADC1E9 LDA $E9C1 C1/60A3: 2903 AND #$03 C1/60A5: 0A ASL A C1/60A6: AA TAX C1/60A7: C220 REP #$20 C1/60A9: BF8260C1 LDA $C16082,X C1/60AD: 8DBFE9 STA $E9BF C1/60B0: 7B TDC C1/60B1: E220 SEP #$20 C1/60B3: EEC1E9 INC $E9C1 C1/60B6: 20025E JSR $5E02 C1/60B9: ADC2E9 LDA $E9C2 C1/60BC: C902 CMP #$02 C1/60BE: D014 BNE $60D4 C1/60C0: A904 LDA #$04 C1/60C2: 8DA87B STA $7BA8 C1/60C5: A93E LDA #$3E C1/60C7: 8DC27B STA $7BC2 (queue up to execute at C1/5B4C) C1/60CA: ADC27B LDA $7BC2 C1/60CD: F008 BEQ $60D7 C1/60CF: 201C5E JSR $5E1C C1/60D2: 80F6 BRA $60CA C1/60D4: EEC2E9 INC $E9C2 C1/60D7: 60 RTS
C1/60D8 unknow
C1/60D8: A910 LDA #$10 (from C1/6091) C1/60DA: 48 PHA C1/60DB: 7B TDC C1/60DC: AA TAX C1/60DD: C220 REP #$20 C1/60DF: A92000 LDA #$0020 C1/60E2: 8524 STA $24 C1/60E4: A90F00 LDA #$000F C1/60E7: 8522 STA $22 C1/60E9: BD41E3 LDA $E341,X C1/60EC: 9D3FE3 STA $E33F,X C1/60EF: E8 INX C1/60F0: E8 INX C1/60F1: C622 DEC $22 C1/60F3: D0F4 BNE $60E9 C1/60F5: 9E3FE3 STZ $E33F,X C1/60F8: E8 INX C1/60F9: E8 INX C1/60FA: C624 DEC $24 C1/60FC: D0E6 BNE $60E4 C1/60FE: 7B TDC C1/60FF: E220 SEP #$20 C1/6101: 20025E JSR $5E02 C1/6104: 68 PLA C1/6105: 3A DEC A C1/6106: D0D2 BNE $60DA C1/6108: 60 RTS
C1/6109 unknow
Data C1/6109: 04 (from C1/61CB) C1/610A: 00 C1/610B: 03 C1/610C: 00 C1/610D: 02 C1/610E: 00 C1/610F: 01 C1/6110: 00
C1/6111 unknow
C1/6111: 8DF0EC STA $ECF0 C1/6114: 38 SEC C1/6115: E980 SBC #$80 C1/6117: 5A PHY C1/6118: DA PHX C1/6119: 8522 STA $22 C1/611B: A916 LDA #$16 C1/611D: 8524 STA $24 C1/611F: 20D918 JSR $18D9 C1/6122: A54B LDA $4B C1/6124: F003 BEQ $6129 C1/6126: 4C5662 JMP $6256
C1/6129 unknow
C1/6129: A57A LDA $7A (from C1/6124) C1/612B: 29F8 AND #$F8 C1/612D: C220 REP #$20 C1/612F: 0A ASL A C1/6130: 0A ASL A C1/6131: A8 TAY C1/6132: A90B00 LDA #$000B C1/6135: 851C STA $1C C1/6137: A57A LDA $7A C1/6139: 290400 AND #$0004 C1/613C: D003 BNE $6141 C1/613E: 4CC461 JMP $61C4
C1/6141: A57A LDA $7A (from C1/613C) C1/6143: 290300 AND #$0003 C1/6146: 851A STA $1A C1/6148: A626 LDX $26 C1/614A: 6412 STZ $12 C1/614C: A51A LDA $1A C1/614E: 8518 STA $18 C1/6150: D006 BNE $6158 C1/6152: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) C1/6156: 800B BRA $6163
C1/6158: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) C1/615C: 4A LSR A C1/615D: 6612 ROR $12 C1/615F: C618 DEC $18 C1/6161: D0F9 BNE $615C C1/6163: 8522 STA $22 C1/6165: E220 SEP #$20 C1/6167: 1967E3 ORA $E367,Y C1/616A: 9967E3 STA $E367,Y C1/616D: A522 LDA $22 C1/616F: 1968E3 ORA $E368,Y C1/6172: 9968E3 STA $E368,Y C1/6175: EB XBA C1/6176: 1947E3 ORA $E347,Y C1/6179: 9947E3 STA $E347,Y C1/617C: A523 LDA $23 C1/617E: 1948E3 ORA $E348,Y C1/6181: 9948E3 STA $E348,Y C1/6184: A513 LDA $13 C1/6186: 1987E3 ORA $E387,Y C1/6189: 9987E3 STA $E387,Y C1/618C: A513 LDA $13 C1/618E: 1988E3 ORA $E388,Y C1/6191: 9988E3 STA $E388,Y C1/6194: C220 REP #$20 C1/6196: A522 LDA $22 C1/6198: 4A LSR A C1/6199: 6612 ROR $12 C1/619B: 8522 STA $22 C1/619D: E220 SEP #$20 C1/619F: 1969E3 ORA $E369,Y C1/61A2: 9969E3 STA $E369,Y C1/61A5: EB XBA C1/61A6: 1949E3 ORA $E349,Y C1/61A9: 9949E3 STA $E349,Y C1/61AC: A513 LDA $13 C1/61AE: 1989E3 ORA $E389,Y C1/61B1: 9989E3 STA $E389,Y C1/61B4: C220 REP #$20 C1/61B6: C8 INY C1/61B7: C8 INY C1/61B8: E8 INX C1/61B9: E8 INX C1/61BA: C61C DEC $1C C1/61BC: F003 BEQ $61C1 C1/61BE: 4C4A61 JMP $614A C1/61C1: 4C2E62 JMP $622E
C1/61C4 unknow
C1/61C4: A57A LDA $7A C1/61C6: 290300 AND #$0003 C1/61C9: 0A ASL A C1/61CA: AA TAX C1/61CB: BF0961C1 LDA $C16109,X C1/61CF: 851A STA $1A C1/61D1: A626 LDX $26 C1/61D3: A51A LDA $1A C1/61D5: 8518 STA $18 C1/61D7: 6412 STZ $12 C1/61D9: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) C1/61DD: 0A ASL A C1/61DE: C618 DEC $18 C1/61E0: D0FB BNE $61DD C1/61E2: 8522 STA $22 C1/61E4: E220 SEP #$20 C1/61E6: 1967E3 ORA $E367,Y C1/61E9: 9967E3 STA $E367,Y C1/61EC: A522 LDA $22 C1/61EE: 1968E3 ORA $E368,Y C1/61F1: 9968E3 STA $E368,Y C1/61F4: A523 LDA $23 C1/61F6: 1947E3 ORA $E347,Y C1/61F9: 9947E3 STA $E347,Y C1/61FC: A523 LDA $23 C1/61FE: 1948E3 ORA $E348,Y C1/6201: 9948E3 STA $E348,Y C1/6204: C220 REP #$20 C1/6206: A522 LDA $22 C1/6208: 4A LSR A C1/6209: 6612 ROR $12 C1/620B: 8522 STA $22 C1/620D: E220 SEP #$20 C1/620F: 1969E3 ORA $E369,Y C1/6212: 9969E3 STA $E369,Y C1/6215: EB XBA C1/6216: 1949E3 ORA $E349,Y C1/6219: 9949E3 STA $E349,Y C1/621C: A512 LDA $12 C1/621E: 1989E3 ORA $E389,Y C1/6221: 9989E3 STA $E389,Y C1/6224: C220 REP #$20 C1/6226: C8 INY C1/6227: C8 INY C1/6228: E8 INX C1/6229: E8 INX C1/622A: C61C DEC $1C C1/622C: D0A5 BNE $61D3 C1/622E: 7B TDC C1/622F: E220 SEP #$20 C1/6231: DA PHX C1/6232: ADF0EC LDA $ECF0 C1/6235: 38 SEC C1/6236: E960 SBC #$60 C1/6238: AA TAX C1/6239: BFC08FC4 LDA $C48FC0,X (Load var. width font cell width X) C1/623D: FA PLX C1/623E: 18 CLC C1/623F: 657A ADC $7A C1/6241: 857A STA $7A C1/6243: ADAC62 LDA $62AC C1/6246: D003 BNE $624B C1/6248: 20025E JSR $5E02 C1/624B: FA PLX C1/624C: 7A PLY C1/624D: 60 RTS
C1/624E unknow
Data C1/624E: 00 C1/624F: 80 C1/6250: C0 C1/6251: E0 C1/6252: F0 C1/6253: F8 C1/6254: FC C1/6255: FE
C1/6256 unknow
C1/6256: A57A LDA $7A C1/6258: 2907 AND #$07 C1/625A: AA TAX C1/625B: BF4E62C1 LDA $C1624E,X C1/625F: 8528 STA $28 C1/6261: A57A LDA $7A C1/6263: 29F8 AND #$F8 C1/6265: C220 REP #$20 C1/6267: 0A ASL A C1/6268: 0A ASL A C1/6269: A8 TAY C1/626A: A90B00 LDA #$000B C1/626D: 851C STA $1C C1/626F: A57A LDA $7A C1/6271: 290400 AND #$0004 C1/6274: D003 BNE $6279 C1/6276: 4C0763 JMP $6307
C1/6279: A57A LDA $7A C1/627B: 290300 AND #$0003 C1/627E: 851A STA $1A C1/6280: A626 LDX $26 C1/6282: 6412 STZ $12 C1/6284: A51A LDA $1A C1/6286: 8518 STA $18 C1/6288: D006 BNE $6290 C1/628A: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) C1/628E: 800B BRA $629B
C1/6290: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) C1/6294: 4A LSR A C1/6295: 6612 ROR $12 C1/6297: C618 DEC $18 C1/6299: D0F9 BNE $6294 C1/629B: 8522 STA $22 C1/629D: E220 SEP #$20 C1/629F: 1968E3 ORA $E368,Y C1/62A2: 9968E3 STA $E368,Y C1/62A5: 3967E3 AND $E367,Y C1/62A8: 49FF EOR #$FF C1/62AA: 3967E3 AND $E367,Y C1/62AD: 9967E3 STA $E367,Y C1/62B0: EB XBA C1/62B1: 1948E3 ORA $E348,Y C1/62B4: 9948E3 STA $E348,Y C1/62B7: 3947E3 AND $E347,Y C1/62BA: 49FF EOR #$FF C1/62BC: 0528 ORA $28 C1/62BE: 3947E3 AND $E347,Y C1/62C1: 9947E3 STA $E347,Y C1/62C4: A513 LDA $13 C1/62C6: 1988E3 ORA $E388,Y C1/62C9: 9988E3 STA $E388,Y C1/62CC: 3987E3 AND $E387,Y C1/62CF: 49FF EOR #$FF C1/62D1: 3987E3 AND $E387,Y C1/62D4: 9987E3 STA $E387,Y C1/62D7: C220 REP #$20 C1/62D9: A522 LDA $22 C1/62DB: 4A LSR A C1/62DC: 6612 ROR $12 C1/62DE: 8522 STA $22 (Animation Script pointer) C1/62E0: E220 SEP #$20 C1/62E2: 1969E3 ORA $E369,Y C1/62E5: 9969E3 STA $E369,Y C1/62E8: EB XBA C1/62E9: 1949E3 ORA $E349,Y C1/62EC: 9949E3 STA $E349,Y C1/62EF: A513 LDA $13 C1/62F1: 1989E3 ORA $E389,Y C1/62F4: 9989E3 STA $E389,Y C1/62F7: C220 REP #$20 C1/62F9: C8 INY C1/62FA: C8 INY C1/62FB: E8 INX C1/62FC: E8 INX C1/62FD: C61C DEC $1C C1/62FF: F003 BEQ $6304 C1/6301: 4C8262 JMP $6282 C1/6304: 4C7B63 JMP $637B (BRA would work)
C1/6307 unknow
C1/6307: A57A LDA $7A C1/6309: 290300 AND #$0003 C1/630C: 0A ASL A C1/630D: AA TAX C1/630E: BF0961C1 LDA $C16109,X C1/6312: 851A STA $1A C1/6314: A626 LDX $26 C1/6316: A51A LDA $1A C1/6318: 8518 STA $18 C1/631A: 6412 STZ $12 C1/631C: BFC090C4 LDA $C490C0,X (Load var. width font graphic X) C1/6320: 0A ASL A C1/6321: C618 DEC $18 C1/6323: D0FB BNE $6320 C1/6325: 8522 STA $22 (Animation Script pointer) C1/6327: E220 SEP #$20 C1/6329: 1968E3 ORA $E368,Y C1/632C: 9968E3 STA $E368,Y C1/632F: 3967E3 AND $E367,Y C1/6332: 49FF EOR #$FF C1/6334: 3967E3 AND $E367,Y C1/6337: 9967E3 STA $E367,Y C1/633A: EB XBA C1/633B: 1948E3 ORA $E348,Y C1/633E: 9948E3 STA $E348,Y C1/6341: 3947E3 AND $E347,Y C1/6344: 49FF EOR #$FF C1/6346: 0528 ORA $28 C1/6348: 3947E3 AND $E347,Y C1/634B: 9947E3 STA $E347,Y C1/634E: C220 REP #$20 C1/6350: A522 LDA $22 (Animation Script pointer) C1/6352: 4A LSR A C1/6353: 6612 ROR $12 C1/6355: 8522 STA $22 (Animation Script pointer) C1/6357: E220 SEP #$20 C1/6359: 1969E3 ORA $E369,Y C1/635C: 9969E3 STA $E369,Y C1/635F: EB XBA C1/6360: 1949E3 ORA $E349,Y C1/6363: 9949E3 STA $E349,Y C1/6366: A513 LDA $13 C1/6368: 1989E3 ORA $E389,Y C1/636B: 9989E3 STA $E389,Y C1/636E: C220 REP #$20 C1/6370: C8 INY C1/6371: C8 INY C1/6372: E8 INX C1/6373: E8 INX C1/6374: C61C DEC $1C C1/6376: F003 BEQ $637B C1/6378: 4C1663 JMP $6316
C1/637B: 7B TDC C1/637C: E220 SEP #$20 C1/637E: DA PHX C1/637F: ADF0EC LDA $ECF0 C1/6382: 38 SEC C1/6383: E960 SBC #$60 C1/6385: AA TAX C1/6386: BFC08FC4 LDA $C48FC0,X (Load var. width font cell width X) C1/638A: FA PLX C1/638B: 18 CLC C1/638C: 657A ADC $7A C1/638E: 857A STA $7A C1/6390: ADAC62 LDA $62AC C1/6393: D003 BNE $6398 C1/6395: 20025E JSR $5E02 C1/6398: FA PLX C1/6399: 7A PLY C1/639A: 60 RTS
C1/639B unknow
C1/639B: A20004 LDX #$0400 C1/639E: 8610 STX $10 C1/63A0: A23FE3 LDX #$E33F C1/63A3: A97E LDA #$7E C1/63A5: ACBFE9 LDY $E9BF C1/63A8: 4C8D19 JMP $198D
C1/63AB unknow
C1/63AB: ADE288 LDA $88E2 C1/63AE: 8556 STA $56 C1/63B0: 8558 STA $58 C1/63B2: 855A STA $5A C1/63B4: EB XBA C1/63B5: 0EE188 ASL $88E1 C1/63B8: 642D STZ $2D C1/63BA: AEDD88 LDX $88DD C1/63BD: 864F STX $4F C1/63BF: AEDF88 LDX $88DF C1/63C2: 8651 STX $51 C1/63C4: A551 LDA $51 C1/63C6: 18 CLC C1/63C7: 6DE188 ADC $88E1 C1/63CA: 8553 STA $53 C1/63CC: A552 LDA $52 C1/63CE: 6900 ADC #$00 C1/63D0: 8554 STA $54 C1/63D2: A400 LDY $00 C1/63D4: B24F LDA ($4F) C1/63D6: F01C BEQ $63F4 C1/63D8: C920 CMP #$20 C1/63DA: 900C BCC $63E8 C1/63DC: 20FE63 JSR $63FE C1/63DF: E64F INC $4F C1/63E1: D0F1 BNE $63D4 C1/63E3: E650 INC $50 C1/63E5: 4CD463 JMP $63D4 (BRA would be better)
C1/63E8 unknow
C1/63E8: 200B64 JSR $640B C1/63EB: E64F INC $4F C1/63ED: D0E5 BNE $63D4 C1/63EF: E650 INC $50 C1/63F1: 4CD463 JMP $63D4 (BRA would be better)
C1/63F4 unknow
C1/63F4: 7B TDC (from only C1/63DC) C1/63F5: EB XBA C1/63F6: 60 RTS
C1/63F7 unknow
C1/63F7: E64F INC $4F C1/63F9: D002 BNE $63FD C1/63FB: E650 INC $50 C1/63FD: 60 RTS
C1/63FE unknow
C1/63FE: C220 REP #$20 (from C1/669C, etc.) C1/6400: 9153 STA ($53),Y C1/6402: A555 LDA $55 C1/6404: 9151 STA ($51),Y C1/6406: E220 SEP #$20 C1/6408: C8 INY C1/6409: C8 INY C1/640A: 60 RTS
C1/640B unknow
C1/640B: 852C STA $2C (from only C1/63E8) C1/640D: 062C ASL $2C C1/640F: A62C LDX $2C C1/6411: 7C1464 JMP ($6414,X)
C1/6414 table of text to load/display
(function) (value of $2C) C1/6414: 4767 (00) (exits) (00 is used to end a set of commands...) C1/6416: 4867 (01) C1/6418: 9464 (02) (Displays 2-digit number X?) C1/641A: C964 (03) C1/641C: D164 (04) (Change tile palette to X?) C1/641E: DE64 (05) (Insert X blank tiles) C1/6420: EF64 (06) (Display Magitek attack name X?) C1/6422: 4767 (07) (exits) C1/6424: 4767 (08) (exits) C1/6426: 4767 (09) (exits) C1/6428: 4767 (0A) (exits) C1/642A: 4767 (0B) (exits) C1/642C: 4767 (0C) (exits) C1/642E: 4767 (0D) (exits) C1/6430: 5865 (0E) (Display Item (no Type) name X?) C1/6432: 9865 (0F) (Display Spell name X) C1/6434: 4767 (10) (exits) C1/6436: 8565 (11) C1/6438: 1765 (12) (Display Item and Type names X?) C1/643A: 4767 (13) (exits) C1/643C: 4767 (14) (exits) C1/643E: 4767 (15) (exits) C1/6440: 4A64 (16) (Display 3-digit number X?) C1/6442: 0066 (17) (Display Dance name X?) C1/6444: 2866 (18) (Display Enemy name X?) C1/6446: 5566 (19) (Display Lore name X?) C1/6448: 7D66 (1A) (Display Esper name X?)
C1/644A unknow
C1/644A: 20F763 JSR $63F7 (from C1/6411, X = 16) C1/644D: 6440 STZ $40 C1/644F: 6441 STZ $41 C1/6451: B24F LDA ($4F) C1/6453: 38 SEC C1/6454: E964 SBC #$64 C1/6456: 9004 BCC $645C C1/6458: E640 INC $40 C1/645A: 80F7 BRA $6453 C1/645C: 18 CLC C1/645D: 6964 ADC #$64 C1/645F: 38 SEC C1/6460: E90A SBC #$0A C1/6462: 9004 BCC $6468 C1/6464: E641 INC $41 C1/6466: 80F7 BRA $645F C1/6468: 18 CLC C1/6469: 690A ADC #$0A C1/646B: 48 PHA C1/646C: A540 LDA $40 C1/646E: D002 BNE $6472 C1/6470: A94B LDA #$4B C1/6472: 18 CLC C1/6473: 69B4 ADC #$B4 C1/6475: 20FE63 JSR $63FE C1/6478: A541 LDA $41 C1/647A: 0540 ORA $40 C1/647C: D007 BNE $6485 C1/647E: A9FF LDA #$FF C1/6480: 20FE63 JSR $63FE C1/6483: 8008 BRA $648D C1/6485: A541 LDA $41 C1/6487: 18 CLC C1/6488: 69B4 ADC #$B4 C1/648A: 20FE63 JSR $63FE C1/648D: 68 PLA C1/648E: 18 CLC C1/648F: 69B4 ADC #$B4 C1/6491: 4CFE63 JMP $63FE
C1/6494 unknow
C1/6494: 20F763 JSR $63F7 (from C1/6411, X = 2) C1/6497: 6440 STZ $40 C1/6499: B24F LDA ($4F) C1/649B: 38 SEC C1/649C: E90A SBC #$0A C1/649E: 9005 BCC $64A5 C1/64A0: E640 INC $40 C1/64A2: 4C9B64 JMP $649B (why no BRA?)
C1/64A5: 18 CLC (from only C1/649E) C1/64A6: 690A ADC #$0A C1/64A8: 8541 STA $41 C1/64AA: A540 LDA $40 C1/64AC: D002 BNE $64B0 C1/64AE: A94B LDA #$4B C1/64B0: 18 CLC C1/64B1: 69B4 ADC #$B4 C1/64B3: 20FE63 JSR $63FE C1/64B6: A541 LDA $41 C1/64B8: 0540 ORA $40 C1/64BA: D005 BNE $64C1 C1/64BC: A9FF LDA #$FF C1/64BE: 4CFE63 JMP $63FE
C1/64C1: A541 LDA $41 (from only C1/64BA) C1/64C3: 18 CLC C1/64C4: 69B4 ADC #$B4 C1/64C6: 4CFE63 JMP $63FE
C1/64C9 unknow
C1/64C9: 20F763 JSR $63F7 (from C1/6411, X = 3) C1/64CC: B24F LDA ($4F) C1/64CE: 4CFE63 JMP $63FE
C1/64D1 unknow
C1/64D1: 20F763 JSR $63F7 (from C1/6411, X = 4) C1/64D4: B24F LDA ($4F) C1/64D6: 8556 STA $56 C1/64D8: 8558 STA $58 C1/64DA: 855A STA $5A C1/64DC: EB XBA C1/64DD: 60 RTS
C1/64DE unknow
C1/64DE: 20F763 JSR $63F7 (from C1/6411, X = 5) C1/64E1: B24F LDA ($4F) C1/64E3: 8540 STA $40 C1/64E5: A9FF LDA #$FF C1/64E7: 20FE63 JSR $63FE C1/64EA: C640 DEC $40 C1/64EC: D0F7 BNE $64E5 C1/64EE: 60 RTS
C1/64EF unknow
C1/64EF: 20F763 JSR $63F7 (from C1/6411, X = 6) C1/64F2: B24F LDA ($4F) C1/64F4: C9FF CMP #$FF C1/64F6: D005 BNE $64FD C1/64F8: A90A LDA #$0A C1/64FA: 4CA566 JMP $66A5
C1/64FD unknow
C1/64FD: 852C STA $2C (from C1/64F6) C1/64FF: A90A LDA #$0A (10 = Magitek attack name length) C1/6501: 852E STA $2E C1/6503: 8540 STA $40 C1/6505: 20B018 JSR $18B0 C1/6508: A630 LDX $30 C1/650A: BFADF9E6 LDA $E6F9AD,X (Loads Magitek attack name X) C1/650E: 20FE63 JSR $63FE C1/6511: E8 INX C1/6512: C640 DEC $40 C1/6514: D0F4 BNE $650A C1/6516: 60 RTS
C1/6517 draw text of item types
C1/6517: 20F763 JSR $63F7 (from C1/6411, X = 12) C1/651A: B24F LDA ($4F) C1/651C: C9FF CMP #$FF C1/651E: D005 BNE $6525 C1/6520: A907 LDA #$07 C1/6522: 4CA566 JMP $66A5
C1/6525: 852C STA $2C (from C1/651E) C1/6527: A90D LDA #$0D (13 = item name length) C1/6529: 852E STA $2E C1/652B: 20B018 JSR $18B0 C1/652E: A630 LDX $30 C1/6530: BF00B3D2 LDA $D2B300,X (Loads Item name X) C1/6534: C9FF CMP #$FF C1/6536: F0E8 BEQ $6520 C1/6538: 38 SEC C1/6539: E9D8 SBC #$D8 C1/653B: 852C STA $2C C1/653D: A907 LDA #$07 C1/653F: 852E STA $2E C1/6541: 8540 STA $40 C1/6543: 20B018 JSR $18B0 C1/6546: A630 LDX $30 C1/6548: A556 LDA $56 C1/654A: EB XBA C1/654B: BF006FD2 LDA $D26F00,X (Loads Weapon/Armor type word X) C1/654F: 20FE63 JSR $63FE C1/6552: E8 INX C1/6553: C640 DEC $40 C1/6555: D0F4 BNE $654B C1/6557: 60 RTS
C1/6558 unknow
C1/6558: 20F763 JSR $63F7 (from C1/6411, X = E) C1/655B: B24F LDA ($4F) C1/655D: C9FF CMP #$FF C1/655F: D005 BNE $6566 C1/6561: A90D LDA #$0D C1/6563: 4CA566 JMP $66A5
C1/6566: 852C STA $2C (from C1/655F) C1/6568: A90D LDA #$0D C1/656A: 852E STA $2E C1/656C: 20B018 JSR $18B0 C1/656F: A630 LDX $30 C1/6571: A556 LDA $56 C1/6573: EB XBA C1/6574: A90D LDA #$0D (13 = item name length) C1/6576: 8540 STA $40 C1/6578: BF00B3D2 LDA $D2B300,X (Loads Item name X) C1/657C: 20FE63 JSR $63FE C1/657F: E8 INX C1/6580: C640 DEC $40 C1/6582: D0F4 BNE $6578 C1/6584: 60 RTS
C1/6585 unknow
C1/6585: 209865 JSR $6598 (from C1/6411, X = 11) C1/6588: B24F LDA ($4F) C1/658A: C9FF CMP #$FF C1/658C: F005 BEQ $6593 C1/658E: C936 CMP #$36 C1/6590: 9001 BCC $6593 C1/6592: 60 RTS
C1/6593: A903 LDA #$03 (from C1/658C) C1/6595: 4CA566 JMP $66A5
C1/6598 unknow
C1/6598: 20F763 JSR $63F7 (from C1/6411, X = F) C1/659B: B24F LDA ($4F) C1/659D: 852C STA $2C C1/659F: C9FF CMP #$FF C1/65A1: D005 BNE $65A8 C1/65A3: A907 LDA #$07 C1/65A5: 4CA566 JMP $66A5
C1/65A8: C936 CMP #$36 (from C1/65A1) C1/65AA: 903C BCC $65E8 (Go to spell names) C1/65AC: C951 CMP #$51 C1/65AE: 901C BCC $65CC (Go to esper names) C1/65B0: 38 SEC C1/65B1: E951 SBC #$51 C1/65B3: EB XBA C1/65B4: A90A LDA #$0A (10 = skean attack name length) C1/65B6: 852E STA $2E C1/65B8: 8540 STA $40 C1/65BA: 20B018 JSR $18B0 C1/65BD: A630 LDX $30 C1/65BF: BFB9F7E6 LDA $E6F7B9,X (Load skean attack name X) C1/65C3: 20FE63 JSR $63FE C1/65C6: E8 INX C1/65C7: C640 DEC $40 C1/65C9: D0F4 BNE $65BF C1/65CB: 60 RTS
C1/65CC unknow
C1/65CC: 38 SEC (from C1/65AE) C1/65CD: E936 SBC #$36 C1/65CF: EB XBA C1/65D0: A908 LDA #$08 (8 = Esper name length) C1/65D2: 852E STA $2E C1/65D4: 8540 STA $40 C1/65D6: 20B018 JSR $18B0 C1/65D9: A630 LDX $30 C1/65DB: BFE1F6E6 LDA $E6F6E1,X (Load Esper name X) C1/65DF: 20FE63 JSR $63FE C1/65E2: E8 INX C1/65E3: C640 DEC $40 C1/65E5: D0F4 BNE $65DB C1/65E7: 60 RTS
C1/65E8 unknow
C1/65E8: A907 LDA #$07 (from C1/65AA)(7 = spell name length) C1/65EA: 852E STA $2E C1/65EC: 8540 STA $40 C1/65EE: 20B018 JSR $18B0 C1/65F1: A630 LDX $30 C1/65F3: BF67F5E6 LDA $E6F567,X (Load Spell name X) C1/65F7: 20FE63 JSR $63FE C1/65FA: E8 INX C1/65FB: C640 DEC $40 C1/65FD: D0F4 BNE $65F3 C1/65FF: 60 RTS
C1/6600 unknow
C1/6600: 20F763 JSR $63F7 (from C1/6411, X = 17) C1/6603: B24F LDA ($4F) C1/6605: 852C STA $2C C1/6607: C9FF CMP #$FF C1/6609: D005 BNE $6610 C1/660B: A90C LDA #$0C C1/660D: 4CA566 JMP $66A5
C1/6610: A90C LDA #$0C (12 = Dance name length) C1/6612: 852E STA $2E C1/6614: 8540 STA $40 C1/6616: 20B018 JSR $18B0 C1/6619: A630 LDX $30 C1/661B: BF9DFFE6 LDA $E6FF9D,X (Load Mog's Dance name X) C1/661F: 20FE63 JSR $63FE C1/6622: E8 INX C1/6623: C640 DEC $40 C1/6625: D0F4 BNE $661B C1/6627: 60 RTS
C1/6628 unknow
C1/6628: 20F763 JSR $63F7 (from C1/6411, X = 18) C1/662B: B24F LDA ($4F) C1/662D: 852C STA $2C C1/662F: C9FF CMP #$FF C1/6631: D005 BNE $6638 C1/6633: A90B LDA #$0B C1/6635: 4CA566 JMP $66A5
C1/6638: A90A LDA #$0A (from C1/6631)(10 = enemy name length) C1/663A: 852E STA $2E C1/663C: 8540 STA $40 C1/663E: 20B018 JSR $18B0 C1/6641: A630 LDX $30 C1/6643: BF50C0CF LDA $CFC050,X (Load enemy name X) C1/6647: 20FE63 JSR $63FE C1/664A: E8 INX C1/664B: C640 DEC $40 C1/664D: D0F4 BNE $6643 C1/664F: A9FF LDA #$FF C1/6651: 20FE63 JSR $63FE C1/6654: 60 RTS
C1/6655 unknow
C1/6655: 20F763 JSR $63F7 (from C1/6411, X = 19) C1/6658: B24F LDA ($4F) C1/665A: 852C STA $2C C1/665C: C9FF CMP #$FF C1/665E: D005 BNE $6665 C1/6660: A90A LDA #$0A C1/6662: 4CA566 JMP $66A5 (BRA would work here)
C1/6665: A90A LDA #$0A (from C1/665E)(10 = lore name length) C1/6667: 852E STA $2E C1/6669: 8540 STA $40 C1/666B: 20B018 JSR $18B0 C1/666E: A630 LDX $30 C1/6670: BFFDF9E6 LDA $E6F9FD,X (Load Lore name X) C1/6674: 20FE63 JSR $63FE C1/6677: E8 INX C1/6678: C640 DEC $40 C1/667A: D0F4 BNE $6670 C1/667C: 60 RTS
C1/667D unknow
C1/667D: 20F763 JSR $63F7 (from C1/6411, X = 1A) C1/6680: B24F LDA ($4F) C1/6682: 852C STA $2C C1/6684: C9FF CMP #$FF C1/6686: D005 BNE $668D C1/6688: A908 LDA #$08 C1/668A: 4CA566 JMP $66A5 (BRA would work here)
C1/668D: A908 LDA #$08 (from C1/6686)(Sets name length?) C1/668F: 852E STA $2E C1/6691: 8540 STA $40 C1/6693: 20B018 JSR $18B0 C1/6696: A630 LDX $30 C1/6698: BFE1F6E6 LDA $E6F6E1,X (Loads Esper name X) C1/669C: 20FE63 JSR $63FE C1/669F: E8 INX C1/66A0: C640 DEC $40 C1/66A2: D0F4 BNE $6698 C1/66A4: 60 RTS
C1/66A5 unknow
C1/66A5: 8540 STA $40 C1/66A7: A9FF LDA #$FF C1/66A9: 20FE63 JSR $63FE C1/66AC: C640 DEC $40 C1/66AE: D0F7 BNE $66A7 C1/66B0: 60 RTS
C1/66B1 unknow
C1/66B1: ADDC88 LDA $88DC C1/66B4: 854E STA $4E C1/66B6: 0EDB88 ASL $88DB C1/66B9: AED788 LDX $88D7 C1/66BC: 8648 STX $48 C1/66BE: AED988 LDX $88D9 C1/66C1: 864A STX $4A C1/66C3: A54A LDA $4A C1/66C5: 18 CLC C1/66C6: 6DDB88 ADC $88DB C1/66C9: 854C STA $4C C1/66CB: A54B LDA $4B C1/66CD: 6900 ADC #$00 C1/66CF: 854D STA $4D C1/66D1: A400 LDY $00 C1/66D3: B248 LDA ($48) C1/66D5: F014 BEQ $66EB C1/66D7: C920 CMP #$20 C1/66D9: 9008 BCC $66E3 C1/66DB: 20F366 JSR $66F3 C1/66DE: 20EC66 JSR $66EC C1/66E1: 80F0 BRA $66D3 C1/66E3: 200267 JSR $6702 (from only C1/66D9) C1/66E6: 20EC66 JSR $66EC C1/66E9: 80E8 BRA $66D3 C1/66EB: 60 RTS
C1/66EC unknow
C1/66EC: E648 INC $48 (from C1/66DE, C1/66E6) C1/66EE: D002 BNE $66F2 C1/66F0: E649 INC $49 C1/66F2: 60 RTS
C1/66F3 unknow
C1/66F3: 914C STA ($4C),Y C1/66F5: A9FF LDA #$FF C1/66F7: 914A STA ($4A),Y C1/66F9: C8 INY C1/66FA: A54E LDA $4E C1/66FC: 914C STA ($4C),Y C1/66FE: 914A STA ($4A),Y C1/6700: C8 INY C1/6701: 60 RTS
C1/6702 unknow
C1/6702: 0A ASL A (from C1/66E3) C1/6703: AA TAX C1/6704: 7C0767 JMP ($6707,X)
C1/6707 table (pointers)
(function) (value) C1/6707: 4767 (00) (exits) C1/6709: 4867 (01) C1/670B: 5F67 (02) (Display 2 digit number X) C1/670D: 9467 (03) C1/670F: 9C67 (04) C1/6711: A467 (05) C1/6713: 4767 (06) (exits) C1/6715: B567 (07) (Display party member 1's info) C1/6717: B867 (08) (Display party member 2's info) C1/6719: BC67 (09) (Display party member 3's info) C1/671B: C067 (0A) (Display party member 4's info) C1/671D: 9369 (0B) C1/671F: DA69 (0C) C1/6721: DE69 (0D) (Display the battle command names) C1/6723: 826A (0E) C1/6725: C26A (0F) C1/6727: 0B6A (10) (Display the status texts) C1/6729: AF6A (11) C1/672B: 386A (12) (Display the item names) C1/672D: 4767 (13) (exits) C1/672F: 4767 (14) (exits) C1/6731: 4767 (15) (exits) C1/6733: 4767 (16) (exits) C1/6735: 4767 (17) (exits) C1/6737: 4767 (18) (exits) C1/6739: 4767 (19) (exits) C1/673B: 4767 (1A) (exits) C1/673D: 4767 (1B) (exits) C1/673F: 4767 (1C) (exits) C1/6741: 4767 (1D) (exits) C1/6743: 4767 (1E) (exits) C1/6745: 4767 (1F) (exits) C1/6747: 60 RTS (from various, just exits)
C1/6748 unknow
C1/6748: ADDB88 LDA $88DB (from C1/6411, X = 1; from C1/6704, X = 1) C1/674B: C220 REP #$20 C1/674D: 48 PHA C1/674E: 0A ASL A C1/674F: 18 CLC C1/6750: 654A ADC $4A C1/6752: 854A STA $4A C1/6754: 68 PLA C1/6755: 18 CLC C1/6756: 654A ADC $4A C1/6758: 854C STA $4C C1/675A: 7B TDC C1/675B: A8 TAY C1/675C: E220 SEP #$20 C1/675E: 60 RTS
C1/675F unknow
C1/675F: 20EC66 JSR $66EC (from C1/6704, X = 2) C1/6762: 6410 STZ $10 C1/6764: B248 LDA ($48) C1/6766: 38 SEC C1/6767: E90A SBC #$0A C1/6769: 9005 BCC $6770 C1/676B: E610 INC $10 C1/676D: 4C6667 JMP $6766
C1/6770 unknow
C1/6770: 18 CLC (from C1/6769) C1/6771: 690A ADC #$0A C1/6773: 8511 STA $11 C1/6775: A510 LDA $10 C1/6777: D002 BNE $677B C1/6779: A94B LDA #$4B C1/677B: 18 CLC C1/677C: 69B4 ADC #$B4 C1/677E: 20F366 JSR $66F3 C1/6781: A511 LDA $11 C1/6783: 0510 ORA $10 C1/6785: D005 BNE $678C C1/6787: A9FF LDA #$FF C1/6789: 4CF366 JMP $66F3
C1/678C: A511 LDA $11 (from C1/6785) C1/678E: 18 CLC C1/678F: 69B4 ADC #$B4 C1/6791: 4CF366 JMP $66F3
C1/6794 unknow
C1/6794: 20EC66 JSR $66EC (from C1/6704, X = 3) C1/6797: B248 LDA ($48) C1/6799: 4CF366 JMP $66F3
C1/679C unknow
C1/679C: 20EC66 JSR $66EC (from C1/6704, X = 4) C1/679F: B248 LDA ($48) C1/67A1: 854E STA $4E C1/67A3: 60 RTS
C1/67A4 unknow
C1/67A4: 20EC66 JSR $66EC (from C1/6704, X = 5) C1/67A7: B248 LDA ($48) C1/67A9: 8510 STA $10 C1/67AB: A9FF LDA #$FF C1/67AD: 20F366 JSR $66F3 C1/67B0: C610 DEC $10 C1/67B2: D0F7 BNE $67AB C1/67B4: 60 RTS
C1/67B5 unknow
C1/67B5: 7B TDC (from C1/6704, X = 7) C1/67B6: 800A BRA $67C2
C1/67B8 unknow
C1/67B8: A901 LDA #$01 (from C1/6704, X = 8) C1/67BA: 8006 BRA $67C2
C1/67BC unknow
C1/67BC: A902 LDA #$02 (from C1/6704, X = 9) C1/67BE: 8002 BRA $67C2
C1/67C0 unknow
C1/67C0: A903 LDA #$03 (from C1/6704, X = A) C1/67C2: AA TAX C1/67C3: BDD664 LDA $64D6,X C1/67C6: C9FF CMP #$FF C1/67C8: F005 BEQ $67CF C1/67CA: 0A ASL A C1/67CB: AA TAX C1/67CC: 7CE367 JMP ($67E3,X)
C1/67CF unknow
C1/67CF: 20EC66 JSR $66EC (from C1/67C8) C1/67D2: B248 LDA ($48) C1/67D4: AA TAX C1/67D5: BFDC67C1 LDA $C167DC,X C1/67D9: 4C2568 JMP $6825
C1/67DC unknow (data)
C1/67DC: 06 C1/67DD: 04 C1/67DE: 06 C1/67DF: 03 C1/67E0: 03 C1/67E1: 06 C1/67E2: 06
C1/67E3 unknow (pointers)
C1/67E3: EB67 (00) C1/67E5: F267 (01) C1/67E7: F967 (02) C1/67E9: 0068 (03)
C1/67EB character name
C1/67EB: A2AE2E LDX #$2EAE (from C1/67CC, X = 0, where to look for character 1's name) C1/67EE: A900 LDA #$00 C1/67F0: 8013 BRA $6805
C1/67F2: A2CE2E LDX #$2ECE (from C1/67CC, X = 1, where to look for character 2's name) C1/67F5: A901 LDA #$01 C1/67F7: 800C BRA $6805
C1/67F9: A2EE2E LDX #$2EEE (from C1/67CC, X = 2, where to look for character 3's name) C1/67FC: A902 LDA #$02 C1/67FE: 8005 BRA $6805
C1/6800: A20E2F LDX #$2F0E (from C1/67CC, X = 3, where to look for character 4's name) C1/6803: A903 LDA #$03 C1/6805: 8518 STA $18 C1/6807: 8610 STX $10 C1/6809: A97E LDA #$7E C1/680B: 8512 STA $12 C1/680D: 20EC66 JSR $66EC C1/6810: B248 LDA ($48) C1/6812: 0A ASL A C1/6813: AA TAX C1/6814: 7C1768 JMP ($6817,X)
C1/6817 table of pointers
C1/6817: 2F68 (0) (Name) C1/6819: 4168 (1) (Current HP) C1/681B: 7268 (2) (ATB gauge or max HP, depending on gauge settings) C1/681D: A768 (3) (current MP) C1/681F: 2C69 (4) (max MP) C1/6821: 4E68 (5) C1/6823: 4668 (6)
C1/6825 unknow
C1/6825: AA TAX C1/6826: A9FF LDA #$FF C1/6828: 20F366 JSR $66F3 C1/682B: CA DEX X holds how many spaces to draw. it'll be 6, 4, or 3 C1/682C: D0F8 BNE $6826 C1/682E: 60 RTS
C1/682F unknow
C1/682F: A610 LDX $10 (from C1/6814, X = 0, $10 holds $2EAE, $2ECE, $2EEE, or $2F0E) C1/6831: A906 LDA #$06 C1/6833: 8514 STA $14 (6 letters to write) C1/6835: BD0100 LDA $0001,X (load character name) C1/6838: 20F366 JSR $66F3 (draw a tile) C1/683B: E8 INX C1/683C: C614 DEC $14 (decrement letters to do) C1/683E: D0F5 BNE $6835 (branch if haven't done all 6) C1/6840: 60 RTS
C1/6841 unknow
C1/6841: A907 LDA #$07 (from C1/6814, X = 1) C1/6843: 4C7569 JMP $6975
C1/6846 unknow
C1/6846: A518 LDA $18 (from C1/6814, X = 6) C1/6848: AA TAX C1/6849: BDA661 LDA $61A6,X C1/684C: 8006 BRA $6854
C1/684E unknow
C1/684E: A518 LDA $18 (from C1/6814, X = 5) C1/6850: AA TAX C1/6851: BDA261 LDA $61A2,X C1/6854: 4A LSR A C1/6855: 29FC AND #$FC C1/6857: AA TAX C1/6858: A9F9 LDA #$F9 C1/685A: 20F366 JSR $66F3 (draw opening end of ATB gauge) C1/685D: A904 LDA #$04 C1/685F: 851A STA $1A C1/6861: BFAC68C1 LDA $C168AC,X (get the ATB gauge character) C1/6865: 20F366 JSR $66F3 (draw tile A) C1/6868: E8 INX C1/6869: C61A DEC $1A (decrement tiles to do) C1/686B: D0F4 BNE $6861 (branch if we haven't done 4) C1/686D: A9FA LDA #$FA (draw tail end of ATB gauge) C1/686F: 4CF366 JMP $66F3 (draw tile A)
C1/6872 character subcommand 02 - draw max HP or gauge
C1/6872: AD2120 LDA $2021 (from C1/6814, X = 2) C1/6875: 2901 AND #$01 (check Gauge on bit?) C1/6877: F01F BEQ $6898 (branch if it's off) C1/6879: A54E LDA $4E (load text color) C1/687B: 48 PHA (save it) C1/687C: A518 LDA $18 C1/687E: AA TAX C1/687F: BD9E61 LDA $619E,X C1/6882: C9FF CMP #$FF C1/6884: D004 BNE $688A (branch if ATB isn't fully charged) C1/6886: A929 LDA #$29 (Set yellow palette for ATB fully charged) C1/6888: 8002 BRA $688C C1/688A: A935 LDA #$35 (Set white palette for ATB charging) C1/688C: 854E STA $4E (set text color) C1/688E: BD9E61 LDA $619E,X C1/6891: 205468 JSR $6854 C1/6894: 68 PLA (load saved text color) C1/6895: 854E STA $4E (set text color) C1/6897: 60 RTS
C1/6898 unknow
C1/6898: A9CE LDA #$CE ("~") (from only C1/6877) C1/689A: 20F366 JSR $66F3 (draw tile A) C1/689D: A909 LDA #$09 (because max HP starts on the 9th byte) C1/689F: 207569 JSR $6975 C1/68A2: A9FF LDA #$FF (a space) C1/68A4: 4CF366 JMP $66F3 (draw tile A)
C1/68A7 unknow
C1/68A7: A90B LDA #$0B (cur. MP starts at 11th byte) (from C1/6814, X = 3) C1/68A9: 4C8469 JMP $6984
C1/68AC data for ATB gauge
C1/68AC: F1F0F0F0 C1/68B0: F2F0F0F0 C1/68B4: F3F0F0F0 C1/68B8: F4F0F0F0 C1/68BC: F5F0F0F0 C1/68C0: F6F0F0F0 C1/68C4: F7F0F0F0 C1/68C8: F8F0F0F0 C1/68CC: F8F1F0F0 C1/68D0: F8F2F0F0 C1/68D4: F8F3F0F0 C1/68D8: F8F4F0F0 C1/68DC: F8F5F0F0 C1/68E0: F8F6F0F0 C1/68E4: F8F7F0F0 C1/68E8: F8F8F0F0 C1/68EC: F8F8F1F0 C1/68F0: F8F8F2F0 C1/68F4: F8F8F3F0 C1/68F8: F8F8F4F0 C1/68FC: F8F8F5F0 C1/6900: F8F8F6F0 C1/6904: F8F8F7F0 C1/6908: F8F8F8F0 C1/690C: F8F8F8F1 C1/6910: F8F8F8F2 C1/6914: F8F8F8F3 C1/6918: F8F8F8F4 C1/691C: F8F8F8F5 C1/6920: F8F8F8F6 C1/6924: F8F8F8F7 C1/6928: F8F8F8F8
C1/692C unknow
C1/692C: A90D LDA #$0D (max MP starts at 13th byte) (from C1/6814, X = 4) C1/692E: 4C8469 JMP $6984 (BRA would work here)
C1/6931 unknow
C1/6931: 5A PHY (from only C1/6975) C1/6932: A8 TAY C1/6933: C220 REP #$20 C1/6935: B710 LDA [$10],Y C1/6937: AA TAX C1/6938: 7B TDC C1/6939: E220 SEP #$20 C1/693B: A9B4 LDA #$B4 C1/693D: 8568 STA $68 C1/693F: 202B1B JSR $1B2B C1/6942: 208F1A JSR $1A8F C1/6945: A600 LDX $00 C1/6947: 7A PLY C1/6948: 60 RTS
C1/6949 unknow
C1/6949: 5A PHY (from only C1/6984) C1/694A: A8 TAY C1/694B: C220 REP #$20 C1/694D: B710 LDA [$10],Y C1/694F: AA TAX C1/6950: 7B TDC C1/6951: E220 SEP #$20 C1/6953: A9B4 LDA #$B4 C1/6955: 8568 STA $68 C1/6957: 202B1B JSR $1B2B C1/695A: 206169 JSR $6961 C1/695D: A600 LDX $00 C1/695F: 7A PLY C1/6960: 60 RTS
C1/6961 unknow
C1/6961: A600 LDX $00 (from only C1/695A) C1/6963: B569 LDA $69,X C1/6965: 38 SEC C1/6966: E568 SBC $68 C1/6968: D00A BNE $6974 C1/696A: A9C8 LDA #$C8 C1/696C: 9569 STA $69,X C1/696E: E8 INX C1/696F: E00300 CPX #$0003 C1/6972: D0EF BNE $6963 C1/6974: 60 RTS
C1/6975 unknow
C1/6975: 203169 JSR $6931 (from C1/6843, C1/689F) C1/6978: B569 LDA $69,X C1/697A: 20F366 JSR $66F3 (draw tile A) C1/697D: E8 INX C1/697E: E00400 CPX #$0004 C1/6981: D0F5 BNE $6978 C1/6983: 60 RTS
C1/6984 unknow
C1/6984: 204969 JSR $6949 (from C1/68A9, C1/692E) C1/6987: B56A LDA $6A,X C1/6989: 20F366 JSR $66F3 (draw tile A) C1/698C: E8 INX C1/698D: E00300 CPX #$0003 C1/6990: D0F5 BNE $6987 C1/6992: 60 RTS
C1/6993 unknow
C1/6993: 20EC66 JSR $66EC (from C1/6704, X = B) C1/6996: A90A LDA #$0A C1/6998: 8510 STA $10 C1/699A: B248 LDA ($48) C1/699C: 0A ASL A C1/699D: AA TAX C1/699E: C220 REP #$20 C1/69A0: BD0D20 LDA $200D,X C1/69A3: C9FFFF CMP #$FFFF C1/69A6: D010 BNE $69B8 C1/69A8: 7B TDC C1/69A9: E220 SEP #$20 C1/69AB: E610 INC $10 C1/69AD: A9FF LDA #$FF (a space) C1/69AF: 20F366 JSR $66F3 (draw tile A) C1/69B2: E8 INX C1/69B3: C610 DEC $10 C1/69B5: D0F6 BNE $69AD C1/69B7: 60 RTS
C1/69b8 unknow
C1/69B8: C220 REP #$20 (from C1/69A6) C1/69BA: 8524 STA $24 C1/69BC: A90A00 LDA #$000A (10 = length of enemy name) C1/69BF: 8522 STA $22 (Animation Script pointer) C1/69C1: 20F418 JSR $18F4 C1/69C4: 7B TDC C1/69C5: E220 SEP #$20 C1/69C7: A626 LDX $26 C1/69C9: BF50C0CF LDA $CFC050,X (Load enemy name X) C1/69CD: 20F366 JSR $66F3 (draw tile A) C1/69D0: E8 INX C1/69D1: C610 DEC $10 (decrement tiles to draw) C1/69D3: D0F4 BNE $69C9 (branch if we haven't done 10 tiles) C1/69D5: A9FF LDA #$FF (a space) C1/69D7: 4CF366 JMP $66F3 (draw tile A)
C1/69DA unknow
C1/69DA: 20EC66 JSR $66EC (from C1/6704, X = C) C1/69DD: 60 RTS
C1/69DE unknow
C1/69DE: 20EC66 JSR $66EC (from C1/6704, X = D) C1/69E1: B248 LDA ($48) C1/69E3: C9FF CMP #$FF C1/69E5: D005 BNE $69EC C1/69E7: A907 LDA #$07 C1/69E9: 4C3B6B JMP $6B3B
C1/69EC: EB XBA (from C1/69E5) C1/69ED: A907 LDA #$07 (7 = battle command name length) C1/69EF: 8510 STA $10 C1/69F1: 20CA18 JSR $18CA (half multiplier) C1/69F4: C220 REP #$20 C1/69F6: AF164200 LDA $004216 (load product) C1/69FA: AA TAX C1/69FB: 7B TDC C1/69FC: E220 SEP #$20 C1/69FE: BFA0CED8 LDA $D8CEA0,X (Loads Battle command name X) C1/6A02: 20F366 JSR $66F3 (draw tile A) C1/6A05: E8 INX C1/6A06: C610 DEC $10 C1/6A08: D0F4 BNE $69FE C1/6A0A: 60 RTS
C1/6A0B unknow
C1/6A0B: 20EC66 JSR $66EC (from C1/6704, X = 10) C1/6A0E: B248 LDA ($48) C1/6A10: C9FF CMP #$FF C1/6A12: D005 BNE $6A19 C1/6A14: A90A LDA #$0A C1/6A16: 4C3B6B JMP $6B3B
C1/6A19: EB XBA (from C1/6A12) C1/6A1A: A90A LDA #$0A (10 = length of battle status text) C1/6A1C: 8510 STA $10 C1/6A1E: 20CA18 JSR $18CA (half multiplier) C1/6A21: C220 REP #$20 C1/6A23: AF164200 LDA $004216 (load product) C1/6A27: AA TAX C1/6A28: 7B TDC C1/6A29: E220 SEP #$20 C1/6A2B: BFE1ADC2 LDA $C2ADE1,X (Loads Battle Status Text) C1/6A2F: 20F366 JSR $66F3 (draw tile A) C1/6A32: E8 INX C1/6A33: C610 DEC $10 C1/6A35: D0F4 BNE $6A2B C1/6A37: 60 RTS
C1/6A38 unknow
C1/6A38: 20EC66 JSR $66EC (from C1/6704, X = 12) C1/6A3B: B248 LDA ($48) C1/6A3D: C9FF CMP #$FF C1/6A3F: D005 BNE $6A46 C1/6A41: A907 LDA #$07 C1/6A43: 4C3B6B JMP $6B3B
C1/6A46: EB XBA (from C1/6A3F) C1/6A47: A90D LDA #$0D (13 = item name length) C1/6A49: 8510 STA $10 C1/6A4B: 20CA18 JSR $18CA (half multiplier) C1/6A4E: C220 REP #$20 C1/6A50: AF164200 LDA $004216 (load product) C1/6A54: AA TAX C1/6A55: 7B TDC C1/6A56: E220 SEP #$20 C1/6A58: BF00B3D2 LDA $D2B300,X (Loads Item name X) C1/6A5C: C9FF CMP #$FF C1/6A5E: F0E1 BEQ $6A41 C1/6A60: 38 SEC C1/6A61: E9D8 SBC #$D8 C1/6A63: EB XBA C1/6A64: A907 LDA #$07 C1/6A66: 8510 STA $10 C1/6A68: 20CA18 JSR $18CA (half multiplier) C1/6A6B: C220 REP #$20 C1/6A6D: AF164200 LDA $004216 (load product) C1/6A71: AA TAX C1/6A72: 7B TDC C1/6A73: E220 SEP #$20 C1/6A75: BF006FD2 LDA $D26F00,X (Loads Weapon/Armor type word X) C1/6A79: 20F366 JSR $66F3 (draw tile A) C1/6A7C: E8 INX C1/6A7D: C610 DEC $10 C1/6A7F: D0F4 BNE $6A75 C1/6A81: 60 RTS
C1/6A82 unknow
C1/6A82: 20EC66 JSR $66EC (from C1/6704, X = E) C1/6A85: B248 LDA ($48) C1/6A87: C9FF CMP #$FF C1/6A89: D005 BNE $6A90 C1/6A8B: A90D LDA #$0D C1/6A8D: 4C3B6B JMP $6B3B
C1/6A90: EB XBA (from C1/6A89) C1/6A91: A90D LDA #$0D (13 = item name length) C1/6A93: 8510 STA $10 C1/6A95: 20CA18 JSR $18CA (half multiplier) C1/6A98: C220 REP #$20 C1/6A9A: AF164200 LDA $004216 (load product) C1/6A9E: AA TAX C1/6A9F: 7B TDC C1/6AA0: E220 SEP #$20 C1/6AA2: BF00B3D2 LDA $D2B300,X (Loads Item name X) C1/6AA6: 20F366 JSR $66F3 (draw tile A) C1/6AA9: E8 INX C1/6AAA: C610 DEC $10 C1/6AAC: D0F4 BNE $6AA2 C1/6AAE: 60 RTS
C1/6AAF unknow
C1/6AAF: 20C26A JSR $6AC2 (from C1/6704, X = 11) C1/6AB2: B248 LDA ($48) C1/6AB4: C9FF CMP #$FF C1/6AB6: F005 BEQ $6ABD C1/6AB8: C936 CMP #$36 C1/6ABA: 9001 BCC $6ABD C1/6ABC: 60 RTS
C1/6ABD: A903 LDA #$03 (from C1/6AB6, C1/6ABA) C1/6ABF: 4C3B6B JMP $6B3B
C1/6AC2 unknow
C1/6AC2: 20EC66 JSR $66EC (from C1/6704, X = F) C1/6AC5: B248 LDA ($48) C1/6AC7: C9FF CMP #$FF C1/6AC9: D005 BNE $6AD0 C1/6ACB: A907 LDA #$07 C1/6ACD: 4C3B6B JMP $6B3B
C1/6AD0: C936 CMP #$36 (from C1/6AC9) C1/6AD2: 9048 BCC $6B1C C1/6AD4: C951 CMP #$51 C1/6AD6: 9022 BCC $6AFA C1/6AD8: 38 SEC C1/6AD9: E951 SBC #$51 C1/6ADB: EB XBA C1/6ADC: A90A LDA #$0A (10 = skean attack name length) C1/6ADE: 8510 STA $10 C1/6AE0: 20CA18 JSR $18CA (half multiplier) C1/6AE3: C220 REP #$20 C1/6AE5: AF164200 LDA $004216 (load product) C1/6AE9: AA TAX C1/6AEA: 7B TDC C1/6AEB: E220 SEP #$20 C1/6AED: BFB9F7E6 LDA $E6F7B9,X (Load skean attack name X) C1/6AF1: 20F366 JSR $66F3 (draw tile A) C1/6AF4: E8 INX C1/6AF5: C610 DEC $10 C1/6AF7: D0F4 BNE $6AED C1/6AF9: 60 RTS
C1/6AFA unknow
C1/6AFA: 38 SEC (from C1/6AD6) C1/6AFB: E936 SBC #$36 C1/6AFD: EB XBA C1/6AFE: A908 LDA #$08 C1/6B00: 8510 STA $10 C1/6B02: 20CA18 JSR $18CA (half multiplier) C1/6B05: C220 REP #$20 C1/6B07: AF164200 LDA $004216 (load product) C1/6B0B: AA TAX C1/6B0C: 7B TDC C1/6B0D: E220 SEP #$20 C1/6B0F: BF75F6E6 LDA $E6F675,X (Loads ??? -- is this a bug?) C1/6B13: 20F366 JSR $66F3 C1/6B16: E8 INX C1/6B17: C610 DEC $10 C1/6B19: D0F4 BNE $6B0F C1/6B1B: 60 RTS
C1/6B1C unknow
C1/6B1C: EB XBA (from C1/6AD2) C1/6B1D: A907 LDA #$07 C1/6B1F: 8510 STA $10 C1/6B21: 20CA18 JSR $18CA (half multiplier) C1/6B24: C220 REP #$20 C1/6B26: AF164200 LDA $004216 (load product) C1/6B2A: AA TAX C1/6B2B: 7B TDC C1/6B2C: E220 SEP #$20 C1/6B2E: BF67F5E6 LDA $E6F567,X (Load spell name X) C1/6B32: 20F366 JSR $66F3 C1/6B35: E8 INX C1/6B36: C610 DEC $10 C1/6B38: D0F4 BNE $6B2E C1/6B3A: 60 RTS
C1/6B3B unknow
C1/6B3B: 851A STA $1A (from various, above) C1/6B3D: A9FF LDA #$FF C1/6B3F: 20F366 JSR $66F3 C1/6B42: C61A DEC $1A C1/6B44: D0F7 BNE $6B3D C1/6B46: 60 RTS
C1/6B47 unknow
C1/6B47: A400 LDY $00 C1/6B49: 7B TDC C1/6B4A: 996D5F STA $5F6D,Y C1/6B4D: 998D5F STA $5F8D,Y C1/6B50: 999D5F STA $5F9D,Y C1/6B53: A940 LDA #$40 C1/6B55: 997D5F STA $5F7D,Y C1/6B58: C8 INY C1/6B59: C01000 CPY #$0010 C1/6B5C: D0EB BNE $6B49 C1/6B5E: 60 RTS
C1/6B5F unknow
C1/6B5F: 48 PHA C1/6B60: 18 CLC C1/6B61: 796D5F ADC $5F6D,Y C1/6B64: 996D5F STA $5F6D,Y C1/6B67: 68 PLA C1/6B68: 18 CLC C1/6B69: 797D5F ADC $5F7D,Y C1/6B6C: 997D5F STA $5F7D,Y C1/6B6F: 60 RTS
C1/6B70 unknow
C1/6B70: 48 PHA C1/6B71: 18 CLC C1/6B72: 798D5F ADC $5F8D,Y C1/6B75: 998D5F STA $5F8D,Y C1/6B78: 68 PLA C1/6B79: 18 CLC C1/6B7A: 799D5F ADC $5F9D,Y C1/6B7D: 999D5F STA $5F9D,Y C1/6B80: 60 RTS
C1/6B81 unknow
C1/6B81: B98D5F LDA $5F8D,Y C1/6B84: 0A ASL A C1/6B85: 8524 STA $24 C1/6B87: B96D5F LDA $5F6D,Y C1/6B8A: 4C996B JMP $6B99 (BRA is better)
C1/6B8D unknow
C1/6B8D: B99D5F LDA $5F9D,Y C1/6B90: 0A ASL A C1/6B91: 8524 STA $24 C1/6B93: B97D5F LDA $5F7D,Y C1/6B96: 4C996B JMP $6B99 (pointless)
C1/6B99 unknow
C1/6B99: AA TAX C1/6B9A: BF6DFEC2 LDA $C2FE6D,X (Load value from sine table) C1/6B9E: 101A BPL $6BBA C1/6BA0: 49FF EOR #$FF C1/6BA2: 8F024200 STA $004202 C1/6BA6: A524 LDA $24 C1/6BA8: 8F034200 STA $004203 C1/6BAC: A9FF LDA #$FF C1/6BAE: 8567 STA $67 C1/6BB0: 8567 STA $67 C1/6BB2: AF174200 LDA $004217 C1/6BB6: 49FF EOR #$FF C1/6BB8: 1A INC A C1/6BB9: 60 RTS
C1/6BBA unknow
C1/6BBA: 8F024200 STA $004202 C1/6BBE: A524 LDA $24 C1/6BC0: 8F034200 STA $004203 C1/6BC4: A900 LDA #$00 C1/6BC6: 8567 STA $67 C1/6BC8: 8567 STA $67 C1/6BCA: AF174200 LDA $004217 C1/6BCE: 60 RTS
C1/6BCF unknow
C1/6BCF: E230 SEP #$30 C1/6BD1: 8B PHB C1/6BD2: A900 LDA #$00 C1/6BD4: 48 PHA C1/6BD5: AB PLB C1/6BD6: A624 LDX $24 C1/6BD8: 8E0242 STX $4202 C1/6BDB: A522 LDA $22 (Animation Script pointer) C1/6BDD: 8D0342 STA $4203 C1/6BE0: C220 REP #$20 C1/6BE2: A423 LDY $23 C1/6BE4: EA NOP C1/6BE5: AD1642 LDA $4216 (load product) C1/6BE8: 8E0242 STX $4202 C1/6BEB: 8C0342 STY $4203 C1/6BEE: 8526 STA $26 C1/6BF0: 6428 STZ $28 C1/6BF2: C210 REP #$10 C1/6BF4: AD1642 LDA $4216 (load product) C1/6BF7: 18 CLC C1/6BF8: 6527 ADC $27 C1/6BFA: 8527 STA $27 C1/6BFC: 0626 ASL $26 C1/6BFE: 2628 ROL $28 C1/6C00: AB PLB C1/6C01: 60 RTS
C1/6C02 unknow
C1/6C02: C210 REP #$10 C1/6C04: A516 LDA $16 C1/6C06: 29FF01 AND #$01FF C1/6C09: AA TAX C1/6C0A: BF6DFCC2 LDA $C2FC6D,X (Translation? This loads from blank space) C1/6C0E: 102F BPL $6C3F C1/6C10: E210 SEP #$10 C1/6C12: 49FFFF EOR #$FFFF C1/6C15: A624 LDX $24 C1/6C17: 8E0242 STX $4202 C1/6C1A: AA TAX C1/6C1B: 8E0342 STX $4203 C1/6C1E: 8522 STA $22 (Animation Script pointer) C1/6C20: EB XBA C1/6C21: AA TAX C1/6C22: AD1642 LDA $4216 (load product) C1/6C25: 8E0342 STX $4203 C1/6C28: 8526 STA $26 C1/6C2A: 6428 STZ $28 C1/6C2C: 18 CLC C1/6C2D: AD1642 LDA $4216 (load product) C1/6C30: 6527 ADC $27 C1/6C32: 8527 STA $27 C1/6C34: 0626 ASL $26 C1/6C36: 2628 ROL $28 C1/6C38: A528 LDA $28 C1/6C3A: 49FFFF EOR #$FFFF C1/6C3D: 1A INC A C1/6C3E: 60 RTS
C1/6C3F unknow
C1/6C3F: E210 SEP #$10 C1/6C41: A624 LDX $24 C1/6C43: 8E0242 STX $4202 C1/6C46: AA TAX C1/6C47: 8E0342 STX $4203 C1/6C4A: 8522 STA $22 (Animation Script pointer) C1/6C4C: EB XBA C1/6C4D: AA TAX C1/6C4E: AD1642 LDA $4216 (load product) C1/6C51: 8E0342 STX $4203 C1/6C54: 8526 STA $26 C1/6C56: 6428 STZ $28 C1/6C58: 18 CLC C1/6C59: AD1642 LDA $4216 (load product) C1/6C5C: 6527 ADC $27 C1/6C5E: 8527 STA $27 C1/6C60: 0626 ASL $26 C1/6C62: 2628 ROL $28 C1/6C64: A528 LDA $28 C1/6C66: 60 RTS
C1/6C67 unknow
C1/6C67: C220 REP #$20 C1/6C69: 29FF00 AND #$00FF C1/6C6C: 0A ASL A C1/6C6D: AA TAX C1/6C6E: BF6DFCC2 LDA $C2FC6D,X (Translation? This loads from blank space) C1/6C72: 1014 BPL $6C88 C1/6C74: 49FFFF EOR #$FFFF C1/6C77: 8522 STA $22 (Animation Script pointer) C1/6C79: 20CF6B JSR $6BCF C1/6C7C: A528 LDA $28 C1/6C7E: 49FFFF EOR #$FFFF C1/6C81: 1A INC A C1/6C82: 8528 STA $28 C1/6C84: 7B TDC C1/6C85: E220 SEP #$20 C1/6C87: 60 RTS
C1/6C88 unknow
C1/6C88: 8522 STA $22 (Animation Script pointer) C1/6C8A: 20CF6B JSR $6BCF C1/6C8D: 7B TDC C1/6C8E: E220 SEP #$20 C1/6C90: 60 RTS
C1/6C91 unknow
C1/6C91: A57D LDA $7D C1/6C93: 38 SEC C1/6C94: E57F SBC $7F C1/6C96: 8581 STA $81 C1/6C98: A900 LDA #$00 C1/6C9A: E900 SBC #$00 C1/6C9C: 8582 STA $82 C1/6C9E: A57E LDA $7E C1/6CA0: 38 SEC C1/6CA1: E580 SBC $80 C1/6CA3: 8583 STA $83 C1/6CA5: A900 LDA #$00 C1/6CA7: E900 SBC #$00 C1/6CA9: 8584 STA $84 C1/6CAB: A581 LDA $81 C1/6CAD: 4582 EOR $82 C1/6CAF: 38 SEC C1/6CB0: E582 SBC $82 C1/6CB2: 8588 STA $88 C1/6CB4: 6489 STZ $89 C1/6CB6: A583 LDA $83 C1/6CB8: 4584 EOR $84 C1/6CBA: 38 SEC C1/6CBB: E584 SBC $84 C1/6CBD: 858A STA $8A C1/6CBF: 648B STZ $8B C1/6CC1: C220 REP #$20 C1/6CC3: A588 LDA $88 C1/6CC5: 4A LSR A C1/6CC6: 4A LSR A C1/6CC7: 4A LSR A C1/6CC8: 8586 STA $86 C1/6CCA: A58A LDA $8A C1/6CCC: 29F8FF AND #$FFF8 C1/6CCF: 0A ASL A C1/6CD0: 0A ASL A C1/6CD1: 18 CLC C1/6CD2: 6586 ADC $86 C1/6CD4: 858C STA $8C C1/6CD6: 0A ASL A C1/6CD7: AA TAX C1/6CD8: BD00F8 LDA $F800,X C1/6CDB: 8586 STA $86 C1/6CDD: 7B TDC C1/6CDE: E220 SEP #$20 C1/6CE0: A68C LDX $8C C1/6CE2: BF45C9C2 LDA $C2C945,X (??? -- This has been dummied out) C1/6CE6: 8585 STA $85 C1/6CE8: A582 LDA $82 C1/6CEA: 3014 BMI $6D00 C1/6CEC: A584 LDA $84 C1/6CEE: 3008 BMI $6CF8 C1/6CF0: A980 LDA #$80 C1/6CF2: 18 CLC C1/6CF3: 6585 ADC $85 C1/6CF5: 8585 STA $85 C1/6CF7: 60 RTS
C1/6CF8: A980 LDA #$80 C1/6CFA: 38 SEC C1/6CFB: E585 SBC $85 C1/6CFD: 8585 STA $85 C1/6CFF: 60 RTS
C1/6D00 unknow
C1/6D00: A584 LDA $84 C1/6D02: 3007 BMI $6D0B C1/6D04: A900 LDA #$00 C1/6D06: 38 SEC C1/6D07: E585 SBC $85 C1/6D09: 8585 STA $85 C1/6D0B: 60 RTS
C1/6D0C unknow
C1/6D0C: A245CD LDX #$CD45 C1/6D0F: 86F3 STX $F3 C1/6D11: A9C2 LDA #$C2 C1/6D13: 85F5 STA $F5 (source is C2/CD45) C1/6D15: A200A4 LDX #$A400 C1/6D18: 86F6 STX $F6 C1/6D1A: A97F LDA #$7F C1/6D1C: 85F8 STA $F8 (destination is 7F/A400) C1/6D1E: 226DFFC2 JSL $C2FF6D (LZ decompression) C1/6D22: A200F8 LDX #$F800 C1/6D25: 8610 STX $10 C1/6D27: C220 REP #$20 C1/6D29: 7B TDC C1/6D2A: AA TAX C1/6D2B: 7B TDC C1/6D2C: 8512 STA $12 C1/6D2E: A8 TAY C1/6D2F: BF00A47F LDA $7FA400,X C1/6D33: 29FF00 AND #$00FF C1/6D36: 18 CLC C1/6D37: 6512 ADC $12 C1/6D39: 8512 STA $12 C1/6D3B: 9110 STA ($10),Y C1/6D3D: C8 INY C1/6D3E: C8 INY C1/6D3F: E8 INX C1/6D40: C04000 CPY #$0040 C1/6D43: D0EA BNE $6D2F C1/6D45: A510 LDA $10 C1/6D47: 18 CLC C1/6D48: 694000 ADC #$0040 C1/6D4B: 8510 STA $10 C1/6D4D: E00004 CPX #$0400 C1/6D50: D0D9 BNE $6D2C C1/6D52: 7B TDC C1/6D53: E220 SEP #$20 C1/6D55: 60 RTS
C1/6D56 unknow
C1/6D56: AD807B LDA $7B80 C1/6D59: 2903 AND #$03 C1/6D5B: 0A ASL A C1/6D5C: 0A ASL A C1/6D5D: 0A ASL A C1/6D5E: A8 TAY C1/6D5F: 60 RTS
C1/6D60 data
C1/6D60: 0100 C1/6D62: FFFFFF00 C1/6D66: 01FF C1/6D68: 0100 C1/6D6A: 01FF C1/6D6C: FF000100
C1/6D70 unknow
C1/6D70: 2903 AND #$03 C1/6D72: 48 PHA C1/6D73: AA TAX C1/6D74: 2901 AND #$01 C1/6D76: F00E BEQ $6D86 C1/6D78: AD1D20 LDA $201D (load valid character targets) C1/6D7B: 2DAC61 AND $61AC C1/6D7E: 2DAD61 AND $61AD C1/6D81: 2D9361 AND $6193 C1/6D84: 8002 BRA $6D88 (BEQ $6D8D?) C1/6D86: A592 LDA $92 C1/6D88: F003 BEQ $6D8D C1/6D8A: 68 PLA C1/6D8B: 38 SEC C1/6D8C: 60 RTS
C1/6D8D: 68 PLA C1/6D8E: 18 CLC C1/6D8F: 60 RTS
C1/6D90 unknow
C1/6D90: ADCB7B LDA $7BCB (from C1/5529, X = 38) C1/6D93: F003 BEQ $6D98 C1/6D95: 4C576F JMP $6F57
C1/6D98: AD847A LDA $7A84 (load character targeting) C1/6D9B: 2910 AND #$10 (is auto confirm set?) C1/6D9E: F003 BEQ $6DA2 (branch if not) C1/6DA0: 4C256F JMP $6F25
C1/6DA2: AD1D20 LDA $201D (Load valid character targets) C1/6DA5: 2DAC61 AND $61AC C1/6DA8: 2DAD61 AND $61AD C1/6DAB: 2D9361 AND $6193 C1/6DAE: 2D7D7B AND $7B7D C1/6DB1: D00A BNE $6DBD C1/6DB3: A592 LDA $92 C1/6DB5: 2D7E7B AND $7B7E C1/6DB8: D003 BNE $6DBD C1/6DBA: 4C576F JMP $6F57
C1/6DBD: AD847A LDA $7A84 (load character targeting) C1/6DC0: 8536 STA $36 (save it for now) C1/6DC2: 100D BPL $6DD1 (branch if "random selection" isn't set) C1/6DC4: ADB462 LDA $62B4 C1/6DC7: F00B BEQ $6DD4 C1/6DC9: CEB262 DEC $62B2 C1/6DCC: D06F BNE $6E3D C1/6DCE: 4C256F JMP $6F25
C1/6DD1: 4C406E JMP $6E40
C1/6DD4: ADB162 LDA $62B1 C1/6DD7: F01D BEQ $6DF6 C1/6DD9: A50E LDA $0E C1/6DDB: 2907 AND #$07 C1/6DDD: D05E BNE $6E3D C1/6DDF: CEB262 DEC $62B2 C1/6DE2: D018 BNE $6DFC C1/6DE4: A901 LDA #$01 C1/6DE6: 8DB462 STA $62B4 C1/6DE9: A920 LDA #$20 C1/6DEB: 8DB262 STA $62B2 C1/6DEE: A901 LDA #$01 C1/6DF0: 8D7F7B STA $7B7F C1/6DF3: 4C696F JMP $6F69
C1/6DF6: A50E LDA $0E C1/6DF8: 2903 AND #$03 C1/6DFA: D041 BNE $6E3D C1/6DFC: E694 INC $94 C1/6DFE: EEB362 INC $62B3 C1/6E01: ADB362 LDA $62B3 C1/6E04: 2908 AND #$08 C1/6E06: F021 BEQ $6E29 C1/6E08: ADB362 LDA $62B3 C1/6E0B: 2907 AND #$07 C1/6E0D: AA TAX C1/6E0E: AD1D20 LDA $201D (Load valid character targets) C1/6E11: 2DAC61 AND $61AC C1/6E14: 2DAD61 AND $61AD C1/6E17: 2D9361 AND $6193 C1/6E1A: 3F011AC1 AND $C11A01,X C1/6E1E: F0DC BEQ $6DFC C1/6E20: 8D7D7B STA $7B7D C1/6E23: 9C7E7B STZ $7B7E C1/6E26: 4C056F JMP $6F05
C1/6E29 unknow
C1/6E29: ADB362 LDA $62B3 C1/6E2C: 2907 AND #$07 C1/6E2E: AA TAX C1/6E2F: BF011AC1 LDA $C11A01,X C1/6E33: 2592 AND $92 C1/6E35: F0C5 BEQ $6DFC C1/6E37: 8D7E7B STA $7B7E C1/6E3A: 9C7D7B STZ $7B7D C1/6E3D: 4C056F JMP $6F05
C1/6E40 unknow
C1/6E40: A536 LDA $36 (load saved character targeting) C1/6E42: 290D AND #$0D (isolate some bits) C1/6E44: C908 CMP #$08 (is only "auto select one chunk" set?) C1/6E46: D03A BNE $6E82 (branch if not) C1/6E48: A505 LDA $05 (load shared controller byte) C1/6E4A: 2903 AND #$03 (are we pressing left or right?) C1/6E4C: F034 BEQ $6E82 (branch if not) C1/6E4E: E694 INC $94 C1/6E50: A505 LDA $05 (load shared controller byte) C1/6E52: 2902 AND #$02 (is anyone pressing left?) C1/6E54: D016 BNE $6E6C (branch if so) C1/6E56: ADCE7A LDA $7ACE C1/6E59: 2902 AND #$02 C1/6E5B: D025 BNE $6E82 C1/6E5D: ADCE7A LDA $7ACE (optionally, BIT #$02 and you won't need this LDA) C1/6E60: 1A INC A C1/6E61: 1A INC A C1/6E62: 20706D JSR $6D70 C1/6E65: 901B BCC $6E82 C1/6E67: 8DCE7A STA $7ACE C1/6E6A: 802E BRA $6E9A C1/6E6C: ADCE7A LDA $7ACE C1/6E6F: 2902 AND #$02 C1/6E71: F00F BEQ $6E82 C1/6E73: ADCE7A LDA $7ACE C1/6E76: 3A DEC A C1/6E77: 3A DEC A C1/6E78: 20706D JSR $6D70 C1/6E7B: 9005 BCC $6E82 C1/6E7D: 8DCE7A STA $7ACE C1/6E80: 8018 BRA $6E9A C1/6E82: A536 LDA $36 (load saved character targetting) C1/6E84: 2901 AND #$01 (is "cursor movable" set?) C1/6E86: F07D BEQ $6F05 (branch if not) C1/6E88: A504 LDA $04 (load shared controller byte) C1/6E8A: 2930 AND #$30 (is anyone pressing L or R?) C1/6E8C: F045 BEQ $6ED3 (branch if not) C1/6E8E: C930 CMP #$30 (is anyone pressing both L and R?) C1/6E90: F041 BEQ $6ED3 (branch if not) C1/6E92: E694 INC $94 C1/6E94: A536 LDA $36 (load saved character targeting) C1/6E96: 2920 AND #$20 (is "manual party select" set?) C1/6E98: F039 BEQ $6ED3 (branch if not) C1/6E9A: ADCE7A LDA $7ACE C1/6E9D: 2901 AND #$01 C1/6E9F: F01E BEQ $6EBF C1/6EA1: ADCE7A LDA $7ACE C1/6EA4: AA TAX C1/6EA5: AD1D20 LDA $201D (Load valid character targets) C1/6EA8: 2DAC61 AND $61AC C1/6EAB: 2DAD61 AND $61AD C1/6EAE: 2D9361 AND $6193 C1/6EB1: 3D797B AND $7B79,X C1/6EB4: 8D7D7B STA $7B7D C1/6EB7: A901 LDA #$01 C1/6EB9: 8D7F7B STA $7B7F C1/6EBC: 4C056F JMP $6F05 (BRA fool!)
C1/6EBF unknow
C1/6EBF: ADCE7A LDA $7ACE C1/6EC2: AA TAX C1/6EC3: A592 LDA $92 C1/6EC5: 3D797B AND $7B79,X C1/6EC8: 8D7E7B STA $7B7E C1/6ECB: A901 LDA #$01 C1/6ECD: 8D7F7B STA $7B7F C1/6ED0: 4C056F JMP $6F05 (BRA fool!)
C1/6ED3 unknow
C1/6ED3: A505 LDA $05 (load shared controller byte) C1/6ED5: 290F AND #$0F (isolate directions) C1/6ED7: F002 BEQ $6EDB (branch if not pressing up, down, left, or right) C1/6ED9: E694 INC $94 C1/6EDB: A505 LDA $05 (load shared controller byte) C1/6EDD: C908 CMP #$08 (is anyone pressing only up?) C1/6EDF: D006 BNE $6EE7 (branch if not) C1/6EE1: 208473 JSR $7384 C1/6EE4: 4C056F JMP $6F05 (BRA fool!)
C1/6EE7: C904 CMP #$04 (is anyone pressing only down?) C1/6EE9: D006 BNE $6EF1 (branch if not) C1/6EEB: 20D673 JSR $73D6 C1/6EEE: 4C056F JMP $6F05 (BRA fool!)
C1/6EF1: C902 CMP #$02 (is anyone pressing only left?) C1/6EF3: D006 BNE $6EFB (branch if not) C1/6EF5: 203377 JSR $7733 C1/6EF8: 4C056F JMP $6F05
C1/6EFB: C901 CMP #$01 (is anyone pressing only right?) C1/6EFD: D006 BNE $6F05 (branch if not) C1/6EFF: 204A77 JSR $774A C1/6F02: 4C056F JMP $6F05 (...)
C1/6F05: A504 LDA $04 (load shared controller byte) C1/6F07: 1043 BPL $6F4C (branch if nobody is pressing A) C1/6F09: E696 INC $96 C1/6F0B: AD847A LDA $7A84 (load character targeting) C1/6F0E: 1015 BPL $6F25 (branch if "random selection" isn't set) C1/6F10: ADB162 LDA $62B1 C1/6F13: D037 BNE $6F4C C1/6F15: EEB162 INC $62B1 C1/6F18: 205B18 JSR $185B (Random number generator) C1/6F1B: 2907 AND #$07 (now random number 0-7) C1/6F1D: 18 CLC C1/6F1E: 6908 ADC #$08 (finally, random number 8-15) C1/6F20: 8DB262 STA $62B2 C1/6F23: 8027 BRA $6F4C C1/6F25: 209670 JSR $7096 C1/6F28: 9C7D7B STZ $7B7D C1/6F2B: 9C7E7B STZ $7B7E C1/6F2E: 9C7F7B STZ $7B7F C1/6F31: AD837A LDA $7A83 C1/6F34: 8DC27B STA $7BC2 C1/6F37: ADE87A LDA $7AE8 C1/6F3A: F009 BEQ $6F45 C1/6F3C: ADE97A LDA $7AE9 C1/6F3F: D004 BNE $6F45 C1/6F41: EEE97A INC $7AE9 C1/6F44: 60 RTS
C1/6F45: EECB7B INC $7BCB C1/6F48: EE807B INC $7B80 C1/6F4B: 60 RTS
C1/6F46 unknow
C1/6F4C: A509 LDA $09 (load controller 1) C1/6F4E: 1019 BPL $6F69 (branch if not pressing B) C1/6F50: ADB162 LDA $62B1 C1/6F53: D014 BNE $6F69 C1/6F55: E696 INC $96 C1/6F57: 9C7D7B STZ $7B7D C1/6F5A: 9C7E7B STZ $7B7E C1/6F5D: 9C7F7B STZ $7B7F C1/6F60: AD837A LDA $7A83 C1/6F63: 8DC27B STA $7BC2 C1/6F66: 9CE97A STZ $7AE9 C1/6F69: 60 RTS
C1/6F6A data of keyboard keys
C1/6F6A: FFFF (Nothing) C1/6F6C: 8000 (A) C1/6F6E: 0080 (B) C1/6F70: 4000 (X) C1/6F72: 0040 (Y) C1/6F74: 2000 (L) C1/6F76: 1000 (R) C1/6F78: 0006 (Down-Left) C1/6F7A: 0004 (Down) C1/6F7C: 0005 (Down-Right) C1/6F7E: 0001 (Right) C1/6F80: 0009 (Up-Right) C1/6F82: 0008 (Up) C1/6F84: 000A (Up-Left) C1/6F86: 0002 (Left)
C1/6F88 data for blitz unknow
C1/6F88: 00 (Pummel) C1/6F89: 0C (Aura Bolt) C1/6F8A: 18 (Suplex) C1/6F8B: 24 (Fire Dance) C1/6F8C: 30 (Mantra) C1/6F8D: 3C (Air Blade) C1/6F8E: 48 (Spiraler) C1/6F8F: 54 (Bum Rush)
C1/6F90 unknow
C1/6F90: 6436 STZ $36 (from only C1/7045) C1/6F92: A536 LDA $36 C1/6F94: AA TAX C1/6F95: BF886FC1 LDA $C16F88,X (Load offset into the blitz button structure for blitz) C1/6F99: AA TAX C1/6F9A: BF4B7AC4 LDA $C47A4B,X (Load the button presses for the blitz) C1/6F9E: 3A DEC A C1/6F9F: 3A DEC A C1/6FA0: C220 REP #$20 (16 bit accum./memory) C1/6FA2: 8538 STA $38 (Store (button presses - 1)*2 to $38) C1/6FA4: 7B TDC C1/6FA5: A8 TAY C1/6FA6: BF407AC4 LDA $C47A40,X (Load Blitz specification.) 00 = Nothing, 01 = A, 02 = B, 03 = X, 04 = Y, 05 = L, 06 = R, 07 = Down-Left, 08 = Down, 09 = Down-Right, 0A = Right, 0B = Up-Right, 0C = Up, 0D = Up-Left, 0E = Left ) C1/6FAA: 29FF00 AND #$00FF (Filter out to a single byteA) C1/6FAD: 0A ASL A (Double it, to use as a pointer into data table) C1/6FAE: DA PHX C1/6FAF: AA TAX C1/6FB0: BF6A6FC1 LDA $C16F6A,X (Load bit mask for button) C1/6FB4: 991EEA STA $EA1E,Y (Store the bit mask to $EA1E structure) C1/6FB7: FA PLX C1/6FB8: C8 INY C1/6FB9: C8 INY C1/6FBA: E8 INX C1/6FBB: C01400 CPY #$0014 C1/6FBD: D0E6 BNE $6FA6 C1/6FBF: 7B TDC (Clear A) C1/6FC1: A8 TAY (Now Y = 0) C1/6FC2: B91EEA LDA $EA1E,Y (Load the bit mask for current blitz) C1/6FC5: 852C STA $2C (Store to $2C) C1/6FC7: B9FEE9 LDA $E9FE,Y (Load the actual-pressed button) C1/6FCA: 252C AND $2C C1/6FCC: F01C BEQ $6FEA C1/6FCE: C8 INY C1/6FCF: C8 INY C1/6FD0: C438 CPY $38 (continue until only one button press left) C1/6FD2: D0EE BNE $6FC2 (Branch back to start of loop if not the last button yet) C1/6FD4: B9FCE9 LDA $E9FC,Y (Load the actual-pressed button?) C1/6FD7: 298000 AND #$0080 (Filter out the bit for "A") C1/6FDA: D008 BNE $6FE4 (Branch if it is set, i.e. you confirmed) C1/6FDC: B9FEE9 LDA $E9FE,Y (Load the actual-pressed button?) C1/6FDF: 298000 AND #$0080 (Filter out the bit for "A") C1/6FE2: F006 BEQ $6FEA (If it's clear, branch. You didn't have a match) C1/6FE4: 7B TDC C1/6FE5: E220 SEP #$20 (8 bit accum./memory) C1/6FE7: A536 LDA $36 (Return number for the successful blitz) C1/6FE9: 60 RTS
C1/EA wrong blitz input
C1/6FEA: 7B TDC (from C1/6FCC, C1/6FE2) C1/6FEB: E220 SEP #$20 (8 bit accum./memory) C1/6FED: E636 INC $36 (Increment the blitz index to check) C1/6FEF: A536 LDA $36 (Load the blitz index) C1/6FF1: C908 CMP #$08 (Compare to 8, since there's 8 blitzes) C1/6FF3: D09D BNE $6F92 (Branch if not equal--more blitzes to check) C1/6FF5: A9FF LDA #$FF (Return FF, for failure) C1/6FF7: 60 RTS
C1/6FF8 unknow
C1/6FF8: ADCB7B LDA $7BCB (from C1/5529, X = 3D) C1/6FFB: F003 BEQ $7000 C1/6FFD: 4C8370 JMP $7083