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 C10
< Final Fantasy VI | ROM map
Jump to navigation
Jump to search
C1/0000 unknow
C1/0000: 48 PHA (from C2/6425) C1/0001: 7B TDC C1/0002: 68 PLA C1/0003: 0A ASL A C1/0004: AA TAX C1/0005: 7C0800 JMP ($0008,X)
C1/0008 unknow (2-byte pointers)
C1/0008: EC01 (0) C1/000A: FB01 (1) (beginning of battle???) C1/000C: 5702 (2) C1/000E: 4C02 (3) C1/0010: 1295 (4) (battle dynamics script) C1/0012: CC01 (5) (in-battle inventory update) C1/0014: 9701 (6) C1/0016: 7001 (7) C1/0018: 1701 (8) (at end of victorious battle) C1/001A: AF00 (9) (at very end of battle) C1/001C: AB00 (A) (???) C1/001E: 7101 (B) C1/0020: 2D00 (C) C1/0022: 2400 (D)
C1/0024 unknow
C1/0024: A510 LDA $10 (from C1/0005, X = D) C1/0026: 2903 AND #$03 C1/0028: AA TAX C1/0029: BD0140 LDA $4001,X C1/002C: 6B RTL
C1/002D unknow
C1/002D: ADB8EC LDA $ECB8 (from C1/0005, X = C, load battle background ID) C1/0030: C935 CMP #$35 (are we on tier 3?) C1/0032: D017 BNE $004B (branch if not) C1/0034: EEEDE9 INC $E9ED C1/0037: A981 LDA #$81 C1/0039: 8D0013 STA $1300 C1/003C: A980 LDA #$80 (128 = song index?? (silence maybe?)) C1/003E: 8D0113 STA $1301 C1/0041: 9C0213 STZ $1302 C1/0044: 220400C5 JSL $C50004 C1/0048: 9CEDE9 STZ $E9ED C1/004B: A980 LDA #$80 C1/004D: 8D8562 STA $6285 C1/0050: EEEFE9 INC $E9EF C1/0053: EE0FEC INC $EC0F C1/0056: EE9A62 INC $629A C1/0059: 200501 JSR $0105 C1/005C: 220DB6C2 JSL $C2B60D C1/0060: 206B92 JSR $926B C1/0063: 7B TDC C1/0064: 205E92 JSR $925E C1/0067: 20DC91 JSR $91DC C1/006A: 7B TDC C1/006B: AA TAX C1/006C: 9E7861 STZ $6178,X C1/006F: E8 INX C1/0070: E0BE00 CPX #$00BE C1/0073: D0F7 BNE $006C C1/0075: 6B RTL
C1/0076 unknow
C1/0076: 20E00F JSR $0FE0 (from C1/92F5) C1/0079: 20B60F JSR $0FB6 C1/007C: 9CEFE9 STZ $E9EF C1/007F: 20F30D JSR $0DF3 C1/0082: EEEFE9 INC $E9EF C1/0085: 20670E JSR $0E67 C1/0088: 201F0F JSR $0F1F C1/008B: 20014A JSR $4A01 C1/008E: 20233D JSR $3D23 C1/0091: 204D3E JSR $3E4D C1/0094: 208F46 JSR $468F C1/0097: 20014A JSR $4A01 C1/009A: 205947 JSR $4759 C1/009D: EEBB7B INC $7BBB C1/00A0: 208F0F JSR $0F8F C1/00A3: 207C95 JSR $957C C1/00A6: 2252B6C2 JSL $C2B652 C1/00AA: 60 RTS
C1/00AB unknow
C1/00AB: 204544 JSR $4445 (from C1/0005, X = A) C1/00AE: 6B RTL
C1/00AF unknow
C1/00AF: AD4B2F LDA $2F4B (Monst. Form. Aux. Byte 4) (from C1/0005, X = 9) C1/00B2: 3007 BMI $00BB (Branch if continue current music) C1/00B4: ADE411 LDA $11E4 C1/00B7: 2908 AND #$08 C1/00B9: F005 BEQ $00C0 C1/00BB: AD8462 LDA $6284 C1/00BE: F017 BEQ $00D7 C1/00C0: EEEDE9 INC $E9ED C1/00C3: A981 LDA #$81 C1/00C5: 8D0013 STA $1300 C1/00C8: A910 LDA #$10 (16 = song index) C1/00CA: 8D0113 STA $1301 C1/00CD: 9C0213 STZ $1302 C1/00D0: 220400C5 JSL $C50004 C1/00D4: 9CEDE9 STZ $E9ED C1/00D7: ADF9E9 LDA $E9F9 C1/00DA: F00A BEQ $00E6 C1/00DC: A901 LDA #$01 C1/00DE: 20B69B JSR $9BB6 C1/00E1: CEF9E9 DEC $E9F9 C1/00E4: D0F6 BNE $00DC C1/00E6: 220DB6C2 JSL $C2B60D C1/00EA: 7B TDC C1/00EB: 48 PHA C1/00EC: AB PLB C1/00ED: 9C0042 STZ $4200 C1/00F0: 9C0B42 STZ $420B C1/00F3: 9C0C42 STZ $420C C1/00F6: A980 LDA #$80 C1/00F8: 8D0021 STA $2100 C1/00FB: A96B LDA #$6B C1/00FD: 8D0015 STA $1500 C1/0100: 8D0415 STA $1504 C1/0103: 78 SEI C1/0104: 6B RTL
C1/0105 unknow
C1/0105: A2FFFF LDX #$FFFF (from C1/0059) C1/0108: 8E0140 STX $4001 C1/010B: 8E0340 STX $4003 C1/010E: 202A02 JSR $022A C1/0111: ADCA7B LDA $7BCA C1/0114: D0EF BNE $0105 C1/0116: 60 RTS
C1/0117 unknow
C1/0117: EE0FEC INC $EC0F (from C1/0005, X = 8) C1/011A: EE9A62 INC $629A C1/011D: 200501 JSR $0105 C1/0120: 229701C1 JSR $C10197 C1/0124: AD492F LDA $2F49 (Load Monst. Form. Aux. Byte 2) C1/0127: 2902 AND #$02 (Zero out all but "disable fanfare") C1/0129: D03F BNE $016A (If not zero, then fanfare is disabled, so exit) C1/012B: 7B TDC (A = 0) C1/012C: AA TAX (X = 0) C1/012D: BF6B01C1 LDA $C1016B,X (Load this hardcoded script stuff...) C1/0131: 9D6E2D STA $2D6E,X (and write to Battle Dynamics Command) C1/0134: E8 INX (X = X + 1) C1/0135: E00500 CPX #$0005 (Check if X = 5 yet) C1/0138: D0F3 BNE $012D (If not, branch) C1/013A: 202A02 JSR $022A C1/013D: 202A02 JSR $022A C1/0140: ADE411 LDA $11E4 C1/0143: 2908 AND #$08 C1/0145: D01C BNE $0163 C1/0147: EEEDE9 INC $E9ED C1/014A: EE8462 INC $6284 C1/014D: A910 LDA #$10 (16 = instrument set?) C1/014F: 8D0013 STA $1300 C1/0152: A92F LDA #$2F (47 = fanfare song data #) C1/0154: 8D0113 STA $1301 C1/0157: A9FF LDA #$FF (Volume: FF = normal) C1/0159: 8D0213 STA $1302 C1/015C: 220400C5 JSL $C50004 (Changes the music to fanfare) C1/0160: 9CEDE9 STZ $E9ED C1/0163: EE8D62 INC $628D C1/0166: 221295C1 JSL $C19512 (Changes to victory dance) C1/016A: 6B RTL
C1/016B unknow (data)
C1/016B: 0F - BDS command 0F = Trigger Battle Event C1/016C: 01 - Param. 1 = 01 = "Victory dance" C1/016D: 00 C1/016E: 00 C1/016F: FF C1/0170: 6B RTL (from C1/0005, X = 7)
C1/0171 unknow
C1/0171: ADCA7B LDA $7BCA (from C1/0005, X = B) C1/0174: F010 BEQ $0186 C1/0176: A510 LDA $10 C1/0178: CDCA62 CMP $62CA C1/017B: D009 BNE $0186 C1/017D: 205947 JSR $4759 C1/0180: 20AC47 JSR $47AC C1/0183: EEBB7B INC $7BBB C1/0186: 6B RTL
C1/0187 unknow
C1/0187: 20614A JSR $4A61 (LONG--from C1/FDF4) C1/018A: 205947 JSR $4759 C1/018D: EEBB7B INC $7BBB C1/0190: 202A02 JSR $022A C1/0193: 20BD01 JSR $01BD C1/0196: 6B RTL
C1/0197 unknow
C1/0197: 7B TDC (from C1/0005, X = 6) C1/0198: AA TAX C1/0199: BD0D20 LDA $200D,X C1/019C: DDFFEB CMP $EBFF,X C1/019F: D007 BNE $01A8 C1/01A1: E8 INX C1/01A2: E01000 CPX #$0010 C1/01A5: D0F2 BNE $0199 C1/01A7: 6B RTL
C1/01A8: ADCA7B LDA $7BCA (from C1/019F) C1/01AB: D00F BNE $01BC C1/01AD: 20614A JSR $4A61 C1/01B0: 205947 JSR $4759 C1/01B3: EEBB7B INC $7BBB C1/01B6: 202A02 JSR $022A C1/01B9: 20BD01 JSR $01BD C1/01BC: 6B RTL
C1/01BD unknow
C1/01BD: 7B TDC (from C1/01B9) C1/01BE: AA TAX C1/01BF: BD0D20 LDA $200D,X C1/01C2: 9DFFEB STA $EBFF,X C1/01C5: E8 INX C1/01C6: E01000 CPX #$0010 C1/01C9: D0F4 BNE $01BF C1/01CB: 60 RTS
C1/01CC add item to inventory
C1/01CC: ADDA64 LDA $64DA (Loads something??, from C1/0005, X = 5) C1/01CF: 290F AND #$0F (Zeroes out the upper 4 bits) C1/01D1: 8510 STA $10 C1/01D3: 0A ASL A C1/01D4: 0A ASL A C1/01D5: 18 CLC C1/01D6: 6510 ADC $10 (Multiplies that by 5) C1/01D8: AA TAX (Uses it as an index) C1/01D9: 7B TDC (A starts at zero) C1/01DA: A8 TAY (Y starts at 0) C1/01DB: B9722E LDA $2E72,Y (???) C1/01DE: 9D2D60 STA $602D,X (???) C1/01E1: E8 INX C1/01E2: C8 INY C1/01E3: C00500 CPY #$0005 (Is it 5 yet? (loops back 5 times, so there's 6 total)) C1/01E6: D0F3 BNE $01DB C1/01E8: EEDA64 INC $64DA C1/01EB: 6B RTL
C1/01EC unknow
C1/01EC: 22D5D3C2 JSL $C2D3D5 (from C1/0005, X = 0) C1/01F0: 202A10 JSR $102A C1/01F3: 22FB01C1 JSL $C101FB C1/01F7: 207C95 JSR $957C C1/01FA: 6B RTL
C1/01FB unknow
C1/01FB: DA PHX (from C1/0005, X = 1; C1/01F3) C1/01FC: 5A PHY C1/01FD: 20241A JSR $1A24 C1/0200: 20F30D JSR $0DF3 C1/0203: 200445 JSR $4504 C1/0206: 20792F JSR $2F79 C1/0209: 20CA02 JSR $02CA C1/020C: 20BE44 JSR $44BE C1/020F: 2253BFC2 JSL $C2BF53 C1/0213: 20E393 JSR $93E3 C1/0216: 221AB4C2 JSL $C2B41A C1/021A: ADEFE9 LDA $E9EF C1/021D: D004 BNE $0223 C1/021F: 220300C2 JSL $C20003 C1/0223: 7A PLY C1/0224: FA PLX C1/0225: 6B RTL
C1/0226 unknow
C1/0226: 202A02 JSR $022A C1/0229: 6B RTL
C1/022A unknow
C1/022A: DA PHX (from many, many places) C1/022B: 5A PHY C1/022C: 20241A JSR $1A24 (Wait for NMI) C1/022F: 200445 JSR $4504 C1/0232: 20CA02 JSR $02CA C1/0235: 20BE44 JSR $44BE C1/0238: 2253BFC2 JSL $C2BF53 C1/023C: 221AB4C2 JSL $C2B41A C1/0240: ADEFE9 LDA $E9EF C1/0243: D004 BNE $0249 C1/0245: 220300C2 JSL $C20003 C1/0249: 7A PLY C1/024A: FA PLX C1/024B: 60 RTS
C1/024C unknow
C1/024C: A510 LDA $10 (from C1/0005, X = 3) C1/024E: 2903 AND #$03 C1/0250: AA TAX C1/0251: A9FF LDA #$FF C1/0253: 9D0140 STA $4001,X C1/0256: 6B RTL
C1/0257 unknow
C1/0257: AD8B62 LDA $628B (from C1/0005, X = 2) C1/025A: D029 BNE $0285 C1/025C: A510 LDA $10 C1/025E: 0A ASL A C1/025F: 2A ROL A C1/0260: 2901 AND #$01 C1/0262: 8512 STA $12 C1/0264: A510 LDA $10 C1/0266: 2903 AND #$03 C1/0268: AA TAX C1/0269: A512 LDA $12 C1/026B: 9DCC62 STA $62CC,X C1/026E: BD0140 LDA $4001,X C1/0271: C9FF CMP #$FF C1/0273: D010 BNE $0285 C1/0275: 8A TXA C1/0276: 8D0040 STA $4000 C1/0279: 208602 JSR $0286 C1/027C: AD0040 LDA $4000 C1/027F: AA TAX C1/0280: A903 LDA #$03 C1/0282: 9D0140 STA $4001,X C1/0285: 6B RTL
C1/0286 unknow
C1/0286: 7B TDC (from C1/0279, C1/02CA) C1/0287: AA TAX C1/0288: 6410 STZ $10 C1/028A: 6412 STZ $12 C1/028C: 20B202 JSR $02B2 C1/028F: 9002 BCC $0293 C1/0291: E612 INC $12 C1/0293: E610 INC $10 C1/0295: A510 LDA $10 C1/0297: C905 CMP #$05 C1/0299: D0F1 BNE $028C C1/029B: A512 LDA $12 C1/029D: 8510 STA $10 C1/029F: A510 LDA $10 C1/02A1: C905 CMP #$05 C1/02A3: F00C BEQ $02B1 C1/02A5: A9FF LDA #$FF C1/02A7: 8512 STA $12 C1/02A9: 20B202 JSR $02B2 C1/02AC: E610 INC $10 C1/02AE: 4C9F02 JMP $029F (why no BRA?) C1/02B1: 60 RTS
C1/02B2 unknow
C1/02B2: 7B TDC (from C1/028C, C1/02A9) C1/02B3: AA TAX C1/02B4: BD0140 LDA $4001,X C1/02B7: C510 CMP $10 C1/02B9: F008 BEQ $02C3 C1/02BB: E8 INX C1/02BC: E00400 CPX #$0004 C1/02BF: D0F3 BNE $02B4 C1/02C1: 18 CLC C1/02C2: 60 RTS
C1/02C3 unknow
C1/02C3: A512 LDA $12 (from C1/02B9) C1/02C5: 9D0140 STA $4001,X C1/02C8: 38 SEC C1/02C9: 60 RTS
C1/02CA unknow
C1/02CA: 208602 JSR $0286 (from C1/0209) C1/02CD: 7B TDC C1/02CE: AA TAX C1/02CF: BD0140 LDA $4001,X C1/02D2: F008 BEQ $02DC C1/02D4: E8 INX C1/02D5: E00400 CPX #$0004 C1/02D8: D0F5 BNE $02CF C1/02DA: 801D BRA $02F9 C1/02DC: ADF1E9 LDA $E9F1 C1/02DF: 0DF07B ORA $7BF0 C1/02E2: 0D8B62 ORA $628B C1/02E5: 0DCA7B ORA $7BCA C1/02E8: 0DBB7B ORA $7BBB C1/02EB: 0DCC7B ORA $7BCC C1/02EE: D009 BNE $02F9 C1/02F0: 9CCB7B STZ $7BCB C1/02F3: 8ECA62 STX $62CA C1/02F6: 20A244 JSR $44A2 C1/02F9: 60 RTS
C1/02FA unknow
C1/02FA: AD957B LDA $7B95 (from C1/0C17) C1/02FD: F029 BEQ $0328 C1/02FF: C901 CMP #$01 C1/0301: F005 BEQ $0308 C1/0303: A20F00 LDX #$000F C1/0306: 8003 BRA $030B
C1/0308: A22300 LDX #$0023 (from C1/0301) C1/030B: 9C957B STZ $7B95 C1/030E: 8B PHB C1/030F: A900 LDA #$00 C1/0311: 48 PHA C1/0312: AB PLB C1/0313: A8 TAY C1/0314: BF68D3C2 LDA $C2D368,X C1/0318: 993043 STA $4330,Y C1/031B: C8 INY C1/031C: E8 INX C1/031D: C00500 CPY #$0005 C1/0320: D0F2 BNE $0314 C1/0322: A97E LDA #$7E C1/0324: 8D3743 STA $4337 C1/0327: AB PLB C1/0328: AD967B LDA $7B96 C1/032B: F019 BEQ $0346 C1/032D: 9C967B STZ $7B96 C1/0330: 7B TDC C1/0331: AA TAX C1/0332: BF9AD3C2 LDA $C2D39A,X C1/0336: 9F504300 STA $004350,X C1/033A: E8 INX C1/033B: E00500 CPX #$0005 C1/033E: D0F2 BNE $0332 C1/0340: A97E LDA #$7E C1/0342: 8F574300 STA $004357 C1/0346: 60 RTS
C1/0347 unknown HDMA
(from C1/0C1D) C1/0347: C220 REP #$20 (A = 16 bit) C1/0349: AF95D3C2 LDA $C2D395 ($C2D395/6 = $44 $2A) C1/034D: 8F704300 STA $004370 (Transfer mode: BUS B Address --> RAM / Bus B Address: $(21)2A, Window Mask Logic for BGs) C1/0351: AF97D3C2 LDA $C2D397 ($C2D397/8 = $FE $D0) C1/0355: 8F724300 STA $004372 C1/0359: 7B TDC C1/035A: E220 SEP #$20 (A = 8 bit) C1/035C: AF99D3C2 LDA $C2D399 ($C2D399 = $C2) C1/0360: 8F744300 STA $004374 C1/0364: A97E LDA #$7E C1/0366: 8F774300 STA $004377 (HMDA indirect address bank: $7E = WRAM) C1/036A: ADEF7B LDA $7BEF C1/036D: 0980 ORA #$80 (Set bit 7 in $7BEF's value) C1/036F: 8DEF7B STA $7BEF ($7BEF's value is stored in $420C; it is the HDMA channel activator) C1/0372: 60 RTS
C1/0373 unknow
C1/0373: AD977B LDA $7B97 (from C1/0C1A) C1/0376: F029 BEQ $03A1 C1/0378: C901 CMP #$01 C1/037A: F005 BEQ $0381 C1/037C: A21E00 LDX #$001E C1/037F: 8003 BRA $0384
C1/0381 unknow
C1/0381: A22800 LDX #$0028 (from C1/037A) C1/0384: 9C977B STZ $7B97 (from C1/037F) C1/0387: 8B PHB C1/0388: A900 LDA #$00 C1/038A: 48 PHA C1/038B: AB PLB C1/038C: A8 TAY C1/038D: BF68D3C2 LDA $C2D368,X C1/0391: 996043 STA $4360,Y C1/0394: C8 INY C1/0395: E8 INX C1/0396: C00500 CPY #$0005 C1/0399: D0F2 BNE $038D C1/039B: A97E LDA #$7E C1/039D: 8D6743 STA $4367 C1/03A0: AB PLB C1/03A1: 60 RTS
C1/03A2 unknow
C1/03A2: 8B PHB (from C1/112D) C1/03A3: A900 LDA #$00 C1/03A5: 48 PHA C1/03A6: AB PLB C1/03A7: 7B TDC C1/03A8: AA TAX C1/03A9: A8 TAY C1/03AA: A905 LDA #$05 C1/03AC: 8510 STA $10 C1/03AE: BF68D3C2 LDA $C2D368,X C1/03B2: 990043 STA $4300,Y C1/03B5: E8 INX C1/03B6: C8 INY C1/03B7: C610 DEC $10 C1/03B9: D0F3 BNE $03AE C1/03BB: A97E LDA #$7E C1/03BD: 990243 STA $4302,Y C1/03C0: 98 TYA C1/03C1: 18 CLC C1/03C2: 690B ADC #$0B C1/03C4: A8 TAY C1/03C5: E02300 CPX #$0023 C1/03C8: D0E0 BNE $03AA C1/03CA: AB PLB C1/03CB: A903 LDA #$03 C1/03CD: 8D0C80 STA $800C C1/03D0: A904 LDA #$04 C1/03D2: 8D0D80 STA $800D C1/03D5: A905 LDA #$05 C1/03D7: 8D0E80 STA $800E C1/03DA: 20FB03 JSR $03FB C1/03DD: A97F LDA #$7F C1/03DF: 8DEF7B STA $7BEF C1/03E2: ADB8EC LDA $ECB8 (load battle background ID) C1/03E5: C90F CMP #$0F C1/03E7: F00C BEQ $03F5 C1/03E9: C92C CMP #$2C (is it the mine cart ride?) C1/03EB: F008 BEQ $03F5 (branch if so) C1/03ED: C92E CMP #$2E C1/03EF: D009 BNE $03FA C1/03F1: A90B LDA #$0B C1/03F3: 8002 BRA $03F7 C1/03F5: A90A LDA #$0A C1/03F7: 8D0D80 STA $800D C1/03FA: 60 RTS
C1/03FB unknow
C1/03FB: AD0C80 LDA $800C (from C1/03DA, C1/0C20) C1/03FE: 3019 BMI $0419 C1/0400: 0980 ORA #$80 C1/0402: 8D0C80 STA $800C C1/0405: 297F AND #$7F C1/0407: 0A ASL A C1/0408: AA TAX C1/0409: BF50D1C2 LDA $C2D150,X C1/040D: 8F024300 STA $004302 C1/0411: BF51D1C2 LDA $C2D151,X C1/0415: 8F034300 STA $004303 C1/0419: AD0D80 LDA $800D C1/041C: 3019 BMI $0437 C1/041E: 0980 ORA #$80 C1/0420: 8D0D80 STA $800D C1/0423: 297F AND #$7F C1/0425: 0A ASL A C1/0426: AA TAX C1/0427: BF50D1C2 LDA $C2D150,X C1/042B: 8F124300 STA $004312 C1/042F: BF51D1C2 LDA $C2D151,X C1/0433: 8F134300 STA $004313 C1/0437: AD0E80 LDA $800E C1/043A: 301D BMI $0459 C1/043C: 0980 ORA #$80 C1/043E: 8D0E80 STA $800E C1/0441: 18 CLC C1/0442: 6D8A7B ADC $7B8A C1/0445: 297F AND #$7F C1/0447: 0A ASL A C1/0448: AA TAX C1/0449: BF50D1C2 LDA $C2D150,X C1/044D: 8F224300 STA $004322 C1/0451: BF51D1C2 LDA $C2D151,X C1/0455: 8F234300 STA $004323 C1/0459: ADEF7B LDA $7BEF C1/045C: 8F0C4200 STA $00420C C1/0460: 60 RTS
C1/0461 unknow
C1/0461: 1392 C1/0463: 1390 C1/0465: 1392 C1/0467: 1394
C1/0469 unknow
C1/0469: ADB864 LDA $64B8 (from only C1/0BCB) C1/046C: F05B BEQ $04C9 C1/046E: ADB964 LDA $64B9 C1/0471: D005 BNE $0478 C1/0473: A908 LDA #$08 C1/0475: 8DB964 STA $64B9 C1/0478: A598 LDA $98 C1/047A: 2907 AND #$07 C1/047C: 0A ASL A C1/047D: AA TAX C1/047E: C220 REP #$20 C1/0480: BFA4D2C2 LDA $C2D2A4,X (VRAM Destination = {a * $20 + $7140 | a = 0,1,2..7} C1/0484: 8F162100 STA $002116 C1/0488: DA PHX C1/0489: ADB864 LDA $64B8 C1/048C: 29FF00 AND #$00FF C1/048F: 0A ASL A C1/0490: AA TAX C1/0491: BF6104C1 LDA $C10461,X C1/0495: FA PLX C1/0496: 18 CLC C1/0497: 7FB4D2C2 ADC $C2D2B4,X (Added value = {a * $40 | a = 0,1,2...7} C1/049B: 8F724300 STA $004372 C1/049F: A94000 LDA #$0040 C1/04A2: 8F754300 STA $004375 (Data Size: #$0040) C1/04A6: 7B TDC C1/04A7: E220 SEP #$20 C1/04A9: A97E LDA #$7E C1/04AB: 8F744300 STA $004374 (Data Source Bank: $7E = WRAM) C1/04AF: A901 LDA #$01 C1/04B1: 8F704300 STA $004370 (Transfer mode) C1/04B5: A918 LDA #$18 C1/04B7: 8F714300 STA $004371 (DMA destination: $(21)18 = VRAM) C1/04BB: A980 LDA #$80 C1/04BD: 8F0B4200 STA $00420B (Activate DMA channel 7) C1/04C1: CEB964 DEC $64B9 C1/04C4: D003 BNE $04C9 C1/04C6: 9CB864 STZ $64B8 C1/04C9: 60 RTS
C1/04CA unknow
C1/04CA: ADBB7B LDA $7BBB (from only C1/0BCE) C1/04CD: F03C BEQ $050B C1/04CF: EE9B62 INC $629B C1/04D2: ADAA62 LDA $62AA C1/04D5: D005 BNE $04DC C1/04D7: A908 LDA #$08 C1/04D9: 8DAA62 STA $62AA C1/04DC: A598 LDA $98 C1/04DE: 2907 AND #$07 C1/04E0: 0A ASL A C1/04E1: AA TAX C1/04E2: C220 REP #$20 C1/04E4: ADBE7B LDA $7BBE C1/04E7: 18 CLC C1/04E8: 7F94D2C2 ADC $C2D294,X C1/04EC: A8 TAY C1/04ED: ADC07B LDA $7BC0 C1/04F0: 18 CLC C1/04F1: 7FB4D2C2 ADC $C2D2B4,X C1/04F5: AA TAX C1/04F6: A94000 LDA #$0040 C1/04F9: 8536 STA $36 C1/04FB: 7B TDC C1/04FC: E220 SEP #$20 C1/04FE: A97E LDA #$7E C1/0500: 202B1A JSR $1A2B C1/0503: CEAA62 DEC $62AA C1/0506: D003 BNE $050B C1/0508: 9CBB7B STZ $7BBB C1/050B: 60 RTS
C1/050C unknow
C1/050C: 7B TDC (from only C1/0CD2) C1/050D: AA TAX C1/050E: ADCA62 LDA $62CA C1/0511: DDD664 CMP $64D6,X C1/0514: F008 BEQ $051E C1/0516: E8 INX C1/0517: E00400 CPX #$0004 C1/051A: D0F5 BNE $0511 C1/051C: 7B TDC C1/051D: AA TAX C1/051E: BF64D3C2 LDA $C2D364,X C1/0522: AA TAX C1/0523: 7B TDC C1/0524: A8 TAY C1/0525: BDA55C LDA $5CA5,X C1/0528: C915 CMP #$15 C1/052A: F003 BEQ $052F C1/052C: 18 CLC C1/052D: 6954 ADC #$54 C1/052F: 99155D STA $5D15,Y C1/0532: C8 INY C1/0533: C8 INY C1/0534: E8 INX C1/0535: E8 INX C1/0536: C00E00 CPY #$000E C1/0539: D0EA BNE $0525
C1/053B split number into separate digits for output
C1/053B: 64 40 STZ $40 (clear hundreds digit) C1/053D: 64 41 STZ $41 (clear tens digit) C1/053F: AD 78 61 LDA $6178 (Input number) C1/0542: 38 SEC C1/0543: E9 64 SBC #$64 (subtract 100 from number) C1/0545: 90 04 BCC $054B (if number < 0, branch) C1/0547: E6 40 INC $40 (increment the hundreds digit) C1/0549: 80 F7 BRA $0542 (loop to determine hundreds digit) C1/054B: 18 CLC C1/054C: 69 64 ADC #$64 (when above loop exited, number got subtracted down to Number - 100 * ( (Number DIV 100) + 1) , which is a negative value. Bring it back up to Number MOD 100. in other words, we'll just focus on lower two digits.) C1/054E: 38 SEC C1/054F: E9 0A SBC #$0A (subtract 10 from number) C1/0551: 90 04 BCC $0557 (if number < 0, branch) C1/0553: E6 41 INC $41 (increment the tens digit) C1/0555: 80 F7 BRA $054E (loop to determine tens digit) C1/0557: 18 CLC C1/0558: 69 12 ADC #$12 (number was negative after above loop, so bring it back up to Number MOD 10. plus 8. what the hell is the +8 for?) C1/055A: 8D 27 5D STA $5D27 (save ones digit + 8) C1/055D: A9 02 LDA #$02 C1/055F: 8D 28 5D STA $5D28 (? related to ones digit) C1/0562: 8D 26 5D STA $5D26 (? related to tens digit) C1/0565: 8D 24 5D STA $5D24 (? related to hundreds digit) C1/0568: A5 41 LDA $41 (get tens digit) C1/056A: 18 CLC C1/056B: 69 08 ADC #$08 C1/056D: 8D 25 5D STA $5D25 (tens digit + 8) C1/0570: A5 40 LDA $40 (get hundreds digit) C1/0572: 18 CLC C1/0573: 69 08 ADC #$08 C1/0575: 8D 23 5D STA $5D23 (hundreds digit + 8) C1/0578: C9 08 CMP #$08 C1/057A: D0 08 BNE $0584 (branch if hundreds digit was nonzero) C1/057C: A9 FF LDA #$FF (if it was zero, don't display it.) C1/057E: 8D 23 5D STA $5D23 (null a variable) C1/0581: 9C 24 5D STZ $5D24 (clear a variable) C1/0584: A5 41 LDA $41 C1/0586: D0 08 BNE $0590 (exit if tens digit is nonzero) C1/0588: A9 FF LDA #$FF (if it's zero, don't display it. uh oh, we'll still blank the tens digit display even if there was a nonzero hundreds digit. that's not right, but it's easily remedied: change the "BNE $0584" at C1/057A into "BNE $0590") C1/058A: 8D 25 5D STA $5D25 (null a variable) C1/058D: 9C 26 5D STZ $5D26 (clear a variable) C1/0590: 60 RTS
C1/0591 unknow
C1/0591: 000C C1/0593: 100C C1/0595: 000E C1/0597: 100E C1/0599: 0028 C1/059B: 0020 C1/059D: 0054 C1/059F: 1054
C1/05A1 unknow
C1/05A1: AD157B LDA $7B15 (from only C1/0BD4) C1/05A4: F03D BEQ $05E3 C1/05A6: 9C157B STZ $7B15 C1/05A9: ADA760 LDA $60A7 C1/05AC: D01C BNE $05CA C1/05AE: ADC862 LDA $62C8 C1/05B1: 0A ASL A C1/05B2: AA TAX C1/05B3: C220 REP #$20 C1/05B5: BF9105C1 LDA $C10591,X C1/05B9: 8536 STA $36 C1/05BB: 7B TDC C1/05BC: E220 SEP #$20 C1/05BE: 9CC862 STZ $62C8 C1/05C1: AD1C7B LDA $7B1C C1/05C4: AE1A7B LDX $7B1A C1/05C7: 20511A JSR $1A51 C1/05CA: C220 REP #$20 C1/05CC: AD167B LDA $7B16 C1/05CF: 38 SEC C1/05D0: ED1D7B SBC $7B1D C1/05D3: 8DB464 STA $64B4 C1/05D6: AD187B LDA $7B18 C1/05D9: 38 SEC C1/05DA: ED1F7B SBC $7B1F C1/05DD: 8DB664 STA $64B6 C1/05E0: 7B TDC C1/05E1: E220 SEP #$20 C1/05E3: AD217B LDA $7B21 C1/05E6: F057 BEQ $063F C1/05E8: 9C217B STZ $7B21 C1/05EB: ADA860 LDA $60A8 C1/05EE: D02D BNE $061D C1/05F0: ADC962 LDA $62C9 C1/05F3: F017 BEQ $060C C1/05F5: C901 CMP #$01 C1/05F7: F00E BEQ $0607 C1/05F9: C902 CMP #$02 C1/05FB: F005 BEQ $0602 C1/05FD: A01056 LDY #$5610 C1/0600: 800D BRA $060F C1/0602: A00056 LDY #$5600 C1/0605: 8008 BRA $060F C1/0607: A01054 LDY #$5410 C1/060A: 8003 BRA $060F C1/060C: A00054 LDY #$5400 C1/060F: 9CC962 STZ $62C9 C1/0612: AD287B LDA $7B28 C1/0615: AE267B LDX $7B26 C1/0618: 8436 STY $36 C1/061A: 20511A JSR $1A51 C1/061D: AD0E80 LDA $800E C1/0620: 297F AND #$7F C1/0622: C905 CMP #$05 C1/0624: D019 BNE $063F C1/0626: C220 REP #$20 C1/0628: AD227B LDA $7B22 C1/062B: 38 SEC C1/062C: ED297B SBC $7B29 C1/062F: 8DF54A STA $4AF5 C1/0632: AD247B LDA $7B24 C1/0635: 38 SEC C1/0636: ED2B7B SBC $7B2B C1/0639: 8DF74A STA $4AF7 C1/063C: 7B TDC C1/063D: E220 SEP #$20 C1/063F: 60 RTS
C1/0640 unknow
C1/0640: AD1663 LDA $6316 (from only C1/0BD7) C1/0643: F013 BEQ $0658 C1/0645: 9C1663 STZ $6316 C1/0648: A28000 LDX #$0080 C1/064B: 8636 STX $36 C1/064D: A2B360 LDX #$60B3 C1/0650: A97E LDA #$7E C1/0652: AC1763 LDY $6317 C1/0655: 4C2B1A JMP $1A2B C1/0658: 60 RTS
C1/0659 unknow
C1/0659: E210 SEP #$10 (from C1/0CC9, C1/132C) C1/065B: 9C6B7B STZ $7B6B C1/065E: 7B TDC C1/065F: AA TAX C1/0660: C220 REP #$20 C1/0662: BD2F81 LDA $812F,X (Get adjusted monster width/8) C1/0665: 29FF00 AND #$00FF C1/0668: 0A ASL A C1/0669: 0A ASL A C1/066A: 0A ASL A C1/066B: 4A LSR A C1/066C: 18 CLC C1/066D: 7DC380 ADC $80C3,X (Add enemy's X-coord.) C1/0670: 9D0F80 STA $800F,X (Store X-coordinate of middle of the monster) C1/0673: BD3081 LDA $8130,X C1/0676: 29FF00 AND #$00FF C1/0679: 0A ASL A C1/067A: 0A ASL A C1/067B: 0A ASL A C1/067C: 8536 STA $36 C1/067E: 4A LSR A C1/067F: 18 CLC C1/0680: 7DCF80 ADC $80CF,X C1/0683: 9D1B80 STA $801B,X C1/0686: A536 LDA $36 C1/0688: 18 CLC C1/0689: 7DCF80 ADC $80CF,X C1/068C: 38 SEC C1/068D: E90800 SBC #$0008 C1/0690: 9D2780 STA $8027,X (bottom Y-coordinate of monster - 8) C1/0693: 18 CLC C1/0694: 7D5780 ADC $8057,X C1/0697: 9D4B80 STA $804B,X C1/069A: BDC380 LDA $80C3,X (Load enemy's X-coord.) C1/069D: 38 SEC C1/069E: E90800 SBC #$0008 C1/06A1: 18 CLC C1/06A2: 7D7B80 ADC $807B,X C1/06A5: 9D6380 STA $8063,X C1/06A8: BD3081 LDA $8130,X C1/06AB: 29FF00 AND #$00FF C1/06AE: 0A ASL A C1/06AF: 0A ASL A C1/06B0: 0A ASL A C1/06B1: 4A LSR A C1/06B2: 18 CLC C1/06B3: 7DCF80 ADC $80CF,X C1/06B6: 9D6F80 STA $806F,X C1/06B9: E8 INX C1/06BA: E8 INX C1/06BB: E00C CPX #$0C C1/06BD: D0A3 BNE $0662 C1/06BF: 7B TDC C1/06C0: AA TAX C1/06C1: A8 TAY C1/06C2: BDB761 LDA $61B7,X C1/06C5: 18 CLC C1/06C6: 7DC561 ADC $61C5,X C1/06C9: 18 CLC C1/06CA: 7DD461 ADC $61D4,X C1/06CD: 8536 STA $36 C1/06CF: 38 SEC C1/06D0: E91000 SBC #$0010 C1/06D3: 18 CLC C1/06D4: 799F80 ADC $809F,Y C1/06D7: 998780 STA $8087,Y C1/06DA: A536 LDA $36 C1/06DC: 18 CLC C1/06DD: 690800 ADC #$0008 C1/06E0: 993380 STA $8033,Y C1/06E3: BDB961 LDA $61B9,X C1/06E6: 18 CLC C1/06E7: 7DC761 ADC $61C7,X C1/06EA: 18 CLC C1/06EB: 690800 ADC #$0008 C1/06EE: 999380 STA $8093,Y C1/06F1: 993B80 STA $803B,Y C1/06F4: 690800 ADC #$0008 C1/06F7: 994380 STA $8043,Y C1/06FA: 8A TXA C1/06FB: 18 CLC C1/06FC: 692000 ADC #$0020 C1/06FF: AA TAX C1/0700: C8 INY C1/0701: C8 INY C1/0702: C008 CPY #$08 C1/0704: D0BC BNE $06C2 C1/0706: 7B TDC C1/0707: E220 SEP #$20 C1/0709: C210 REP #$10 C1/070B: AD472F LDA $2F47 C1/070E: 49FF EOR #$FF C1/0710: 8D9361 STA $6193 C1/0713: AD1D20 LDA $201D (Load the valid character targets) C1/0716: 2DAC61 AND $61AC C1/0719: 2D472F AND $2F47 C1/071C: F070 BEQ $078E C1/071E: 200F1A JSR $1A0F C1/0721: 0A ASL A C1/0722: AA TAX C1/0723: AD1F20 LDA $201F (Load encounter type) C1/0726: C220 REP #$20 C1/0728: C90100 CMP #$0001 C1/072B: D009 BNE $0736 C1/072D: BD8780 LDA $8087,X C1/0730: 38 SEC C1/0731: E92000 SBC #$0020 C1/0734: 8007 BRA $073D C1/0736: BD8780 LDA $8087,X C1/0739: 18 CLC C1/073A: 692000 ADC #$0020 C1/073D: 8D6D80 STA $806D C1/0740: BD9380 LDA $8093,X C1/0743: 8D7980 STA $8079 C1/0746: BD3380 LDA $8033,X C1/0749: 8D1980 STA $8019 C1/074C: BD3B80 LDA $803B,X C1/074F: 8D2580 STA $8025 C1/0752: BD4380 LDA $8043,X C1/0755: 8D3180 STA $8031 C1/0758: BD3380 LDA $8033,X C1/075B: 38 SEC C1/075C: E90C00 SBC #$000C C1/075F: 8DCD80 STA $80CD C1/0762: BD3B80 LDA $803B,X C1/0765: 38 SEC C1/0766: E90800 SBC #$0008 C1/0769: 8DD980 STA $80D9 C1/076C: A93200 LDA #$0032 C1/076F: 8D3981 STA $8139 C1/0772: AD1F20 LDA $201F (Load encounter type) C1/0775: 290100 AND #$0001 C1/0778: 490100 EOR #$0001 C1/077B: 8D8580 STA $8085 C1/077E: 7B TDC C1/077F: E220 SEP #$20 C1/0781: A920 LDA #$20 C1/0783: 8D9561 STA $6195 C1/0786: 0D797B ORA $7B79 C1/0789: 8D797B STA $7B79 C1/078C: 8003 BRA $0791 C1/078E: 9C9561 STZ $6195 C1/0791: A9FF LDA #$FF C1/0793: 2D1E20 AND $201E (Remove any invalid monster targets) C1/0796: 2DAB61 AND $61AB C1/0799: 2D462F AND $2F46 C1/079C: 0D9561 ORA $6195 C1/079F: 8D9200 STA $0092 C1/07A2: 60 RTS
C1/07A3 unknow
C1/07A3: E210 SEP #$10 (from only C1/0CBC) C1/07A5: 7B TDC C1/07A6: AA TAX C1/07A7: 9D0105 STA $0501,X C1/07AA: E8 INX C1/07AB: E01B CPX #$1B C1/07AD: D0F8 BNE $07A7 C1/07AF: A980 LDA #$80 C1/07B1: 8D1C05 STA $051C C1/07B4: C220 REP #$20 C1/07B6: 7B TDC C1/07B7: AA TAX C1/07B8: A9E0E0 LDA #$E0E0 C1/07BB: 9D2003 STA $0320,X C1/07BE: 9D5403 STA $0354,X C1/07C1: 9D8803 STA $0388,X C1/07C4: 9DBC03 STA $03BC,X C1/07C7: 9DF003 STA $03F0,X C1/07CA: 9D2404 STA $0424,X C1/07CD: 9D5804 STA $0458,X C1/07D0: 9D8C04 STA $048C,X C1/07D3: E8 INX C1/07D4: E8 INX C1/07D5: E8 INX C1/07D6: E8 INX C1/07D7: E034 CPX #$34 C1/07D9: D0E0 BNE $07BB C1/07DB: 8DC004 STA $04C0 C1/07DE: 8DC404 STA $04C4 C1/07E1: 8DC804 STA $04C8 C1/07E4: 7B TDC C1/07E5: E220 SEP #$20 C1/07E7: C210 REP #$10 C1/07E9: 60 RTS
C1/07EA unknow
C1/07EA: AD8362 LDA $6283 (from only C1/0CA0) C1/07ED: AA TAX C1/07EE: 8644 STX $44 C1/07F0: E210 SEP #$10 C1/07F2: C220 REP #$20 C1/07F4: AD9761 LDA $6197 C1/07F7: F025 BEQ $081E C1/07F9: 9C9761 STZ $6197 C1/07FC: 7B TDC C1/07FD: AA TAX C1/07FE: BD219A LDA $9A21,X C1/0801: 9D219F STA $9F21,X C1/0804: BDB99A LDA $9AB9,X C1/0807: 9DB99F STA $9FB9,X C1/080A: BD519B LDA $9B51,X C1/080D: 9D51A0 STA $A051,X C1/0810: BDE99B LDA $9BE9,X C1/0813: 9DE9A0 STA $A0E9,X C1/0816: E8 INX C1/0817: E8 INX C1/0818: E8 INX C1/0819: E8 INX C1/081A: E098 CPX #$98 C1/081C: D0E0 BNE $07FE C1/081E: 6434 STZ $34 C1/0820: 7B TDC C1/0821: E220 SEP #$20 C1/0823: AA TAX C1/0824: AD0C80 LDA $800C C1/0827: 297F AND #$7F C1/0829: C906 CMP #$06 C1/082B: D004 BNE $0831 C1/082D: E634 INC $34 C1/082F: 8008 BRA $0839 C1/0831: C908 CMP #$08 C1/0833: D004 BNE $0839 C1/0835: A980 LDA #$80 C1/0837: 8535 STA $35 C1/0839: C220 REP #$20 C1/083B: ADB064 LDA $64B0 C1/083E: 8536 STA $36 C1/0840: ADB264 LDA $64B2 C1/0843: 8538 STA $38 C1/0845: AD0C80 LDA $800C C1/0848: 297F00 AND #$007F C1/084B: F02B BEQ $0878 C1/084D: ADA962 LDA $62A9 C1/0850: 29FF00 AND #$00FF C1/0853: F012 BEQ $0867 C1/0855: ADB064 LDA $64B0 C1/0858: 853A STA $3A C1/085A: 8DF543 STA $43F5 C1/085D: ADB264 LDA $64B2 C1/0860: 853C STA $3C C1/0862: 8DF743 STA $43F7 C1/0865: 8011 BRA $0878 C1/0867: ADB464 LDA $64B4 C1/086A: 853A STA $3A C1/086C: 8DF543 STA $43F5 C1/086F: ADB664 LDA $64B6 C1/0872: 3A DEC A C1/0873: 853C STA $3C C1/0875: 8DF743 STA $43F7 C1/0878: ADC162 LDA $62C1 C1/087B: 29FF00 AND #$00FF C1/087E: F004 BEQ $0884 C1/0880: 6436 STZ $36 C1/0882: 6438 STZ $38 C1/0884: A534 LDA $34 C1/0886: 104A BPL $08D2 C1/0888: BDB063 LDA $63B0,X C1/088B: 18 CLC C1/088C: 653A ADC $3A C1/088E: 9DF543 STA $43F5,X C1/0891: BDB263 LDA $63B2,X C1/0894: 18 CLC C1/0895: 653C ADC $3C C1/0897: 9DF743 STA $43F7,X C1/089A: BDF063 LDA $63F0,X C1/089D: 18 CLC C1/089E: 653A ADC $3A C1/08A0: 9D3544 STA $4435,X C1/08A3: BDF263 LDA $63F2,X C1/08A6: 18 CLC C1/08A7: 653C ADC $3C C1/08A9: 9D3744 STA $4437,X C1/08AC: BD3064 LDA $6430,X C1/08AF: 18 CLC C1/08B0: 653A ADC $3A C1/08B2: 9D7544 STA $4475,X C1/08B5: BD3264 LDA $6432,X C1/08B8: 18 CLC C1/08B9: 653C ADC $3C C1/08BB: 9D7744 STA $4477,X C1/08BE: BD7064 LDA $6470,X C1/08C1: 18 CLC C1/08C2: 653A ADC $3A C1/08C4: 9DB544 STA $44B5,X C1/08C7: BD7264 LDA $6472,X C1/08CA: 18 CLC C1/08CB: 653C ADC $3C C1/08CD: 9DB744 STA $44B7,X C1/08D0: 8026 BRA $08F8 C1/08D2: F024 BEQ $08F8 C1/08D4: BDB063 LDA $63B0,X C1/08D7: 18 CLC C1/08D8: 653A ADC $3A C1/08DA: 9DF543 STA $43F5,X C1/08DD: BDB263 LDA $63B2,X C1/08E0: 18 CLC C1/08E1: 653C ADC $3C C1/08E3: 9DF743 STA $43F7,X C1/08E6: BDF063 LDA $63F0,X C1/08E9: 18 CLC C1/08EA: 653A ADC $3A C1/08EC: 9D3544 STA $4435,X C1/08EF: BDF263 LDA $63F2,X C1/08F2: 18 CLC C1/08F3: 653C ADC $3C C1/08F5: 9D3744 STA $4437,X C1/08F8: A544 LDA $44 C1/08FA: D024 BNE $0920 C1/08FC: BD3063 LDA $6330,X C1/08FF: 18 CLC C1/0900: 6536 ADC $36 C1/0902: 9D7547 STA $4775,X C1/0905: BD3263 LDA $6332,X C1/0908: 18 CLC C1/0909: 6538 ADC $38 C1/090B: 9D7747 STA $4777,X C1/090E: BD7063 LDA $6370,X C1/0911: 18 CLC C1/0912: 6536 ADC $36 C1/0914: 9DB547 STA $47B5,X C1/0917: BD7263 LDA $6372,X C1/091A: 18 CLC C1/091B: 6538 ADC $38 C1/091D: 9DB747 STA $47B7,X C1/0920: E8 INX C1/0921: E8 INX C1/0922: E8 INX C1/0923: E8 INX C1/0924: E040 CPX #$40 C1/0926: F003 BEQ $092B C1/0928: 4C8408 JMP $0884
C1/092B: 7B TDC C1/092C: E220 SEP #$20 C1/092E: A8 TAY C1/092F: A50E LDA $0E C1/0931: 4A LSR A C1/0932: 293E AND #$3E C1/0934: AA TAX C1/0935: A544 LDA $44 C1/0937: F05A BEQ $0993 C1/0939: ADB8EC LDA $ECB8 (battle background ID) C1/093C: C92E CMP #$2E C1/093E: F01D BEQ $095D C1/0940: C937 CMP #$37 C1/0942: D032 BNE $0976 C1/0944: C220 REP #$20 C1/0946: BDFFE7 LDA $E7FF,X C1/0949: 997747 STA $4777,Y C1/094C: E8 INX C1/094D: E8 INX C1/094E: 8A TXA C1/094F: 293F00 AND #$003F C1/0952: AA TAX C1/0953: C8 INY C1/0954: C8 INY C1/0955: C8 INY C1/0956: C8 INY C1/0957: C080 CPY #$80 C1/0959: D0EB BNE $0946 C1/095B: 8033 BRA $0990 C1/095D: C220 REP #$20 C1/095F: BD3FE8 LDA $E83F,X C1/0962: 997747 STA $4777,Y C1/0965: E8 INX C1/0966: E8 INX C1/0967: 8A TXA C1/0968: 293F00 AND #$003F C1/096B: AA TAX C1/096C: C8 INY C1/096D: C8 INY C1/096E: C8 INY C1/096F: C8 INY C1/0970: C080 CPY #$80 C1/0972: D0EB BNE $095F C1/0974: 801A BRA $0990 C1/0976: C220 REP #$20 C1/0978: BDFFE7 LDA $E7FF,X C1/097B: 997547 STA $4775,Y C1/097E: 997747 STA $4777,Y C1/0981: E8 INX C1/0982: E8 INX C1/0983: 8A TXA C1/0984: 293F00 AND #$003F C1/0987: AA TAX C1/0988: C8 INY C1/0989: C8 INY C1/098A: C8 INY C1/098B: C8 INY C1/098C: C080 CPY #$80 C1/098E: D0E8 BNE $0978 C1/0990: 7B TDC C1/0991: E220 SEP #$20 C1/0993: C210 REP #$10 C1/0995: 60 RTS
C1/0996 unknow
C1/0996: ADAB62 LDA $62AB (Is the game paused? 1 = yes) (from only C1/0CA3) C1/0999: F01B BEQ $09B6 C1/099B: ADEDE9 LDA $E9ED C1/099E: D03A BNE $09DA C1/09A0: A509 LDA $09 C1/09A2: C910 CMP #$10 C1/09A4: D034 BNE $09DA C1/09A6: 9CAB62 STZ $62AB (Clear the "game is paused" variable. 0 = unpaused) C1/09A9: 7B TDC C1/09AA: 8F412100 STA $002141 C1/09AE: A9F5 LDA #$F5 C1/09B0: 8F402100 STA $002140 C1/09B4: 8024 BRA $09DA C1/09B6: AD8A62 LDA $628A (Is the game in flashback mode? 1 = yes) C1/09B9: D021 BNE $09DC C1/09BB: ADEDE9 LDA $E9ED C1/09BE: D01C BNE $09DC C1/09C0: AD0FEC LDA $EC0F C1/09C3: D017 BNE $09DC C1/09C5: A509 LDA $09 C1/09C7: C910 CMP #$10 C1/09C9: D011 BNE $09DC C1/09CB: A901 LDA #$01 C1/09CD: 8DAB62 STA $62AB (Store 1 to the "game is paused" variable. 1 = paused) C1/09D0: 8F412100 STA $002141 C1/09D4: A9F5 LDA #$F5 C1/09D6: 8F402100 STA $002140 C1/09DA: 38 SEC C1/09DB: 60 RTS
C1/09DC: 18 CLC (from C1/09B9, C1/09BE, C1/09C3, C1/09C9) C1/09DD: 60 RTS
C1/09DE unknow
C1/09DE: 0A ASL A (from C1/0AD0, C1/0AE3) C1/09DF: AA TAX C1/09E0: C220 REP #$20 C1/09E2: BFC4D2C2 LDA $C2D2C4,X C1/09E6: 8D7243 STA $4372 C1/09E9: BFD4D2C2 LDA $C2D2D4,X C1/09ED: 8D1621 STA $2116 C1/09F0: A08000 LDY #$0080 C1/09F3: 8C7543 STY $4375 C1/09F6: A98000 LDA #$0080 C1/09F9: 8D0B42 STA $420B C1/09FC: BFCCD2C2 LDA $C2D2CC,X C1/0A00: 8D7243 STA $4372 C1/0A03: BFDCD2C2 LDA $C2D2DC,X C1/0A07: 8D1621 STA $2116 C1/0A0A: 8C7543 STY $4375 C1/0A0D: A98000 LDA #$0080 C1/0A10: E220 SEP #$20 C1/0A12: 8D0B42 STA $420B C1/0A15: 60 RTS
C1/0A16 unknow
Something to do with palettes during NMI? C1/0A16: 7B TDC (from only C1/0BC4) C1/0A17: 48 PHA C1/0A18: AB PLB C1/0A19: 8D0C42 STA $420C C1/0A1C: 8D7443 STA $4374 C1/0A1F: 8D7743 STA $4377 C1/0A22: A8 TAY C1/0A23: AD3F21 LDA $213F C1/0A26: A980 LDA #$80 C1/0A28: 8D0021 STA $2100 C1/0A2B: 8C0221 STY $2102 C1/0A2E: A20004 LDX #$0400 C1/0A31: 8E7043 STX $4370 C1/0A34: A20003 LDX #$0300 C1/0A37: 8E7243 STX $4372 C1/0A3A: A22002 LDX #$0220 C1/0A3D: 8E7543 STX $4375 C1/0A40: A980 LDA #$80 C1/0A42: 8D0B42 STA $420B C1/0A45: 7B TDC C1/0A46: 8D2121 STA $2121 C1/0A49: A20222 LDX #$22 (Animation Script pointer)02 C1/0A4C: 8E7043 STX $4370 C1/0A4F: A2007E LDX #$7E00 C1/0A52: 8E7243 STX $4372 C1/0A55: A97E LDA #$7E C1/0A57: 8D7443 STA $4374 C1/0A5A: A2A000 LDX #$00A0 C1/0A5D: 8E7543 STX $4375 C1/0A60: A980 LDA #$80 C1/0A62: 8D0B42 STA $420B C1/0A65: A211EC LDX #$EC11 C1/0A68: 8E7243 STX $4372 C1/0A6B: A97E LDA #$7E C1/0A6D: 8D7443 STA $4374 C1/0A70: A26000 LDX #$0060 C1/0A73: 8E7543 STX $4375 C1/0A76: A980 LDA #$80 C1/0A78: 8D0B42 STA $420B C1/0A7B: A2007F LDX #$7F00 (pay attention to this one!) C1/0A7E: 8E7243 STX $4372 C1/0A81: A97E LDA #$7E C1/0A83: 8D7443 STA $4374 C1/0A86: A20001 LDX #$0100 C1/0A89: 8E7543 STX $4375 C1/0A8C: A980 LDA #$80 C1/0A8E: 8D0B42 STA $420B C1/0A91: A901 LDA #$01 C1/0A93: 8D7043 STA $4370 C1/0A96: A918 LDA #$18 C1/0A98: 8D7143 STA $4371 C1/0A9B: AFBD627E LDA $7E62BD C1/0A9F: D04B BNE $0AEC C1/0AA1: A598 LDA $98 C1/0AA3: 291F AND #$1F C1/0AA5: 0A ASL A C1/0AA6: AA TAX C1/0AA7: C220 REP #$20 C1/0AA9: A98000 LDA #$0080 C1/0AAC: 8D7543 STA $4375 C1/0AAF: BF24D3C2 LDA $C2D324,X C1/0AB3: 8D1621 STA $2116 C1/0AB6: BFE4D2C2 LDA $C2D2E4,X C1/0ABA: 8D7243 STA $4372 C1/0ABD: 7B TDC C1/0ABE: E220 SEP #$20 C1/0AC0: A97F LDA #$7F C1/0AC2: 8D7443 STA $4374 C1/0AC5: A980 LDA #$80 C1/0AC7: 8D0B42 STA $420B C1/0ACA: A598 LDA $98 C1/0ACC: 2903 AND #$03 C1/0ACE: 8536 STA $36 C1/0AD0: 20DE09 JSR $09DE C1/0AD3: AFBB647E LDA $7E64BB C1/0AD7: D013 BNE $0AEC C1/0AD9: AFAD7B7E LDA $7E7BAD C1/0ADD: 300D BMI $0AEC C1/0ADF: C536 CMP $36 C1/0AE1: F003 BEQ $0AE6 C1/0AE3: 20DE09 JSR $09DE C1/0AE6: A9FF LDA #$FF C1/0AE8: 8FAD7B7E STA $7E7BAD C1/0AEC: A24000 LDX #$0040 C1/0AEF: 8E7543 STX $4375 C1/0AF2: A2ED5F LDX #$5FED C1/0AF5: 8E7243 STX $4372 C1/0AF8: A22040 LDX #$4020 C1/0AFB: 8E1621 STX $2116 C1/0AFE: A97E LDA #$7E C1/0B00: 8D7443 STA $4374 C1/0B03: A980 LDA #$80 C1/0B05: 8D0B42 STA $420B C1/0B08: AFBB647E LDA $7E64BB C1/0B0C: F064 BEQ $0B72 C1/0B0E: A9D8 LDA #$D8 C1/0B10: 8D7443 STA $4374 C1/0B13: C220 REP #$20 C1/0B15: A08000 LDY #$0080 C1/0B18: A28000 LDX #$0080 C1/0B1B: AFBC647E LDA $7E64BC C1/0B1F: 8D7243 STA $4372 C1/0B22: AFC4647E LDA $7E64C4 C1/0B26: 8D1621 STA $2116 C1/0B29: 8C7543 STY $4375 C1/0B2C: 8E0B42 STX $420B C1/0B2F: AFBE647E LDA $7E64BE C1/0B33: 8D7243 STA $4372 C1/0B36: AFC6647E LDA $7E64C6 C1/0B3A: 8D1621 STA $2116 C1/0B3D: 8C7543 STY $4375 C1/0B40: 8E0B42 STX $420B C1/0B43: AFC0647E LDA $7E64C0 C1/0B47: 8D7243 STA $4372 C1/0B4A: AFC8647E LDA $7E64C8 C1/0B4E: 8D1621 STA $2116 C1/0B51: 8C7543 STY $4375 C1/0B54: 8E0B42 STX $420B C1/0B57: AFC2647E LDA $7E64C2 C1/0B5B: 8D7243 STA $4372 C1/0B5E: AFCA647E LDA $7E64CA C1/0B62: 8D1621 STA $2116 C1/0B65: 8C7543 STY $4375 C1/0B68: 8E0B42 STX $420B C1/0B6B: 7B TDC C1/0B6C: E220 SEP #$20 C1/0B6E: 8FBB647E STA $7E64BB C1/0B72: 60 RTS
C1/0B73 unknow
C1/0B73: 9C452F STZ $2F45 (from only C1/0CFA, zero = nobody's trying to run) C1/0B76: 22A4B8C2 JSL $C2B8A4 C1/0B7A: AD4B2F LDA $2F4B (Monst. Form. Aux. Byte 4) C1/0B7D: 2901 AND #$01 C1/0B7F: 0D9A62 ORA $629A C1/0B82: 0DEFE9 ORA $E9EF C1/0B85: D00B BNE $0B92 C1/0B87: A50A LDA $0A C1/0B89: 2930 AND #$30 (filter out all bits except L and R) C1/0B8B: C930 CMP #$30 (are you pressing L+R?) C1/0B8D: D003 BNE $0B92 (branch if not) C1/0B8F: EE452F INC $2F45 (characters are trying to run) C1/0B92: A60E LDX $0E C1/0B94: E8 INX C1/0B95: 860E STX $0E C1/0B97: 2225B9C2 JSL $C2B925 C1/0B9B: 6447 STZ $47 C1/0B9D: ADAB62 LDA $62AB (Is the game paused? 1 = yes) C1/0BA0: D004 BNE $0BA6 C1/0BA2: 221500C0 JSL $C00015 C1/0BA6: 60 RTS
C1/0BA7 NMI interrupt
C1/0BA7: 08 PHP (from 00/1500, set at C2/D424) C1/0BA8: C230 REP #$30 C1/0BAA: 48 PHA C1/0BAB: DA PHX C1/0BAC: 5A PHY C1/0BAD: 8B PHB C1/0BAE: 0B PHD C1/0BAF: A20000 LDX #$0000 C1/0BB2: DA PHX C1/0BB3: 2B PLD C1/0BB4: 7B TDC C1/0BB5: E220 SEP #$20 C1/0BB7: AF104200 LDA $004210 C1/0BBB: A546 LDA $46 C1/0BBD: F003 BEQ $0BC2 C1/0BBF: 4C420D JMP $0D42 (exit out of NMI)
C1/0BC2 unknow
C1/0BC2: E646 INC $46 (from only C1/0BBD) C1/0BC4: 20160A JSR $0A16 C1/0BC7: A97E LDA #$7E C1/0BC9: 48 PHA C1/0BCA: AB PLB C1/0BCB: 206904 JSR $0469 C1/0BCE: 20CA04 JSR $04CA C1/0BD1: 20995D JSR $5D99 C1/0BD4: 20A105 JSR $05A1 C1/0BD7: 204006 JSR $0640 C1/0BDA: 206F19 JSR $196F C1/0BDD: 228FA8C2 JSL $C2A88F C1/0BE1: ADEFEC LDA $ECEF C1/0BE4: 2940 AND #$40 C1/0BE6: F02F BEQ $0C17 C1/0BE8: C220 REP #$20 C1/0BEA: A9E478 LDA #$78E4 C1/0BED: 8F162100 STA $002116 C1/0BF1: AD9062 LDA $6290 C1/0BF4: 8F182100 STA $002118 C1/0BF8: AD9262 LDA $6292 C1/0BFB: 8F182100 STA $002118 C1/0BFF: AD9462 LDA $6294 C1/0C02: 8F182100 STA $002118 C1/0C06: AD9662 LDA $6296 C1/0C09: 8F182100 STA $002118 C1/0C0D: AD9862 LDA $6298 C1/0C10: 8F182100 STA $002118 C1/0C14: 7B TDC C1/0C15: E220 SEP #$20 C1/0C17: 20FA02 JSR $02FA C1/0C1A: 207303 JSR $0373 C1/0C1D: 204703 JSR $0347 C1/0C20: 20FB03 JSR $03FB C1/0C23: ADC4E9 LDA $E9C4 C1/0C26: 8F1B2100 STA $00211B C1/0C2A: ADC5E9 LDA $E9C5 C1/0C2D: 8F1B2100 STA $00211B C1/0C31: ADC6E9 LDA $E9C6 C1/0C34: 8F1C2100 STA $00211C C1/0C38: ADC7E9 LDA $E9C7 C1/0C3B: 8F1C2100 STA $00211C C1/0C3F: ADC8E9 LDA $E9C8 C1/0C42: 8F1D2100 STA $00211D C1/0C46: ADC9E9 LDA $E9C9 C1/0C49: 8F1D2100 STA $00211D C1/0C4D: ADCAE9 LDA $E9CA C1/0C50: 8F1E2100 STA $00211E C1/0C54: ADCBE9 LDA $E9CB C1/0C57: 8F1E2100 STA $00211E C1/0C5B: ADCCE9 LDA $E9CC C1/0C5E: 8F1F2100 STA $00211F C1/0C62: ADCDE9 LDA $E9CD C1/0C65: 8F1F2100 STA $00211F C1/0C69: ADCEE9 LDA $E9CE C1/0C6C: 8F202100 STA $002120 C1/0C70: ADCFE9 LDA $E9CF C1/0C73: 8F202100 STA $002120 C1/0C77: C220 REP #$20 C1/0C79: A908F7 LDA #$F708 C1/0C7C: 8F262100 STA $002126 C1/0C80: A9FF00 LDA #$00FF C1/0C83: 8F282100 STA $002128 C1/0C87: 7B TDC C1/0C88: E220 SEP #$20 C1/0C8A: ADAB62 LDA $62AB (Is the game paused? 1 = yes) C1/0C8D: F006 BEQ $0C95 C1/0C8F: ADF9E9 LDA $E9F9 C1/0C92: 4A LSR A C1/0C93: 8003 BRA $0C98 C1/0C95: ADF9E9 LDA $E9F9 C1/0C98: D002 BNE $0C9C C1/0C9A: 0980 ORA #$80 C1/0C9C: 8F002100 STA $002100 C1/0CA0: 20EA07 JSR $07EA C1/0CA3: 209609 JSR $0996 C1/0CA6: B05B BCS $0D03 C1/0CA8: ADCA7B LDA $7BCA C1/0CAB: F00F BEQ $0CBC C1/0CAD: AECA62 LDX $62CA C1/0CB0: BD0140 LDA $4001,X C1/0CB3: C9FF CMP #$FF C1/0CB5: D005 BNE $0CBC C1/0CB7: A901 LDA #$01 C1/0CB9: 8DCB7B STA $7BCB C1/0CBC: 20A307 JSR $07A3 C1/0CBF: A908 LDA #$08 C1/0CC1: 8571 STA $71 C1/0CC3: 20CEB3 JSR $B3CE C1/0CC6: 206C27 JSR $276C C1/0CC9: 205906 JSR $0659 C1/0CCC: 2040B5 JSR $B540 C1/0CCF: 20A236 JSR $36A2 C1/0CD2: 200C05 JSR $050C C1/0CD5: ADBF62 LDA $62BF C1/0CD8: D003 BNE $0CDD C1/0CDA: 20D32D JSR $2DD3 (set character palettes, among other things) C1/0CDD: 20145B JSR $5B14 C1/0CE0: 205C5A JSR $5A5C C1/0CE3: AD857B LDA $7B85 C1/0CE6: F00C BEQ $0CF4 C1/0CE8: 20145B JSR $5B14 C1/0CEB: 205C5A JSR $5A5C C1/0CEE: 20145B JSR $5B14 C1/0CF1: 205C5A JSR $5A5C C1/0CF4: 202455 JSR $5524 C1/0CF7: 200018 JSR $1800 C1/0CFA: 20730B JSR $0B73 C1/0CFD: 8B PHB C1/0CFE: 220C00C3 JSL $C3000C C1/0D02: AB PLB C1/0D03: 7B TDC C1/0D04: C220 REP #$20 C1/0D06: AD0E00 LDA $000E C1/0D09: 290F00 AND #$000F C1/0D0C: AA TAX C1/0D0D: AD8562 LDA $6285 C1/0D10: 29FF00 AND #$00FF C1/0D13: F01F BEQ $0D34 C1/0D15: C98000 CMP #$0080 C1/0D18: F00D BEQ $0D27 C1/0D1A: BF4C0DC1 LDA $C10D4C,X C1/0D1E: 29FF00 AND #$00FF C1/0D21: 0900FF ORA #$FF00 C1/0D24: 8DB264 STA $64B2 C1/0D27: BF4B0DC1 LDA $C10D4B,X C1/0D2B: 29FF00 AND #$00FF C1/0D2E: 0900FF ORA #$FF00 C1/0D31: 8DB064 STA $64B0 C1/0D34: 2258B2C2 JSL $C2B258 C1/0D38: 7B TDC C1/0D39: E220 SEP #$20 C1/0D3B: 20851B JSR $1B85 C1/0D3E: E698 INC $98 C1/0D40: 6446 STZ $46 C1/0D42: C230 REP #$30 C1/0D44: 2B PLD C1/0D45: AB PLB C1/0D46: 7A PLY C1/0D47: FA PLX C1/0D48: 68 PLA C1/0D49: 28 PLP C1/0D4A: 40 RTI (IRQ jumps here, from 00/1504, set at C2/D42A)
C1/0D4B unknow
C1/0D4B: FFFDFEFD C1/0D4F: FCFEFF C1/0D52: FDFCFE C1/0D55: FDFFFD C1/0D58: FEFFFE C1/0D5B: FF
C1/0D5C unknow
C1/0D5C: A2BFE7 LDX #$E7BF (from only C1/12F1) C1/0D5F: 6424 STZ $24 C1/0D61: 7B TDC C1/0D62: 207D0D JSR $0D7D C1/0D65: A524 LDA $24 C1/0D67: 18 CLC C1/0D68: 690285 ADC #$8502 C1/0D6B: 24C2 BIT $C2 C1/0D6D: 208A18 JSR $188A C1/0D70: 694000 ADC #$0040 C1/0D73: AA TAX C1/0D74: 7B TDC C1/0D75: E220 SEP #$20 C1/0D77: E0BFE9 CPX #$E9BF C1/0D7A: D0E5 BNE $0D61 C1/0D7C: 60 RTS
C1/0D7D unknow
C1/0D7D: A910 LDA #$10 (from only C1/0D62) C1/0D7F: 851A STA $1A C1/0D81: A940 LDA #$40 C1/0D83: 851C STA $1C C1/0D85: 641D STZ $1D C1/0D87: 6422 STZ $22 (Animation Script pointer) C1/0D89: 8006 BRA $0D91
C1/0D8B unknow
C1/0D8B: 48 PHA (from only C1/D92E) C1/0D8C: A901 LDA #$01 C1/0D8E: 8522 STA $22 (Animation Script pointer) C1/0D90: 68 PLA C1/0D91: DA PHX C1/0D92: 8516 STA $16 C1/0D94: 8610 STX $10 C1/0D96: A97E LDA #$7E C1/0D98: 8512 STA $12 C1/0D9A: 641B STZ $1B C1/0D9C: 8B PHB C1/0D9D: A900 LDA #$00 C1/0D9F: 48 PHA C1/0DA0: AB PLB C1/0DA1: 7B TDC C1/0DA2: A8 TAY C1/0DA3: A516 LDA $16 C1/0DA5: C220 REP #$20 C1/0DA7: 0A ASL A C1/0DA8: 8516 STA $16 C1/0DAA: A522 LDA $22 (Animation Script pointer) C1/0DAC: 290100 AND #$0001 C1/0DAF: F022 BEQ $0DD3 C1/0DB1: E210 SEP #$10 C1/0DB3: 20026C JSR $6C02 C1/0DB6: C210 REP #$10 C1/0DB8: 3A DEC A C1/0DB9: 3A DEC A C1/0DBA: 9710 STA [$10],Y C1/0DBC: A516 LDA $16 C1/0DBE: 18 CLC C1/0DBF: 651A ADC $1A C1/0DC1: 8516 STA $16 C1/0DC3: C8 INY C1/0DC4: C8 INY C1/0DC5: C8 INY C1/0DC6: C8 INY C1/0DC7: C41C CPY $1C C1/0DC9: D0E6 BNE $0DB1 C1/0DCB: 7B TDC C1/0DCC: C210 REP #$10 C1/0DCE: E220 SEP #$20 C1/0DD0: AB PLB C1/0DD1: FA PLX C1/0DD2: 60 RTS
C1/0DD3 unknow
C1/0DD3: E210 SEP #$10 (from only C1/0DAF) C1/0DD5: 20026C JSR $6C02 C1/0DD8: C210 REP #$10 C1/0DDA: 3A DEC A C1/0DDB: 3A DEC A C1/0DDC: 9710 STA [$10],Y C1/0DDE: A516 LDA $16 C1/0DE0: 18 CLC C1/0DE1: 651A ADC $1A C1/0DE3: 8516 STA $16 C1/0DE5: C8 INY C1/0DE6: C8 INY C1/0DE7: C41C CPY $1C C1/0DE9: D0E8 BNE $0DD3 C1/0DEB: 7B TDC C1/0DEC: C210 REP #$10 C1/0DEE: E220 SEP #$20 C1/0DF0: AB PLB C1/0DF1: FA PLX C1/0DF2: 60 RTS
C1/0DF3 unknow
C1/0DF3: 7B TDC (from C1/007F, C1/0200, C1/1090, C1/FD7C) C1/0DF4: AA TAX C1/0DF5: CA DEX C1/0DF6: 8610 STX $10 C1/0DF8: 8612 STX $12 C1/0DFA: AD8D62 LDA $628D C1/0DFD: D00D BNE $0E0C C1/0DFF: ADEFE9 LDA $E9EF C1/0E02: F008 BEQ $0E0C C1/0E04: E8 INX C1/0E05: 8612 STX $12 C1/0E07: A23800 LDX #$0038 C1/0E0A: 8610 STX $10 C1/0E0C: C220 REP #$20 C1/0E0E: 7B TDC C1/0E0F: AA TAX C1/0E10: A8 TAY C1/0E11: BD782E LDA $2E78,X C1/0E14: 99B52E STA $2EB5,Y C1/0E17: BD802E LDA $2E80,X C1/0E1A: 99B72E STA $2EB7,Y C1/0E1D: BD882E LDA $2E88,X C1/0E20: 99B92E STA $2EB9,Y C1/0E23: BD902E LDA $2E90,X C1/0E26: 99BB2E STA $2EBB,Y C1/0E29: BD982E LDA $2E98,X C1/0E2C: 2510 AND $10 C1/0E2E: 99BD2E STA $2EBD,Y C1/0E31: BDA02E LDA $2EA0,X C1/0E34: 2512 AND $12 C1/0E36: 99BF2E STA $2EBF,Y C1/0E39: E8 INX C1/0E3A: E8 INX C1/0E3B: 98 TYA C1/0E3C: 18 CLC C1/0E3D: 692000 ADC #$0020 C1/0E40: A8 TAY C1/0E41: E00800 CPX #$0008 C1/0E44: D0CB BNE $0E11 C1/0E46: 7B TDC C1/0E47: E220 SEP #$20 C1/0E49: 6410 STZ $10 C1/0E4B: 7B TDC C1/0E4C: AA TAX C1/0E4D: BDA12E LDA $2EA1,X C1/0E50: 2920 AND #$20 C1/0E52: 4920 EOR #$20 C1/0E54: 4A LSR A C1/0E55: 0510 ORA $10 C1/0E57: 4A LSR A C1/0E58: 8510 STA $10 C1/0E5A: E8 INX C1/0E5B: E8 INX C1/0E5C: E00800 CPX #$0008 C1/0E5F: D0EC BNE $0E4D C1/0E61: A510 LDA $10 C1/0E63: 8DAD61 STA $61AD C1/0E66: 60 RTS
C1/0E67 unknow
C1/0E67: C220 REP #$20 (from C1/0085, C1/1093) C1/0E69: 7B TDC C1/0E6A: AA TAX C1/0E6B: BDBD2E LDA $2EBD,X C1/0E6E: 9DC12E STA $2EC1,X C1/0E71: BDBF2E LDA $2EBF,X C1/0E74: 9DC32E STA $2EC3,X C1/0E77: 8A TXA C1/0E78: 18 CLC C1/0E79: 692000 ADC #$0020 C1/0E7C: AA TAX C1/0E7D: E08000 CPX #$0080 C1/0E80: D0E9 BNE $0E6B C1/0E82: 7B TDC C1/0E83: E220 SEP #$20 C1/0E85: 60 RTS
C1/0E86 unknow
C1/0E86: A20F00 LDX #$000F (C1/1011, C1/91D1, C1/9366) C1/0E89: 8622 STX $22 (Animation Script pointer) C1/0E8B: AEE011 LDX $11E0 C1/0E8E: 8624 STX $24 C1/0E90: C220 REP #$20 C1/0E92: 20F418 JSR $18F4 C1/0E95: E220 SEP #$20 C1/0E97: A626 LDX $26 C1/0E99: BF0E62CF LDA $CF620E,X (Enemies that are bosses) C1/0E9D: 8528 STA $28 C1/0E9F: C220 REP #$20 C1/0EA1: BF0062CF LDA $CF6200,X C1/0EA5: EB XBA C1/0EA6: 4A LSR A C1/0EA7: 4A LSR A C1/0EA8: 4A LSR A C1/0EA9: 4A LSR A C1/0EAA: 4A LSR A C1/0EAB: 4A LSR A C1/0EAC: 293F00 AND #$003F C1/0EAF: 8510 STA $10 C1/0EB1: 7B TDC C1/0EB2: E220 SEP #$20 C1/0EB4: BF0062CF LDA $CF6200,X C1/0EB8: 4A LSR A C1/0EB9: 4A LSR A C1/0EBA: 4A LSR A C1/0EBB: 4A LSR A C1/0EBC: 8D0020 STA $2000 C1/0EBF: BF0162CF LDA $CF6201,X (Enemies present in formation) C1/0EC3: 293F AND #$3F C1/0EC5: 8DAA61 STA $61AA C1/0EC8: 7B TDC C1/0EC9: A8 TAY C1/0ECA: 4628 LSR $28 C1/0ECC: 2A ROL A C1/0ECD: 2901 AND #$01 C1/0ECF: 852A STA $2A C1/0ED1: BF0862CF LDA $CF6208,X (Enemy (X+1) position) C1/0ED5: 29F0 AND #$F0 C1/0ED7: 4A LSR A C1/0ED8: 99C380 STA $80C3,Y (Store enemy's X-coord.) C1/0EDB: 7B TDC C1/0EDC: 99C480 STA $80C4,Y C1/0EDF: BF0862CF LDA $CF6208,X (Enemy (X+1) position) C1/0EE3: 290F AND #$0F C1/0EE5: 0A ASL A C1/0EE6: 0A ASL A C1/0EE7: 0A ASL A C1/0EE8: 99CF80 STA $80CF,Y C1/0EEB: 7B TDC C1/0EEC: 99D080 STA $80D0,Y C1/0EEF: 4610 LSR $10 C1/0EF1: 2A ROL A C1/0EF2: 2901 AND #$01 C1/0EF4: 99F480 STA $80F4,Y C1/0EF7: C8 INY C1/0EF8: C8 INY C1/0EF9: E8 INX C1/0EFA: C00C00 CPY #$000C C1/0EFD: D0CB BNE $0ECA C1/0EFF: 60 RTS
C1/0F00 unknow
C1/0F00: C220 REP #$20 (from C1/1E64, C1/1E79) C1/0F02: 7B TDC C1/0F03: AA TAX C1/0F04: A9FFFF LDA #$FFFF C1/0F07: 9DF743 STA $43F7,X C1/0F0A: E8 INX C1/0F0B: E8 INX C1/0F0C: E8 INX C1/0F0D: E8 INX C1/0F0E: E05C02 CPX #$025C C1/0F11: D0F4 BNE $0F07 C1/0F13: 7B TDC C1/0F14: E220 SEP #$20 C1/0F16: 60 RTS
C1/0F17 unknow
C1/0F17: 22F7B6C2 JSR $C2B6F7 (from only C1/112A) C1/0F1B: 20A546 JSR $46A5 C1/0F1E: 60 RTS
C1/0F1F unknow
C1/0F1F: A2FFFF LDX #$FFFF (from C1/0088, C1/1096) C1/0F22: 8ED664 STX $64D6 C1/0F25: 8ED864 STX $64D8 C1/0F28: E8 INX C1/0F29: A8 TAY C1/0F2A: 6410 STZ $10 C1/0F2C: 6412 STZ $12 C1/0F2E: AD472F LDA $2F47 C1/0F31: 49FF EOR #$FF C1/0F33: 8514 STA $14 C1/0F35: AD9261 LDA $6192 C1/0F38: 2514 AND $14 C1/0F3A: 8514 STA $14 C1/0F3C: BDAE2E LDA $2EAE,X C1/0F3F: C9FF CMP #$FF C1/0F41: F012 BEQ $0F55 C1/0F43: A512 LDA $12 C1/0F45: 0910 ORA #$10 C1/0F47: 8512 STA $12 C1/0F49: A514 LDA $14 C1/0F4B: 2901 AND #$01 C1/0F4D: F006 BEQ $0F55 C1/0F4F: A510 LDA $10 C1/0F51: 99D664 STA $64D6,Y C1/0F54: C8 INY C1/0F55: 4614 LSR $14 C1/0F57: 4612 LSR $12 C1/0F59: E610 INC $10 C1/0F5B: 8A TXA C1/0F5C: 18 CLC C1/0F5D: 6920 ADC #$20 C1/0F5F: AA TAX C1/0F60: C980 CMP #$80 C1/0F62: D0D8 BNE $0F3C C1/0F64: A512 LDA $12 C1/0F66: 8D1D20 STA $201D (Store as valid character targets) C1/0F69: 9CAC61 STZ $61AC C1/0F6C: 9CAD61 STZ $61AD C1/0F6F: AD4A2F LDA $2F4A (Monst. Form. Aux. Byte 3) C1/0F72: 8522 STA $22 (Battle event script) C1/0F74: A918 LDA #$18 C1/0F76: 8524 STA $24 C1/0F78: 20D918 JSR $18D9 C1/0F7B: A626 LDX $26 C1/0F7D: BF00FDD0 LDA $D0FD00,X C1/0F81: 2901 AND #$01 C1/0F83: F009 BEQ $0F8E C1/0F85: A2FFFF LDX #$FFFF C1/0F88: 8ED664 STX $64D6 C1/0F8B: 8ED864 STX $64D8 C1/0F8E: 60 RTS
C1/0F8F unknow
C1/0F8F: 7B TDC (from only C1/1326) C1/0F90: A8 TAY C1/0F91: 98 TYA (no point for this) C1/0F92: 0A ASL A C1/0F93: 0A ASL A C1/0F94: 0A ASL A C1/0F95: 0A ASL A C1/0F96: 0A ASL A C1/0F97: AA TAX C1/0F98: BDC62E LDA $2EC6,X C1/0F9B: 8522 STA $22 (Animation Script pointer) C1/0F9D: A916 LDA #$16 C1/0F9F: 8524 STA $24 C1/0FA1: 20D918 JSR $18D9 C1/0FA4: A626 LDX $26 C1/0FA6: BFB57CED LDA $ED7CB5,X (level factor) C1/0FAA: 2910 AND #$10 C1/0FAC: 998662 STA $6286,Y C1/0FAF: C8 INY C1/0FB0: C00400 CPY #$0004 C1/0FB3: D0DC BNE $0F91 C1/0FB5: 60 RTS
C1/0FB6 unknow
C1/0FB6: A20700 LDX #$0007 (from C1/0079, C1/108D) C1/0FB9: 9EAE2E STZ $2EAE,X (zero current HP/MP, max HP/MP for character 1) C1/0FBC: 9ECE2E STZ $2ECE,X (zero current HP/MP, max HP/MP for character 2) C1/0FBF: 9EEE2E STZ $2EEE,X (zero current HP/MP, max HP/MP for character 3) C1/0FC2: 9E0E2F STZ $2F0E,X (zero current HP/MP, max HP/MP for character 4) C1/0FC5: E8 INX C1/0FC6: E01600 CPX #$0016 C1/0FC9: D0EE BNE $0FB9 C1/0FCB: AD982E LDA $2E98 C1/0FCE: 0D9A2E ORA $2E9A C1/0FD1: 0D9C2E ORA $2E9C C1/0FD4: 0D9E2E ORA $2E9E C1/0FD7: 2908 AND #$08 C1/0FD9: 4A LSR A (A becomes 4) C1/0FDA: 4A LSR A (A becomes 2) C1/0FDB: 4A LSR A (A becomes 1) C1/0FDC: 8DBA64 STA $64BA (store either 0 or 1) C1/0FDF: 60 RTS
C1/0FE0 unknow
C1/0FE0: 7B TDC (from C1/0076, C1/1082) C1/0FE1: AA TAX C1/0FE2: 9EB661 STZ $61B6,X C1/0FE5: E8 INX C1/0FE6: E08000 CPX #$0080 C1/0FE9: D0F7 BNE $0FE2 C1/0FEB: 9CECE9 STZ $E9EC C1/0FEE: 9CEDE9 STZ $E9ED C1/0FF1: ADD11D LDA $1DD1 C1/0FF4: 8DEFEC STA $ECEF C1/0FF7: AD4E1D LDA $1D4E C1/0FFA: 2907 AND #$07 C1/0FFC: 8D342F STA $2F34 (Store wallpaper selection) C1/0FFF: 9CF1E9 STZ $E9F1 C1/1002: A9FF LDA #$FF C1/1004: 8D462F STA $2F46 C1/1007: 8D9161 STA $6191 C1/100A: 8D0FEC STA $EC0F C1/100D: 2243BDC2 JSR $C2BD43 C1/1011: 20860E JSR $0E86 C1/1014: ADAA61 LDA $61AA C1/1017: 8D1E20 STA $201E (Store as valid monster targets) C1/101A: 8D2F2F STA $2F2F C1/101D: 8DAB61 STA $61AB C1/1020: 7B TDC C1/1021: AA TAX C1/1022: CA DEX C1/1023: 8EB261 STX $61B2 C1/1026: 8EB461 STX $61B4 C1/1029: 60 RTS