If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Final Fantasy VI/ROM map/Assembly C16
< Final Fantasy VI | ROM map
Jump to navigation
Jump to search
This is a sub-page of Final Fantasy VI/ROM map.
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