Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
Final Fantasy VI/ROM map/Assembly C0B
< Final Fantasy VI | ROM map
Jump to navigation
Jump to search
C0/B002 event #$90 : adds Sabin's Bum Rush
C0/B002: AD281D LDA $1D28 C0/B005: 0980 ORA #$80 C0/B007: 8D281D STA $1D28 C0/B00A: A901 LDA #$01 C0/B00C: 4C5C9B JMP $9B5C
C0/B00F event #$98 : change character name
C0/B00F: 20AD9D JSR $9DAD C0/B012: C220 REP #$20 (16 bit accum./memory) C0/B014: 98 TYA C0/B015: 18 CLC C0/B016: 690016 ADC #$1600 C0/B019: 8D0102 STA $0201 C0/B01C: 7B TDC C0/B01D: E220 SEP #$20 (8 bit accum./memory) C0/B01F: A901 LDA #$01 C0/B021: 8D0002 STA $0200 C0/B024: 20CAC6 JSR $C6CA (make a call to the menu, invoke name changing screen) C0/B027: A901 LDA #$01 C0/B029: 8584 STA $84 C0/B02B: A9E0 LDA #$E0 C0/B02D: 8DFA11 STA $11FA C0/B030: A902 LDA #$02 C0/B032: 4C709B JMP $9B70
C0/B035 event #$99 : party selection
C0/B035: AC0308 LDY $0803 C0/B038: 8CFB07 STY $07FB C0/B03B: A0D907 LDY #$07D9 C0/B03E: 8CFD07 STY $07FD C0/B041: 8CFF07 STY $07FF C0/B044: 8C0108 STY $0801 C0/B047: A5EB LDA $EB (load number of groups) C0/B049: 8D0102 STA $0201 (save) C0/B04C: A6EC LDX $EC (load characters to force into party) C0/B04E: 8E0202 STX $0202 (save) C0/B051: A904 LDA #$04 C0/B053: 8D0002 STA $0200 (queue up C3/012B->C3/70E7) C0/B056: 20CAC6 JSR $C6CA (make a call to the menu, invoke party selection screen) C0/B059: 204A71 JSR $714A C0/B05C: 20676F JSR $6F67 C0/B05F: A901 LDA #$01 C0/B061: 8584 STA $84 C0/B063: A9C0 LDA #$C0 C0/B065: 8DFA11 STA $11FA C0/B068: A904 LDA #$04 C0/B06A: 4C709B JMP $9B70
C0/B06D event #$9B : shop
C0/B06D: A5EB LDA $EB C0/B06F: 8D0102 STA $0201 C0/B072: AC0308 LDY $0803 C0/B075: B97908 LDA $0879,Y C0/B078: 8D0202 STA $0202 C0/B07B: A903 LDA #$03 C0/B07D: 8D0002 STA $0200 C0/B080: 20CAC6 JSR $C6CA (make a call to the menu, invoke a shop) C0/B083: A901 LDA #$01 C0/B085: 8584 STA $84 C0/B087: A902 LDA #$02 C0/B089: 4C709B JMP $9B70
C0/B08C event #$9C : optimize equipment
C0/B08C: A5EB LDA $EB (load parameter) C0/B08E: 8D0102 STA $0201 (store as character to equip) C0/B091: 20B3C6 JSR $C6B3 (equip the character in $0201) C0/B094: 20F36C JSR $6CF3 (perform "equipment check" on the current party) C0/B097: A902 LDA #$02 C0/B099: 4C5C9B JMP $9B5C
C0/B09C event #$9D : set order for final battle
C0/B09C: A908 LDA #$08 C0/B09E: 8D0002 STA $0200 C0/B0A1: 20CAC6 JSR $C6CA (invoke party selection for final battle) C0/B0A4: A901 LDA #$01 C0/B0A6: 8584 STA $84 C0/B0A8: A9E0 LDA #$E0 C0/B0AA: 8DFA11 STA $11FA C0/B0AD: A901 LDA #$01 C0/B0AF: 4C709B JMP $9B70
C0/B0B2 event #$9A : selection of item for colosseum
C0/B0B2: A907 LDA #$07 C0/B0B4: 8D0002 STA $0200 C0/B0B7: 20CAC6 JSR $C6CA (make a call to the menu, invoke Colliseum) C0/B0BA: AD0502 LDA $0205 (load item bet) C0/B0BD: C9FF CMP #$FF (is it nothing?) C0/B0BF: F004 BEQ $B0C5 (branch if so) C0/B0C1: A940 LDA #$40 C0/B0C3: 8001 BRA $B0C6 C0/B0C5: 7B TDC C0/B0C6: 851A STA $1A C0/B0C8: ADBD1E LDA $1EBD C0/B0CB: 29BF AND #$BF C0/B0CD: 051A ORA $1A C0/B0CF: 8DBD1E STA $1EBD C0/B0D2: A9C0 LDA #$C0 C0/B0D4: 8DFA11 STA $11FA C0/B0D7: A901 LDA #$01 C0/B0D9: 8584 STA $84 C0/B0DB: A901 LDA #$01 C0/B0DD: 4C709B JMP $9B70
C0/B0E0 event #$A0 : set timer
C0/B0E0: A5EF LDA $EF C0/B0E2: 290C AND #$0C C0/B0E4: 851A STA $1A C0/B0E6: 4A LSR A C0/B0E7: 18 CLC C0/B0E8: 651A ADC $1A C0/B0EA: A8 TAY C0/B0EB: A5EB LDA $EB C0/B0ED: 998911 STA $1189,Y C0/B0F0: A5EC LDA $EC C0/B0F2: 998A11 STA $118A,Y C0/B0F5: A5ED LDA $ED C0/B0F7: 998B11 STA $118B,Y C0/B0FA: A5EE LDA $EE C0/B0FC: 998C11 STA $118C,Y C0/B0FF: A5EF LDA $EF C0/B101: 998811 STA $1188,Y C0/B104: 2903 AND #$03 C0/B106: 998D11 STA $118D,Y C0/B109: A906 LDA #$06 C0/B10B: 4C5C9B JMP $9B5C
C0/B10E event #$A1 : reset timer
C0/B10E: A5EB LDA $EB C0/B110: 0A ASL A C0/B111: 851A STA $1A C0/B113: 0A ASL A C0/B114: 18 CLC C0/B115: 651A ADC $1A C0/B117: A8 TAY C0/B118: 7B TDC C0/B119: 998811 STA $1188,Y C0/B11C: 998911 STA $1189,Y C0/B11F: 998A11 STA $118A,Y C0/B122: 998B11 STA $118B,Y C0/B125: 998C11 STA $118C,Y C0/B128: 998D11 STA $118D,Y C0/B12B: A902 LDA #$02 C0/B12D: 4C5C9B JMP $9B5C
C0/B130 event #$A2
C0/B130: 202CCD JSR $CD2C C0/B133: A901 LDA #$01 C0/B135: 4C5C9B JMP $9B5C
C0/B138 event #$B0 : repeat until event #$B1
C0/B138: A902 LDA #$02 C0/B13A: 20829B JSR $9B82 C0/B13D: A5EB LDA $EB C0/B13F: 9DC405 STA $05C4,X C0/B142: 4C6D9A JMP $9A6D
C0/B145 event #$B1 : signal end of repeat command (event #$B0)
C0/B145: A6E8 LDX $E8 C0/B147: BDC405 LDA $05C4,X C0/B14A: 3A DEC A C0/B14B: 9DC405 STA $05C4,X C0/B14E: F012 BEQ $B162 C0/B150: BDF105 LDA $05F1,X C0/B153: 85E5 STA $E5 C0/B155: BDF205 LDA $05F2,X C0/B158: 85E6 STA $E6 C0/B15A: BDF305 LDA $05F3,X C0/B15D: 85E7 STA $E7 C0/B15F: 4C6D9A JMP $9A6D
C0/B162: A6E8 LDX $E8 C0/B164: CA DEX C0/B165: CA DEX C0/B166: CA DEX C0/B167: 86E8 STX $E8 C0/B169: A901 LDA #$01 C0/B16B: 4C5C9B JMP $9B5C C0/B16E: 60 RTS
C0/B16F event #$BC
C0/B16F: A5EC LDA $EC C0/B171: EB XBA C0/B172: A5EB LDA $EB C0/B174: 20EDBA JSR $BAED C0/B177: B9801E LDA $1E80,Y C0/B17A: 3FFCBAC0 AND $C0BAFC,X C0/B17E: D014 BNE $B194 C0/B180: A6E8 LDX $E8 C0/B182: BDF105 LDA $05F1,X C0/B185: 85E5 STA $E5 C0/B187: BDF205 LDA $05F2,X C0/B18A: 85E6 STA $E6 C0/B18C: BDF305 LDA $05F3,X C0/B18F: 85E7 STA $E7 C0/B191: 4C6D9A JMP $9A6D
C0/B194: A6E8 LDX $E8 C0/B196: CA DEX C0/B197: CA DEX C0/B198: CA DEX C0/B199: 86E8 STX $E8 C0/B19B: A903 LDA #$03 C0/B19D: 4C5C9B JMP $9B5C
C0/B1A0: 60 RTS
C0/B1A1 event #$B2 : call subroutine
C0/B1A1: A904 LDA #$04 C0/B1A3: A6E8 LDX $E8 C0/B1A5: 18 CLC C0/B1A6: 65E5 ADC $E5 C0/B1A8: 9D9405 STA $0594,X C0/B1AB: A5E6 LDA $E6 C0/B1AD: 6900 ADC #$00 C0/B1AF: 9D9505 STA $0595,X C0/B1B2: A5E7 LDA $E7 C0/B1B4: 6900 ADC #$00 C0/B1B6: 9D9605 STA $0596,X C0/B1B9: A5EB LDA $EB C0/B1BB: 85E5 STA $E5 C0/B1BD: 9DF405 STA $05F4,X C0/B1C0: A5EC LDA $EC C0/B1C2: 85E6 STA $E6 C0/B1C4: 9DF505 STA $05F5,X C0/B1C7: A5ED LDA $ED C0/B1C9: 18 CLC C0/B1CA: 69CA ADC #$CA C0/B1CC: 85E7 STA $E7 C0/B1CE: 9FF60500 STA $0005F6,X C0/B1D2: E8 INX C0/B1D3: E8 INX C0/B1D4: E8 INX C0/B1D5: 86E8 STX $E8 C0/B1D7: A901 LDA #$01 C0/B1D9: 9DC405 STA $05C4,X C0/B1DC: 4C6D9A JMP $9A6D
C0/B1DF event #$B3 : repeat subroutine multiple times?
C0/B1DF: A6E8 LDX $E8 C0/B1E1: A5E5 LDA $E5 C0/B1E3: 18 CLC C0/B1E4: 6905 ADC #$05 C0/B1E6: 9D9405 STA $0594,X C0/B1E9: A5E6 LDA $E6 C0/B1EB: 6900 ADC #$00 C0/B1ED: 9D9505 STA $0595,X C0/B1F0: A5E7 LDA $E7 C0/B1F2: 6900 ADC #$00 C0/B1F4: 9D9605 STA $0596,X C0/B1F7: A5EC LDA $EC C0/B1F9: 85E5 STA $E5 C0/B1FB: 9DF405 STA $05F4,X C0/B1FE: A5ED LDA $ED C0/B200: 85E6 STA $E6 C0/B202: 9DF505 STA $05F5,X C0/B205: A5EE LDA $EE C0/B207: 18 CLC C0/B208: 69CA ADC #$CA C0/B20A: 85E7 STA $E7 C0/B20C: 9FF60500 STA $0005F6,X C0/B210: E8 INX C0/B211: E8 INX C0/B212: E8 INX C0/B213: 86E8 STX $E8 C0/B215: A5EB LDA $EB C0/B217: 9DC405 STA $05C4,X C0/B21A: 4C6D9A JMP $9A6D
C0/B21D event #$B4 : pause
C0/B21D: A5EB LDA $EB (LDX $EB?) C0/B21F: AA TAX C0/B220: 86E3 STX $E3 C0/B222: A902 LDA #$02 C0/B224: 4C5C9B JMP $9B5C
C0/B227 event #$B5 : pause
C0/B227: A5EB LDA $EB C0/B229: 8D0242 STA $4202 C0/B22C: A90F LDA #$0F C0/B22E: 8D0342 STA $4203 C0/B231: EA NOP C0/B232: EA NOP C0/B233: EA NOP C0/B234: EA NOP C0/B235: AE1642 LDX $4216 C0/B238: 86E3 STX $E3 C0/B23A: A902 LDA #$02 C0/B23C: 4C5C9B JMP $9B5C
C0/B23F event #$91 : pause by 15 units
C0/B23F: A20F00 LDX #$000F C0/B242: 86E3 STX $E3 C0/B244: A901 LDA #$01 C0/B246: 4C5C9B JMP $9B5C
C0/B249 event #$92 : pause by 30 units
C0/B249: A21E00 LDX #$001E C0/B24C: 86E3 STX $E3 C0/B24E: A901 LDA #$01 C0/B250: 4C5C9B JMP $9B5C
C0/B253 event #$93 : pause by 45 units
C0/B253: A22D00 LDX #$002D C0/B256: 86E3 STX $E3 C0/B258: A901 LDA #$01 C0/B25A: 4C5C9B JMP $9B5C
C0/B25D event #$94 : pause by 60 units
C0/B25D: A23C00 LDX #$003C C0/B260: 86E3 STX $E3 C0/B262: A901 LDA #$01 C0/B264: 4C5C9B JMP $9B5C
C0/B267 event #$95 : pause by 120 units
C0/B267: A27800 LDX #$0078 C0/B26A: 86E3 STX $E3 C0/B26C: A901 LDA #$01 C0/B26E: 4C5C9B JMP $9B5C
C0/B271 event #$BD
C0/B271: 202E06 JSR $062E (Random number generator) C0/B274: C980 CMP #$80 C0/B276: B013 BCS $B28B C0/B278: C221 REP #$21 C0/B27A: A5E5 LDA $E5 C0/B27C: 690400 ADC #$0004 C0/B27F: 85E5 STA $E5 C0/B281: 7B TDC C0/B282: E220 SEP #$20 (8 bit accum./memory) C0/B284: 65E7 ADC $E7 C0/B286: 85E7 STA $E7 C0/B288: 4C6D9A JMP $9A6D
C0/B28B: A6EB LDX $EB C0/B28D: 86E5 STX $E5 C0/B28F: A5ED LDA $ED C0/B291: 18 CLC C0/B292: 69CA ADC #$CA C0/B294: 85E7 STA $E7 C0/B296: 4C6D9A JMP $9A6D
C0/B299 event #$B7
C0/B299: A5EB LDA $EB C0/B29B: 20EDBA JSR $BAED C0/B29E: B9C91D LDA $1DC9,Y C0/B2A1: 3FFCBAC0 AND $C0BAFC,X C0/B2A5: F013 BEQ $B2BA C0/B2A7: C221 REP #$21 C0/B2A9: A5E5 LDA $E5 C0/B2AB: 690500 ADC #$0005 C0/B2AE: 85E5 STA $E5 C0/B2B0: 7B TDC C0/B2B1: E220 SEP #$20 (8 bit accum./memory) C0/B2B3: 65E7 ADC $E7 C0/B2B5: 85E7 STA $E7 C0/B2B7: 4C6D9A JMP $9A6D
C0/B2BA: A6EC LDX $EC C0/B2BC: 86E5 STX $E5 C0/B2BE: A5EE LDA $EE C0/B2C0: 18 CLC C0/B2C1: 69CA ADC #$CA C0/B2C3: 85E7 STA $E7 C0/B2C5: 4C6D9A JMP $9A6D
C0/B2C8 event #$C0 until #$C7
C0/B2C8: A5EA LDA $EA C0/B2CA: 38 SEC C0/B2CB: E9BF SBC #$BF C0/B2CD: 0A ASL A C0/B2CE: 1A INC A C0/B2CF: A8 TAY C0/B2D0: 8420 STY $20 C0/B2D2: A00100 LDY #$0001 C0/B2D5: 841E STY $1E C0/B2D7: A41E LDY $1E C0/B2D9: C220 REP #$20 (16 bit accum./memory) C0/B2DB: B7E5 LDA [$E5],Y C0/B2DD: 3009 BMI $B2E8 C0/B2DF: E220 SEP #$20 (8 bit accum./memory) C0/B2E1: 20ABBA JSR $BAAB C0/B2E4: F02C BEQ $B312 C0/B2E6: 800A BRA $B2F2 C0/B2E8: 29FF7F AND #$7FFF C0/B2EB: E220 SEP #$20 C0/B2ED: 20ABBA JSR $BAAB C0/B2F0: D020 BNE $B312 C0/B2F2: A41E LDY $1E C0/B2F4: C8 INY C0/B2F5: C8 INY C0/B2F6: 841E STY $1E C0/B2F8: C420 CPY $20 C0/B2FA: D0DB BNE $B2D7 C0/B2FC: C8 INY C0/B2FD: C8 INY C0/B2FE: C8 INY C0/B2FF: C221 REP #$21 C0/B301: 98 TYA C0/B302: 65E5 ADC $E5 C0/B304: 85E5 STA $E5 C0/B306: E220 SEP #$20 (8 bit accum./memory) C0/B308: A5E7 LDA $E7 C0/B30A: 6900 ADC #$00 C0/B30C: 85E7 STA $E7 C0/B30E: 7B TDC C0/B30F: 4C6D9A JMP $9A6D
C0/B312: A420 LDY $20 C0/B314: C220 REP #$20 (16 bit accum./memory) C0/B316: B7E5 LDA [$E5],Y C0/B318: 852A STA $2A C0/B31A: 7B TDC C0/B31B: E220 SEP #$20 (8 bit accum./memory) C0/B31D: C8 INY C0/B31E: C8 INY C0/B31F: B7E5 LDA [$E5],Y C0/B321: 18 CLC C0/B322: 69CA ADC #$CA C0/B324: 85E7 STA $E7 C0/B326: A42A LDY $2A C0/B328: 84E5 STY $E5 C0/B32A: 4C6D9A JMP $9A6D
C0/B32D event #$C8 until #$CF
C0/B32D: A5EA LDA $EA C0/B32F: 38 SEC C0/B330: E9C7 SBC #$C7 C0/B332: 0A ASL A C0/B333: 1A INC A C0/B334: A8 TAY C0/B335: 8420 STY $20 C0/B337: A00100 LDY #$0001 C0/B33A: 841E STY $1E C0/B33C: A41E LDY $1E C0/B33E: C220 REP #$20 (16 bit accum./memory) C0/B340: B7E5 LDA [$E5],Y C0/B342: 3009 BMI $B34D C0/B344: E220 SEP #$20 (8 bit accum./memory) C0/B346: 20ABBA JSR $BAAB C0/B349: D031 BNE $B37C C0/B34B: 800A BRA $B357 C0/B34D: 29FF7F AND #$7FFF C0/B350: E220 SEP #$20 C0/B352: 20ABBA JSR $BAAB C0/B355: F025 BEQ $B37C C0/B357: A41E LDY $1E C0/B359: C8 INY C0/B35A: C8 INY C0/B35B: 841E STY $1E C0/B35D: C420 CPY $20 C0/B35F: D0DB BNE $B33C C0/B361: A420 LDY $20 C0/B363: C220 REP #$20 (16 bit accum./memory) C0/B365: B7E5 LDA [$E5],Y C0/B367: 852A STA $2A C0/B369: 7B TDC C0/B36A: E220 SEP #$20 (8 bit accum./memory) C0/B36C: C8 INY C0/B36D: C8 INY C0/B36E: B7E5 LDA [$E5],Y C0/B370: 18 CLC C0/B371: 69CA ADC #$CA C0/B373: 85E7 STA $E7 C0/B375: A42A LDY $2A C0/B377: 84E5 STY $E5 C0/B379: 4C6D9A JMP $9A6D
C0/B37C: A420 LDY $20 C0/B37E: C8 INY C0/B37F: C8 INY C0/B380: C8 INY C0/B381: C221 REP #$21 C0/B383: 98 TYA C0/B384: 65E5 ADC $E5 C0/B386: 85E5 STA $E5 C0/B388: E220 SEP #$20 (8 bit accum./memory) C0/B38A: A5E7 LDA $E7 C0/B38C: 6900 ADC #$00 C0/B38E: 85E7 STA $E7 C0/B390: 7B TDC C0/B391: 4C6D9A JMP $9A6D
C0/B394 event #$E7 : display character portrait
C0/B394: A5EB LDA $EB C0/B396: 8D9507 STA $0795 C0/B399: A902 LDA #$02 C0/B39B: 4C5C9B JMP $9B5C
C0/B39E event #$E4
C0/B39E: 7B TDC C0/B39F: 8DB51E STA $1EB5 C0/B3A2: AD6D1A LDA $1A6D (Load the active party) C0/B3A5: 1A INC A C0/B3A6: AA TAX C0/B3A7: A901 LDA #$01 C0/B3A9: CA DEX C0/B3AA: F003 BEQ $B3AF C0/B3AC: 0A ASL A C0/B3AD: 80FA BRA $B3A9 C0/B3AF: 8DB41E STA $1EB4 C0/B3B2: A901 LDA #$01 C0/B3B4: 4C5C9B JMP $9B5C
C0/B3B7 event #$E3
C0/B3B7: 7B TDC C0/B3B8: 8DB41E STA $1EB4 C0/B3BB: 8DB51E STA $1EB5 C0/B3BE: A600 LDX $00 C0/B3C0: 9B TXY C0/B3C1: B96708 LDA $0867,Y C0/B3C4: 2907 AND #$07 C0/B3C6: F00A BEQ $B3D2 C0/B3C8: ADB41E LDA $1EB4 C0/B3CB: 1FFCBAC0 ORA $C0BAFC,X C0/B3CF: 8DB41E STA $1EB4 C0/B3D2: C221 REP #$21 C0/B3D4: 98 TYA C0/B3D5: 692900 ADC #$0029 C0/B3D8: A8 TAY C0/B3D9: 7B TDC C0/B3DA: E220 SEP #$20 (8 bit accum./memory) C0/B3DC: E8 INX C0/B3DD: E00800 CPX #$0008 C0/B3E0: D0DF BNE $B3C1 C0/B3E2: A600 LDX $00 C0/B3E4: 9B TXY C0/B3E5: B9AF09 LDA $09AF,Y C0/B3E8: 2907 AND #$07 C0/B3EA: F00A BEQ $B3F6 C0/B3EC: ADB51E LDA $1EB5 C0/B3EF: 1FFCBAC0 ORA $C0BAFC,X C0/B3F3: 8DB51E STA $1EB5 C0/B3F6: C221 REP #$21 C0/B3F8: 98 TYA C0/B3F9: 692900 ADC #$0029 C0/B3FC: A8 TAY C0/B3FD: 7B TDC C0/B3FE: E220 SEP #$20 (8 bit accum./memory) C0/B400: E8 INX C0/B401: E00800 CPX #$0008 C0/B404: D0DF BNE $B3E5 C0/B406: A901 LDA #$01 C0/B408: 4C5C9B JMP $9B5C
C0/B40B event #$DE
C0/B40B: 7B TDC C0/B40C: 8DB41E STA $1EB4 (since A is still 8 bit, two STZ commands would work here) C0/B40F: 8DB51E STA $1EB5 C0/B412: A600 LDX $00 C0/B414: 9B TXY C0/B415: B96708 LDA $0867,Y C0/B418: 2907 AND #$07 C0/B41A: CD6D1A CMP $1A6D (Is this the active party?) C0/B41D: D00A BNE $B429 C0/B41F: ADB41E LDA $1EB4 C0/B422: 1FFCBAC0 ORA $C0BAFC,X C0/B426: 8DB41E STA $1EB4 C0/B429: C221 REP #$21 C0/B42B: 98 TYA C0/B42C: 692900 ADC #$0029 C0/B42F: A8 TAY C0/B430: 7B TDC C0/B431: E220 SEP #$20 (8 bit accum./memory) C0/B433: E8 INX C0/B434: E00800 CPX #$0008 C0/B437: D0DC BNE $B415 C0/B439: A600 LDX $00 C0/B43B: 9B TXY C0/B43C: B9AF09 LDA $09AF,Y C0/B43F: 2907 AND #$07 C0/B441: CD6D1A CMP $1A6D (Is this the active party?) C0/B444: D00A BNE $B450 C0/B446: ADB51E LDA $1EB5 C0/B449: 1FFCBAC0 ORA $C0BAFC,X C0/B44D: 8DB51E STA $1EB5 C0/B450: C221 REP #$21 C0/B452: 98 TYA C0/B453: 692900 ADC #$0029 C0/B456: A8 TAY C0/B457: 7B TDC C0/B458: E220 SEP #$20 (8 bit accum./memory) C0/B45A: E8 INX C0/B45B: E00800 CPX #$0008 C0/B45E: D0DC BNE $B43C C0/B460: A901 LDA #$01 C0/B462: 4C5C9B JMP $9B5C
C0/B465 event #$DF
C0/B465: 7B TDC C0/B466: 8DB41E STA $1EB4 (LDX $00, STX $1EB4...) C0/B469: 8DB51E STA $1EB5 (clear the caseword) C0/B46C: A600 LDX $00 C0/B46E: 9B TXY C0/B46F: B96708 LDA $0867,Y C0/B472: 2940 AND #$40 C0/B474: F00A BEQ $B480 C0/B476: ADB41E LDA $1EB4 (load caseword) C0/B479: 1FFCBAC0 ORA $C0BAFC,X (set a bit) C0/B47D: 8DB41E STA $1EB4 (save caseword) C0/B480: C221 REP #$21 C0/B482: 98 TYA C0/B483: 692900 ADC #$0029 C0/B486: A8 TAY C0/B487: 7B TDC C0/B488: E220 SEP #$20 (8 bit accum./memory) C0/B48A: E8 INX C0/B48B: E00800 CPX #$0008 (have we done 8 characters yet?) C0/B48E: D0DF BNE $B46F (branch if not) C0/B490: A600 LDX $00 C0/B492: 9B TXY C0/B493: B9AF09 LDA $09AF,Y C0/B496: 2940 AND #$40 C0/B498: F00A BEQ $B4A4 C0/B49A: ADB51E LDA $1EB5 (load caseword) C0/B49D: 1FFCBAC0 ORA $C0BAFC,X (set a bit) C0/B4A1: 8DB51E STA $1EB5 (save caseword) C0/B4A4: C221 REP #$21 C0/B4A6: 98 TYA C0/B4A7: 692900 ADC #$0029 C0/B4AA: A8 TAY C0/B4AB: 7B TDC C0/B4AC: E220 SEP #$20 (8 bit accum./memory) C0/B4AE: E8 INX C0/B4AF: E00800 CPX #$0008 (have we done 8 characters yet?) C0/B4B2: D0DF BNE $B493 (branch if not) C0/B4B4: A901 LDA #$01 C0/B4B6: 4C5C9B JMP $9B5C (advance event queue 1 byte)
C0/B4B9 event #$E2
C0/B4B9: A920 LDA #$20 C0/B4BB: 851A STA $1A C0/B4BD: A400 LDY $00 C0/B4BF: BB TYX C0/B4C0: B95018 LDA $1850,Y C0/B4C3: 2907 AND #$07 C0/B4C5: CD6D1A CMP $1A6D (Is this the active party?) C0/B4C8: D00D BNE $B4D7 C0/B4CA: B95018 LDA $1850,Y C0/B4CD: 2918 AND #$18 C0/B4CF: C51A CMP $1A C0/B4D1: B004 BCS $B4D7 C0/B4D3: 851A STA $1A C0/B4D5: 861E STX $1E C0/B4D7: E8 INX C0/B4D8: C8 INY C0/B4D9: C01000 CPY #$0010 C0/B4DC: D0E2 BNE $B4C0 C0/B4DE: C220 REP #$20 (16 bit accum./memory) C0/B4E0: A51E LDA $1E C0/B4E2: 0A ASL A C0/B4E3: AA TAX C0/B4E4: BFF3B4C0 LDA $C0B4F3,X C0/B4E8: 8DB41E STA $1EB4 C0/B4EB: 7B TDC C0/B4EC: E220 SEP #$20 (8 bit accum./memory) C0/B4EE: A901 LDA #$01 C0/B4F0: 4C5C9B JMP $9B5C
C0/B4F3 unknow
C0/B4F3: 0100 C0/B4F5: 0200 C0/B4F7: 0400 C0/B4F9: 0800 C0/B4FB: 1000 C0/B4FD: 2000 C0/B4FF: 4000 C0/B501: 8000 C0/B503: 0001 C0/B505: 0002 C0/B507: 0004 C0/B509: 0008 C0/B50B: 0010 C0/B50D: 0020 C0/B50F: 0040 C0/B511: 0080
C0/B513 event #$E0
C0/B513: AEDC1E LDX $1EDC C0/B516: 8EB41E STX $1EB4 C0/B519: A901 LDA #$01 C0/B51B: 4C5C9B JMP $9B5C
C0/B51E event #$E1
C0/B51E: AEDE1E LDX $1EDE C0/B521: 8EB41E STX $1EB4 C0/B524: A901 LDA #$01 C0/B526: 4C5C9B JMP $9B5C
C0/B529 event #$E8
C0/B529: A5EB LDA $EB C0/B52B: 0A ASL A C0/B52C: A8 TAY C0/B52D: C220 REP #$20 (16 bit accum./memory) C0/B52F: A5EC LDA $EC C0/B531: 99C21F STA $1FC2,Y C0/B534: 7B TDC C0/B535: E220 SEP #$20 (8 bit accum./memory) C0/B537: A904 LDA #$04 C0/B539: 4C5C9B JMP $9B5C
C0/B53C event #$E9
C0/B53C: A5EB LDA $EB C0/B53E: 0A ASL A C0/B53F: A8 TAY C0/B540: C221 REP #$21 C0/B542: B9C21F LDA $1FC2,Y C0/B545: 65EC ADC $EC C0/B547: 9002 BCC $B54B C0/B549: A502 LDA $02 C0/B54B: 99C21F STA $1FC2,Y C0/B54E: 7B TDC C0/B54F: E220 SEP #$20 (8 bit accum./memory) C0/B551: A904 LDA #$04 C0/B553: 4C5C9B JMP $9B5C
C0/B556 event #$EA
C0/B556: A5EB LDA $EB C0/B558: 0A ASL A C0/B559: A8 TAY C0/B55A: C220 REP #$20 (16 bit accum./memory) C0/B55C: B9C21F LDA $1FC2,Y C0/B55F: 38 SEC C0/B560: E5EC SBC $EC C0/B562: B002 BCS $B566 C0/B564: A500 LDA $00 C0/B566: 99C21F STA $1FC2,Y C0/B569: 7B TDC C0/B56A: E220 SEP #$20 (8 bit accum./memory) C0/B56C: A904 LDA #$04 C0/B56E: 4C5C9B JMP $9B5C
C0/B571 event #$EB
C0/B571: A5EB LDA $EB C0/B573: 0A ASL A C0/B574: A8 TAY C0/B575: BEC21F LDX $1FC2,Y C0/B578: E4EC CPX $EC C0/B57A: 9006 BCC $B582 C0/B57C: F008 BEQ $B586 C0/B57E: A902 LDA #$02 C0/B580: 8006 BRA $B588 C0/B582: A904 LDA #$04 C0/B584: 8002 BRA $B588 C0/B586: A901 LDA #$01 C0/B588: 8DB41E STA $1EB4 (A = 4 for "less", = 1 for "equal", and = 2 for "greater") C0/B58B: 9CB51E STZ $1EB5 C0/B58E: A904 LDA #$04 C0/B590: 4C5C9B JMP $9B5C
C0/B593 event #$D0 : set event bit 0
C0/B593: A5EB LDA $EB C0/B595: 20EDBA JSR $BAED C0/B598: B9801E LDA $1E80,Y C0/B59B: 1FFCBAC0 ORA $C0BAFC,X C0/B59F: 99801E STA $1E80,Y C0/B5A2: A902 LDA #$02 C0/B5A4: 4C5C9B JMP $9B5C
C0/B5A7 event #$D2 : set event bit 1
C0/B5A7: A5EB LDA $EB C0/B5A9: 20EDBA JSR $BAED C0/B5AC: B9A01E LDA $1EA0,Y C0/B5AF: 1FFCBAC0 ORA $C0BAFC,X C0/B5B3: 99A01E STA $1EA0,Y C0/B5B6: A902 LDA #$02 C0/B5B8: 4C5C9B JMP $9B5C
C0/B5BB event #$D4 : set event bit 3
C0/B5BB: A5EB LDA $EB C0/B5BD: 20EDBA JSR $BAED C0/B5C0: B9C01E LDA $1EC0,Y C0/B5C3: 1FFCBAC0 ORA $C0BAFC,X C0/B5C7: 99C01E STA $1EC0,Y C0/B5CA: A902 LDA #$02 C0/B5CC: 4C5C9B JMP $9B5C
C0/B5CF event #$D1 : clear event bit 0
C0/B5CF: A5EB LDA $EB C0/B5D1: 20EDBA JSR $BAED C0/B5D4: B9801E LDA $1E80,Y C0/B5D7: 3F04BBC0 AND $C0BB04,X C0/B5DB: 99801E STA $1E80,Y C0/B5DE: A902 LDA #$02 C0/B5E0: 4C5C9B JMP $9B5C
C0/B5E3 event #$D3 : clear event bit 1
C0/B5E3: A5EB LDA $EB C0/B5E5: 20EDBA JSR $BAED C0/B5E8: B9A01E LDA $1EA0,Y C0/B5EB: 3F04BBC0 AND $C0BB04,X C0/B5EF: 99A01E STA $1EA0,Y C0/B5F2: A902 LDA #$02 C0/B5F4: 4C5C9B JMP $9B5C
C0/B5F7 event #$D5 : clear event bit 2
C0/B5F7: A5EB LDA $EB C0/B5F9: 20EDBA JSR $BAED C0/B5FC: B9C01E LDA $1EC0,Y C0/B5FF: 3F04BBC0 AND $C0BB04,X C0/B603: 99C01E STA $1EC0,Y C0/B606: A902 LDA #$02 C0/B608: 4C5C9B JMP $9B5C
C0/B60B event #$D6 : set event bit 3
C0/B60B: A5EB LDA $EB C0/B60D: 20EDBA JSR $BAED C0/B610: B9E01E LDA $1EE0,Y C0/B613: 1FFCBAC0 ORA $C0BAFC,X C0/B617: 99E01E STA $1EE0,Y C0/B61A: A902 LDA #$02 C0/B61C: 4C5C9B JMP $9B5C
C0/B61F event #$D8 : set event bit 4
C0/B61F: A5EB LDA $EB C0/B621: 20EDBA JSR $BAED C0/B624: B9001F LDA $1F00,Y C0/B627: 1FFCBAC0 ORA $C0BAFC,X C0/B62B: 99001F STA $1F00,Y C0/B62E: A902 LDA #$02 C0/B630: 4C5C9B JMP $9B5C
C0/B633 event #$DA : set event bit 5
C0/B633: A5EB LDA $EB C0/B635: 20EDBA JSR $BAED C0/B638: B9201F LDA $1F20,Y C0/B63B: 1FFCBAC0 ORA $C0BAFC,X C0/B63F: 99201F STA $1F20,Y C0/B642: A902 LDA #$02 C0/B644: 4C5C9B JMP $9B5C
C0/B647 event #$DC : set event bit 6
C0/B647: A5EB LDA $EB C0/B649: 20EDBA JSR $BAED C0/B64C: B9401F LDA $1F40,Y C0/B64F: 1FFCBAC0 ORA $C0BAFC,X C0/B653: 99401F STA $1F40,Y C0/B656: A902 LDA #$02 C0/B658: 4C5C9B JMP $9B5C
C0/B65B event #$D7 : clear event bit 3
C0/B65B: A5EB LDA $EB C0/B65D: 20EDBA JSR $BAED C0/B660: B9E01E LDA $1EE0,Y C0/B663: 3F04BBC0 AND $C0BB04,X C0/B667: 99E01E STA $1EE0,Y C0/B66A: A902 LDA #$02 C0/B66C: 4C5C9B JMP $9B5C
C0/B66F event #$D9 : clear event bit 4
C0/B66F: A5EB LDA $EB C0/B671: 20EDBA JSR $BAED C0/B674: B9001F LDA $1F00,Y C0/B677: 3F04BBC0 AND $C0BB04,X C0/B67B: 99001F STA $1F00,Y C0/B67E: A902 LDA #$02 C0/B680: 4C5C9B JMP $9B5C
C0/B683 event #$DB : clear event bit 5
C0/B683: A5EB LDA $EB C0/B685: 20EDBA JSR $BAED C0/B688: B9201F LDA $1F20,Y C0/B68B: 3F04BBC0 AND $C0BB04,X C0/B68F: 99201F STA $1F20,Y C0/B692: A902 LDA #$02 C0/B694: 4C5C9B JMP $9B5C
C0/B697 event #$DD : clear event bit 6
C0/B697: A5EB LDA $EB C0/B699: 20EDBA JSR $BAED C0/B69C: B9401F LDA $1F40,Y C0/B69F: 3F04BBC0 AND $C0BB04,X C0/B6A3: 99401F STA $1F40,Y C0/B6A6: A902 LDA #$02 C0/B6A8: 4C5C9B JMP $9B5C
C0/B6AB event #$B8
C0/B6AB: A5EB LDA $EB C0/B6AD: 20EDBA JSR $BAED C0/B6B0: B9C91D LDA $1DC9,Y C0/B6B3: 1FFCBAC0 ORA $C0BAFC,X C0/B6B7: 99C91D STA $1DC9,Y C0/B6BA: A902 LDA #$02 C0/B6BC: 4C5C9B JMP $9B5C
C0/B6BF event #$B9
C0/B6BF: A5EB LDA $EB C0/B6C1: 20EDBA JSR $BAED C0/B6C4: B9C91D LDA $1DC9,Y C0/B6C7: 3F04BBC0 AND $C0BB04,X C0/B6CB: 99C91D STA $1DC9,Y C0/B6CE: A902 LDA #$02 C0/B6D0: 4C5C9B JMP $9B5C
C0/B6D3 event #$B6
C0/B6D3: AD6E05 LDA $056E C0/B6D6: 0A ASL A C0/B6D7: 38 SEC C0/B6D8: 6D6E05 ADC $056E C0/B6DB: A8 TAY C0/B6DC: B7E5 LDA [$E5],Y C0/B6DE: 851E STA $1E C0/B6E0: C8 INY C0/B6E1: B7E5 LDA [$E5],Y C0/B6E3: 851F STA $1F C0/B6E5: C8 INY C0/B6E6: B7E5 LDA [$E5],Y C0/B6E8: 18 CLC C0/B6E9: 69CA ADC #$CA C0/B6EB: 85E7 STA $E7 C0/B6ED: A41E LDY $1E C0/B6EF: 84E5 STY $E5 C0/B6F1: 9C6E05 STZ $056E C0/B6F4: 4C6D9A JMP $9A6D
C0/B6F7 event #$BE
C0/B6F7: A5EB LDA $EB C0/B6F9: 0A ASL A C0/B6FA: 38 SEC C0/B6FB: 65EB ADC $EB C0/B6FD: 1A INC A C0/B6FE: 851E STA $1E C0/B700: 641F STZ $1F C0/B702: A00200 LDY #$0002 C0/B705: B7E5 LDA [$E5],Y C0/B707: 852A STA $2A C0/B709: C8 INY C0/B70A: B7E5 LDA [$E5],Y C0/B70C: 852B STA $2B C0/B70E: C8 INY C0/B70F: B7E5 LDA [$E5],Y C0/B711: 852C STA $2C C0/B713: C8 INY C0/B714: 4A LSR A C0/B715: 4A LSR A C0/B716: 4A LSR A C0/B717: 4A LSR A C0/B718: C221 REP #$21 C0/B71A: 69A001 ADC #$01A0 C0/B71D: 5A PHY C0/B71E: 20ABBA JSR $BAAB C0/B721: 7A PLY C0/B722: E220 SEP #$20 (8 bit accum./memory) C0/B724: C900 CMP #$00 C0/B726: D018 BNE $B740 C0/B728: C41E CPY $1E C0/B72A: D0D9 BNE $B705 C0/B72C: C221 REP #$21 C0/B72E: A5E5 LDA $E5 C0/B730: 651E ADC $1E C0/B732: 85E5 STA $E5 C0/B734: E220 SEP #$20 (8 bit accum./memory) C0/B736: A5E7 LDA $E7 C0/B738: 6900 ADC #$00 C0/B73A: 85E7 STA $E7 C0/B73C: 7B TDC C0/B73D: 4C6D9A JMP $9A6D
C0/B740: A6E8 LDX $E8 (from C0/B726) C0/B742: A51E LDA $1E C0/B744: 18 CLC C0/B745: 65E5 ADC $E5 C0/B747: 9D9405 STA $0594,X C0/B74A: A5E6 LDA $E6 C0/B74C: 651F ADC $1F C0/B74E: 9D9505 STA $0595,X C0/B751: A5E7 LDA $E7 C0/B753: 6900 ADC #$00 C0/B755: 9D9605 STA $0596,X C0/B758: A52A LDA $2A C0/B75A: 85E5 STA $E5 C0/B75C: 9DF405 STA $05F4,X C0/B75F: A52B LDA $2B C0/B761: 85E6 STA $E6 C0/B763: 9DF505 STA $05F5,X C0/B766: A52C LDA $2C C0/B768: 2903 AND #$03 C0/B76A: 18 CLC C0/B76B: 69CA ADC #$CA C0/B76D: 85E7 STA $E7 C0/B76F: 9FF60500 STA $0005F6,X C0/B773: E8 INX C0/B774: E8 INX C0/B775: E8 INX C0/B776: 86E8 STX $E8 C0/B778: A901 LDA #$01 C0/B77A: 9DC405 STA $05C4,X C0/B77D: 4C6D9A JMP $9A6D
C0/B780 event #$F0 : play song
C0/B780: A5EB LDA $EB C0/B782: 297F AND #$7F C0/B784: 8D0113 STA $1301 C0/B787: 8D801F STA $1F80 C0/B78A: A9FF LDA #$FF C0/B78C: 8D0213 STA $1302 (Set volume to FF (normal)) C0/B78F: A5EB LDA $EB C0/B791: 1004 BPL $B797 C0/B793: A914 LDA #$14 C0/B795: 8002 BRA $B799 C0/B797: A910 LDA #$10 C0/B799: 8D0013 STA $1300 C0/B79C: 220400C5 JSL $C50004 C0/B7A0: AD1042 LDA $4210 C0/B7A3: 10FB BPL $B7A0 C0/B7A5: A902 LDA #$02 C0/B7A7: 4C5C9B JMP $9B5C
C0/B7AA event #$EF : play song with fixed volume
C0/B7AA: A5EB LDA $EB C0/B7AC: 297F AND #$7F C0/B7AE: 8D0113 STA $1301 C0/B7B1: 8D801F STA $1F80 C0/B7B4: A5EC LDA $EC C0/B7B6: 8D0213 STA $1302 C0/B7B9: A5EB LDA $EB C0/B7BB: 1004 BPL $B7C1 C0/B7BD: A914 LDA #$14 C0/B7BF: 8002 BRA $B7C3 C0/B7C1: A910 LDA #$10 C0/B7C3: 8D0013 STA $1300 C0/B7C6: 220400C5 JSL $C50004 C0/B7CA: AD1042 LDA $4210 C0/B7CD: 10FB BPL $B7CA C0/B7CF: A903 LDA #$03 C0/B7D1: 4C5C9B JMP $9B5C
C0/B7D4 event #$F1 : fade song
C0/B7D4: A5EB LDA $EB C0/B7D6: 297F AND #$7F C0/B7D8: 8D0113 STA $1301 C0/B7DB: 8D801F STA $1F80 C0/B7DE: A920 LDA #$20 C0/B7E0: 8D0213 STA $1302 C0/B7E3: A5EB LDA $EB C0/B7E5: 1004 BPL $B7EB C0/B7E7: A914 LDA #$14 C0/B7E9: 8002 BRA $B7ED C0/B7EB: A910 LDA #$10 C0/B7ED: 8D0013 STA $1300 C0/B7F0: 220400C5 JSL $C50004 C0/B7F4: A981 LDA #$81 C0/B7F6: 8D0013 STA $1300 C0/B7F9: A5EC LDA $EC C0/B7FB: 8D0113 STA $1301 C0/B7FE: A9FF LDA #$FF C0/B800: 8D0213 STA $1302 C0/B803: 220400C5 JSL $C50004 C0/B807: AD1042 LDA $4210 C0/B80A: 10FB BPL $B807 C0/B80C: A903 LDA #$03 C0/B80E: 4C5C9B JMP $9B5C
C0/B811 event #$F2 : fade song
C0/B811: A981 LDA #$81 C0/B813: 8D0013 STA $1300 C0/B816: A5EB LDA $EB C0/B818: 8D0113 STA $1301 C0/B81B: 9C0213 STZ $1302 C0/B81E: 220400C5 JSL $C50004 C0/B822: A902 LDA #$02 C0/B824: 4C5C9B JMP $9B5C
C0/B827 event #$F3 : resume previously paused song
C0/B827: A910 LDA #$10 C0/B829: 8D0013 STA $1300 C0/B82C: AD0913 LDA $1309 C0/B82F: 8D0113 STA $1301 C0/B832: 8D801F STA $1F80 C0/B835: 9C0213 STZ $1302 (set volume to 0) C0/B838: 220400C5 JSL $C50004 C0/B83C: A981 LDA #$81 C0/B83E: 8D0013 STA $1300 C0/B841: A5EB LDA $EB C0/B843: 8D0113 STA $1301 C0/B846: A9FF LDA #$FF C0/B848: 8D0213 STA $1302 (set volume to FF (normal)) C0/B84B: 220400C5 JSL $C50004 C0/B84F: A902 LDA #$02 C0/B851: 4C5C9B JMP $9B5C
C0/B854 event #$F4 : play sound effect
C0/B854: A5EB LDA $EB C0/B856: 20D302 JSR $02D3 C0/B859: A902 LDA #$02 C0/B85B: 4C5C9B JMP $9B5C
C0/B85E event #$F5
C0/B85E: A918 LDA #$18 C0/B860: 8D0013 STA $1300 C0/B863: A5EB LDA $EB C0/B865: 8D0113 STA $1301 C0/B868: A980 LDA #$80 C0/B86A: 8D0213 STA $1302 C0/B86D: 220400C5 JSL $C50004 C0/B871: A983 LDA #$83 C0/B873: 8D0013 STA $1300 C0/B876: A5EC LDA $EC C0/B878: 8D0113 STA $1301 C0/B87B: A5ED LDA $ED C0/B87D: 8D0213 STA $1302 C0/B880: 220400C5 JSL $C50004 C0/B884: A904 LDA #$04 C0/B886: 4C5C9B JMP $9B5C
C0/B889 event #$F6
C0/B889: A5EB LDA $EB C0/B88B: 8D0013 STA $1300 C0/B88E: A5EC LDA $EC C0/B890: 8D0113 STA $1301 C0/B893: A5ED LDA $ED C0/B895: 8D0213 STA $1302 C0/B898: 220400C5 JSL $C50004 C0/B89C: A904 LDA #$04 C0/B89E: 4C5C9B JMP $9B5C
C0/B8A1 event #$F7
C0/B8A1: A989 LDA #$89 C0/B8A3: 8D0013 STA $1300 C0/B8A6: 220400C5 JSL $C50004 C0/B8AA: A901 LDA #$01 C0/B8AC: 4C5C9B JMP $9B5C
C0/B8AF event #$F8 : pause event queue
C0/B8AF: AD4221 LDA $2142 C0/B8B2: F001 BEQ $B8B5 C0/B8B4: 60 RTS
C0/B8B5: A901 LDA #$01 (from C0/B8B2) C0/B8B7: 4C5C9B JMP $9B5C
C0/B8BA event #$F9 : pause event queue
C0/B8BA: A5EB LDA $EB C0/B8BC: CD4121 CMP $2141 C0/B8BF: F001 BEQ $B8C2 C0/B8C1: 60 RTS
C0/B8C2: A902 LDA #$02 (from C0/B8BF) C0/B8C4: 4C5C9B JMP $9B5C
C0/B8C7 event #$FA : wait until song finishes
C0/B8C7: AD4321 LDA $2143 C0/B8CA: F001 BEQ $B8CD C0/B8CC: 60 RTS
C0/B8CD: A901 LDA #$01 (from C0/B8CA) C0/B8CF: 4C5C9B JMP $9B5C
C0/B8D2 event #$FD : NOP opcode
C0/B8D2: A901 LDA #$01 C0/B8D4: 4C709B JMP $9B70
C0/B8D7 event #$FE
C0/B8D7: A6E8 LDX $E8 (Return) C0/B8D9: BDC405 LDA $05C4,X C0/B8DC: 3A DEC A C0/B8DD: 9DC405 STA $05C4,X (this could be accomplished with DEC $05C4,X) C0/B8E0: F012 BEQ $B8F4 C0/B8E2: BDF105 LDA $05F1,X C0/B8E5: 85E5 STA $E5 C0/B8E7: BDF205 LDA $05F2,X C0/B8EA: 85E6 STA $E6 C0/B8EC: BDF305 LDA $05F3,X C0/B8EF: 85E7 STA $E7 C0/B8F1: 4C6D9A JMP $9A6D
C0/B8F4: A6E8 LDX $E8 (from C0/B8E0) C0/B8F6: CA DEX C0/B8F7: CA DEX C0/B8F8: CA DEX C0/B8F9: 86E8 STX $E8 C0/B8FB: BD9405 LDA $0594,X C0/B8FE: 85E5 STA $E5 C0/B900: BD9505 LDA $0595,X C0/B903: 85E6 STA $E6 C0/B905: BD9605 LDA $0596,X C0/B908: 85E7 STA $E7 C0/B90A: E400 CPX $00 C0/B90C: D009 BNE $B917 C0/B90E: AC0308 LDY $0803 C0/B911: B97D08 LDA $087D,Y C0/B914: 997C08 STA $087C,Y C0/B917: 4C6D9A JMP $9A6D
C0/B91A many events: rts
C0/B91A: 60 RTS
C0/B91B event #$AB : load game
C0/B91B: A902 LDA #$02 C0/B91D: 8D0002 STA $0200 C0/B920: 20CAC6 JSR $C6CA (jump to C3/0000->C3/001B) C0/B923: AFF17F30 LDA $307FF1 C0/B927: 18 CLC C0/B928: 690D ADC #$0D C0/B92A: 8FF17F30 STA $307FF1 C0/B92E: 8D6D1F STA $1F6D (RNG index) C0/B931: 8DA11F STA $1FA1 (index when overworld encounter will occur) C0/B934: 8DA21F STA $1FA2 (index when town/dungeon encounter will occur) C0/B937: 8DA41F STA $1FA4 (overworld addition for encounter rate) C0/B93A: 8DA31F STA $1FA3 (town/dungeon addition for encounter rate) C0/B93D: 8DA51F STA $1FA5 (Veldt pack #) C0/B940: AD0502 LDA $0205 C0/B943: 2980 AND #$80 C0/B945: 851A STA $1A C0/B947: ADDF1E LDA $1EDF C0/B94A: 297F AND #$7F C0/B94C: 051A ORA $1A C0/B94E: 8DDF1E STA $1EDF C0/B951: 6458 STZ $58 C0/B953: 20F36C JSR $6CF3 (calls equipment check function) C0/B956: 208603 JSR $0386 C0/B959: A901 LDA #$01 C0/B95B: 4C5C9B JMP $9B5C
C0/B95E event #$AC : unknow
C0/B95E: 2020BD JSR $BD20 C0/B961: A901 LDA #$01 C0/B963: 4C5C9B JMP $9B5C
C0/B966 event #$A9 : show title screen (cinematic)
C0/B966: 200505 JSR $0505 C0/B969: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/B96C: 220368C2 JSL $C26803 C0/B970: 201505 JSR $0515 C0/B973: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/B976: 207305 JSR $0573 C0/B979: AD0002 LDA $0200 C0/B97C: 2980 AND #$80 C0/B97E: 851A STA $1A C0/B980: ADDF1E LDA $1EDF C0/B983: 297F AND #$7F C0/B985: 051A ORA $1A C0/B987: 8DDF1E STA $1EDF C0/B98A: 208603 JSR $0386 C0/B98D: A901 LDA #$01 C0/B98F: 4C5C9B JMP $9B5C
C0/B992 event #$AA : intro scene with magitek walking over snow (cinematic)
C0/B992: 200505 JSR $0505 C0/B995: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/B998: 220068C2 JSL $C26800 C0/B99C: 201505 JSR $0515 (BRA $B970... >_>) C0/B99F: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/B9A2: 207305 JSR $0573 C0/B9A5: AD0002 LDA $0200 C0/B9A8: 2980 AND #$80 C0/B9AA: 851A STA $1A C0/B9AC: ADDF1E LDA $1EDF C0/B9AF: 297F AND #$7F C0/B9B1: 051A ORA $1A C0/B9B3: 8DDF1E STA $1EDF C0/B9B6: 208603 JSR $0386 C0/B9B9: A901 LDA #$01 C0/B9BB: 4C5C9B JMP $9B5C
C0/B9BE event #$BB : show the end screen (cinematic)
C0/B9BE: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/B9C1: 5C00F4E5 JMP $E5F400
C0/B9C5 event #$AE : show train car in magitek factory (cinematic)
C0/B9C5: 200505 JSR $0505 C0/B9C8: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/B9CB: 0B PHD C0/B9CC: 8B PHB C0/B9CD: 08 PHP C0/B9CE: 221200EE JSL $EE0012 C0/B9D2: 28 PLP C0/B9D3: AB PLB C0/B9D4: 2B PLD C0/B9D5: 7B TDC C0/B9D6: 201505 JSR $0515 C0/B9D9: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/B9DC: 207305 JSR $0573 C0/B9DF: 208603 JSR $0386 C0/B9E2: A901 LDA #$01 C0/B9E4: 4C5C9B JMP $9B5C
C0/B9E7 event #$BF : show airship scene at ending (cinematic)
C0/B9E7: 200505 JSR $0505 C0/B9EA: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/B9ED: 0B PHD C0/B9EE: 8B PHB C0/B9EF: 08 PHP C0/B9F0: 221500EE JSL $EE0015 C0/B9F4: 28 PLP C0/B9F5: AB PLB C0/B9F6: 2B PLD C0/B9F7: 7B TDC C0/B9F8: 201505 JSR $0515 C0/B9FB: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/B9FE: 207305 JSR $0573 C0/BA01: 208603 JSR $0386 C0/BA04: A901 LDA #$01 C0/BA06: 4C5C9B JMP $9B5C
C0/BA09 event #$A6 : remove pyramid effect
C0/BA09: 9C8107 STZ $0781 C0/BA0C: 208D06 JSR $068D C0/BA0F: A901 LDA #$01 C0/BA11: 4C5C9B JMP $9B5C
C0/BA14 event #$A7 : create pyramid effect
C0/BA14: A901 LDA #$01 C0/BA16: 8D8107 STA $0781 C0/BA19: A5EB LDA $EB C0/BA1B: 8D0242 STA $4202 C0/BA1E: A929 LDA #$29 C0/BA20: 8D0342 STA $4203 C0/BA23: EA NOP C0/BA24: EA NOP C0/BA25: EA NOP C0/BA26: AE1642 LDX $4216 C0/BA29: 8E7F07 STX $077F C0/BA2C: A902 LDA #$02 C0/BA2E: 4C5C9B JMP $9B5C
C0/BA31 event #$BA
C0/BA31: A5EB LDA $EB C0/BA33: 8D0102 STA $0201 C0/BA36: 200505 JSR $0505 C0/BA39: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/BA3C: 221200C3 JSL $C30012 C0/BA40: 201505 JSR $0515 C0/BA43: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/BA46: 207305 JSR $0573 C0/BA49: 208603 JSR $0386 C0/BA4C: A902 LDA #$02 C0/BA4E: 4C5C9B JMP $9B5C
C0/BA51 event #$A8 : show floating island (cinematic)
C0/BA51: 200505 JSR $0505 C0/BA54: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/BA57: 220668C2 JSL $C26806 C0/BA5B: 201505 JSR $0515 C0/BA5E: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/BA61: 207305 JSR $0573 C0/BA64: A901 LDA #$01 C0/BA66: 4C5C9B JMP $9B5C
C0/BA69 event #$AD : show world tearing apart (cinematic)
C0/BA69: 200505 JSR $0505 C0/BA6C: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/BA6F: 220968C2 JSL $C26809 C0/BA73: 201505 JSR $0515 (BRA $BA5B... >_>) C0/BA76: 207403 JSR $0374 (turn off H/DMA, auto joypad read, NMI, and the screen) C0/BA79: 207305 JSR $0573 C0/BA7C: A901 LDA #$01 C0/BA7E: 4C5C9B JMP $9B5C
C0/BA81 unknow
C0/BA81: AC0308 LDY $0803 C0/BA84: B97F08 LDA $087F,Y C0/BA87: AA TAX C0/BA88: ADB61E LDA $1EB6 C0/BA8B: 29F0 AND #$F0 C0/BA8D: 1FFCBAC0 ORA $C0BAFC,X C0/BA91: 8DB61E STA $1EB6 C0/BA94: A506 LDA $06 C0/BA96: 100A BPL $BAA2 C0/BA98: ADB61E LDA $1EB6 C0/BA9B: 0910 ORA #$10 C0/BA9D: 8DB61E STA $1EB6 C0/BAA0: 8008 BRA $BAAA C0/BAA2: ADB61E LDA $1EB6 C0/BAA5: 29EF AND #$EF C0/BAA7: 8DB61E STA $1EB6 C0/BAAA: 60 RTS
C0/BAAB: 20EDBA JSR $BAED (from C0/B2E1, C0/B346, C0/B71E) C0/BAAE: B9801E LDA $1E80,Y C0/BAB1: 3FFCBAC0 AND $C0BAFC,X C0/BAB5: 60 RTS
C0/BAB6: 20EDBA JSR $BAED C0/BAB9: B9A01E LDA $1EA0,Y C0/BABC: 3FFCBAC0 AND $C0BAFC,X C0/BAC0: 60 RTS
C0/BAC1: 20EDBA JSR $BAED C0/BAC4: B9E01E LDA $1EE0,Y C0/BAC7: 3FFCBAC0 AND $C0BAFC,X C0/BACB: 60 RTS
C0/BACC: 20EDBA JSR $BAED C0/BACF: B9001F LDA $1F00,Y C0/BAD2: 3FFCBAC0 AND $C0BAFC,X C0/BAD6: 60 RTS
C0/BAD7: 20EDBA JSR $BAED C0/BADA: B9201F LDA $1F20,Y C0/BADD: 3FFCBAC0 AND $C0BAFC,X C0/BAE1: 60 RTS
C0/BAE2: 20EDBA JSR $BAED C0/BAE5: B9401F LDA $1F40,Y C0/BAE8: 3FFCBAC0 AND $C0BAFC,X C0/BAEC: 60 RTS
C0/BAED unknow
C0/BAED: C220 REP #$20 (16 bit accum./memory) C0/BAEF: AA TAX C0/BAF0: 4A LSR A C0/BAF1: 4A LSR A C0/BAF2: 4A LSR A C0/BAF3: A8 TAY C0/BAF4: 7B TDC C0/BAF5: E220 SEP #$20 (8 bit accum./memory) C0/BAF7: 8A TXA C0/BAF8: 2907 AND #$07 C0/BAFA: AA TAX C0/BAFB: 60 RTS
C0/BAFC unknow
C0/BAFC: 0102 C0/BAFE: 0408 C0/BB00: 1020 C0/BB02: 4080 C0/BB04: FEFD C0/BB05: FBF7 C0/BB08: EFDF C0/BB0A: BF7F
C0/BB0C unknow
C0/BB0C: A600 LDX $00 (from C0/BE87) C0/BB0E: 9E801E STZ $1E80,X (clear all event bits) C0/BB11: E8 INX C0/BB12: E06000 CPX #$0060 C0/BB15: D0F7 BNE $BB0E C0/BB17: 60 RTS
C0/BB18 unknow
C0/BB18: A600 LDX $00 (from C0/BE8D) C0/BB1A: 9E401E STZ $1E40,X (set all treasure chests as not opened) C0/BB1D: E8 INX C0/BB1E: E03000 CPX #$0030 C0/BB21: D0F7 BNE $BB1A C0/BB23: 60 RTS
C0/BB24 unknow
C0/BB24: 48 PHA (from C0/0015) C0/BB25: DA PHX C0/BB26: 5A PHY C0/BB27: 8B PHB C0/BB28: 0B PHD C0/BB29: 08 PHP C0/BB2A: 7B TDC C0/BB2B: E220 SEP #$20 (8 bit accum./memory) C0/BB2D: C210 REP #$10 (16 bit index registers) C0/BB2F: 7B TDC C0/BB30: 48 PHA C0/BB31: AB PLB C0/BB32: ADD11D LDA $1DD1 (load battle bits) C0/BB35: 299F AND #$9F (mask out event timers elapsing in battle and displaying event timers) C0/BB37: 8DD11D STA $1DD1 (save battle bits) C0/BB3A: AD8811 LDA $1188 C0/BB3D: 2910 AND #$10 C0/BB3F: F008 BEQ $BB49 C0/BB41: ADD11D LDA $1DD1 (load battle bits) C0/BB44: 0940 ORA #$40 (set displaying of event timers) C0/BB46: 8DD11D STA $1DD1 (save battle bits) C0/BB49: AD8811 LDA $1188 C0/BB4C: 301A BMI $BB68 C0/BB4E: AE8911 LDX $1189 C0/BB51: F006 BEQ $BB59 C0/BB53: CA DEX C0/BB54: 8E8911 STX $1189 C0/BB57: 800F BRA $BB68 C0/BB59: AD8811 LDA $1188 C0/BB5C: 2920 AND #$20 C0/BB5E: F008 BEQ $BB68 C0/BB60: ADD11D LDA $1DD1 (load battle bits) C0/BB63: 0920 ORA #$20 (set event timer elapsed in battle) C0/BB65: 8DD11D STA $1DD1 (save battle bits) C0/BB68: AD8E11 LDA $118E C0/BB6B: 301A BMI $BB87 C0/BB6D: AE8F11 LDX $118F C0/BB70: F006 BEQ $BB78 C0/BB72: CA DEX C0/BB73: 8E8F11 STX $118F C0/BB76: 800F BRA $BB87 C0/BB78: AD8E11 LDA $118E C0/BB7B: 2920 AND #$20 C0/BB7D: F008 BEQ $BB87 C0/BB7F: ADD11D LDA $1DD1 (load battle bits) C0/BB82: 0920 ORA #$20 (set event timer elapsed in battle) C0/BB84: 8DD11D STA $1DD1 (save battle bits) C0/BB87: AD9411 LDA $1194 C0/BB8A: 301A BMI $BBA6 C0/BB8C: AE9511 LDX $1195 C0/BB8F: F006 BEQ $BB97 C0/BB91: CA DEX C0/BB92: 8E9511 STX $1195 C0/BB95: 800F BRA $BBA6 C0/BB97: AD9411 LDA $1194 C0/BB9A: 2920 AND #$20 C0/BB9C: F008 BEQ $BBA6 C0/BB9E: ADD11D LDA $1DD1 (load battle bits) C0/BBA1: 0920 ORA #$20 (set event timer elapsed in battle) C0/BBA3: 8DD11D STA $1DD1 (save battle bits) C0/BBA6: AD9A11 LDA $119A C0/BBA9: 301A BMI $BBC5 C0/BBAB: AE9B11 LDX $119B C0/BBAE: F006 BEQ $BBB6 C0/BBB0: CA DEX C0/BBB1: 8E9B11 STX $119B C0/BBB4: 800F BRA $BBC5 C0/BBB6: AD9A11 LDA $119A C0/BBB9: 2920 AND #$20 C0/BBBB: F008 BEQ $BBC5 C0/BBBD: ADD11D LDA $1DD1 (load battle bits) C0/BBC0: 0920 ORA #$20 (set event timer elapsed in battle) C0/BBC2: 8DD11D STA $1DD1 (save battle bits) C0/BBC5: 28 PLP C0/BBC6: 2B PLD C0/BBC7: AB PLB C0/BBC8: 7A PLY C0/BBC9: FA PLX C0/BBCA: 68 PLA C0/BBCB: 60 RTS
C0/BBCC unknow
C0/BBCC: AE8911 LDX $1189 (from C0/00D7) C0/BBCF: F004 BEQ $BBD5 C0/BBD1: CA DEX C0/BBD2: 8E8911 STX $1189 C0/BBD5: AE8F11 LDX $118F C0/BBD8: F004 BEQ $BBDE C0/BBDA: CA DEX C0/BBDB: 8E8F11 STX $118F C0/BBDE: AE9511 LDX $1195 C0/BBE1: F004 BEQ $BBE7 C0/BBE3: CA DEX C0/BBE4: 8E9511 STX $1195 C0/BBE7: AE9B11 LDX $119B C0/BBEA: F004 BEQ $BBF0 C0/BBEC: CA DEX C0/BBED: 8E9B11 STX $119B C0/BBF0: 60 RTS
C0/BBF1 unknow
C0/BBF1: A400 LDY $00 (from C0/00D1) C0/BBF3: BE8911 LDX $1189,Y C0/BBF6: D06B BNE $BC63 C0/BBF8: BE8B11 LDX $118B,Y C0/BBFB: D005 BNE $BC02 C0/BBFD: B98D11 LDA $118D,Y C0/BC00: F061 BEQ $BC63 C0/BC02: A6E5 LDX $E5 C0/BC04: E00000 CPX #$0000 C0/BC07: D05A BNE $BC63 C0/BC09: A5E7 LDA $E7 C0/BC0B: C9CA CMP #$CA C0/BC0D: D054 BNE $BC63 C0/BC0F: AE0308 LDX $0803 C0/BC12: BD6A08 LDA $086A,X C0/BC15: 290F AND #$0F C0/BC17: D04A BNE $BC63 C0/BC19: BD6D08 LDA $086D,X C0/BC1C: 290F AND #$0F C0/BC1E: D043 BNE $BC63 C0/BC20: BE8B11 LDX $118B,Y C0/BC23: 86E5 STX $E5 C0/BC25: 8EF405 STX $05F4 C0/BC28: B98D11 LDA $118D,Y C0/BC2B: 18 CLC C0/BC2C: 69CA ADC #$CA C0/BC2E: 85E7 STA $E7 C0/BC30: 8DF605 STA $05F6 C0/BC33: A20000 LDX #$0000 C0/BC36: 8E9405 STX $0594 C0/BC39: A9CA LDA #$CA C0/BC3B: 8D9605 STA $0596 C0/BC3E: A901 LDA #$01 C0/BC40: 8DC705 STA $05C7 C0/BC43: A20300 LDX #$0003 C0/BC46: 86E8 STX $E8 C0/BC48: A6DA LDX $DA C0/BC4A: BD7C08 LDA $087C,X C0/BC4D: 9D7D08 STA $087D,X C0/BC50: A904 LDA #$04 C0/BC52: 9D7C08 STA $087C,X C0/BC55: 7B TDC C0/BC56: 998B11 STA $118B,Y C0/BC59: 998C11 STA $118C,Y C0/BC5C: 998D11 STA $118D,Y C0/BC5F: 20ED2F JSR $2FED C0/BC62: 60 RTS
C0/BC63 unknow
C0/BC63: C8 INY C0/BC64: C8 INY C0/BC65: C8 INY C0/BC66: C8 INY C0/BC67: C8 INY C0/BC68: C8 INY C0/BC69: C01800 CPY #$0018 C0/BC6C: D085 BNE $BBF3 C0/BC6E: 60 RTS
C0/BC6F unknow
C0/BC6F: A584 LDA $84 (from C0/00D4) C0/BC71: D05C BNE $BCCF C0/BC73: A559 LDA $59 C0/BC75: D058 BNE $BCCF C0/BC77: AC0308 LDY $0803 C0/BC7A: B96A08 LDA $086A,Y C0/BC7D: 290F AND #$0F C0/BC7F: D04E BNE $BCCF C0/BC81: B96908 LDA $0869,Y C0/BC84: D049 BNE $BCCF C0/BC86: B96D08 LDA $086D,Y C0/BC89: 290F AND #$0F C0/BC8B: D042 BNE $BCCF C0/BC8D: B96C08 LDA $086C,Y C0/BC90: D03D BNE $BCCF C0/BC92: A6E5 LDX $E5 C0/BC94: E00000 CPX #$0000 C0/BC97: D036 BNE $BCCF C0/BC99: A5E7 LDA $E7 C0/BC9B: C9CA CMP #$CA C0/BC9D: D030 BNE $BCCF C0/BC9F: B97C08 LDA $087C,Y C0/BCA2: 290F AND #$0F C0/BCA4: C902 CMP #$02 C0/BCA6: D027 BNE $BCCF C0/BCA8: C220 REP #$20 (16 bit accum./memory) C0/BCAA: A582 LDA $82 C0/BCAC: 0A ASL A C0/BCAD: AA TAX C0/BCAE: BF0200C4 LDA $C40002,X C0/BCB2: 851E STA $1E C0/BCB4: BF0000C4 LDA $C40000,X C0/BCB8: C51E CMP $1E C0/BCBA: F013 BEQ $BCCF C0/BCBC: AA TAX C0/BCBD: BF0000C4 LDA $C40000,X C0/BCC1: C5AF CMP $AF C0/BCC3: F00E BEQ $BCD3 C0/BCC5: 8A TXA C0/BCC6: 18 CLC C0/BCC7: 690500 ADC #$0005 C0/BCCA: AA TAX C0/BCCB: E41E CPX $1E C0/BCCD: D0EE BNE $BCBD C0/BCCF: 7B TDC C0/BCD0: E220 SEP #$20 (8 bit accum./memory) C0/BCD2: 60 RTS
C0/BCD3 unknow
C0/BCD3: BF0200C4 LDA $C40002,X C0/BCD7: 85E5 STA $E5 C0/BCD9: 8DF405 STA $05F4 C0/BCDC: 7B TDC C0/BCDD: 997108 STA $0871,Y C0/BCE0: 997308 STA $0873,Y C0/BCE3: E220 SEP #$20 (8 bit accum./memory) C0/BCE5: 997E08 STA $087E,Y C0/BCE8: A901 LDA #$01 C0/BCEA: 8D8E07 STA $078E C0/BCED: BF0400C4 LDA $C40004,X C0/BCF1: 18 CLC C0/BCF2: 69CA ADC #$CA C0/BCF4: 85E7 STA $E7 C0/BCF6: 8DF605 STA $05F6 C0/BCF9: A20000 LDX #$0000 C0/BCFC: 8E9405 STX $0594 C0/BCFF: A9CA LDA #$CA C0/BD01: 8D9605 STA $0596 C0/BD04: A901 LDA #$01 C0/BD06: 8DC705 STA $05C7 C0/BD09: A20300 LDX #$0003 C0/BD0C: 86E8 STX $E8 C0/BD0E: B97C08 LDA $087C,Y C0/BD11: 997D08 STA $087D,Y C0/BD14: A904 LDA #$04 C0/BD16: 997C08 STA $087C,Y C0/BD19: 20087E JSR $7E08 C0/BD1C: 20ED2F JSR $2FED C0/BD1F: 60 RTS
C0/BD20 unknow
C0/BD20: 6458 STZ $58 C0/BD22: AC0308 LDY $0803 C0/BD25: A901 LDA #$01 C0/BD27: 996808 STA $0868,Y C0/BD2A: 207770 JSR $7077 C0/BD2D: A600 LDX $00 C0/BD2F: 9B TXY C0/BD30: B90016 LDA $1600,Y C0/BD33: 9D7808 STA $0878,X C0/BD36: B90116 LDA $1601,Y C0/BD39: 9D7908 STA $0879,X C0/BD3C: 7B TDC C0/BD3D: 9D7C08 STA $087C,X C0/BD40: 9D7D08 STA $087D,X C0/BD43: A901 LDA #$01 C0/BD45: 9D6808 STA $0868,X C0/BD48: C221 REP #$21 C0/BD4A: 8A TXA C0/BD4B: 692900 ADC #$0029 C0/BD4E: AA TAX C0/BD4F: 98 TYA C0/BD50: 18 CLC C0/BD51: 692500 ADC #$0025 C0/BD54: A8 TAY C0/BD55: 7B TDC C0/BD56: E220 SEP #$20 (8 bit accum./memory) C0/BD58: C05002 CPY #$0250 C0/BD5B: D0D3 BNE $BD30 C0/BD5D: AEA61F LDX $1FA6 C0/BD60: 8EFB07 STX $07FB C0/BD63: A902 LDA #$02 C0/BD65: 9D7C08 STA $087C,X C0/BD68: AD681F LDA $1F68 C0/BD6B: 8D4307 STA $0743 C0/BD6E: 203D6F JSR $6F3D C0/BD71: A0D907 LDY #$07D9 C0/BD74: 8CFD07 STY $07FD C0/BD77: 8CFF07 STY $07FF C0/BD7A: 8C0108 STY $0801 C0/BD7D: 204A71 JSR $714A C0/BD80: 200C52 JSR $520C C0/BD83: A980 LDA #$80 C0/BD85: 8DFA11 STA $11FA C0/BD88: A901 LDA #$01 C0/BD8A: 8584 STA $84 C0/BD8C: 60 RTS
C0/BD8D init SRAM
C0/BD8D: A600 LDX $00 (from C0/007C) C0/BD8F: 9E0016 STZ $1600,X (set character stats to 0) C0/BD92: E8 INX C0/BD93: E05002 CPX #$0250 C0/BD96: D0F7 BNE $BD8F C0/BD98: A600 LDX $00 C0/BD9A: A9FF LDA #$FF C0/BD9C: 9D0016 STA $1600,X (set sprite to nothing) C0/BD9F: 9D1E16 STA $161E,X (set esper equipped to nothing) C0/BDA2: C221 REP #$21 C0/BDA4: 8A TXA C0/BDA5: 692500 ADC #$0025 C0/BDA8: AA TAX C0/BDA9: 7B TDC C0/BDAA: E220 SEP #$20 (8 bit accum./memory) C0/BDAC: E05002 CPX #$0250 C0/BDAF: D0E9 BNE $BD9A C0/BDB1: A600 LDX $00 C0/BDB3: 9E5018 STZ $1850,X (set setup of current parties to 0) C0/BDB6: E8 INX C0/BDB7: E01000 CPX #$0010 C0/BDBA: D0F7 BNE $BDB3 C0/BDBC: A600 LDX $00 C0/BDBE: A502 LDA $02 C0/BDC0: 9E6919 STZ $1969,X (set quantity of all items to 0) C0/BDC3: 9D6918 STA $1869,X ($02 holds #$FF, which for items is nothing) C0/BDC6: E8 INX C0/BDC7: E00001 CPX #$0100 C0/BDCA: D0F4 BNE $BDC0 C0/BDCC: A600 LDX $00 C0/BDCE: 9E6E1A STZ $1A6E,X (set current spell learned % to 0) C0/BDD1: E8 INX C0/BDD2: E08802 CPX #$0288 (have we done all spells for all characters yet?) C0/BDD5: D0F7 BNE $BDCE (branch if not) C0/BDD7: A600 LDX $00 C0/BDD9: 9EF61C STZ $1CF6,X (set morph time, and many other things to 0) C0/BDDC: E8 INX C0/BDDD: E05700 CPX #$0057 C0/BDE0: D0F7 BNE $BDD9 C0/BDE2: A600 LDX $00 C0/BDE4: BF403CCF LDA $CF3C40,X (SwdTech names) C0/BDE8: 9DF81C STA $1CF8,X (store to SRAM) C0/BDEB: E8 INX C0/BDEC: E03000 CPX #$0030 (have we done 48 letters yet?) C0/BDEF: D0F3 BNE $BDE4 (branch if not. Note, this renaming feature was never used in the US version, so this area of SRAM is free for other use) C0/BDF1: 9C691A STZ $1A69 (set esper's collected byte 1 to 0) C0/BDF4: 9C6A1A STZ $1A6A (set esper's collected byte 2 to 0) C0/BDF7: 9C6B1A STZ $1A6B (set esper's collected byte 3 to 0) C0/BDFA: 9C6C1A STZ $1A6C (set esper's collected byte 4 to 0) C0/BDFD: A600 LDX $00 C0/BDFF: 9EC91D STZ $1DC9,X (set all battle variables, and formations that will appear on the veldt to 0) C0/BE02: E8 INX C0/BE03: E05400 CPX #$0054 C0/BE06: D0F7 BNE $BDFF C0/BE08: A600 LDX $00 C0/BE0A: BFA07AC4 LDA $C47AA0,X C0/BE0E: 9D2C1D STA $1D2C,X (set Gau's learned rages) C0/BE11: E8 INX C0/BE12: E02000 CPX #$0020 (have we done all 32 bytes yet?) C0/BE15: D0F3 BNE $BE0A (branch if not) C0/BE17: AF64F5E6 LDA $E6F564 C0/BE1B: 8D291D STA $1D29 (set Strago's known lores, byte 1) C0/BE1E: AF65F5E6 LDA $E6F565 C0/BE22: 8D2A1D STA $1D2A (set Strago's known lores, byte 2) C0/BE25: AF66F5E6 LDA $E6F566 C0/BE29: 8D2B1D STA $1D2B (set Strago's known lores, byte 3) C0/BE2C: 9C6505 STZ $0565 C0/BE2F: A2FF7F LDX #$7FFF C0/BE32: 8E551D STX $1D55 (set R, G, and B for font to 31, aka white, although this is done in C3 already!) C0/BE35: A600 LDX $00 C0/BE37: BF021CED LDA $ED1C02,X C0/BE3B: 9D571D STA $1D57,X (set colors for wallpaper 1, or so it seems) C0/BE3E: E8 INX C0/BE3F: E00E00 CPX #$000E C0/BE42: D0F3 BNE $BE37 C0/BE44: A901 LDA #$01 C0/BE46: 8DF31F STA $1FF3 C0/BE49: 8DF41F STA $1FF4 C0/BE4C: 8DF51F STA $1FF5 C0/BE4F: 8DF61F STA $1FF6 C0/BE52: A600 LDX $00 C0/BE54: 8E8911 STX $1189 C0/BE57: 8E8F11 STX $118F C0/BE5A: 8E9511 STX $1195 C0/BE5D: 8E9B11 STX $119B C0/BE60: 8E8B11 STX $118B C0/BE63: 8E9111 STX $1191 C0/BE66: 8E9711 STX $1197 C0/BE69: 8E9D11 STX $119D C0/BE6C: 7B TDC C0/BE6D: 8D8D11 STA $118D C0/BE70: 8D9311 STA $1193 C0/BE73: 8D9911 STA $1199 C0/BE76: 8D9F11 STA $119F C0/BE79: 20B670 JSR $70B6 C0/BE7C: 9CF111 STZ $11F1 C0/BE7F: 209D98 JSR $989D C0/BE82: 6458 STZ $58 C0/BE84: 9C5905 STZ $0559 C0/BE87: 200CBB JSR $BB0C (clear all event bits) C0/BE8A: 202852 JSR $5228 (set all presence bits) C0/BE8D: 2018BB JSR $BB18 (close all treasure chests) C0/BE90: A20300 LDX #$0003 C0/BE93: 86E5 STX $E5 C0/BE95: 8EF405 STX $05F4 C0/BE98: A9CA LDA #$CA C0/BE9A: 85E7 STA $E7 C0/BE9C: 8DF605 STA $05F6 (CA/0003, which jumps to CA/5E33, which starts a new game) C0/BE9F: A20000 LDX #$0000 C0/BEA2: 8E9405 STX $0594 (hmmmm) C0/BEA5: A9CA LDA #$CA C0/BEA7: 8D9605 STA $0596 (this makes CA/0000, which is where the event code starts...) C0/BEAA: A901 LDA #$01 C0/BEAC: 8DC705 STA $05C7 C0/BEAF: A20300 LDX #$0003 C0/BEB2: 86E8 STX $E8 C0/BEB4: A902 LDA #$02 C0/BEB6: 8D7D08 STA $087D C0/BEB9: 6447 STZ $47 C0/BEBB: 60 RTS
C0/BEBC init loaded map
C0/BEBC: 207403 JSR $0374 (from C0/00A4) C0/BEBF: 208A84 JSR $848A C0/BEC2: A558 LDA $58 C0/BEC4: D032 BNE $BEF8 C0/BEC6: C220 REP #$20 (16 bit accum./memory) C0/BEC8: AD641F LDA $1F64 (load current map) C0/BECB: 29FF01 AND #$01FF C0/BECE: 8D641F STA $1F64 (store the map) C0/BED1: 8582 STA $82 (store map for encounters?) C0/BED3: 7B TDC C0/BED4: E220 SEP #$20 (8 bit accum./memory) C0/BED6: 20AD1C JSR $1CAD C0/BED9: 6447 STZ $47 C0/BEDB: 9C7B07 STZ $077B C0/BEDE: A901 LDA #$01 C0/BEE0: 8585 STA $85 C0/BEE2: A600 LDX $00 C0/BEE4: 8E2711 STX $1127 C0/BEE7: 20B670 JSR $70B6 C0/BEEA: 207F17 JSR $177F C0/BEED: A600 LDX $00 C0/BEEF: 8E8C07 STX $078C C0/BEF2: 9C8B07 STZ $078B C0/BEF5: 20DA6E JSR $6EDA C0/BEF8: 204A71 JSR $714A C0/BEFB: 202746 JSR $4627 C0/BEFE: ADFA11 LDA $11FA C0/BF01: 2920 AND #$20 C0/BF03: D003 BNE $BF08 C0/BF05: 202917 JSR $1729 C0/BF08: AD661F LDA $1F66 C0/BF0B: 8D4105 STA $0541 C0/BF0E: AD671F LDA $1F67 C0/BF11: 8D4205 STA $0542 C0/BF14: 206D16 JSR $166D C0/BF17: A20048 LDX #$4800 C0/BF1A: 8E8B05 STX $058B C0/BF1D: A20050 LDX #$5000 C0/BF20: 8E8D05 STX $058D C0/BF23: A20058 LDX #$5800 C0/BF26: 8E8F05 STX $058F C0/BF29: A6E5 LDX $E5 C0/BF2B: D009 BNE $BF36 C0/BF2D: A5E7 LDA $E7 C0/BF2F: C9CA CMP #$CA C0/BF31: D003 BNE $BF36 C0/BF33: 20676F JSR $6F67 C0/BF36: 6484 STZ $84 C0/BF38: 6457 STZ $57 C0/BF3A: 6456 STZ $56 C0/BF3C: 644C STZ $4C C0/BF3E: 9C5E05 STZ $055E C0/BF41: 9C6705 STZ $0567 C0/BF44: 645A STZ $5A C0/BF46: 9C5A05 STZ $055A C0/BF49: 9C5B05 STZ $055B C0/BF4C: 9C5C05 STZ $055C C0/BF4F: 64BB STZ $BB C0/BF51: 64BA STZ $BA C0/BF53: A901 LDA #$01 C0/BF55: 8D9807 STA $0798 C0/BF58: 203816 JSR $1638 (get tile's layer properties) C0/BF5B: 209205 JSR $0592 C0/BF5E: 208D26 JSR $268D C0/BF61: 205F27 JSR $275F C0/BF64: 205C26 JSR $265C C0/BF67: 208328 JSR $2883 C0/BF6A: 20D715 JSR $15D7 C0/BF6D: 20174D JSR $4D17 C0/BF70: 20DA27 JSR $27DA C0/BF73: 20CE1C JSR $1CCE C0/BF76: 207B1B JSR $1B7B C0/BF79: 205C18 JSR $185C C0/BF7C: 20647F JSR $7F64 C0/BF7F: 200A56 JSR $560A C0/BF82: 2023C7 JSR $C723 C0/BF85: 20FE35 JSR $35FE C0/BF88: 202138 JSR $3821 C0/BF8B: 20A839 JSR $39A8 C0/BF8E: 20E90F JSR $0FE9 C0/BF91: 20EB50 JSR $50EB C0/BF94: 20E356 JSR $56E3 C0/BF97: 20D58E JSR $8ED5 C0/BF9A: 20178D JSR $8D17 C0/BF9D: 20F36C JSR $6CF3 C0/BFA0: 20B642 JSR $42B6 C0/BFA3: 20DB6A JSR $6ADB C0/BFA6: ADB61E LDA $1EB6 C0/BFA9: 0940 ORA #$40 C0/BFAB: 8DB61E STA $1EB6 (Set bit 6 of $1EB6 (event bit $1B6)) C0/BFAE: A558 LDA $58 C0/BFB0: D014 BNE $BFC6 C0/BFB2: 9CBE1E STZ $1EBE C0/BFB5: 9CBF1E STZ $1EBF C0/BFB8: 20A852 JSR $52A8 (Load NPC data) C0/BFBB: 205146 JSR $4651 C0/BFBE: ADB61E LDA $1EB6 C0/BFC1: 29BF AND #$BF C0/BFC3: 8DB61E STA $1EB6 (Clear bit 6 of $1EB6 (event bit $1B6)) C0/BFC6: 20C155 JSR $55C1 C0/BFC9: 205454 JSR $5454 C0/BFCC: 200451 JSR $5104 C0/BFCF: 203852 JSR $5238 C0/BFD2: ADFA11 LDA $11FA C0/BFD5: 3003 BMI $BFDA C0/BFD7: 4CA4C0 JMP $C0A4
C0/BFDA trigger an event when map is loaded
C0/BFDA: C220 REP #$20 (16 bit accum./memory) C0/BFDC: AD641F LDA $1F64 (load map) C0/BFDF: 29FF01 AND #$01FF C0/BFE2: 851E STA $1E C0/BFE4: 0A ASL A C0/BFE5: 18 CLC C0/BFE6: 651E ADC $1E C0/BFE8: AA TAX (pointer is 1.5x the map) C0/BFE9: 7B TDC C0/BFEA: E220 SEP #$20 (8 bit accum./memory) C0/BFEC: A9B2 LDA #$B2 C0/BFEE: 8D2406 STA $0624 (B2 = "call subroutine" for events) C0/BFF1: BF00FAD1 LDA $D1FA00,X (event pointer, low byte) C0/BFF5: 8D2506 STA $0625 C0/BFF8: 852A STA $2A C0/BFFA: BF01FAD1 LDA $D1FA01,X (event pointer, middle byte) C0/BFFE: 8D2606 STA $0626 C0/C001: 852B STA $2B C0/C003: BF02FAD1 LDA $D1FA02,X (event pointer, high byte) C0/C007: 8D2706 STA $0627 C0/C00A: 18 CLC C0/C00B: 69CA ADC #$CA C0/C00D: 852C STA $2C C0/C00F: A72A LDA [$2A] C0/C011: C9FE CMP #$FE (is it the "end event" command?) C0/C013: D003 BNE $C018 (branch if not) C0/C015: 4CA4C0 JMP $C0A4