DATA_808000: db $00, $00, $72, $4E, $00, $00, $71, $4E db $00, $00, $71, $4E, $00, $00, $71, $4E db $00, $00, $51, $4E, $00, $00, $51, $4E db $00, $00, $51, $4E, $00, $00, $51, $4A db $00, $00, $50, $4A, $00, $00, $50, $4A db $00, $00, $50, $4A, $00, $00, $30, $4A db $00, $00, $30, $4A, $00, $00, $30, $4A db $00, $00, $30, $4A, $00, $00, $2F, $4A db $00, $00, $2F, $4A, $00, $00, $2F, $4A db $00, $00, $2F, $4A, $00, $00, $0F, $46 db $00, $00, $0F, $46, $00, $00, $0F, $46 db $00, $00, $0E, $46, $00, $00, $0E, $46 db $00, $00, $0E, $46, $00, $00, $0E, $46 db $00, $00, $EE, $45, $00, $00, $EE, $45 db $00, $00, $EE, $45, $00, $00, $EE, $45 db $00, $00, $ED, $45, $00, $00, $ED, $41 db $00, $00, $ED, $41, $00, $00, $CD, $41 db $00, $00, $CD, $41, $00, $00, $CD, $41 db $00, $00, $CD, $41, $00, $00, $CC, $41 db $00, $00, $CC, $41, $00, $00, $CC, $41 db $00, $00, $CC, $41, $00, $00, $AC, $41 db $00, $00, $AC, $41, $00, $00, $AC, $3D db $00, $00, $AB, $3D, $00, $00, $AB, $3D db $00, $00, $AB, $3D, $00, $00, $AB, $3D db $00, $00, $8B, $3D, $00, $00, $8B, $3D db $00, $00, $8B, $3D, $00, $00, $8B, $3D db $00, $00, $8A, $3D, $00, $00, $8A, $3D db $00, $00, $8A, $3D, $00, $00, $8A, $3D db $00, $00, $8A, $39, $00, $00, $8A, $39 db $00, $00, $6A, $39, $00, $00, $69, $39 db $00, $00, $69, $39, $00, $00, $69, $39 db $00, $00, $69, $39, $00, $00, $69, $39 db $00, $00, $69, $39, $00, $00, $48, $39 db $00, $00, $48, $35, $00, $00, $48, $35 db $00, $00, $48, $35, $00, $00, $48, $35 db $00, $00, $48, $35, $00, $00, $48, $35 db $00, $00, $27, $35, $00, $00, $27, $35 db $00, $00, $27, $31, $00, $00, $27, $31 db $00, $00, $27, $31, $00, $00, $27, $31 db $00, $00, $06, $31, $00, $00, $06, $31 db $00, $00, $06, $2D, $00, $00, $06, $2D db $00, $00, $06, $2D, $00, $00, $06, $2D db $00, $00, $05, $2D, $00, $00, $E5, $2C db $00, $00, $E5, $28, $00, $00, $E5, $28 db $00, $00, $E5, $28, $00, $00, $E5, $28 db $00, $00, $E5, $28, $00, $00, $E4, $24 db $00, $00, $C4, $24, $00, $00, $C4, $24 db $00, $00, $C4, $24, $00, $00, $C4, $24 db $00, $00, $C4, $24, $00, $00, $C3, $20 db $00, $00, $C3, $20, $00, $00, $A3, $20 db $00, $00, $A3, $20, $00, $00, $A3, $20 db $00, $00, $A3, $20, $00, $00, $A3, $1C db $00, $00, $A2, $1C, $00, $00, $A2, $1C db $00, $00, $82, $1C, $00, $00, $82, $1C db $00, $00, $82, $18, $00, $00, $82, $18 db $00, $00, $81, $18, $00, $00, $81, $18 db $00, $00, $81, $18, $00, $00, $61, $18 db $00, $00, $61, $14, $00, $00, $61, $14 db $00, $00, $60, $14, $00, $00, $60, $14 db $00, $00, $60, $14, $00, $00, $60, $14 db $00, $00, $77, $4A, $00, $00, $77, $46 db $00, $00, $77, $46, $00, $00, $77, $46 db $00, $00, $57, $46, $00, $00, $57, $46 db $00, $00, $57, $46, $00, $00, $56, $46 db $00, $00, $56, $42, $00, $00, $56, $42 db $00, $00, $56, $42, $00, $00, $36, $42 db $00, $00, $36, $42, $00, $00, $36, $42 db $00, $00, $36, $42, $00, $00, $36, $3E db $00, $00, $36, $3E, $00, $00, $36, $3E db $00, $00, $36, $3E, $00, $00, $15, $3E db $00, $00, $15, $3E, $00, $00, $15, $3E db $00, $00, $15, $3A, $00, $00, $15, $3A db $00, $00, $15, $3A, $00, $00, $15, $3A db $00, $00, $F5, $39, $00, $00, $F5, $39 db $00, $00, $F5, $39, $00, $00, $F5, $39 db $00, $00, $F5, $35, $00, $00, $F4, $35 db $00, $00, $F4, $35, $00, $00, $D4, $35 db $00, $00, $D4, $35, $00, $00, $D4, $35 db $00, $00, $D4, $35, $00, $00, $D4, $31 db $00, $00, $D4, $31, $00, $00, $D4, $31 db $00, $00, $D4, $31, $00, $00, $B4, $31 db $00, $00, $B4, $31, $00, $00, $B3, $31 db $00, $00, $B3, $2D, $00, $00, $B3, $2D db $00, $00, $B3, $2D, $00, $00, $B3, $2D db $00, $00, $93, $2D, $00, $00, $93, $2D db $00, $00, $93, $2D, $00, $00, $93, $2D db $00, $00, $93, $29, $00, $00, $93, $29 db $00, $00, $93, $29, $00, $00, $93, $29 db $00, $00, $92, $29, $00, $00, $92, $29 db $00, $00, $72, $29, $00, $00, $72, $25 db $00, $00, $72, $25, $00, $00, $72, $25 db $00, $00, $72, $25, $00, $00, $72, $25 db $00, $00, $72, $25, $00, $00, $52, $21 db $00, $00, $51, $21, $00, $00, $51, $21 db $00, $00, $51, $21, $00, $00, $51, $21 db $00, $00, $51, $21, $00, $00, $51, $21 db $00, $00, $31, $1D, $00, $00, $31, $1D db $00, $00, $30, $1D, $00, $00, $30, $1D db $00, $00, $30, $1D, $00, $00, $30, $1D db $00, $00, $10, $19, $00, $00, $10, $19 db $00, $00, $0F, $19, $00, $00, $0F, $19 db $00, $00, $0F, $19, $00, $00, $0F, $19 db $00, $00, $0F, $15, $00, $00, $EF, $14 db $00, $00, $EE, $14, $00, $00, $EE, $14 db $00, $00, $EE, $14, $00, $00, $EE, $14 db $00, $00, $EE, $14, $00, $00, $ED, $10 db $00, $00, $CD, $10, $00, $00, $CD, $10 db $00, $00, $CD, $10, $00, $00, $CD, $10 db $00, $00, $CD, $10, $00, $00, $CC, $0C db $00, $00, $CC, $0C, $00, $00, $AC, $0C db $00, $00, $AC, $0C, $00, $00, $AC, $0C db $00, $00, $AC, $0C, $00, $00, $AB, $0C db $00, $00, $AB, $08, $00, $00, $AB, $08 db $00, $00, $8B, $08, $00, $00, $8B, $08 db $00, $00, $8A, $08, $00, $00, $8A, $08 db $00, $00, $8A, $04, $00, $00, $8A, $04 db $00, $00, $8A, $04, $00, $00, $6A, $04 db $00, $00, $69, $04, $00, $00, $69, $04 db $00, $00, $69, $00, $00, $00, $69, $00 db $00, $00, $69, $00, $00, $00, $69, $00 rare_string: db "Rareware" piracy_string: db "A thief!" display_error_message: TYA ;$8083D0 \ Copy message id to A JSL handle_VRAM_payload_wrapper ;$8083D1 | Upload the anti-piracy screen contents LDA #DATA_FD258E ;$8083D5 |\ Upload background palette LDY #$0000 ;$8083D8 | | LDX #$0020 ;$8083DB | | JSL DMA_palette ;$8083DE |/ LDA #DATA_FD0408 ;$8083E2 |\ Upload piracy text color LDY #$0000 ;$8083E5 | | LDX #$0001 ;$8083E8 | | JSL DMA_palette ;$8083EB |/ LDA #$0039 ;$8083EF |\ Load PPU settings for anti-piracy screen JSL set_PPU_registers_wrapper ;$8083F2 |/ STP ;$8083F6 / RESET_start: SEI ;$8083F7 \ Disable interrupts LDA #$80 ;$8083F8 |\ Enable F-Blank STA $2100 ;$8083FA |/ LDA #$01 ;$8083FD |\ Enable autojoy and fastROM STA $4200 ;$8083FF | | STA $420D ;$808402 |/ DEC A ;$808405 |\ Disable HDMA STA $420C ;$808406 |/ CLC ;$808409 |\ Disable emulation mode XCE ;$80840A |/ REP #$30 ;$80840B |\ Anti piracy: Ensure dp is zero TDC ;$80840D | | and the emulation flag was set ADC #$FFFF ;$80840E | | BEQ .anti_piracy_test ;$808411 |/ BRL .prepare_anti_piracy ;$808413 / Anti piracy triggered .anti_piracy_test ; \ TSX ;$808416 |\ Check if the reset vector was LDA #RESET_start-1 ;$808417 | | the most recent popped value CMP $FFFF,x ;$80841A | | BEQ .check_for_false_positive ;$80841D |/ LDY #$1FFD ;$80841F | Load number of RAM bytes to scan SEP #$20 ;$808422 | Use 8 bit to check each byte .next_byte ; | LDA $0000,y ;$808424 | Load byte to scan CMP #$4C ;$808427 |\ Test for JMP $83F7 (reset vector) BEQ .jmp_test ;$808429 |/ CMP #$6C ;$80842B |\ Test for JMP ($xxxx) (indirect reset vector) BEQ .indirect_jmp_test ;$80842D |/ CMP #$60 ;$80842F |\ Test for #$60-#$7F being sequential BEQ .sequential_test ;$808431 |/ .resume_scanning ; | DEY ;$808433 |\ If not at the end of RAM continue scanning BPL .next_byte ;$808434 |/ REP #$20 ;$808436 |\ Test that SRAM is present LDA.l $B06000 ;$808438 | | INC A ;$80843C | | STA $B06000 ;$80843D | | CMP $B06000 ;$808441 | | BNE .prepare_anti_piracy ;$808445 |/ Otherwise trigger anti piracy DEC A ;$808447 |\ Restore byte modified from SRAM test STA $B06000 ;$808448 |/ LDY #$003D ;$80844C | Load wrong console message LDA $213F ;$80844F |\ Verify the console is NTSC AND #$0010 ;$808452 | | BNE .prepare_message ;$808455 |/ Display wrong console message BRA .final_piracy_test ;$808457 / Do the final piracy test .jmp_test REP #$20 ;$808459 \ LDA $0001,y ;$80845B |\ Check if the operand was the reset vector CMP #RESET_start ;$80845E | | BEQ .check_for_false_positive ;$808461 |/ SEP #$20 ;$808463 | BRA .resume_scanning ;$808465 / Continue scanning .indirect_jmp_test REP #$20 ;$808467 \ LDX $0001,y ;$808469 |\ Test if operand was ROM BMI .address_rom ;$80846C |/ CPX #$2000 ;$80846E |\ Test if the operand was low RAM BPL .invalid_address ;$808471 |/ Otherwise skip the indirect test .address_rom ; | LDA $0000,x ;$808473 |\ Check if the operand pointed to the reset vector CMP #RESET_start ;$808476 | | BEQ .check_for_false_positive ;$808479 |/ .invalid_address ; | SEP #$20 ;$80847B | BRA .resume_scanning ;$80847D / Continue scanning .sequential_test TYX ;$80847F \ X is used so to preserve Y if the test fails .next_count ; | CMP $0000,x ;$808480 |\ Scan for the sequential string of $60-$7F BNE .resume_scanning ;$808483 | | INX ;$808485 | | INC A ;$808486 | | BPL .next_count ;$808487 |/ REP #$20 ;$808489 | Fall through to final check .check_for_false_positive ; | PHK ;$80848B |\ Set current databank PLB ;$80848C |/ LDX #$0006 ;$80848D | Load anti piracy test string length - ; | LDA $0907,x ;$808490 |\ Avoid false positive by checking if CMP rare_string,x ;$808493 | | the anti piracy check was prior passed BNE .write_piracy_string ;$808496 | | Otherwise jump and fail anti piracy check DEX ;$808498 | | DEX ;$808499 | | BPL - ;$80849A |/ BRA .prepare_logo ;$80849C / Boot the game .write_piracy_string LDX #$0006 ;$80849E \ Load anti piracy string length LDY #$0004 ;$8084A1 | Load target iteration count .write_next_byte ; | LDA piracy_string,x ;$8084A4 |\ Load the current anti piracy byte STA $0907,x ;$8084A7 | | Write the anti piracy byte in RAM CMP.l $B06000,x ;$8084AA | |\ If the byte is already in SRAM decrease the BNE + ;$8084AE | | | iteration count. If zero, the full string DEY ;$8084B0 | |/ was already present. + ; | | STA $B06000,x ;$8084B1 | | Write the anti piracy byte to SRAM DEX ;$8084B5 | |\ Move anti piracy index DEX ;$8084B6 | |/ BPL .write_next_byte ;$8084B7 |/ Continue writing until there are no more bytes TYA ;$8084B9 |\ If the anti piracy failure string was already in SRAM BEQ .prepare_anti_piracy ;$8084BA |/ Display the anti piracy message LDY #$003B ;$8084BC | Otherwise load irregularity detected message BRA .prepare_message ;$8084BF / Display the message .prepare_anti_piracy LDY #$003C ;$8084C1 \ Load anti piracy message .prepare_message ; | LDA #$0000 ;$8084C4 |\ Zero the direct page register TCD ;$8084C7 |/ LDX #$01FF ;$8084C8 |\ Reset the stack register TXS ;$8084CB |/ %return(display_error_message) ;$8084CC | Push address to decompress and display the message %return(clear_VRAM) ;$8084CF | Push address for clearing VRAM BRA init_registers ;$8084D2 / Initialize MMIO registers .final_piracy_test ; \ PHK ;$8084D4 |\ Set current databank PLB ;$8084D5 |/ LDX #$0006 ;$8084D6 | Load anti piracy string length - ; | LDA $0907,x ;$8084D9 |\ Verify the anti piracy failure string is not in RAM CMP piracy_string,x ;$8084DC | | BNE .prepare_logo ;$8084DF | | DEX ;$8084E1 | | DEX ;$8084E2 | | BPL - ;$8084E3 |/ BRA .prepare_anti_piracy ;$8084E5 / If the string was matched, display anti piracy message .prepare_logo ; \ LDA #$0000 ;$8084E7 |\ Clear first word of SRAM STA $B06000 ;$8084EA |/ LDX #$01FF ;$8084EE |\ Reset the stack register TXS ;$8084F1 |/ %return(start_engine) ;$8084F2 | Push address to start the game engine %return(clear_VRAM) ;$8084F5 | Push address for clearing VRAM init_registers: ; | SEP #$30 ;$8084F8 | Use 8 bit to manipulate MMIO LDX #$00 ;$8084FA | Reset index to clear PPU MMIO .clear_PPU ; | STZ $2101,x ;$8084FC |\ Clear $2101 - $2134 STZ $2101,x ;$8084FF | | Clear twice to handle write twice registers INX ;$808502 | | CPX #$34 ;$808503 | | BNE .clear_PPU ;$808505 |/ LDX #$00 ;$808507 | Reset index to clear CPU MMIO .clear_CPU ; | STZ $4202,x ;$808509 |\ Clear 4202-420C INX ;$80850C | | CPX #$0B ;$80850D | | BNE .clear_CPU ;$80850F |/ LDA #$8F ;$808511 |\ Enable F-Blank with full brightness STA $2100 ;$808513 |/ LDA #$80 ;$808516 |\ STA $2115 ;$808518 | | Increment VRAM after high byte write STA $211A ;$80851B |/ Use large mode 7 tilemap bounds LDA #$01 ;$80851E |\ Enable fastROM STA $420D ;$808520 |/ STZ $2131 ;$808523 | Disable color math STZ $2133 ;$808526 | Reset screen mode STZ $4200 ;$808529 | Disable interrupts and autojoy LDA #$FF ;$80852C |\ Initalize outport (unused) STA $4201 ;$80852E |/ LDA #$E0 ;$808531 |\ Set fixed color STA $2132 ;$808533 |/ LDA #$30 ;$808536 |\ Clear color math settings STA $2130 ;$808538 |/ LDA #$00 ;$80853B |\ Disable mosaic STA $2106 ;$80853D |/ STZ $210D ;$808540 |\ Clear layer 1-3 horizontal scroll (Layer 1) STZ $210D ;$808543 | | STZ $210F ;$808546 | | Layer 2 STZ $210F ;$808549 | | STZ $2111 ;$80854C | | Layer 3 STZ $2111 ;$80854F |/ LDA #$FF ;$808552 |\ Set layer 1-3 vertical scroll to $FFFF STA $210E ;$808554 | | Layer 1 STA $210E ;$808557 | | STA $2110 ;$80855A | | Layer 2 STA $2110 ;$80855D | | STA $2112 ;$808560 | | Layer 3 STA $2112 ;$808563 |/ REP #$30 ;$808566 | Restore to 16 bit access... SEP #$20 ;$808568 | ...Just to make A 8 bit again LDX #$000A ;$80856A | Load up the number of H/DMA bytes to clear .clear_DMA ; | STZ $4300,x ;$80856D |\ Zero out channels 0-7 STZ $4310,x ;$808570 | | STZ $4320,x ;$808573 | | STZ $4330,x ;$808576 | | STZ $4340,x ;$808579 | | STZ $4350,x ;$80857C | | STZ $4360,x ;$80857F | | STZ $4370,x ;$808582 | | DEX ;$808585 | | Next byte BPL .clear_DMA ;$808586 |/ Continue until addresses from all channel are clear REP #$20 ;$808588 | Back to a full 16 bit RTS ;$80858A / init_registers_wrapper: JSR init_registers ;$80858B \ Wrapper for long calls RTL ;$80858E / VRAM_zero_fill: dw $0000 ;$80858F > Used for VRAM fill byte clear_VRAM: STZ $2116 ;$808591 \ Initialize VRAM to zeros LDA #VRAM_zero_fill ;$808594 |\ Set DMA source word STA $4302 ;$808597 |/ STA $4308 ;$80859A | Set HDMA word (not used.) STZ $4305 ;$80859D | Set size to zero, (full 64K) LDA #$1809 ;$8085A0 |\ Set DMA destination 2118, fixed transfer, STA $4300 ;$8085A3 |/ with two register write once SEP #$20 ;$8085A6 | LDA #VRAM_zero_fill>>16 ;$8085A8 |\ Set DMA source bank STA $4304 ;$8085AA |/ LDA #$01 ;$8085AD |\ STA $420B ;$8085AF |/ Enable channel 1 DMA REP #$20 ;$8085B2 | RTS ;$8085B4 / clear_VRAM_wrapper: JSR clear_VRAM ;$8085B5 \ Wrapper for long calls RTL ;$8085B8 / start_engine: ; \ STZ $00 ;$8085B9 |\ Zero the first byte of WRAM LDX #$0000 ;$8085BB | | Set up MVN LDY #$0001 ;$8085BE | | LDA #$FFFF ;$8085C1 | | 64K MVN $7E, $7E ;$8085C4 |/ Copy first byte of WRAM across bank 7E (zero bank 7E) LDY #$0000 ;$8085C7 |\ Set up another MVN TYX ;$8085CA | | LDA #$FFFF ;$8085CB | | MVN $7F, $7E ;$8085CE |/ Copy 64K from bank 7E to 7F (zero bank 7F) PHK ;$8085D1 |\ Set the program bank to the data bank PLB ;$8085D2 |/ LDX #$0006 ;$8085D3 |\ Number of bytes minus one to copy (due to 16 bit) .rare_string_copy ; | | LDA rare_string,x ;$8085D6 | | Use the Rareware anti piracy success string, STA $0907,x ;$8085D9 | | and copy that into RAM DEX ;$8085DC | | DEX ;$8085DD | | BPL .rare_string_copy ;$8085DE |/ Copy the string until there are no more bytes JSL upload_spc_engine_entry ;$8085E0 | Upload the SPC engine restart_rareware_logo: ; | JSL disable_screen ;$8085E4 | Disable the screen JSR clear_wram_reset ;$8085E8 | Clear WRAM JML init_rareware_logo ;$8085EB / Initialize the Rareware logo CODE_8085EF: LDA #$FFFF ;$8085EF \ STA $00090F ;$8085F2 | JSL disable_screen ;$8085F6 | LDA #CODE_80B3D7 ;$8085FA | STA $24 ;$8085FD | STZ $2102 ;$8085FF | LDA #CODE_808608 ;$808602 | JMP CODE_808C82 ;$808605 / CODE_808608: LDA #$01FF ;$808608 \ TCS ;$80860B | CODE_80860C: ; | LDA #CODE_80F3E6 ;$80860C | STA $20 ;$80860F | INC $2A ;$808611 | JMP ($0024) ;$808613 / CODE_808616: LDA #$0100 ;$808616 | CLC ;$808619 | ADC $0985 ;$80861A | STA $0985 ;$80861D | SEP #$20 ;$808620 | LDA $0512 ;$808622 | STA $2100 ;$808625 | REP #$20 ;$808628 | CODE_80862A: ; | PHB ;$80862A | PHB ;$80862B | PLA ;$80862C | SEC ;$80862D | SBC #$C000 ;$80862E | BCC CODE_808636 ;$808631 / DATA_808633: db $00, $80, $FD CODE_808636: INC $D5 ;$808636 \ BNE CODE_808640 ;$808638 | INC $D7 ;$80863A | BNE CODE_808640 ;$80863C | DEC $D7 ;$80863E | CODE_808640: ; | LDA #CODE_808608 ;$808640 | STA $20 ;$808643 | SEP #$20 ;$808645 | LDA $4210 ;$808647 | LDA #$81 ;$80864A | STA $4200 ;$80864C | STZ $4016 ;$80864F | CODE_808652: ; | WAI ;$808652 | BRA CODE_808652 ;$808653 / LDA $0504 ;$808655 | AND #$0020 ;$808658 | BNE CODE_808672 ;$80865B | LDA $0987 ;$80865D | CLC ;$808660 | ADC #$0010 ;$808661 | CMP #$0800 ;$808664 | BMI CODE_80866C ;$808667 | LDA #$0800 ;$808669 | CODE_80866C: ; | STA $0987 ;$80866C | JMP CODE_80860C ;$80866F / CODE_808672: LDA $0987 ;$808672 \ SEC ;$808675 | SBC #$0010 ;$808676 | BPL CODE_80867E ;$808679 | LDA #$0000 ;$80867B | CODE_80867E: ; | STA $0987 ;$80867E | JMP CODE_80860C ;$808681 / CODE_808684: JSL disable_screen ;$808684 | SEP #$20 ;$808688 | LDA #$FF ;$80868A | STA $210E ;$80868C | STA $210E ;$80868F | REP #$20 ;$808692 | LDA #DATA_FD0FF0 ;$808694 | LDY #$0000 ;$808697 | LDX #$0040 ;$80869A | JSL DMA_palette ;$80869D | LDA #$0008 ;$8086A1 | JSL handle_VRAM_payload_wrapper ;$8086A4 | LDA #$0007 ;$8086A8 | JSL set_PPU_registers_wrapper ;$8086AB | LDA #$7000 ;$8086AF | STA $2116 ;$8086B2 | LDY #$0064 ;$8086B5 | LDX #$0000 ;$8086B8 | CODE_8086BB: ; | LDA.l DATA_ED57EF,x ;$8086BB | STA $2118 ;$8086BF | INX ;$8086C2 | INX ;$8086C3 | TXA ;$8086C4 | AND #$000F ;$8086C5 | BNE CODE_8086BB ;$8086C8 | STZ $2118 ;$8086CA | STZ $2118 ;$8086CD | STZ $2118 ;$8086D0 | STZ $2118 ;$8086D3 | STZ $2118 ;$8086D6 | STZ $2118 ;$8086D9 | STZ $2118 ;$8086DC | STZ $2118 ;$8086DF | DEY ;$8086E2 | BNE CODE_8086BB ;$8086E3 | LDA #$0001 ;$8086E5 | STA $059B ;$8086E8 | SEP #$20 ;$8086EB | LDA #$0F ;$8086ED | STA $2100 ;$8086EF | REP #$20 ;$8086F2 | CODE_8086F4: ; | BRA CODE_8086F4 ;$8086F4 / CODE_8086F6: JSL disable_screen ;$8086F6 \ PHK ;$8086FA | PLB ;$8086FB | LDA #$8000 ;$8086FC | TSB $08C4 ;$8086FF | LDA #$0001 ;$808702 | STA $05FB ;$808705 | JSR CODE_808712 ;$808708 | LDA #CODE_8087E1 ;$80870B | JML CODE_808C9E ;$80870E / CODE_808712: LDA #$AA55 ;$808712 \ STA $2E ;$808715 | LDA #$3765 ;$808717 | STA $30 ;$80871A | STZ $05FD ;$80871C | STZ $05FF ;$80871F | LDA #$0040 ;$808722 | TRB $08C2 ;$808725 | STZ $0502 ;$808728 | STZ $0506 ;$80872B | STZ $050A ;$80872E | LDA $05FB ;$808731 | CMP #$0002 ;$808734 | BNE CODE_80875E ;$808737 | LDA #$000C ;$808739 | STA $D3 ;$80873C | STA $08C8 ;$80873E | LDA #$0001 ;$808741 | STA $08A6 ;$808744 | LDX $05FD ;$808747 | LDA $D3 ;$80874A | STA DATA_FE9388,x ;$80874C | INX ;$808750 | INX ;$808751 | LDA $08A6 ;$808752 | STA DATA_FE9388,x ;$808755 | INX ;$808759 | INX ;$80875A | STX $05FD ;$80875B | CODE_80875E: ; | LDA.l $000605 ;$80875E | AND #$0003 ;$808762 | CMP #$0003 ;$808765 | BNE CODE_80876E ;$808768 | JML restart_rareware_logo ;$80876A / CODE_80876E: ASL A ;$80876E \ TAX ;$80876F | LDA.l DATA_FE958E,x ;$808770 | STA $000601 ;$808774 | INC $0605 ;$808778 | LDA.l $000601 ;$80877B | STA $36 ;$80877F | LDA #$00FE ;$808781 | STA $38 ;$808784 | LDA $05FB ;$808786 | CMP #$0001 ;$808789 | BNE CODE_8087B8 ;$80878C | PHB ;$80878E | PHK ;$80878F | PLB ;$808790 | LDY $05FD ;$808791 | LDA [$36],y ;$808794 | STA $000603 ;$808796 | INY ;$80879A | INY ;$80879B | LDA [$36],y ;$80879C | STA $D3 ;$80879E | STA $08C8 ;$8087A0 | INY ;$8087A3 | INY ;$8087A4 | LDA [$36],y ;$8087A5 | STA $08A6 ;$8087A7 | INY ;$8087AA | INY ;$8087AB | STY $05FD ;$8087AC | INY ;$8087AF | INY ;$8087B0 | LDA [$36],y ;$8087B1 | STA $0005FF ;$8087B3 | PLB ;$8087B7 | CODE_8087B8: ; | RTS ;$8087B8 / CODE_8087B9: JSL CODE_80F3FB ;$8087B9 \ PHK ;$8087BD | PLB ;$8087BE | LDA #CODE_8087C5 ;$8087BF | JMP CODE_808C9E ;$8087C2 / CODE_8087C5: JML CODE_80F482 ;$8087C5 / CODE_8087C9: JSL disable_screen ;$8087C9 | PHK ;$8087CD | PLB ;$8087CE | JSR CODE_808712 ;$8087CF | LDA #CODE_8087E1 ;$8087D2 | JML CODE_808C9E ;$8087D5 / CODE_8087D9: LDA.l $0006B1 ;$8087D9 \ JML CODE_B5CDFD ;$8087DD / CODE_8087E1: PHK ;$8087E1 \ PLB ;$8087E2 | JSL disable_screen ;$8087E3 | JSL CODE_BB9210 ;$8087E7 | PHK ;$8087EB | PLB ;$8087EC | LDA #$0200 ;$8087ED | JSR CODE_808C32 ;$8087F0 | JSR CODE_808CAC ;$8087F3 | SEP #$20 ;$8087F6 | LDA $0529 ;$8087F8 | STA $96 ;$8087FB | LDA $0527 ;$8087FD | STA $94 ;$808800 | REP #$20 ;$808802 | LDA #CODE_808819 ;$808804 | JMP CODE_808C9E ;$808807 / CODE_80880A: SEP #$20 ;$80880A | STA $96 ;$80880C | XBA ;$80880E | STA $94 ;$80880F | REP #$20 ;$808811 | LDA #CODE_808819 ;$808813 | JMP CODE_808C9E ;$808816 / CODE_808819: LDA $94 ;$808819 \ ASL A ;$80881B | TAX ;$80881C | JSR (DATA_80B6C1,x) ;$80881D | SEP #$20 ;$808820 | LDA $4212 ;$808822 | REP #$20 ;$808825 | BMI CODE_808830 ;$808827 | LDA #$0005 ;$808829 | JSL CODE_808C13 ;$80882C | CODE_808830: ; | LDA $96 ;$808830 | ASL A ;$808832 | TAX ;$808833 | JMP (DATA_80D411,x) ;$808834 / CODE_808837: JSR CODE_80883B ;$808837 \ RTL ;$80883A / CODE_80883B: BNE CODE_808863 ;$80883B \ LDA #$0DE2 ;$80883D | STA $0593 ;$808840 | LDA #$16B2 ;$808843 | STA $0595 ;$808846 | STZ $08A4 ;$808849 | LDA $08A4 ;$80884C | INC A ;$80884F | STA $08A2 ;$808850 | LDA #$0E40 ;$808853 | STA $0597 ;$808856 | LDA #$16D8 ;$808859 | STA $0599 ;$80885C | JSR CODE_808889 ;$80885F | RTS ;$808862 / CODE_808863: LDA #$0E40 ;$808863 \ STA $0593 ;$808866 | LDA #$16D8 ;$808869 | STA $0595 ;$80886C | LDA #$0001 ;$80886F | STA $08A4 ;$808872 | INC A ;$808875 | STA $08A2 ;$808876 | LDA #$0DE2 ;$808879 | STA $0597 ;$80887C | LDA #$16B2 ;$80887F | STA $0599 ;$808882 | JSR CODE_808889 ;$808885 | RTS ;$808888 / CODE_808889: PHX ;$808889 \ LDX $0593 ;$80888A | LDA #$001E ;$80888D | STA $30,x ;$808890 | LDX $0597 ;$808892 | LDA #$0000 ;$808895 | STA $30,x ;$808898 | PLX ;$80889A | RTS ;$80889B / CODE_80889C: JSR CODE_8088A0 ;$80889C \ RTL ;$80889F / CODE_8088A0: LDA $08A4 ;$8088A0 \ EOR #$0001 ;$8088A3 | BRA CODE_80883B ;$8088A6 / CODE_8088A8: LDA $D3 ;$8088A8 \ RTL ;$8088AA / CODE_8088AB: LDA #$0200 ;$8088AB \ STA $70 ;$8088AE | JSR CODE_8088BA ;$8088B0 | RTL ;$8088B3 / CODE_8088B4: PHB ;$8088B4 \ JSR CODE_8088BA ;$8088B5 | PLB ;$8088B8 | RTL ;$8088B9 / CODE_8088BA: PHK ;$8088BA \ PLB ;$8088BB | LDX $70 ;$8088BC | CPX #$0400 ;$8088BE | BEQ CODE_8088D1 ;$8088C1 | LDA #$F0FF ;$8088C3 | CODE_8088C6: ; | STA $00,x ;$8088C6 | INX ;$8088C8 | INX ;$8088C9 | INX ;$8088CA | INX ;$8088CB | CPX #$0400 ;$8088CC | BNE CODE_8088C6 ;$8088CF | CODE_8088D1: ; | RTS ;$8088D1 / CODE_8088D2: LDY #DATA_8088F1 ;$8088D2 \ PHB ;$8088D5 | PHK ;$8088D6 | PLB ;$8088D7 | BRA CODE_8088EA ;$8088D8 / CODE_8088DA: TAX ;$8088DA \ LDA $0002,y ;$8088DB | LSR A ;$8088DE | CODE_8088DF: ; | STZ $00,x ;$8088DF | INX ;$8088E1 | INX ;$8088E2 | DEC A ;$8088E3 | BNE CODE_8088DF ;$8088E4 | INY ;$8088E6 | INY ;$8088E7 | INY ;$8088E8 | INY ;$8088E9 | CODE_8088EA: ; | LDA $0000,y ;$8088EA | BPL CODE_8088DA ;$8088ED | PLB ;$8088EF | RTL ;$8088F0 / DATA_8088F1: db $84, $0D, $2E, $09, $B2, $16, $26, $00 db $D8, $16, $26, $00, $7A, $0D, $02, $00 db $A0, $0B, $02, $00, $A2, $0B, $02, $00 db $36, $0A, $02, $00, $38, $0A, $02, $00 db $04, $0B, $20, $00, $24, $0B, $40, $00 db $EF, $00, $02, $00, $F1, $00, $02, $00 db $64, $0B, $10, $00, $74, $0B, $10, $00 db $42, $0A, $40, $00, $29, $09, $02, $00 db $2B, $09, $02, $00, $2D, $09, $02, $00 db $23, $09, $02, $00, $15, $05, $3E, $00 db $5B, $09, $08, $00, $63, $09, $08, $00 db $4A, $0D, $02, $00, $89, $09, $02, $00 db $1B, $09, $02, $00, $19, $09, $02, $00 db $02, $0B, $02, $00, $FF, $FF DMA_to_VRAM: JSR .DMA_to_VRAM ;$80895F \ Simple JSL to RTS wrapper RTL ;$808962 / .DMA_to_VRAM STA $4302 ;$808963 \ Store the DMA source word STY $4305 ;$808966 | Store the DMA size LDA #$1801 ;$808969 |\ Set DMA destination to $2118, write once, two registers STA $4300 ;$80896C |/ SEP #$30 ;$80896F | STX $4304 ;$808971 | Store the DMA source bank LDA #$01 ;$808974 |\ Enable the DMA STA $420B ;$808976 |/ REP #$30 ;$808979 | RTS ;$80897B / CODE_80897C: PHB ;$80897C \ JSR CODE_808988 ;$80897D | PLB ;$808980 | RTL ;$808981 / CODE_808982: JSL CODE_809025 ;$808982 \ BRA CODE_808A00 ;$808986 / CODE_808988: PHK ;$808988 \ PLB ;$808989 | SEP #$20 ;$80898A | LDA #$01 ;$80898C | CODE_80898E: ; | BIT $4212 ;$80898E | BNE CODE_80898E ;$808991 | REP #$20 ;$808993 | LDA $05FB ;$808995 | BNE CODE_808982 ;$808998 | LDA $0B02 ;$80899A | AND #$0020 ;$80899D | BEQ CODE_8089C9 ;$8089A0 | LDA $0927 ;$8089A2 | BPL CODE_8089C2 ;$8089A5 | LDA #$0100 ;$8089A7 | CLC ;$8089AA | ADC $0927 ;$8089AB | STA $0927 ;$8089AE | LDA #$0002 ;$8089B1 | TSB $0B02 ;$8089B4 | LDA $0510 ;$8089B7 | AND #$EFFF ;$8089BA | STA $0510 ;$8089BD | BRA CODE_808A3C ;$8089C0 / CODE_8089C2: SEC ;$8089C2 \ SBC $0925 ;$8089C3 | STA $0927 ;$8089C6 | CODE_8089C9: ; | LDA $4218 ;$8089C9 | TAX ;$8089CC | EOR $0502 ;$8089CD | AND $4218 ;$8089D0 | STA $0506 ;$8089D3 | TXA ;$8089D6 | EOR $0502 ;$8089D7 | AND $0502 ;$8089DA | STA $050A ;$8089DD | STX $0502 ;$8089E0 | LDA $421A ;$8089E3 | TAX ;$8089E6 | EOR $0504 ;$8089E7 | AND $421A ;$8089EA | STA $0508 ;$8089ED | TXA ;$8089F0 | EOR $0504 ;$8089F1 | AND $0504 ;$8089F4 | STA $050C ;$8089F7 | STX $0504 ;$8089FA | JSR CODE_808BB0 ;$8089FD | CODE_808A00: ; | LDA $060D ;$808A00 | BNE CODE_808A26 ;$808A03 | LDA $0502 ;$808A05 | STA $050E ;$808A08 | LDA $0506 ;$808A0B | STA $0510 ;$808A0E | BRA CODE_808A3C ;$808A11 / CODE_808A13: LDA $060F ;$808A13 \ ASL A ;$808A16 | TAX ;$808A17 | LDA $0502,x ;$808A18 | STA $050E ;$808A1B | LDA $0506,x ;$808A1E | STA $0510 ;$808A21 | BRA CODE_808A3C ;$808A24 / CODE_808A26: DEC A ;$808A26 \ BNE CODE_808A13 ;$808A27 | LDA $08A2 ;$808A29 | AND #$0002 ;$808A2C | TAX ;$808A2F | LDA $0502,x ;$808A30 | STA $050E ;$808A33 | LDA $0506,x ;$808A36 | STA $0510 ;$808A39 | CODE_808A3C: ; | LDA $0B02 ;$808A3C | AND #$0010 ;$808A3F | BEQ CODE_808A76 ;$808A42 | LDA $050E ;$808A44 | XBA ;$808A47 | AND #$000F ;$808A48 | ASL A ;$808A4B | TAX ;$808A4C | LDA.l DATA_808B90,x ;$808A4D | EOR $050E ;$808A51 | AND #$0F00 ;$808A54 | EOR $050E ;$808A57 | STA $050E ;$808A5A | LDA $0510 ;$808A5D | XBA ;$808A60 | AND #$000F ;$808A61 | ASL A ;$808A64 | TAX ;$808A65 | LDA.l DATA_808B90,x ;$808A66 | EOR $0510 ;$808A6A | AND #$0F00 ;$808A6D | EOR $0510 ;$808A70 | STA $0510 ;$808A73 | CODE_808A76: ; | LDA $08C2 ;$808A76 | AND #$0040 ;$808A79 | BNE CODE_808AB4 ;$808A7C | LDA #$0010 ;$808A7E | TRB $08C4 ;$808A81 | BNE CODE_808A8D ;$808A84 | LDA $08C2 ;$808A86 | AND #$0040 ;$808A89 | RTS ;$808A8C / CODE_808A8D: LDA #$0040 ;$808A8D \ TSB $08C2 ;$808A90 | LDA #$075E ;$808A93 | JSL CODE_B58021 ;$808A96 | LDA #$065E ;$808A9A | JSL CODE_B58021 ;$808A9D | LDA #$055E ;$808AA1 | JSL CODE_B58021 ;$808AA4 | LDA #$045E ;$808AA8 | JSL CODE_B58021 ;$808AAB | LDA $2A ;$808AAF | STA $0636 ;$808AB1 | CODE_808AB4: ; | LDA $0510 ;$808AB4 | AND #$1000 ;$808AB7 | BNE CODE_808AED ;$808ABA | LDA $D5 ;$808ABC | SEC ;$808ABE | SBC #$0001 ;$808ABF | STA $D5 ;$808AC2 | LDA $D7 ;$808AC4 | SBC #$0000 ;$808AC6 | STA $D7 ;$808AC9 | LDA $0510 ;$808ACB | AND #$2000 ;$808ACE | BEQ CODE_808AE6 ;$808AD1 | LDA $08A8 ;$808AD3 | JSL CODE_BB825C ;$808AD6 | BCC CODE_808AE6 ;$808ADA | LDA #$0040 ;$808ADC | TRB $08C2 ;$808ADF | JML CODE_BBBDC4 ;$808AE2 / CODE_808AE6: JSR CODE_808B19 ;$808AE6 \ LDA #$0001 ;$808AE9 | RTS ;$808AEC / CODE_808AED: LDA #$075E ;$808AED \ JSL CODE_B58021 ;$808AF0 | LDA #$065E ;$808AF4 | JSL CODE_B58021 ;$808AF7 | LDA #$055E ;$808AFB | JSL CODE_B58021 ;$808AFE | LDA #$045E ;$808B02 | JSL CODE_B58021 ;$808B05 | LDA #$00FF ;$808B09 | TRB $0621 ;$808B0C | STZ $19B0 ;$808B0F | LDA #$0040 ;$808B12 | TRB $08C2 ;$808B15 | RTS ;$808B18 / CODE_808B19: LDX $19D6 ;$808B19 \ LDA $050E ;$808B1C | BEQ CODE_808B40 ;$808B1F | CMP.l DATA_808B7C,x ;$808B21 | BEQ CODE_808B40 ;$808B25 | CMP.l DATA_808B7E,x ;$808B27 | BEQ CODE_808B41 ;$808B2B | LDA.l DATA_808B7C,x ;$808B2D | ORA.l DATA_808B7E,x ;$808B31 | EOR #$FFFF ;$808B35 | AND $050E ;$808B38 | BEQ CODE_808B40 ;$808B3B | STZ $19D6 ;$808B3D | CODE_808B40: ; | RTS ;$808B40 / CODE_808B41: INX ;$808B41 \ INX ;$808B42 | INX ;$808B43 | INX ;$808B44 | STX $19D6 ;$808B45 | LDA.l DATA_808B7E,x ;$808B48 | CMP #$1000 ;$808B4C | BNE CODE_808B40 ;$808B4F | JSL disable_screen ;$808B51 | LDA #$0505 ;$808B55 | JSL CODE_B58021 ;$808B58 | LDA #$0000 ;$808B5C | CODE_808B5F: ; | JSR CODE_808B6F ;$808B5F | DEC A ;$808B62 | BNE CODE_808B5F ;$808B63 | LDA #$0040 ;$808B65 | TRB $08C2 ;$808B68 | JML CODE_BBBDC4 ;$808B6B / CODE_808B6F: LDY $00,x ;$808B6F \ LDY $00,x ;$808B71 | LDY $00,x ;$808B73 | LDY $00,x ;$808B75 | LDY $00,x ;$808B77 | LDY $00,x ;$808B79 | RTS ;$808B7B / DATA_808B7C: db $00, $00 DATA_808B7E: db $00, $41, $00, $41, $80, $02, $80, $02 db $00, $88, $00, $88, $40, $04, $40, $04 db $00, $10 DATA_808B90: db $00, $00, $00, $02, $00, $01, $00, $00 db $00, $08, $00, $0A, $00, $09, $00, $00 db $00, $04, $00, $06, $00, $05, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 CODE_808BB0: STZ $32 ;$808BB0 \ LDA $0502 ;$808BB2 | AND #$0007 ;$808BB5 | BEQ CODE_808BCF ;$808BB8 | SEP #$20 ;$808BBA | LDY #$0010 ;$808BBC | CODE_808BBF: ; | LDA $4016 ;$808BBF | DEY ;$808BC2 | BNE CODE_808BBF ;$808BC3 | REP #$20 ;$808BC5 | STZ $0502 ;$808BC7 | STZ $0506 ;$808BCA | BRA CODE_808BE1 ;$808BCD / CODE_808BCF: SEP #$20 ;$808BCF \ LDA $4016 ;$808BD1 | REP #$20 ;$808BD4 | BIT #$0001 ;$808BD6 | BNE CODE_808BE1 ;$808BD9 | STZ $0502 ;$808BDB | STZ $0506 ;$808BDE | CODE_808BE1: ; | LDA $0504 ;$808BE1 | AND #$0007 ;$808BE4 | BEQ CODE_808BFE ;$808BE7 | SEP #$20 ;$808BE9 | LDY #$0010 ;$808BEB | CODE_808BEE: ; | LDA $4017 ;$808BEE | DEY ;$808BF1 | BNE CODE_808BEE ;$808BF2 | REP #$20 ;$808BF4 | STZ $0504 ;$808BF6 | STZ $0508 ;$808BF9 | BRA CODE_808C10 ;$808BFC / CODE_808BFE: SEP #$20 ;$808BFE \ LDA $4017 ;$808C00 | REP #$20 ;$808C03 | BIT #$0001 ;$808C05 | BNE CODE_808C12 ;$808C08 | STZ $0504 ;$808C0A | STZ $0508 ;$808C0D | CODE_808C10: ; | INC $32 ;$808C10 | CODE_808C12: ; | RTS ;$808C12 / CODE_808C13: RTL ;$808C13 / PHA ;$808C14 | LDA.l $0005F3 ;$808C15 | BEQ CODE_808C21 ;$808C19 | PLA ;$808C1B | JSL CODE_808C22 ;$808C1C | RTL ;$808C20 / CODE_808C21: PLA ;$808C21 \ CODE_808C22: ; | STA $0005F3 ;$808C22 | LDA #$00B4 ;$808C26 | STA $0005F5 ;$808C29 | RTL ;$808C2D / CODE_808C2E: JSR CODE_808C32 ;$808C2E \ RTL ;$808C31 / CODE_808C32: STZ $0513 ;$808C32 \ STA $0512 ;$808C35 | RTS ;$808C38 / CODE_808C39: JSR CODE_808C3D ;$808C39 \ RTL ;$808C3C / CODE_808C3D: SEP #$20 ;$808C3D \ LDA $0513 ;$808C3F | BEQ CODE_808C7D ;$808C42 | BMI CODE_808C63 ;$808C44 | INC $0514 ;$808C46 | CMP $0514 ;$808C49 | BNE CODE_808C7D ;$808C4C | STZ $0514 ;$808C4E | INC $0512 ;$808C51 | LDA #$0F ;$808C54 | CMP $0512 ;$808C56 | BCS CODE_808C7D ;$808C59 | STA $0512 ;$808C5B | STZ $0513 ;$808C5E | BRA CODE_808C7D ;$808C61 / CODE_808C63: AND #$7F ;$808C63 \ INC $0514 ;$808C65 | CMP $0514 ;$808C68 | BNE CODE_808C7D ;$808C6B | STZ $0514 ;$808C6D | DEC $0512 ;$808C70 | BMI CODE_808C77 ;$808C73 | BNE CODE_808C7D ;$808C75 | CODE_808C77: ; | STZ $0513 ;$808C77 | STZ $0512 ;$808C7A | CODE_808C7D: ; | REP #$20 ;$808C7D | RTS ;$808C7F / CODE_808C80: PHK ;$808C80 \ PLB ;$808C81 | CODE_808C82: ; | STA $20 ;$808C82 | CODE_808C84: ; | SEP #$20 ;$808C84 | LDA $4211 ;$808C86 | LDA $4210 ;$808C89 | CODE_808C8C: ; | LDA $4210 ;$808C8C | AND #$80 ;$808C8F | BNE CODE_808C8C ;$808C91 | LDA #$81 ;$808C93 | STA $4200 ;$808C95 | STZ $4016 ;$808C98 | CODE_808C9B: ; | WAI ;$808C9B | BRA CODE_808C9B ;$808C9C / CODE_808C9E: PHK ;$808C9E \ PLB ;$808C9F | STA $24 ;$808CA0 | CODE_808CA2: ; | JSR CODE_808CAC ;$808CA2 | JMP CODE_80862A ;$808CA5 / CODE_808CA8: JSR CODE_808CAC ;$808CA8 \ RTL ;$808CAB / CODE_808CAC: LDA #$0200 ;$808CAC \ STA $4302 ;$808CAF | STA $4308 ;$808CB2 | LDA #$0220 ;$808CB5 | STA $4305 ;$808CB8 | LDA #$0400 ;$808CBB | STA $4300 ;$808CBE | SEP #$20 ;$808CC1 | STZ $4304 ;$808CC3 | REP #$20 ;$808CC6 | RTS ;$808CC8 / CODE_808CC9: LDX #$01FF ;$808CC9 \ TXS ;$808CCC | INC $2A ;$808CCD | JSL CODE_BAB31B ;$808CCF | JSL CODE_80897C ;$808CD3 | BRA CODE_808D1C ;$808CD7 / CODE_808CD9: LDX #$01FF ;$808CD9 \ TXS ;$808CDC | INC $2A ;$808CDD | JSL CODE_B4BE60 ;$808CDF | JSL CODE_80897C ;$808CE3 | BRA CODE_808D1C ;$808CE7 / CODE_808CE9: JML CODE_B5D13B ;$808CE9 / CODE_808CED: JML CODE_B5D4A7 ;$808CED / CODE_808CF1: JML CODE_B5D334 ;$808CF1 / CODE_808CF5: LDX #$01FF ;$808CF5 \ TXS ;$808CF8 | INC $2A ;$808CF9 | JSL CODE_B491D7 ;$808CFB | BRL CODE_808D1C ;$808CFF / CODE_808D02: LDX #$01FF ;$808D02 \ TXS ;$808D05 | INC $2A ;$808D06 | JSL CODE_B48B15 ;$808D08 | BRA CODE_808D1C ;$808D0C / CODE_808D0E: LDX #$01FF ;$808D0E \ TXS ;$808D11 | INC $2A ;$808D12 | JSL CODE_B4935E ;$808D14 | JSL CODE_80897C ;$808D18 | CODE_808D1C: ; | WAI ;$808D1C | BRA CODE_808D1C ;$808D1D / CODE_808D1F: LDX #$01FF ;$808D1F \ TXS ;$808D22 | INC $2A ;$808D23 | JSL CODE_B49978 ;$808D25 | JSL CODE_80897C ;$808D29 | BRL CODE_808D1C ;$808D2D / CODE_808D30: LDX #$01FF ;$808D30 \ TXS ;$808D33 | INC $2A ;$808D34 | JSL CODE_B49886 ;$808D36 | BRL CODE_808D1C ;$808D3A / CODE_808D3D: LDX #$01FF ;$808D3D \ TXS ;$808D40 | INC $2A ;$808D41 | JSL CODE_B49F1D ;$808D43 | JSL CODE_80897C ;$808D47 | BRL CODE_808D1C ;$808D4B / CODE_808D4E: LDX #$01FF ;$808D4E \ TXS ;$808D51 | INC $2A ;$808D52 | JSL CODE_B49ED7 ;$808D54 | JSL CODE_80897C ;$808D58 | BRL CODE_808D1C ;$808D5C / CODE_808D5F: LDX #$01FF ;$808D5F \ TXS ;$808D62 | INC $2A ;$808D63 | JSL CODE_B4AB6E ;$808D65 | JSL CODE_80897C ;$808D69 | BRL CODE_808D1C ;$808D6D / CODE_808D70: LDX #$01FF ;$808D70 \ TXS ;$808D73 | INC $2A ;$808D74 | JSL CODE_B4990F ;$808D76 | BRL CODE_808D1C ;$808D7A / CODE_808D7D: LDX #$01FF ;$808D7D \ TXS ;$808D80 | INC $2A ;$808D81 | JSL CODE_B49B63 ;$808D83 | BRL CODE_808D1C ;$808D87 / CODE_808D8A: LDA #$8000 ;$808D8A \ ORA $08C2 ;$808D8D | STA $08C2 ;$808D90 | LDA $08A4 ;$808D93 | JSL CODE_808837 ;$808D96 | LDA #$0020 ;$808D9A | ORA $30,x ;$808D9D | STA $30,x ;$808D9F | JSR CODE_808E29 ;$808DA1 | LDA #$16D8 ;$808DA4 | STA $66 ;$808DA7 | LDY #$136E ;$808DA9 | JSL CODE_BB8432 ;$808DAC | LDX $68 ;$808DB0 | STX $64 ;$808DB2 | LDA #$0004 ;$808DB4 | JSL CODE_B9D0B8 ;$808DB7 | LDA.l DATA_FF012A ;$808DBB | STA $16E0 ;$808DBF | LDA.l DATA_FF012C ;$808DC2 | STA $16E2 ;$808DC6 | LDX $0593 ;$808DC9 | LDA #$001D ;$808DCC | STA $2E,x ;$808DCF | LDA #$00E4 ;$808DD1 | STA $02,x ;$808DD4 | JSR CODE_808DFB ;$808DD6 | LDX $0597 ;$808DD9 | LDA #$001E ;$808DDC | STA $2E,x ;$808DDF | LDA #$00D8 ;$808DE1 | STA $02,x ;$808DE4 | JSR CODE_808DFB ;$808DE6 | LDA $08C2 ;$808DE9 | BIT #$4000 ;$808DEC | BNE CODE_808DFA ;$808DEF | LDY $0597 ;$808DF1 | LDA #$C000 ;$808DF4 | STA $001C,y ;$808DF7 | CODE_808DFA: ; | RTL ;$808DFA / CODE_808DFB: RTS ;$808DFB / LDA #$0101 ;$808DFC | STA $1E,x ;$808DFF | STZ $0E,x ;$808E01 | LDA $0A,x ;$808E03 | STA $0C,x ;$808E05 | RTS ;$808E07 / LDA #$8000 ;$808E08 | ORA $08C2 ;$808E0B | STA $08C2 ;$808E0E | LDA #$0000 ;$808E11 | JSL CODE_808837 ;$808E14 | JSR CODE_808E29 ;$808E18 | LDX $0593 ;$808E1B | LDA #$001D ;$808E1E | STA $2E,x ;$808E21 | LDA #$00E4 ;$808E23 | STA $02,x ;$808E26 | RTL ;$808E28 / CODE_808E29: LDA #$16B2 ;$808E29 \ STA $66 ;$808E2C | LDY #$1330 ;$808E2E | JSL CODE_BB8432 ;$808E31 | LDX $68 ;$808E35 | STX $64 ;$808E37 | LDA #$0001 ;$808E39 | JSL CODE_B9D0B8 ;$808E3C | LDA.l DATA_FF0040 ;$808E40 | STA $16BA ;$808E44 | LDA.l DATA_FF0042 ;$808E47 | STA $16BC ;$808E4B | RTS ;$808E4E / CODE_808E4F: JSR CODE_808E53 ;$808E4F \ RTL ;$808E52 / CODE_808E53: LDA $2E ;$808E53 \ STA $34 ;$808E55 | ASL A ;$808E57 | LDA $30 ;$808E58 | ROL A ;$808E5A | STA $32 ;$808E5B | LDA $2F ;$808E5D | EOR $32 ;$808E5F | STA $2E ;$808E61 | LDA $34 ;$808E63 | STA $30 ;$808E65 | LDA $2E ;$808E67 | RTS ;$808E69 / CODE_808E6A: PHB ;$808E6A \ PHK ;$808E6B | PLB ;$808E6C | STZ $D9 ;$808E6D | LDX #$00D9 ;$808E6F | LDA #$0024 ;$808E72 | TXY ;$808E75 | INY ;$808E76 | MVN $80, $80 ;$808E77 | STZ $0911 ;$808E7A | LDX #$0911 ;$808E7D | LDA #$10C7 ;$808E80 | TXY ;$808E83 | INY ;$808E84 | MVN $80, $80 ;$808E85 | LDA #$0000 ;$808E88 | STA $7E5A12 ;$808E8B | LDX #$5A12 ;$808E8F | LDA #$3B14 ;$808E92 | TXY ;$808E95 | INY ;$808E96 | MVN $7E, $7E ;$808E97 | LDA #$0000 ;$808E9A | STA $7F0000 ;$808E9D | LDX #$0000 ;$808EA1 | LDA #$FFFF ;$808EA4 | TXY ;$808EA7 | INY ;$808EA8 | MVN $7F, $7F ;$808EA9 | PLB ;$808EAC | RTL ;$808EAD / clear_wram_reset: ; \ PLA ;$808EAE |\ Store the return address in scratch ram INC A ;$808EAF | | STA $32 ;$808EB0 |/ LDA #$0000 ;$808EB2 |\ Clear bank 7F using an MVN copy STA $7F0000 ;$808EB5 | | (Clear the first byte the recursive MVN) LDX #$0000 ;$808EB9 | | LDA #$FFFF ;$808EBC | | TXY ;$808EBF | | INY ;$808EC0 | | MVN $7F, $7F ;$808EC1 |/ LDA #$0000 ;$808EC4 |\ Clear bank 7E above $0911 using an MVN copy STA $000911 ;$808EC7 | | LDX #$0911 ;$808ECB | | LDA #$F6ED ;$808ECE | | TXY ;$808ED1 | | INY ;$808ED2 | | MVN $7E, $7E ;$808ED3 |/ STZ $34 ;$808ED6 |\ Clean $7E0034-$7E0906 with an MVN copy LDX #$0034 ;$808ED8 | | LDA #$08D1 ;$808EDB | | TXY ;$808EDE | | INY ;$808EDF | | MVN $80, $80 ;$808EE0 |/ LDX #$01FF ;$808EE3 |\ Reset the stack TXS ;$808EE6 |/ JMP ($0032) ;$808EE7 / Return using address from scratch RAM CODE_808EEA: JSL disable_screen ;$808EEA \ PHK ;$808EEE | PLB ;$808EEF | JSR CODE_808FFB ;$808EF0 | LDA #$0000 ;$808EF3 | JSL CODE_808837 ;$808EF6 | JSR CODE_808F4A ;$808EFA | LDA #CODE_8087D9 ;$808EFD | JML CODE_808C9E ;$808F00 / CODE_808F04: JSL disable_screen ;$808F04 \ PHK ;$808F08 | PLB ;$808F09 | JSR CODE_808FFB ;$808F0A | LDA.l $7E56CE ;$808F0D | AND #$0001 ;$808F11 | STA $060F ;$808F14 | LDA.l $7E56CF ;$808F17 | AND #$0003 ;$808F1B | STA $060D ;$808F1E | CMP #$0002 ;$808F21 | BEQ CODE_808F35 ;$808F24 | JSR CODE_808FDC ;$808F26 | JSL CODE_BBC736 ;$808F29 | CODE_808F2D: ; | LDA.l $0006B1 ;$808F2D | JML CODE_B5CDFD ;$808F31 / CODE_808F35: JSR CODE_808FDC ;$808F35 \ JSL CODE_BBC736 ;$808F38 | JSL CODE_BBC85B ;$808F3C | JSL CODE_BBC736 ;$808F40 | JSL CODE_BBC85B ;$808F44 | BRA CODE_808F2D ;$808F48 / CODE_808F4A: JSR CODE_808FDC ;$808F4A \ LDA $060D ;$808F4D | CMP #$0002 ;$808F50 | BEQ CODE_808F59 ;$808F53 | JSR CODE_808F6C ;$808F55 | RTS ;$808F58 / CODE_808F59: JSL CODE_BBC85B ;$808F59 \ JSR CODE_808F6C ;$808F5D | JSL CODE_BBC85B ;$808F60 | JSR CODE_808F6C ;$808F64 | RTS ;$808F67 / CODE_808F68: JSR CODE_808F6C ;$808F68 \ RTL ;$808F6B / CODE_808F6C: LDA #$0003 ;$808F6C \ STA $D3 ;$808F6F | STA $05BD ;$808F71 | LDA #$0003 ;$808F74 | STA $08A8 ;$808F77 | LDA #$FFFC ;$808F7A | STA $0BA4 ;$808F7D | STZ $08C6 ;$808F80 | STZ $08C2 ;$808F83 | STZ $D5 ;$808F86 | STZ $D7 ;$808F88 | STZ $6C ;$808F8A | STZ $6E ;$808F8C | STZ $08A6 ;$808F8E | STZ $08AA ;$808F91 | STZ $08AC ;$808F94 | STZ $08AE ;$808F97 | STZ $08BC ;$808F9A | STZ $096B ;$808F9D | LDX #$0004 ;$808FA0 | LDA $060B ;$808FA3 | AND #$0002 ;$808FA6 | BEQ CODE_808FAE ;$808FA9 | LDX #$0032 ;$808FAB | CODE_808FAE: ; | STX $08BE ;$808FAE | STX $08C0 ;$808FB1 | LDA #$0080 ;$808FB4 | STA $0512 ;$808FB7 | LDA #$002C ;$808FBA | STA $78 ;$808FBD | LDA $08A4 ;$808FBF | JSL CODE_808837 ;$808FC2 | JSL CODE_B48000 ;$808FC6 | LDX #$0000 ;$808FCA | LDA #$0000 ;$808FCD | CODE_808FD0: ; | STA $7E59B2,x ;$808FD0 | INX ;$808FD4 | INX ;$808FD5 | CPX #$0060 ;$808FD6 | BNE CODE_808FD0 ;$808FD9 | RTS ;$808FDB / CODE_808FDC: LDA #$1234 ;$808FDC \ STA $2E ;$808FDF | STA $30 ;$808FE1 | LDA #$0080 ;$808FE3 | CMP #$0080 ;$808FE6 | BNE CODE_808FF3 ;$808FE9 | LDA #$FBA2 ;$808FEB | CMP #$FFB0 ;$808FEE | BMI CODE_808FFA ;$808FF1 | CODE_808FF3: ; | LDA #$000F ;$808FF3 | JSL CODE_808C13 ;$808FF6 | CODE_808FFA: ; | RTS ;$808FFA / CODE_808FFB: RTS ;$808FFB / LDX $05FD ;$808FFC | LDA $4218 ;$808FFF | CMP.l DATA_FE9388,x ;$809002 | BNE CODE_809012 ;$809006 | LDA.l DATA_FE938A,x ;$809008 | INC A ;$80900C | STA DATA_FE938A,x ;$80900D | RTL ;$809011 / CODE_809012: INX ;$809012 \ INX ;$809013 | INX ;$809014 | INX ;$809015 | STA DATA_FE9388,x ;$809016 | LDA #$0001 ;$80901A | STA DATA_FE938A,x ;$80901D | STX $05FD ;$809021 | RTL ;$809024 / CODE_809025: PHK ;$809025 \ PLB ;$809026 | LDA $0502 ;$809027 | PHA ;$80902A | LDA $0506 ;$80902B | PHA ;$80902E | LDA $4218 ;$80902F | TAX ;$809032 | EOR $0502 ;$809033 | AND $4218 ;$809036 | STA $0506 ;$809039 | TXA ;$80903C | EOR $0502 ;$80903D | AND $0502 ;$809040 | STA $050A ;$809043 | STX $0502 ;$809046 | LDA $0502 ;$809049 | TAX ;$80904C | PLA ;$80904D | STA $0506 ;$80904E | PLA ;$809051 | STA $0502 ;$809052 | TXA ;$809055 | AND #$D000 ;$809056 | BNE CODE_8090AA ;$809059 | LDA $05FD ;$80905B | CMP $0603 ;$80905E | BPL CODE_8090A0 ;$809061 | PHB ;$809063 | PHK ;$809064 | PLB ;$809065 | LDA $0601 ;$809066 | STA $36 ;$809069 | LDA #$00FE ;$80906B | STA $38 ;$80906E | LDY $05FD ;$809070 | LDA $05FF ;$809073 | BNE CODE_809088 ;$809076 | INY ;$809078 | INY ;$809079 | INY ;$80907A | INY ;$80907B | STY $05FD ;$80907C | INY ;$80907F | INY ;$809080 | LDA [$36],y ;$809081 | DEY ;$809083 | DEY ;$809084 | STA $05FF ;$809085 | CODE_809088: ; | DEC $05FF ;$809088 | LDA [$36],y ;$80908B | STA $32 ;$80908D | LDA $32 ;$80908F | TAX ;$809091 | EOR $0502 ;$809092 | AND $32 ;$809095 | STA $0506 ;$809097 | TXA ;$80909A | STA $0502 ;$80909B | PLB ;$80909E | RTL ;$80909F / CODE_8090A0: JSR CODE_8090B1 ;$8090A0 \ LDA #CODE_8086F6 ;$8090A3 | JML CODE_808C9E ;$8090A6 / CODE_8090AA: JSR CODE_8090B1 ;$8090AA \ JML CODE_80A5F1 ;$8090AD / CODE_8090B1: LDA #$8000 ;$8090B1 \ TRB $08C4 ;$8090B4 | STZ $05FB ;$8090B7 | RTS ;$8090BA / CODE_8090BB: JSL disable_screen ;$8090BB \ LDA #$0006 ;$8090BF | STA $000689 ;$8090C2 | LDA #CODE_808D02 ;$8090C6 | JML CODE_808C80 ;$8090C9 / reset_controller_state: STZ $060F ;$8090CD \ STZ $060D ;$8090D0 | LDA #$0001 ;$8090D3 | STA $08A2 ;$8090D6 | RTS ;$8090D9 / init_rareware_logo: JSR reset_controller_state ;$8090DA \ LDA #$002C ;$8090DD |\ STA $78 ;$8090E0 |/ JSR init_registers ;$8090E2 | Reset registers to a known state JSR clear_VRAM ;$8090E5 | Nuke VRAM STZ $2A ;$8090E8 | Reset effective frame counter LDA #$AA55 ;$8090EA |\ TODO: figure out $2E/30 use. STA $2E ;$8090ED | | LDA #$3765 ;$8090EF | | STA $30 ;$8090F2 |/ LDA #$0011 ;$8090F4 |\ Load Intro fanfare sound JSL set_song_simple_entry ;$8090F7 |/ SEP #$20 ;$8090FB | LDA #$01 ;$8090FD |\ Enable auto polling STA $4200 ;$8090FF |/ LDA #$8F ;$809102 |\ Enable F-Blank STA $2100 ;$809104 |/ STZ $2101 ;$809107 | User 8x8 sprites with sprite tile data at $0000 STZ $2133 ;$80910A | Turn off special video modes REP #$30 ;$80910D | LDA #$0003 ;$80910F |\ Set background mode to 3 STA $2105 ;$809112 |/ LDA #$0102 ;$809115 |\ Set layer 2 on the main screen, layer 1 on the subscreen STA $212C ;$809118 |/ LDA #$0202 ;$80911B |\ Enable color math on layer 2, add subscreen to mainscreen STA $2130 ;$80911E |/ LDA #$0364 ;$809121 |\ Set layer 1,2,3,4 tile data address STA $210B ;$809124 |/ Addresses: $8000, $C000, $6000, $0000 LDA #$787C ;$809127 |\ Set layer 1 and 2 tile map address STA $2107 ;$80912A |/ Addresses: $F800, $F000 LDA #$0070 ;$80912D |\ Set layer 1 and 2 tile map address STA $2109 ;$809130 |/ Addresses: $E000, $0000 STZ $2116 ;$809133 | Zero VRAM address LDX #$4000 ;$809136 | Load number of VRAM words to clear (minus 1...) .clear_VRAM ; | STZ $2118 ;$809139 |\ Clear VRAM byte DEX ;$80913C | | Decrement counter BNE .clear_VRAM ;$80913D |/ Loop until done LDX #DATA_FA4C3E ;$80913F |\ Decompress mode 7 tile data to $7F0000 LDY.w #DATA_FA4C3E>>16 ;$809142 | | LDA #$0000 ;$809145 | | JSL decompress_data ;$809148 |/ STZ $2116 ;$80914C |\ Zero VRAM address and reset index for upload. SEP #$20 ;$80914F | | LDX #$0000 ;$809151 |/ .mode_7_tile_data_upload ; |\ TXA ;$809154 | |\ Useless, due to the load immediately after. LSR A ;$809155 | | | LSR A ;$809156 | | | LSR A ;$809157 | | | LSR A ;$809158 | | | LSR A ;$809159 | | | LSR A ;$80915A | |/ LDA.l $7F0000,x ;$80915B | |\ Copy byte to VRAM STA $2119 ;$80915F | |/ INX ;$809162 | | Increment byte counter CPX #$3400 ;$809163 | | Check if we've uploaded $3400 bytes BNE .mode_7_tile_data_upload ;$809166 |/ Branch until we have REP #$20 ;$809168 | LDA #$038B ;$80916A |\ Load initial VRAM address for the mode 7 tilemap STA $32 ;$80916D |/ LDA #DATA_F547BC ;$80916F |\ Load pointer to the mode 7 tilemap LDX.w #DATA_F547BC>>16 ;$809172 |/ JSR upload_mode_7_tilemap ;$809175 | Upload mode 7 tilemap LDA #$0100 ;$809178 |\ Set mode 7 X/Y scale to $0100 (100%) STA $7C ;$80917B | | STA $7A ;$80917D |/ SEP #$20 ;$80917F | LDA #$05 ;$809181 |\ Set mode 7 X center to $0105 STA $211F ;$809183 | | LDA #$01 ;$809186 | | STA $211F ;$809188 |/ LDA #$D7 ;$80918B |\ Set mode 7 Y center to $00D7 STA $2120 ;$80918D | | STZ $2120 ;$809190 |/ LDA #$80 ;$809193 |\ Fill empty mode 7 space with transparency STA $211A ;$809195 |/ REP #$20 ;$809198 | LDA #$7400 ;$80919A |\ Clear $800 of VRAM at $E800 JSR clear_VRAM_block ;$80919D |/ LDA #$7000 ;$8091A0 |\ Clear $800 of VRAM at $E000 JSR clear_VRAM_block ;$8091A3 |/ LDA #$7800 ;$8091A6 |\ Clear $800 of VRAM at $F000 JSR clear_VRAM_block ;$8091A9 |/ LDA #$7C00 ;$8091AC |\ Clear $800 of VRAM at $F800 JSR clear_VRAM_block ;$8091AF |/ LDX #DATA_F52FC7 ;$8091B2 |\ Load pointer to Nintendo presents layer 1 tilemap LDY.w #DATA_F52FC7>>16 ;$8091B5 | | LDA #$0000 ;$8091B8 | | JSL decompress_data ;$8091BB |/ Decompress the tilemap LDA #$0000 ;$8091BF |\ Patch decompressed data, removes a couple of garbage tiles STA $7F0100 ;$8091C2 | | STA $7F013E ;$8091C6 |/ LDA #$74A0 ;$8091CA |\ Set VRAM address to $E940 STA $2116 ;$8091CD |/ LDX #$007F ;$8091D0 |\ Upload $0340 bytes from $7F0000 to VRAM address $E940 LDA #$0000 ;$8091D3 | | LDY #$0340 ;$8091D6 | | JSL DMA_to_VRAM ;$8091D9 |/ DMA the payload LDX #DATA_F80D10 ;$8091DD |\ Load pointer to mini Rare logo layer 1 tilemap LDY.w #DATA_F80D10>>16 ;$8091E0 | | LDA #$0000 ;$8091E3 | | JSL decompress_data ;$8091E6 |/ Decompress the tilemap LDA #$76BA ;$8091EA |\ Set VRAM address to $ED74 STA $2116 ;$8091ED |/ LDX #$007F ;$8091F0 |\ Upload $00C8 bytes from $7F0000 to VRAM address $ED74 LDA #$0000 ;$8091F3 | | LDY #$00C8 ;$8091F6 | | JSL DMA_to_VRAM ;$8091F9 |/ DMA the payload LDX #DATA_F50004 ;$8091FD |\ LDY.w #DATA_F50004>>16 ;$809200 | | LDA #$0000 ;$809203 | | JSL decompress_data ;$809206 |/ LDA #$78E0 ;$80920A |\ Set VRAM address to $F1C0 STA $2116 ;$80920D |/ LDX #$007F ;$809210 |\ LDA #$0000 ;$809213 | | LDY #$0380 ;$809216 | | JSL DMA_to_VRAM ;$809219 |/ LDX #DATA_F56AC9 ;$80921D |\ Upload $0380 bytes from $7F0000 to VRAM address $F1C0 LDY.w #DATA_F56AC9>>16 ;$809220 | | LDA #$0000 ;$809223 | | JSL decompress_data ;$809226 |/ DMA the payload LDA #$7CE0 ;$80922A |\ Set VRAM address to $F9C0 STA $2116 ;$80922D |/ LDX #$007F ;$809230 |\ Upload $0380 bytes from $7F0000 to VRAM address $F9C0 LDA #$0000 ;$809233 | | LDY #$0380 ;$809236 | | JSL DMA_to_VRAM ;$809239 |/ DMA the payload LDX #DATA_F55D4A ;$80923D |\ LDY.w #DATA_F55D4A>>16 ;$809240 | | LDA #$0000 ;$809243 | | JSL decompress_data ;$809246 |/ LDA #$4000 ;$80924A |\ Set VRAM address to $8000 STA $2116 ;$80924D |/ LDX #$007F ;$809250 |\ Upload $2400 bytes from $7F0000 to VRAM address $8000 LDA #$0000 ;$809253 | | LDY #$2400 ;$809256 | | JSL DMA_to_VRAM ;$809259 |/ DMA the payload LDX #DATA_F8063E ;$80925D |\ LDY.w #DATA_F8063E>>16 ;$809260 | | LDA #$0000 ;$809263 | | JSL decompress_data ;$809266 |/ LDA #$6000 ;$80926A |\ Set VRAM address to $C000 STA $2116 ;$80926D |/ LDX #$007F ;$809270 |\ Upload $1000 bytes from $7F0000 to VRAM address $C000 LDA #$0000 ;$809273 | | LDY #$1000 ;$809276 | | JSL DMA_to_VRAM ;$809279 |/ DMA the payload LDX #DATA_D9F7C9 ;$80927D |\ Load pointer to Nintendo presents screen layer 3 tilemap LDY.w #DATA_D9F7C9>>16 ;$809280 | | LDA #$0000 ;$809283 | | JSL decompress_data ;$809286 |/ Decompress the tilemap LDA #$7000 ;$80928A |\ Set VRAM address to $E000 STA $2116 ;$80928D |/ LDX #$007F ;$809290 |\ Upload $800 bytes from $7F0000 to VRAM address $E000 LDA #$0000 ;$809293 | | LDY #$0800 ;$809296 | | JSL DMA_to_VRAM ;$809299 |/ DMA the payload LDX #DATA_F5325B ;$80929D |\ Decompress the Nintendo presents logo LDY.w #DATA_F5325B>>16 ;$8092A0 | | LDA #$0000 ;$8092A3 | | JSL decompress_data ;$8092A6 |/ LDX #DATA_EB2B84 ;$8092AA |\ Decompress tilemap for Nintendo presents sparkles LDY.w #DATA_EB2B84>>16 ;$8092AD | | (This overwrites the Nintendo presents logo) LDA #$0000 ;$8092B0 | | JSL decompress_data ;$8092B3 |/ LDX #DATA_F5325B ;$8092B7 |\ Redecompress the Nintendo presents logo LDY.w #DATA_F5325B>>16 ;$8092BA | | This time Decompress over the Sparkles LDA #$0500 ;$8092BD | | JSL decompress_data ;$8092C0 |/ LDA #$000F ;$8092C4 |\ Set the screen brightness mirror to full brightness STA $0512 ;$8092C7 |/ LDA #$0000 ;$8092CA | Value to initialize scratch RAM and palette mirrors to LDX #$01FE ;$8092CD | Load number of bytes minus two to clear CODE_8092D0: ; |\ Clear scratch RAM STA $7E8928,x ;$8092D0 | | DEX ;$8092D4 | | DEX ;$8092D5 | | BPL CODE_8092D0 ;$8092D6 |/ Continue to loop until all is cleared LDX #$001C ;$8092D8 | Load number of bytes minus two to clear .clear_scratch_RAM ; |\ Clear scratch RAM STZ $32,x ;$8092DB | | DEX ;$8092DD | | DEX ;$8092DE | | BPL .clear_scratch_RAM ;$8092DF |/ Continue to loop until all is cleared LDA #$007F ;$8092E1 |\ For $7F scanlines set the bg mode to 3 STA $7E8012 ;$8092E4 | | LDA #$0003 ;$8092E8 | | STA $7E8013 ;$8092EB | | LDA #$0018 ;$8092EF | | For $18 scanlines set the bg mode to 3 STA $7E8014 ;$8092F2 | | LDA #$0003 ;$8092F6 | | STA $7E8015 ;$8092F9 | | For $3 scanlines set the bg mode to 3 STA $7E8016 ;$8092FD | | STA $7E8017 ;$809301 | | LDA #$0000 ;$809305 | | Terminate HDMA table STA $7E8018 ;$809308 |/ LDA #$007F ;$80930C |\ For $7F scanlines enable color math on layer 2 STA $7E8022 ;$80930F | | LDA #$0002 ;$809313 | | STA $7E8023 ;$809316 | | LDA #$0018 ;$80931A | | For $18 scanlines enable color math on layer 2 STA $7E8024 ;$80931D | | LDA #$0002 ;$809321 | | STA $7E8025 ;$809324 | | For $2 scanlines enable color math on layer 2 STA $7E8026 ;$809328 | | STA $7E8027 ;$80932C | | LDA #$0000 ;$809330 | | Terminate HDMA table STA $7E8028 ;$809333 |/ LDA #$007F ;$809337 |\ For $7F scanlines set layer 1 on the subscreen STA $7E8032 ;$80933A | | LDA #$0001 ;$80933E | | STA $7E8033 ;$809341 | | LDA #$0018 ;$809345 | | For $18 scanlines set layer 1 on the subscreen STA $7E8034 ;$809348 | | LDA #$0001 ;$80934C | | STA $7E8035 ;$80934F | | For $1 scanlines set layer 1 on the subscreen STA $7E8036 ;$809353 | | STA $7E8037 ;$809357 | | LDA #$0000 ;$80935B | | Terminate HDMA table STA $7E8038 ;$80935E |/ SEP #$20 ;$809362 |\ LDX #$0500 ;$809364 | |\ Set up write once HDMA with $2105 destination STX $4320 ;$809367 | |/ LDX #$8012 ;$80936A | |\ Set HDMA source to $7E8012 STX $4322 ;$80936D | | | LDA #$7E ;$809370 | | | STA $4324 ;$809372 | |/ STZ $4327 ;$809375 |_| Zero indirect HDMA bank byte LDX #$3100 ;$809378 | |\Set up write once HDMA with $2131 destination STX $4330 ;$80937B | |/ LDX #$8022 ;$80937E | |\ Set HDMA source to $7E8022 STX $4332 ;$809381 | | | LDA #$7E ;$809384 | | | STA $4334 ;$809386 | |/ STZ $4337 ;$809389 |_| Zero indirect HDMA bank byte LDX #$2D00 ;$80938C | |\ Set up write once HDMA with $212D destination STX $4340 ;$80938F | |/ LDX #$8032 ;$809392 | |\ Set HDMA source to $7E8032 STX $4342 ;$809395 | | | LDA #$7E ;$809398 | | | STA $4344 ;$80939A | |/ STZ $4347 ;$80939D |/ Zero indirect HDMA bank byte LDA $4211 ;$8093A0 | Read IRQ flag to clear LDA #$80 ;$8093A3 |\ Disable sprite 0 priority STA $2103 ;$8093A5 |/ LDA #$01 ;$8093A8 |\ Enable fast ROM STA $420D ;$8093AA |/ REP #$20 ;$8093AD | INC $0993 ;$8093AF | LDA #run_rareware_logo ;$8093B2 | Load NMI pointer for Rareware logo JMP CODE_80B0EE ;$8093B5 / Set NMI pointer and wait for NMI run_rareware_logo: ; \ LDX #$01FF ;$8093B8 |\ Reset the stack TXS ;$8093BB |/ LDA #$8928 ;$8093BC |\ Set DMA source word $8928 STA $4312 ;$8093BF | | STA $4318 ;$8093C2 |/ LDA #$0200 ;$8093C5 |\ Set DMA size to 512 bytes STA $4315 ;$8093C8 |/ LDA #$2200 ;$8093CB |\ Set DMA destination to $2122 with write once, one register STA $4310 ;$8093CE |/ SEP #$20 ;$8093D1 | LDA #$7E ;$8093D3 |\ DMA source bank to $7E STA $4314 ;$8093D5 |/ STZ $2121 ;$8093D8 | Set CGRAM destination address to zero LDA #$02 ;$8093DB |\ Run palette DMA STA $420B ;$8093DD |/ REP #$20 ;$8093E0 | LDA #$1C00 ;$8093E2 |\ Enable HDMA on channels 3, 4, 5 STA $420B ;$8093E5 |/ LDA $2A ;$8093E8 |\ Check if the frame count is less than $E0 CMP #$00E0 ;$8093EA | | BCC .skip_mode_7_update ;$8093ED |/ If so, skip mode 7 updates JSL update_mode_7 ;$8093EF | Run mode 7 update. .skip_mode_7_update ; | LDA $2A ;$8093F3 |\ If the frame count is not exactly $E0 CMP #$00E0 ;$8093F5 | | BNE .skip_mode_7_enable ;$8093F8 |/ Skip enabling mode 7 SEP #$20 ;$8093FA | LDA #$07 ;$8093FC |\ Set background mode HDMA values to 7 STA $7E8013 ;$8093FE | | STA $7E8015 ;$809402 | | STA $7E8017 ;$809406 |/ LDA #$74 ;$80940A |\ Place layer 1 tilemap at $E800 in VRAM STA $2107 ;$80940C |/ LDA #$01 ;$80940F |\ Put layer 1 on the pain screen STA $212C ;$809411 |/ REP #$20 ;$809414 | .skip_mode_7_enable ; | LDA $2A ;$809416 |\ If the frame count is not exactly $0110 CMP #$0110 ;$809418 | | BNE CODE_809430 ;$80941B |/ Skip uploading the first half of Nintendo Presents LDA #$4000 ;$80941D |\ Set VRAM address to $8000 STA $2116 ;$809420 |/ LDX #$007F ;$809423 |\ Upload $1440 bytes from $7F0500 to VRAM address $8000 LDA #$0500 ;$809426 | | The first half of tiledata for the Nintendo Presents LDY #$1440 ;$809429 | | JSL DMA_to_VRAM ;$80942C |/ DMA the payload CODE_809430: ; | LDA $2A ;$809430 |\ If the frame count is not exactly $0111 CMP #$0111 ;$809432 | | BNE CODE_809458 ;$809435 |/ Skip uploading the second half of Nintendo Presents LDA #$4A20 ;$809437 |\ Set VRAM address to $9440 STA $2116 ;$80943A |/ LDX #$007F ;$80943D |\ Upload $1440 bytes from $7F1940 to VRAM address $9440 LDA #$1940 ;$809440 | | The second half of tiledata for the Nintendo Presents LDY #$1440 ;$809443 | | JSL DMA_to_VRAM ;$809446 |/ DMA the payload LDA #$0000 ;$80944A | LDX #$001E ;$80944D | Number of bytes to clear minus 2 .clear_palette ; | STA $7E8928,x ;$809450 |\ Clear palette DEX ;$809454 | | DEX ;$809455 | | BNE .clear_palette ;$809456 |/ Loop until all clear CODE_809458: ; | LDA $2A ;$809458 |\ If the frame count is not exactly $0112 CMP #$0112 ;$80945A | | BNE CODE_8094A0 ;$80945D |/ Skip uploading the sparkle tilemap LDA #$3000 ;$80945F |\ Set VRAM address to $6000 STA $2116 ;$809462 |/ LDX #$007F ;$809465 |\ Upload $500 bytes from $7F0000 to VRAM address $6000 LDA #$0000 ;$809468 | | The source is the tiledata for the sparkles LDY #$0500 ;$80946B | | JSL DMA_to_VRAM ;$80946E |/ DMA the payload SEP #$20 ;$809472 | LDA #$01 ;$809474 |\ Use mode 1 for $97 scanlines STA $7E8013 ;$809476 | | STA $7E8015 ;$80947A |/ LDA #$05 ;$80947E |\ Use mode 5 for the remainder of the screen STA $7E8017 ;$809480 |/ LDA #$21 ;$809484 |\ Enable color math on layer 1 and backgroup STA $7E8023 ;$809486 | | STA $7E8025 ;$80948A |/ LDA #$04 ;$80948E |\ Place layer 3 on the subscreen STA $7E8033 ;$809490 | | STA $7E8035 ;$809494 |/ LDA #$00 ;$809498 |\ Terminate color math HDMA STA $7E8027 ;$80949A |/ REP #$20 ;$80949E | CODE_8094A0: ; | SEP #$20 ;$8094A0 | LDA $098F ;$8094A2 |\ Set Layer 3 X position STA $2111 ;$8094A5 | | STZ $2111 ;$8094A8 |/ LDA $0991 ;$8094AB |\ Set Layer 3 Y position STA $2112 ;$8094AE | | STZ $2112 ;$8094B1 |/ LDA $0512 ;$8094B4 |\ Set screen brightness STA $2100 ;$8094B7 |/ REP #$20 ;$8094BA | LDA $2A ;$8094BC |\ Subtract $E0 from the frame counter SEC ;$8094BE | | This results in frame counter relative to mode 7 start SBC #$00E0 ;$8094BF |/ CMP #$002F ;$8094C2 | BCS CODE_8094DC ;$8094C5 | BIT #$0020 ;$8094C7 | BEQ CODE_8094CF ;$8094CA | EOR #$003F ;$8094CC | CODE_8094CF: ; | LSR A ;$8094CF | STA $32 ;$8094D0 | LSR A ;$8094D2 | ADC $32 ;$8094D3 | CLC ;$8094D5 | ADC $7C ;$8094D6 | STA $7C ;$8094D8 | STA $7A ;$8094DA | CODE_8094DC: ; | JSR CODE_80B061 ;$8094DC | INC $2A ;$8094DF | Increment the frame counter LDA $2A ;$8094E1 |\ Check if this is the first frame of the logo CMP #$0001 ;$8094E3 | | BNE CODE_8094EC ;$8094E6 |/ JSL CODE_B58009 ;$8094E8 | CODE_8094EC: ; | LDA $2A ;$8094EC | CMP #$00F0 ;$8094EE | BNE CODE_809502 ;$8094F1 | LDX #$003E ;$8094F3 | CODE_8094F6: ; | LDA.l $7E8928,x ;$8094F6 | STA $7E89C8,x ;$8094FA | DEX ;$8094FE | DEX ;$8094FF | BPL CODE_8094F6 ;$809500 | CODE_809502: ; | LDA $2A ;$809502 | SEC ;$809504 | SBC #$0121 ;$809505 | CMP #$005B ;$809508 | BCC CODE_809510 ;$80950B | JMP CODE_8095B3 ;$80950D / CODE_809510: DEC $0993 ;$809510 \ BPL CODE_809528 ;$809513 | JSR CODE_80B13E ;$809515 | AND #$0060 ;$809518 | SEC ;$80951B | SBC #$0040 ;$80951C | STA $098D ;$80951F | LDA #$0008 ;$809522 | STA $0993 ;$809525 | CODE_809528: ; | LDA $0993 ;$809528 | BIT #$FFE0 ;$80952B | BEQ CODE_809533 ;$80952E | JMP CODE_8095B3 ;$809530 / CODE_809533: BIT #$0007 ;$809533 \ BNE CODE_809554 ;$809536 | JSR CODE_80B13E ;$809538 | AND #$003F ;$80953B | CLC ;$80953E | ADC $098D ;$80953F | STA $098F ;$809542 | SEC ;$809545 | SBC $098D ;$809546 | EOR #$00FF ;$809549 | LSR A ;$80954C | SEC ;$80954D | SBC #$0050 ;$80954E | STA $0991 ;$809551 | CODE_809554: ; | SEP #$20 ;$809554 | LDA $0993 ;$809556 | ASL A ;$809559 | ASL A ;$80955A | ASL A ;$80955B | ASL A ;$80955C | ASL A ;$80955D | BPL CODE_809563 ;$80955E | EOR #$FF ;$809560 | INC A ;$809562 | CODE_809563: ; | STA $32 ;$809563 | LSR A ;$809565 | LSR A ;$809566 | CLC ;$809567 | ADC $32 ;$809568 | STA $211B ;$80956A | STZ $211B ;$80956D | LDY #$0000 ;$809570 | TYX ;$809573 | CODE_809574: ; | SEP #$20 ;$809574 | LDA DATA_80B12E,y ;$809576 | STA $211C ;$809579 | LDA $2135 ;$80957C | REP #$20 ;$80957F | AND #$001F ;$809581 | STA $32 ;$809584 | ASL A ;$809586 | ASL A ;$809587 | ASL A ;$809588 | ASL A ;$809589 | ASL A ;$80958A | STA $34 ;$80958B | ASL A ;$80958D | ASL A ;$80958E | ASL A ;$80958F | ASL A ;$809590 | STA $36 ;$809591 | ASL A ;$809593 | CLC ;$809594 | ADC $36 ;$809595 | CMP #$7C00 ;$809597 | BCC CODE_80959F ;$80959A | LDA #$7C00 ;$80959C | CODE_80959F: ; | AND #$7C00 ;$80959F | CLC ;$8095A2 | ADC $34 ;$8095A3 | ADC $32 ;$8095A5 | STA $7E8928,x ;$8095A7 | INY ;$8095AB | INX ;$8095AC | INX ;$8095AD | CPY #$0010 ;$8095AE | BNE CODE_809574 ;$8095B1 | CODE_8095B3: ; | LDA $2A ;$8095B3 | SEC ;$8095B5 | SBC #$0118 ;$8095B6 | CMP #$0068 ;$8095B9 | BCC CODE_8095C1 ;$8095BC | JMP CODE_80964C ;$8095BE / CODE_8095C1: XBA ;$8095C1 \ LSR A ;$8095C2 | LSR A ;$8095C3 | LSR A ;$8095C4 | CMP #$0CFF ;$8095C5 | BCC CODE_8095CD ;$8095C8 | LDA #$0CFF ;$8095CA | CODE_8095CD: ; | CMP #$0500 ;$8095CD | BCC CODE_8095D6 ;$8095D0 | SEC ;$8095D2 | SBC #$0400 ;$8095D3 | CODE_8095D6: ; | CMP #$0500 ;$8095D6 | BCC CODE_8095DF ;$8095D9 | SEC ;$8095DB | SBC #$0400 ;$8095DC | CODE_8095DF: ; | CMP #$0300 ;$8095DF | BCC CODE_8095EB ;$8095E2 | EOR #$07FF ;$8095E4 | SEC ;$8095E7 | SBC #$0200 ;$8095E8 | CODE_8095EB: ; | SEP #$20 ;$8095EB | STA $211B ;$8095ED | XBA ;$8095F0 | STA $211B ;$8095F1 | REP #$20 ;$8095F4 | PEA $8080 ;$8095F6 | PLB ;$8095F9 | LDY #$0002 ;$8095FA | LDX #$0002 ;$8095FD | CODE_809600: ; | STZ $32 ;$809600 | SEP #$20 ;$809602 | LDA DATA_80B317,x ;$809604 | AND #$1F ;$809607 | STA $211C ;$809609 | LDA $2135 ;$80960C | CMP #$1F ;$80960F | BCC CODE_809615 ;$809611 | LDA #$1F ;$809613 | CODE_809615: ; | STA $32 ;$809615 | REP #$20 ;$809617 | AND #$001F ;$809619 | XBA ;$80961C | LSR A ;$80961D | LSR A ;$80961E | LSR A ;$80961F | TSB $32 ;$809620 | LDA DATA_80B318,x ;$809622 | AND #$001F ;$809625 | STA $211C ;$809628 | LDA $2135 ;$80962B | CMP #$001F ;$80962E | BCC CODE_809636 ;$809631 | LDA #$001F ;$809633 | CODE_809636: ; | REP #$20 ;$809636 | AND #$001F ;$809638 | XBA ;$80963B | ASL A ;$80963C | ASL A ;$80963D | ORA $32 ;$80963E | STA $7E8968,x ;$809640 | INX ;$809644 | INX ;$809645 | CPX #$0060 ;$809646 | BNE CODE_809600 ;$809649 | PLB ;$80964B | CODE_80964C: ; | LDX #$00A0 ;$80964C | LDA $2A ;$80964F | SEC ;$809651 | SBC #$0110 ;$809652 | CMP #$0040 ;$809655 | BCS CODE_80965F ;$809658 | CMP #$0008 ;$80965A | BCS CODE_809670 ;$80965D | CODE_80965F: ; | LDX #$0000 ;$80965F | LDA $2A ;$809662 | SEC ;$809664 | SBC #$0078 ;$809665 | CMP #$0029 ;$809668 | BCC CODE_809670 ;$80966B | JMP CODE_8096FB ;$80966D / CODE_809670: ASL A ;$809670 \ ASL A ;$809671 | ASL A ;$809672 | ASL A ;$809673 | ASL A ;$809674 | CMP #$04FF ;$809675 | BCC CODE_80967D ;$809678 | LDA #$04FF ;$80967A | CODE_80967D: ; | CMP #$0300 ;$80967D | BCC CODE_809689 ;$809680 | EOR #$07FF ;$809682 | SEC ;$809685 | SBC #$0200 ;$809686 | CODE_809689: ; | SEP #$20 ;$809689 | STA $211B ;$80968B | XBA ;$80968E | STA $211B ;$80968F | REP #$20 ;$809692 | PEA $8080 ;$809694 | PLB ;$809697 | LDY #$0000 ;$809698 | CODE_80969B: ; | STZ $32 ;$80969B | SEP #$20 ;$80969D | LDA DATA_80B377,y ;$80969F | AND #$1F ;$8096A2 | STA $211C ;$8096A4 | LDA $2135 ;$8096A7 | CMP #$1F ;$8096AA | BCC CODE_8096B0 ;$8096AC | LDA #$1F ;$8096AE | CODE_8096B0: ; | STA $32 ;$8096B0 | LDA DATA_80B378,y ;$8096B2 | AND #$1F ;$8096B5 | STA $211C ;$8096B7 | LDA $2135 ;$8096BA | CMP #$1F ;$8096BD | BCC CODE_8096C3 ;$8096BF | LDA #$1F ;$8096C1 | CODE_8096C3: ; | REP #$20 ;$8096C3 | AND #$001F ;$8096C5 | ASL A ;$8096C8 | ASL A ;$8096C9 | ASL A ;$8096CA | ASL A ;$8096CB | ASL A ;$8096CC | TSB $32 ;$8096CD | SEP #$20 ;$8096CF | LDA DATA_80B379,y ;$8096D1 | AND #$1F ;$8096D4 | STA $211C ;$8096D6 | LDA $2135 ;$8096D9 | CMP #$1F ;$8096DC | BCC CODE_8096E2 ;$8096DE | LDA #$1F ;$8096E0 | CODE_8096E2: ; | REP #$20 ;$8096E2 | AND #$001F ;$8096E4 | XBA ;$8096E7 | ASL A ;$8096E8 | ASL A ;$8096E9 | ORA $32 ;$8096EA | STA $7E8928,x ;$8096EC | INX ;$8096F0 | INX ;$8096F1 | INY ;$8096F2 | INY ;$8096F3 | INY ;$8096F4 | CPY #$0060 ;$8096F5 | BNE CODE_80969B ;$8096F8 | PLB ;$8096FA | CODE_8096FB: ; | LDA $2A ;$8096FB | CMP #$0072 ;$8096FD | BCS CODE_80973E ;$809700 | AND #$00FF ;$809702 | ASL A ;$809705 | TAX ;$809706 | CPX #$00E0 ;$809707 | BCS CODE_809717 ;$80970A | LDA #$7FFF ;$80970C | STA $7E8968,x ;$80970F | STA $7E8A48,x ;$809713 | CODE_809717: ; | DEX ;$809717 | DEX ;$809718 | CPX #$00E0 ;$809719 | BCS CODE_809729 ;$80971C | LDA #$7E10 ;$80971E | STA $7E8968,x ;$809721 | STA $7E8A48,x ;$809725 | CODE_809729: ; | DEX ;$809729 | DEX ;$80972A | CPX #$00E0 ;$80972B | BCS CODE_80973E ;$80972E | LDA #$03E0 ;$809730 | STA $7E8968,x ;$809733 | LDA #$01C0 ;$809737 | STA $7E8A48,x ;$80973A | CODE_80973E: ; | LDA $2A ;$80973E | SEC ;$809740 | SBC #$0098 ;$809741 | CMP #$0040 ;$809744 | BCS CODE_80978E ;$809747 | AND #$007F ;$809749 | ASL A ;$80974C | ASL A ;$80974D | ASL A ;$80974E | TAX ;$80974F | LDA #$7FFF ;$809750 | STA $7E8968,x ;$809753 | DEX ;$809757 | DEX ;$809758 | BMI CODE_80978E ;$809759 | LDA #$4210 ;$80975B | STA $7E8968,x ;$80975E | DEX ;$809762 | DEX ;$809763 | BMI CODE_80978E ;$809764 | LDA #$0000 ;$809766 | STA $7E8968,x ;$809769 | DEX ;$80976D | DEX ;$80976E | BMI CODE_80978E ;$80976F | LDA #$0000 ;$809771 | STA $7E8968,x ;$809774 | DEX ;$809778 | DEX ;$809779 | BMI CODE_80978E ;$80977A | LDA #$0000 ;$80977C | STA $7E8968,x ;$80977F | DEX ;$809783 | DEX ;$809784 | BMI CODE_80978E ;$809785 | LDA #$0000 ;$809787 | STA $7E8968,x ;$80978A | CODE_80978E: ; | LDA $090F ;$80978E | BEQ CODE_8097A4 ;$809791 | LDA $0512 ;$809793 | CMP #$000F ;$809796 | BNE CODE_8097A4 ;$809799 | LDA.l $000506 ;$80979B | BIT #$D0C0 ;$80979F | BNE CODE_8097AB ;$8097A2 | CODE_8097A4: ; | LDA $2A ;$8097A4 | CMP #$01A0 ;$8097A6 | BNE CODE_8097B4 ;$8097A9 | CODE_8097AB: ; | SEP #$20 ;$8097AB | LDA #$82 ;$8097AD | STA $0513 ;$8097AF | REP #$20 ;$8097B2 | CODE_8097B4: ; | LDA $0512 ;$8097B4 | BNE CODE_8097C7 ;$8097B7 | LDA $2A ;$8097B9 | CMP #$01A0 ;$8097BB | BCS CODE_8097C4 ;$8097BE | JML CODE_8085EF ;$8097C0 / CODE_8097C4: JMP CODE_80B5FA ;$8097C4 / CODE_8097C7: JSR CODE_808C3D ;$8097C7 \ CODE_8097CA: ; | WAI ;$8097CA | BRA CODE_8097CA ;$8097CB / CODE_8097CD: JSL disable_screen ;$8097CD \ PHK ;$8097D1 | PLB ;$8097D2 | JSR clear_VRAM ;$8097D3 | JSL init_registers_wrapper ;$8097D6 | JSL CODE_808E6A ;$8097DA | JSL CODE_8088AB ;$8097DE | STZ $060B ;$8097E2 | LDX #$001E ;$8097E5 | LDA #$0000 ;$8097E8 | CODE_8097EB: ; | STA $32,x ;$8097EB | DEX ;$8097ED | DEX ;$8097EE | BPL CODE_8097EB ;$8097EF | LDA #$0001 ;$8097F1 | STA $2105 ;$8097F4 | LDA #$0213 ;$8097F7 | STA $212C ;$8097FA | LDA #$0014 ;$8097FD | STA $210B ;$809800 | LDA #$FF68 ;$809803 | STA $2126 ;$809806 | SEP #$20 ;$809809 | LDA #$30 ;$80980B | STA $2125 ;$80980D | LDA #$E8 ;$809810 | STA $2132 ;$809812 | REP #$20 ;$809815 | LDA #$4100 ;$809817 | STA $2130 ;$80981A | LDA #$7C76 ;$80981D | STA $2107 ;$809820 | STZ $210D ;$809823 | STZ $210D ;$809826 | SEP #$20 ;$809829 | LDA #$FF ;$80982B | STA $210E ;$80982D | STA $210E ;$809830 | STA $2110 ;$809833 | STA $2110 ;$809836 | STZ $210F ;$809839 | STZ $210F ;$80983C | REP #$20 ;$80983F | LDA #$004F ;$809841 | STA $7E8012 ;$809844 | LDA #$0122 ;$809848 | STA $7E8013 ;$80984B | LDA #$0040 ;$80984F | STA $7E8015 ;$809852 | LDA #$8102 ;$809856 | STA $7E8016 ;$809859 | LDA #$0050 ;$80985D | STA $7E8018 ;$809860 | LDA #$8102 ;$809864 | STA $7E8019 ;$809867 | LDA #$0050 ;$80986B | STA $7E801B ;$80986E | LDA #$8102 ;$809872 | STA $7E801C ;$809875 | LDA #$0001 ;$809879 | STA $7E801E ;$80987C | LDA #$8102 ;$809880 | STA $7E801F ;$809883 | LDA #$0000 ;$809887 | STA $7E8021 ;$80988A | SEP #$20 ;$80988E | LDX #$3001 ;$809890 | STX $4320 ;$809893 | LDX #$8012 ;$809896 | STX $4322 ;$809899 | LDA #$7E ;$80989C | STA $4324 ;$80989E | STZ $4327 ;$8098A1 | REP #$20 ;$8098A4 | LDX #DATA_EC83A0 ;$8098A6 | LDY.w #DATA_EC83A0>>16 ;$8098A9 | LDA #$0000 ;$8098AC | JSL decompress_data ;$8098AF | LDA #$1000 ;$8098B3 | STA $2116 ;$8098B6 | LDX #$007F ;$8098B9 | LDA #$0000 ;$8098BC | LDY #$6000 ;$8098BF | JSL DMA_to_VRAM ;$8098C2 | LDX #DATA_EC4D40 ;$8098C6 | LDY.w #DATA_EC4D40>>16 ;$8098C9 | LDA #$0000 ;$8098CC | JSL decompress_data ;$8098CF | LDA #$4000 ;$8098D3 | STA $2116 ;$8098D6 | LDX #$007F ;$8098D9 | LDA #$0000 ;$8098DC | LDY #$8000 ;$8098DF | JSL DMA_to_VRAM ;$8098E2 | LDA #$0020 ;$8098E6 | STA $2116 ;$8098E9 | LDX.w #DATA_FC0660>>16 ;$8098EC | LDA #DATA_FC0660 ;$8098EF | LDY #$1E00 ;$8098F2 | JSL DMA_to_VRAM ;$8098F5 | LDX #DATA_EC7CF0 ;$8098F9 | LDY.w #DATA_EC7CF0>>16 ;$8098FC | LDA #$0000 ;$8098FF | JSL decompress_data ;$809902 | LDA #$7C00 ;$809906 | STA $2116 ;$809909 | LDX #$007F ;$80990C | LDA #$0000 ;$80990F | LDY #$0800 ;$809912 | JSL DMA_to_VRAM ;$809915 | LDA #$7400 ;$809919 | JSR clear_VRAM_block ;$80991C | LDA #$7800 ;$80991F | JSR clear_VRAM_block ;$809922 | LDX #DATA_EC4749 ;$809925 | LDY.w #DATA_EC4749>>16 ;$809928 | LDA #$0000 ;$80992B | JSL decompress_data ;$80992E | LDA #$7420 ;$809932 | STA $2116 ;$809935 | LDX #$007F ;$809938 | LDA #$0000 ;$80993B | LDY #$0680 ;$80993E | JSL DMA_to_VRAM ;$809941 | LDX #DATA_EC4AAD ;$809945 | LDY.w #DATA_EC4AAD>>16 ;$809948 | LDA #$0000 ;$80994B | JSL decompress_data ;$80994E | LDA #$7780 ;$809952 | STA $2116 ;$809955 | LDX #$007F ;$809958 | LDA #$0000 ;$80995B | LDY #$0240 ;$80995E | JSL DMA_to_VRAM ;$809961 | LDX #DATA_EC4C1C ;$809965 | LDY.w #DATA_EC4C1C>>16 ;$809968 | LDA #$0000 ;$80996B | JSL decompress_data ;$80996E | LDA #$78C0 ;$809972 | STA $2116 ;$809975 | LDX #$007F ;$809978 | LDA #$0000 ;$80997B | LDY #$01C0 ;$80997E | JSL DMA_to_VRAM ;$809981 | LDY #$0000 ;$809985 | LDX #$0040 ;$809988 | LDA #DATA_FD3C6E ;$80998B | JSL DMA_palette ;$80998E | LDY #$0080 ;$809992 | LDX #$0004 ;$809995 | LDA #$00AA ;$809998 | JSL DMA_global_palette ;$80999B | STZ $84 ;$80999F | LDA #$0300 ;$8099A1 | JSR CODE_808C32 ;$8099A4 | CODE_8099A7: ; | STZ $36 ;$8099A7 | SEP #$20 ;$8099A9 | LDA $4211 ;$8099AB | LDA #$80 ;$8099AE | STA $2103 ;$8099B0 | LDA #$01 ;$8099B3 | STA $420D ;$8099B5 | REP #$20 ;$8099B8 | JSR CODE_808CAC ;$8099BA | LDA #CODE_8099C3 ;$8099BD | JMP CODE_80B0EE ;$8099C0 / CODE_8099C3: LDX #$01FF ;$8099C3 \ TXS ;$8099C6 | STZ $2102 ;$8099C7 | LDA #$0401 ;$8099CA | STA $420B ;$8099CD | LDA $17C0 ;$8099D0 | DEC A ;$8099D3 | SEP #$20 ;$8099D4 | STA $210E ;$8099D6 | XBA ;$8099D9 | STA $210E ;$8099DA | REP #$20 ;$8099DD | SEP #$20 ;$8099DF | LDA $0512 ;$8099E1 | STA $2100 ;$8099E4 | REP #$20 ;$8099E7 | JSR CODE_808C3D ;$8099E9 | INC $2A ;$8099EC | JSR CODE_80B061 ;$8099EE | JSR CODE_808CAC ;$8099F1 | LDA #$4102 ;$8099F4 | STA $7E8013 ;$8099F7 | STA $7E8016 ;$8099FB | STA $7E8019 ;$8099FF | STA $7E801C ;$809A03 | STA $7E801F ;$809A07 | LDA $0512 ;$809A0B | BPL CODE_809A13 ;$809A0E | JMP CODE_809ADC ;$809A10 / CODE_809A13: LDA $0506 ;$809A13 \ BIT #$0800 ;$809A16 | BEQ CODE_809A53 ;$809A19 | LDA $060D ;$809A1B | BEQ CODE_809A53 ;$809A1E | CMP #$0003 ;$809A20 | BNE CODE_809A49 ;$809A23 | LDA $84 ;$809A25 | BEQ CODE_809A49 ;$809A27 | SEP #$20 ;$809A29 | LDA #$01 ;$809A2B | STA $004200 ;$809A2D | REP #$20 ;$809A31 | LDA #$0018 ;$809A33 | JSL CODE_B5800F ;$809A36 | STZ $84 ;$809A3A | DEC $060D ;$809A3C | LDA #$0633 ;$809A3F | JSL CODE_B58021 ;$809A42 | JMP CODE_8099A7 ;$809A46 / CODE_809A49: LDA #$0633 ;$809A49 \ JSL CODE_B58021 ;$809A4C | DEC $060D ;$809A50 | CODE_809A53: ; | LDA $0506 ;$809A53 | BIT #$0400 ;$809A56 | BEQ CODE_809A6F ;$809A59 | LDA $060D ;$809A5B | CMP #$0002 ;$809A5E | BCS CODE_809A6F ;$809A61 | INC $060D ;$809A63 | LDA #$0633 ;$809A66 | JSL CODE_B58021 ;$809A69 | BRA CODE_809ADC ;$809A6D / CODE_809A6F: INC $38 ;$809A6F \ LDA $38 ;$809A71 | CMP #$0020 ;$809A73 | BEQ CODE_809A80 ;$809A76 | LDA $0506 ;$809A78 | BIT #$FBFF ;$809A7B | BEQ CODE_809A84 ;$809A7E | CODE_809A80: ; | STZ $36 ;$809A80 | STZ $38 ;$809A82 | CODE_809A84: ; | LDA $060D ;$809A84 | CMP #$0002 ;$809A87 | BCC CODE_809ADC ;$809A8A | LDA $0506 ;$809A8C | BIT #$0400 ;$809A8F | BEQ CODE_809ADC ;$809A92 | INC $36 ;$809A94 | STZ $38 ;$809A96 | LDA $36 ;$809A98 | CMP #$0005 ;$809A9A | BNE CODE_809ADC ;$809A9D | STZ $36 ;$809A9F | LDA $060D ;$809AA1 | CMP #$0004 ;$809AA4 | BEQ CODE_809ADC ;$809AA7 | CMP #$0003 ;$809AA9 | BNE CODE_809AD2 ;$809AAC | LDA $84 ;$809AAE | BEQ CODE_809AD2 ;$809AB0 | SEP #$20 ;$809AB2 | LDA #$01 ;$809AB4 | STA $004200 ;$809AB6 | REP #$20 ;$809ABA | LDA #$0018 ;$809ABC | JSL CODE_B5800F ;$809ABF | STZ $84 ;$809AC3 | INC $060D ;$809AC5 | LDA #$0633 ;$809AC8 | JSL CODE_B58021 ;$809ACB | JMP CODE_8099A7 ;$809ACF / CODE_809AD2: LDA #$0633 ;$809AD2 \ JSL CODE_B58021 ;$809AD5 | INC $060D ;$809AD9 | CODE_809ADC: ; | LDX #$0000 ;$809ADC | LDA $060D ;$809ADF | CMP #$0003 ;$809AE2 | BEQ CODE_809AEE ;$809AE5 | BCC CODE_809AF1 ;$809AE7 | LDX #$0090 ;$809AE9 | BRA CODE_809AF1 ;$809AEC / CODE_809AEE: LDX #$0048 ;$809AEE \ CODE_809AF1: ; | TXA ;$809AF1 | SEC ;$809AF2 | SBC $17C0 ;$809AF3 | STZ $32 ;$809AF6 | CMP #$8000 ;$809AF8 | ROR A ;$809AFB | ROR $32 ;$809AFC | CMP #$8000 ;$809AFE | ROR A ;$809B01 | ROR $32 ;$809B02 | CMP #$8000 ;$809B04 | ROR A ;$809B07 | ROR $32 ;$809B08 | STA $34 ;$809B0A | LDA $32 ;$809B0C | CLC ;$809B0E | ADC $17C2 ;$809B0F | STA $17C2 ;$809B12 | LDA $17C0 ;$809B15 | ADC $34 ;$809B18 | STA $17C0 ;$809B1A | LDA $17C0 ;$809B1D | SEC ;$809B20 | SBC #$004F ;$809B21 | BCS CODE_809B46 ;$809B24 | EOR #$FFFF ;$809B26 | INC A ;$809B29 | SEP #$20 ;$809B2A | STA $7E8012 ;$809B2C | LDA #$40 ;$809B30 | STA $7E8015 ;$809B32 | LDA #$50 ;$809B36 | STA $7E8018 ;$809B38 | LDX #$8012 ;$809B3C | STX $4322 ;$809B3F | REP #$20 ;$809B42 | BRA CODE_809B82 ;$809B44 / CODE_809B46: LDA $17C0 ;$809B46 \ SEC ;$809B49 | SBC #$008F ;$809B4A | BCS CODE_809B69 ;$809B4D | EOR #$FFFF ;$809B4F | INC A ;$809B52 | SEP #$20 ;$809B53 | STA $7E8015 ;$809B55 | LDA #$50 ;$809B59 | STA $7E8018 ;$809B5B | LDX #$8015 ;$809B5F | STX $4322 ;$809B62 | REP #$20 ;$809B65 | BRA CODE_809B82 ;$809B67 / CODE_809B69: LDA $17C0 ;$809B69 \ SEC ;$809B6C | SBC #$00DF ;$809B6D | EOR #$FFFF ;$809B70 | INC A ;$809B73 | SEP #$20 ;$809B74 | STA $7E8018 ;$809B76 | LDX #$8018 ;$809B7A | STX $4322 ;$809B7D | REP #$20 ;$809B80 | CODE_809B82: ; | LDA $060D ;$809B82 | CMP #$0004 ;$809B85 | BNE CODE_809BC2 ;$809B88 | LDA $060B ;$809B8A | BIT #$0001 ;$809B8D | BNE CODE_809BC2 ;$809B90 | LDX $3A ;$809B92 | LDA $0506 ;$809B94 | BEQ CODE_809BC2 ;$809B97 | AND.l DATA_809E75,x ;$809B99 | BEQ CODE_809BC0 ;$809B9D | INC $3A ;$809B9F | INC $3A ;$809BA1 | LDA $3A ;$809BA3 | CMP #$0010 ;$809BA5 | BNE CODE_809BC2 ;$809BA8 | LDA #$0505 ;$809BAA | JSL CODE_B58021 ;$809BAD | LDA #$0001 ;$809BB1 | TSB $060B ;$809BB4 | SEP #$20 ;$809BB7 | STZ $2100 ;$809BB9 | REP #$20 ;$809BBC | BRA CODE_809BC2 ;$809BBE / CODE_809BC0: STZ $3A ;$809BC0 \ CODE_809BC2: ; | LDA $060D ;$809BC2 | CMP #$0004 ;$809BC5 | BNE CODE_809C02 ;$809BC8 | LDA $060B ;$809BCA | BIT #$0002 ;$809BCD | BNE CODE_809C02 ;$809BD0 | LDX $3C ;$809BD2 | LDA $0506 ;$809BD4 | BEQ CODE_809C02 ;$809BD7 | AND.l DATA_809E85,x ;$809BD9 | BEQ CODE_809C00 ;$809BDD | INC $3C ;$809BDF | INC $3C ;$809BE1 | LDA $3C ;$809BE3 | CMP #$0010 ;$809BE5 | BNE CODE_809C02 ;$809BE8 | LDA #$0505 ;$809BEA | JSL CODE_B58021 ;$809BED | LDA #$0002 ;$809BF1 | TSB $060B ;$809BF4 | SEP #$20 ;$809BF7 | STZ $2100 ;$809BF9 | REP #$20 ;$809BFC | BRA CODE_809C02 ;$809BFE / CODE_809C00: STZ $3C ;$809C00 \ CODE_809C02: ; | LDA $060D ;$809C02 | STA $32 ;$809C05 | ASL A ;$809C07 | SEC ;$809C08 | ADC $32 ;$809C09 | TAX ;$809C0B | LDA #$0120 ;$809C0C | STA $7E8012,x ;$809C0F | LDA $0506 ;$809C13 | BIT #$D0C0 ;$809C16 | BEQ CODE_809C38 ;$809C19 | LDA $060D ;$809C1B | CMP #$0003 ;$809C1E | BCS CODE_809C38 ;$809C21 | LDA $0512 ;$809C23 | CMP #$000F ;$809C26 | BNE CODE_809C38 ;$809C29 | LDA #$820F ;$809C2B | STA $0512 ;$809C2E | LDA #$0634 ;$809C31 | JSL CODE_B58021 ;$809C34 | CODE_809C38: ; | JSL CODE_8088AB ;$809C38 | LDA $060D ;$809C3C | CMP #$0003 ;$809C3F | BNE CODE_809C8A ;$809C42 | JSR CODE_809DE2 ;$809C44 | LDA $0506 ;$809C47 | BIT #$0200 ;$809C4A | BNE CODE_809C64 ;$809C4D | BIT #$D1C0 ;$809C4F | BEQ CODE_809C8A ;$809C52 | INC $84 ;$809C54 | LDA $84 ;$809C56 | CMP #$0020 ;$809C58 | BCC CODE_809C6F ;$809C5B | LDA #$0001 ;$809C5D | STA $84 ;$809C60 | BRA CODE_809C6F ;$809C62 / CODE_809C64: DEC $84 ;$809C64 \ BMI CODE_809C6A ;$809C66 | BNE CODE_809C6F ;$809C68 | CODE_809C6A: ; | LDA #$001F ;$809C6A | STA $84 ;$809C6D | CODE_809C6F: ; | SEP #$20 ;$809C6F | LDA #$01 ;$809C71 | STA $004200 ;$809C73 | REP #$20 ;$809C77 | LDA $84 ;$809C79 | CMP #$000F ;$809C7B | BNE CODE_809C83 ;$809C7E | LDA #$030F ;$809C80 | CODE_809C83: ; | JSL CODE_B5800F ;$809C83 | JMP CODE_8099A7 ;$809C87 / CODE_809C8A: LDA $0512 ;$809C8A \ CMP #$8201 ;$809C8D | BNE CODE_809C96 ;$809C90 | JML CODE_808EEA ;$809C92 / CODE_809C96: WAI ;$809C96 \ BRA CODE_809C96 ;$809C97 / DATA_809C99: dw !null_pointer dw DATA_809CD9 dw DATA_809CE4 dw DATA_809CEF dw DATA_809CF5 dw DATA_809CFC dw DATA_809D0B dw DATA_809D15 dw DATA_809D1A dw DATA_809D20 dw DATA_809D29 dw DATA_809D30 dw DATA_809D3A dw DATA_809D42 dw DATA_809D47 dw DATA_809D56 dw DATA_809D5C dw DATA_809D66 dw DATA_809D6E dw DATA_809D7A dw DATA_809D86 dw DATA_809D90 dw DATA_809D99 dw DATA_809DA0 dw DATA_809DA8 dw DATA_809DAF dw DATA_809DB6 dw DATA_809DBA dw DATA_809DC1 dw DATA_809DCC dw DATA_809DD4 dw DATA_809DDC DATA_809CD9: db "ISLAND MAP", $00 DATA_809CE4: db "MAIN THEME", $00 DATA_809CEF: db "SWAMP", $00 DATA_809CF5: db "SWANKY", $00 DATA_809CFC: db "ENCHANTED WOOD", $00 DATA_809D0B: db "SHIP DECK", $00 DATA_809D15: db "MINE", $00 DATA_809D1A: db "FUNKY", $00 DATA_809D20: db "BRAMBLES", $00 DATA_809D29: db "KLUBBA", $00 DATA_809D30: db "WASP HIVE", $00 DATA_809D3A: db "WRINKLY", $00 DATA_809D42: db "LAVA", $00 DATA_809D47: db "ROLLER COASTER", $00 DATA_809D56: db "BONUS", $00 DATA_809D5C: db "SHIP HOLD", $00 DATA_809D66: db "FANFARE", $00 DATA_809D6E: db "SHIP DECK 2", $00 DATA_809D7A: db "RESCUE KONG", $00 DATA_809D86: db "GAME OVER", $00 DATA_809D90: db "BIG BOSS", $00 DATA_809D99: db "CASTLE", $00 DATA_809DA0: db "HAUNTED", $00 DATA_809DA8: db "SELECT", $00 DATA_809DAF: db "CRANKY", $00 DATA_809DB6: db "ICE", $00 DATA_809DBA: db "JUNGLE", $00 DATA_809DC1: db "LOST WORLD", $00 DATA_809DCC: db "RIGGING", $00 DATA_809DD4: db "CREDITS", $00 DATA_809DDC: db "KROOL", $00 CODE_809DE2: LDA $84 ;$809DE2 \ BEQ CODE_809E59 ;$809DE4 | ASL A ;$809DE6 | TAX ;$809DE7 | LDA.l DATA_809C99,x ;$809DE8 | STA $3A ;$809DEC | LDA #$0080 ;$809DEE | STA $3C ;$809DF1 | LDY #$0000 ;$809DF3 | LDA #$0100 ;$809DF6 | SEC ;$809DF9 | SBC $17C0 ;$809DFA | XBA ;$809DFD | CLC ;$809DFE | ADC #$1080 ;$809DFF | BCS CODE_809E09 ;$809E02 | CMP #$E000 ;$809E04 | BCC CODE_809E0C ;$809E07 | CODE_809E09: ; | LDA #$E000 ;$809E09 | CODE_809E0C: ; | STA $32 ;$809E0C | CODE_809E0E: ; | LDA [$3A] ;$809E0E | AND #$00FF ;$809E10 | BEQ CODE_809E59 ;$809E13 | CMP #$0020 ;$809E15 | BEQ CODE_809E4D ;$809E18 | SEC ;$809E1A | SBC #$0021 ;$809E1B | TAX ;$809E1E | LDA.l DATA_B4C4B3,x ;$809E1F | AND #$00FF ;$809E23 | ASL A ;$809E26 | CLC ;$809E27 | ADC #$3002 ;$809E28 | STA $34 ;$809E2B | LDA $32 ;$809E2D | STA $0200,y ;$809E2F | LDA $34 ;$809E32 | STA $0202,y ;$809E34 | LDA $32 ;$809E37 | CLC ;$809E39 | ADC #$0800 ;$809E3A | STA $0204,y ;$809E3D | INC $34 ;$809E40 | LDA $34 ;$809E42 | STA $0206,y ;$809E44 | TYA ;$809E47 | CLC ;$809E48 | ADC #$0008 ;$809E49 | TAY ;$809E4C | CODE_809E4D: ; | INC $3A ;$809E4D | LDA $32 ;$809E4F | CLC ;$809E51 | ADC #$0008 ;$809E52 | STA $32 ;$809E55 | BRA CODE_809E0E ;$809E57 / CODE_809E59: STZ $0400 ;$809E59 \ STZ $0402 ;$809E5C | STZ $0404 ;$809E5F | STZ $0406 ;$809E62 | STZ $0408 ;$809E65 | STZ $040A ;$809E68 | STZ $040C ;$809E6B | STZ $040E ;$809E6E | STZ $0410 ;$809E71 | RTS ;$809E74 / DATA_809E75: db $00, $80, $80, $00, $00, $01, $00, $01 db $80, $00, $00, $02, $80, $00, $40, $00 DATA_809E85: db $00, $40, $80, $00, $00, $30, $80, $00 db $00, $04, $00, $02, $80, $00, $00, $04 DATA_809E95: db $6C, $90, $90, $00, $00, $89, $11, $91 db $21, $00, $12, $92, $24, $00, $13, $93 db $22, $00, $11, $91, $01, $00, $12, $92 db $22, $00, $13, $93, $21, $00, $11, $91 db $00, $00, $12, $92, $00, $00, $13, $93 db $00, $00, $00 DATA_809EC0: db $6C, $90, $90, $00, $00, $89, $14, $94 db $40, $04, $15, $95, $61, $04, $16, $96 db $46, $00, $14, $94, $20, $00, $15, $95 db $41, $04, $16, $96, $23, $00, $14, $94 db $00, $00, $15, $95, $00, $00, $16, $96 db $00, $00, $00 DATA_809EEB: db $6C, $90, $90, $00, $00, $89, $17, $97 db $8A, $04, $18, $98, $20, $04, $19, $99 db $21, $04, $17, $97, $45, $04, $18, $98 db $00, $00, $19, $99, $21, $04, $17, $97 db $00, $00, $18, $98, $00, $00, $19, $99 db $00, $00, $00 DATA_809F16: db $6C, $90, $90, $00, $00, $89, $1A, $9A db $42, $08, $1B, $9B, $63, $0C, $1C, $9C db $84, $0C, $1A, $9A, $21, $04, $1B, $9B db $41, $04, $1C, $9C, $42, $08, $1A, $9A db $00, $00, $1B, $9B, $00, $00, $1C, $9C db $00, $00, $00 DATA_809F41: db $6C, $90, $90, $00, $00, $89, $1D, $9D db $85, $10, $1E, $9E, $A5, $14, $1F, $9F db $C6, $14, $1D, $9D, $42, $08, $1E, $9E db $63, $08, $1F, $9F, $63, $0C, $1D, $9D db $00, $00, $1E, $9E, $00, $00, $1F, $9F db $00, $00, $00 DATA_809F6C: db $68, $00, $FF, $01, $20, $50, $01, $24 db $4C, $01, $28, $48, $01, $2C, $44, $01 db $30, $40, $01, $34, $3C, $01, $00, $00 db $00 CODE_809F85: JSL disable_screen ;$809F85 \ PHK ;$809F89 | PLB ;$809F8A | JSR clear_VRAM ;$809F8B | JSL init_registers_wrapper ;$809F8E | JSL CODE_808E6A ;$809F92 | JSL CODE_BB91F7 ;$809F96 | STZ $2A ;$809F9A | LDA #$CCCC ;$809F9C | LDX #$0032 ;$809F9F | CODE_809FA2: ; | STA $00,x ;$809FA2 | INX ;$809FA4 | CPX #$00D1 ;$809FA5 | BNE CODE_809FA2 ;$809FA8 | LDA #$0024 ;$809FAA | JSL CODE_B5800C ;$809FAD | LDA #$AA55 ;$809FB1 | STA $2E ;$809FB4 | LDA #$FFFF ;$809FB6 | STA $30 ;$809FB9 | LDX #$001E ;$809FBB | LDA #$0000 ;$809FBE | CODE_809FC1: ; | STA $32,x ;$809FC1 | DEX ;$809FC3 | DEX ;$809FC4 | BPL CODE_809FC1 ;$809FC5 | LDA #$0009 ;$809FC7 | STA $2105 ;$809FCA | LDA #$1013 ;$809FCD | STA $212C ;$809FD0 | LDA #$0010 ;$809FD3 | STA $212E ;$809FD6 | LDA #$4030 ;$809FD9 | STA $2126 ;$809FDC | LDA #$FF80 ;$809FDF | STA $2128 ;$809FE2 | LDA #$0100 ;$809FE5 | STA $212A ;$809FE8 | LDA #$0F00 ;$809FEB | STA $2124 ;$809FEE | LDA #$2202 ;$809FF1 | STA $2130 ;$809FF4 | LDA #$0626 ;$809FF7 | STA $210B ;$809FFA | LDA #$7C78 ;$809FFD | STA $2107 ;$80A000 | STZ $210D ;$80A003 | STZ $210D ;$80A006 | STZ $210F ;$80A009 | STZ $210F ;$80A00C | SEP #$20 ;$80A00F | LDA #$FF ;$80A011 | STA $210E ;$80A013 | STA $210E ;$80A016 | STA $2110 ;$80A019 | STA $2110 ;$80A01C | REP #$20 ;$80A01F | SEP #$20 ;$80A021 | LDX #$0F02 ;$80A023 | STX $4310 ;$80A026 | LDX #$8012 ;$80A029 | STX $4312 ;$80A02C | LDA #$7E ;$80A02F | STA $4314 ;$80A031 | STZ $4317 ;$80A034 | LDX #$2601 ;$80A037 | STX $4320 ;$80A03A | LDX #DATA_809F6C ;$80A03D | STX $4322 ;$80A040 | LDA #DATA_809F6C>>16 ;$80A043 | STA $4324 ;$80A045 | STZ $4327 ;$80A048 | LDX #$2103 ;$80A04B | STX $4330 ;$80A04E | LDX #DATA_809E95 ;$80A051 | STX $4332 ;$80A054 | LDA #DATA_809E95>>16 ;$80A057 | STA $4334 ;$80A059 | STZ $4337 ;$80A05C | LDX #$2103 ;$80A05F | STX $4340 ;$80A062 | LDX #DATA_809EC0 ;$80A065 | STX $4342 ;$80A068 | LDA #DATA_809EC0>>16 ;$80A06B | STA $4344 ;$80A06D | STZ $4347 ;$80A070 | LDX #$2103 ;$80A073 | STX $4350 ;$80A076 | LDX #DATA_809EEB ;$80A079 | STX $4352 ;$80A07C | LDA #DATA_809EEB>>16 ;$80A07F | STA $4354 ;$80A081 | STZ $4357 ;$80A084 | LDX #$2103 ;$80A087 | STX $4360 ;$80A08A | LDX #DATA_809F16 ;$80A08D | STX $4362 ;$80A090 | LDA #DATA_809F16>>16 ;$80A093 | STA $4364 ;$80A095 | STZ $4367 ;$80A098 | LDX #$2103 ;$80A09B | STX $4370 ;$80A09E | LDX #DATA_809F41 ;$80A0A1 | STX $4372 ;$80A0A4 | LDA #DATA_809F41>>16 ;$80A0A7 | STA $4374 ;$80A0A9 | STZ $4377 ;$80A0AC | REP #$20 ;$80A0AF | LDA #$0060 ;$80A0B1 | STA $7E8012 ;$80A0B4 | LDA #$0000 ;$80A0B8 | STA $7E8013 ;$80A0BB | LDX #$0000 ;$80A0BF | CODE_80A0C2: ; | LDA #$0004 ;$80A0C2 | STA $7E8015,x ;$80A0C5 | LDA #$0001 ;$80A0C9 | STA $7E8016,x ;$80A0CC | LDA #$0004 ;$80A0D0 | STA $7E8018,x ;$80A0D3 | LDA #$0000 ;$80A0D7 | STA $7E8019,x ;$80A0DA | TXA ;$80A0DE | CLC ;$80A0DF | ADC #$000A ;$80A0E0 | TAX ;$80A0E3 | CPX #$0046 ;$80A0E4 | BNE CODE_80A0C2 ;$80A0E7 | CODE_80A0E9: ; | LDA #$0002 ;$80A0E9 | STA $7E8015,x ;$80A0EC | LDA #$0002 ;$80A0F0 | STA $7E8016,x ;$80A0F3 | LDA #$0002 ;$80A0F7 | STA $7E8018,x ;$80A0FA | LDA #$0001 ;$80A0FE | STA $7E8019,x ;$80A101 | LDA #$0002 ;$80A105 | STA $7E801B,x ;$80A108 | LDA #$0000 ;$80A10C | STA $7E801C,x ;$80A10F | LDA #$0002 ;$80A113 | STA $7E801E,x ;$80A116 | LDA #$0001 ;$80A11A | STA $7E801F,x ;$80A11D | TXA ;$80A121 | CLC ;$80A122 | ADC #$000C ;$80A123 | TAX ;$80A126 | CPX #$00BA ;$80A127 | BNE CODE_80A0E9 ;$80A12A | LDA #$0000 ;$80A12C | STA $7E8015,x ;$80A12F | LDX #DATA_F99400 ;$80A133 | LDY.w #DATA_F99400>>16 ;$80A136 | LDA #$0000 ;$80A139 | JSL decompress_data ;$80A13C | LDA #$2000 ;$80A140 | STA $2116 ;$80A143 | LDX #$007F ;$80A146 | LDA #$0000 ;$80A149 | LDY #$8000 ;$80A14C | JSL DMA_to_VRAM ;$80A14F | LDX #DATA_F661C1 ;$80A153 | LDY.w #DATA_F661C1>>16 ;$80A156 | LDA #$0000 ;$80A159 | JSL decompress_data ;$80A15C | LDA #$6000 ;$80A160 | STA $2116 ;$80A163 | LDX #$007F ;$80A166 | LDA #$0000 ;$80A169 | LDY #$4000 ;$80A16C | JSL DMA_to_VRAM ;$80A16F | LDX #DATA_F9C775 ;$80A173 | LDY.w #DATA_F9C775>>16 ;$80A176 | LDA #$0000 ;$80A179 | JSL decompress_data ;$80A17C | LDA #$7C20 ;$80A180 | STA $2116 ;$80A183 | LDX #$007F ;$80A186 | LDA #$0000 ;$80A189 | LDY #$0700 ;$80A18C | JSL DMA_to_VRAM ;$80A18F | LDA #$7C00 ;$80A193 | STA $2116 ;$80A196 | LDX #$007F ;$80A199 | LDA #$0000 ;$80A19C | LDY #$0700 ;$80A19F | JSL DMA_to_VRAM ;$80A1A2 | LDX #DATA_F67D1B ;$80A1A6 | LDY.w #DATA_F67D1B>>16 ;$80A1A9 | LDA #$0000 ;$80A1AC | JSL decompress_data ;$80A1AF | LDA #$7800 ;$80A1B3 | STA $2116 ;$80A1B6 | LDX #$007F ;$80A1B9 | LDA #$0000 ;$80A1BC | LDY #$0800 ;$80A1BF | JSL DMA_to_VRAM ;$80A1C2 | STZ $17BA ;$80A1C6 | LDA #$0100 ;$80A1C9 | STZ $17C0 ;$80A1CC | LDA #$0000 ;$80A1CF | STA $0D9E ;$80A1D2 | LDA #$0004 ;$80A1D5 | STA $0D84 ;$80A1D8 | LDA #$0036 ;$80A1DB | STA $0D8A ;$80A1DE | LDA #$0100 ;$80A1E1 | STA $0D86 ;$80A1E4 | LDA #$0030 ;$80A1E7 | STA $0D8E ;$80A1EA | LDA #$0000 ;$80A1ED | STA $0D96 ;$80A1F0 | LDA #$351C ;$80A1F3 | STA $0DFC ;$80A1F6 | LDA #$0004 ;$80A1F9 | STA $0DE2 ;$80A1FC | LDA #$0038 ;$80A1FF | STA $0DE8 ;$80A202 | LDA #$0101 ;$80A205 | STA $0DE4 ;$80A208 | LDA #$0068 ;$80A20B | STA $0DEC ;$80A20E | LDA #$2280 ;$80A211 | STA $0DF4 ;$80A214 | LDA #$3520 ;$80A217 | STA $0E5A ;$80A21A | LDA #$0004 ;$80A21D | STA $0E40 ;$80A220 | LDA #$0038 ;$80A223 | STA $0E46 ;$80A226 | LDA #$0102 ;$80A229 | STA $0E42 ;$80A22C | LDA #$0068 ;$80A22F | STA $0E4A ;$80A232 | LDA #$24A0 ;$80A235 | STA $0E52 ;$80A238 | LDA #$3538 ;$80A23B | STA $0EB8 ;$80A23E | LDA #$0004 ;$80A241 | STA $0E9E ;$80A244 | LDA #$00B8 ;$80A247 | STA $0EA4 ;$80A24A | LDA #$0101 ;$80A24D | STA $0EA0 ;$80A250 | LDA #$0060 ;$80A253 | STA $0EA8 ;$80A256 | LDA #$26C0 ;$80A259 | STA $0EB0 ;$80A25C | LDA #$3558 ;$80A25F | STA $0F16 ;$80A262 | LDA #$0004 ;$80A265 | STA $0EFC ;$80A268 | LDA #$0040 ;$80A26B | STA $0F02 ;$80A26E | LDA #$00FF ;$80A271 | STA $0EFE ;$80A274 | LDA #$0066 ;$80A277 | STA $0F06 ;$80A27A | LDA #$2860 ;$80A27D | STA $0F0E ;$80A280 | LDY #$0000 ;$80A283 | LDX #$0020 ;$80A286 | LDA #DATA_FD420E ;$80A289 | JSL DMA_palette ;$80A28C | LDY #$0080 ;$80A290 | LDX #$0020 ;$80A293 | LDA #DATA_FD416E ;$80A296 | JSL DMA_palette ;$80A299 | LDY #$00D0 ;$80A29D | LDX #$0004 ;$80A2A0 | LDA.l DATA_FD6044 ;$80A2A3 | DEC A ;$80A2A7 | DEC A ;$80A2A8 | JSL DMA_palette ;$80A2A9 | SEP #$20 ;$80A2AD | LDA $4211 ;$80A2AF | LDA #$80 ;$80A2B2 | STA $2103 ;$80A2B4 | LDA #$01 ;$80A2B7 | STA $420D ;$80A2B9 | REP #$20 ;$80A2BC | STZ $2A ;$80A2BE | LDA #$0300 ;$80A2C0 | JSR CODE_808C32 ;$80A2C3 | JSR CODE_808CAC ;$80A2C6 | LDA #CODE_80A2CF ;$80A2C9 | JMP CODE_80B0EE ;$80A2CC / CODE_80A2CF: LDX #$01FF ;$80A2CF \ TXS ;$80A2D2 | STZ $2102 ;$80A2D3 | LDA #$FE01 ;$80A2D6 | STA $420B ;$80A2D9 | LDA $2A ;$80A2DC | LSR A ;$80A2DE | LSR A ;$80A2DF | AND #$0007 ;$80A2E0 | CLC ;$80A2E3 | ADC #$0062 ;$80A2E4 | STA $7E8012 ;$80A2E7 | LDY #$0090 ;$80A2EB | LDX #$0004 ;$80A2EE | LDA #DATA_FD418E ;$80A2F1 | JSL DMA_palette ;$80A2F4 | JSL CODE_B5A919 ;$80A2F8 | LDA $17C0 ;$80A2FC | SEP #$20 ;$80A2FF | STA $2110 ;$80A301 | STZ $2110 ;$80A304 | REP #$20 ;$80A307 | SEP #$20 ;$80A309 | LDA $0512 ;$80A30B | STA $2100 ;$80A30E | REP #$20 ;$80A311 | LDA #CODE_80F3E6 ;$80A313 | STA $20 ;$80A316 | JSR CODE_808C3D ;$80A318 | JSR CODE_808988 ;$80A31B | INC $2A ;$80A31E | BNE CODE_80A327 ;$80A320 | LDA $1000 ;$80A322 | STA $2A ;$80A325 | CODE_80A327: ; | LDX #$0D84 ;$80A327 | JSR CODE_80A545 ;$80A32A | LDX #$0E9E ;$80A32D | JSR CODE_80A518 ;$80A330 | LDX #$0EFC ;$80A333 | JSR CODE_80A4B7 ;$80A336 | LDA $2A ;$80A339 | CMP #$0500 ;$80A33B | BCC CODE_80A350 ;$80A33E | LDA $0512 ;$80A340 | BMI CODE_80A350 ;$80A343 | LDA $0510 ;$80A345 | BEQ CODE_80A350 ;$80A348 | LDA #$820F ;$80A34A | STA $0512 ;$80A34D | CODE_80A350: ; | LDA $0512 ;$80A350 | CMP #$8201 ;$80A353 | BNE CODE_80A35B ;$80A356 | JMP restart_rareware_logo ;$80A358 / CODE_80A35B: LDA $2A ;$80A35B \ CMP #$0040 ;$80A35D | BEQ CODE_80A367 ;$80A360 | CMP #$0080 ;$80A362 | BNE CODE_80A375 ;$80A365 | CODE_80A367: ; | LDA #$056F ;$80A367 | JSL CODE_B58021 ;$80A36A | LDA #$0670 ;$80A36E | JSL CODE_B58021 ;$80A371 | CODE_80A375: ; | LDA $2A ;$80A375 | SEC ;$80A377 | SBC #$0040 ;$80A378 | CMP #$0010 ;$80A37B | BCC CODE_80A399 ;$80A37E | LDA $2A ;$80A380 | SEC ;$80A382 | SBC #$0080 ;$80A383 | CMP #$0020 ;$80A386 | BCC CODE_80A399 ;$80A389 | LDA $2A ;$80A38B | SEC ;$80A38D | SBC #$00B0 ;$80A38E | CMP #$0060 ;$80A391 | BCC CODE_80A399 ;$80A394 | LDA #$0000 ;$80A396 | CODE_80A399: ; | AND #$0003 ;$80A399 | DEC A ;$80A39C | STA $17C0 ;$80A39D | LDA $2A ;$80A3A0 | CMP #$00B0 ;$80A3A2 | BEQ CODE_80A3AC ;$80A3A5 | CMP #$00F0 ;$80A3A7 | BNE CODE_80A3BA ;$80A3AA | CODE_80A3AC: ; | LDA #$0515 ;$80A3AC | JSL CODE_B58021 ;$80A3AF | LDA #$0619 ;$80A3B3 | JSL CODE_B58021 ;$80A3B6 | CODE_80A3BA: ; | LDA $2A ;$80A3BA | CMP #$00B2 ;$80A3BC | BNE CODE_80A3CF ;$80A3BF | LDA #$0771 ;$80A3C1 | JSL CODE_B58021 ;$80A3C4 | LDA #$0472 ;$80A3C8 | JSL CODE_B58021 ;$80A3CB | CODE_80A3CF: ; | LDA $2A ;$80A3CF | BIT #$000F ;$80A3D1 | BNE CODE_80A41F ;$80A3D4 | SEC ;$80A3D6 | SBC #$00B0 ;$80A3D7 | CMP #$0068 ;$80A3DA | BCS CODE_80A41F ;$80A3DD | JSR CODE_80A4A1 ;$80A3DF | BNE CODE_80A41F ;$80A3E2 | LDA #$0103 ;$80A3E4 | STA $02,x ;$80A3E7 | LDA #$16DC ;$80A3E9 | STA $1A,x ;$80A3EC | JSR CODE_80B13E ;$80A3EE | AND #$001F ;$80A3F1 | CLC ;$80A3F4 | ADC $0DEC ;$80A3F5 | SEC ;$80A3F8 | SBC #$0030 ;$80A3F9 | STA $0A,x ;$80A3FC | JSR CODE_80B13E ;$80A3FE | AND #$001F ;$80A401 | CLC ;$80A404 | ADC $0DE8 ;$80A405 | SEC ;$80A408 | SBC #$0010 ;$80A409 | STA $06,x ;$80A40C | LDA #$0001 ;$80A40E | STA $00,x ;$80A411 | LDA $2A ;$80A413 | ASL A ;$80A415 | AND #$00E0 ;$80A416 | CLC ;$80A419 | ADC #$2AE0 ;$80A41A | STA $12,x ;$80A41D | CODE_80A41F: ; | LDA $2A ;$80A41F | BIT #$0003 ;$80A421 | BNE CODE_80A44D ;$80A424 | LDX #$0D84 ;$80A426 | CODE_80A429: ; | LDA $00,x ;$80A429 | CMP #$0001 ;$80A42B | BNE CODE_80A442 ;$80A42E | LDA $1A,x ;$80A430 | CLC ;$80A432 | ADC #$0004 ;$80A433 | CMP #$1718 ;$80A436 | BCC CODE_80A440 ;$80A439 | LDA #$0000 ;$80A43B | STA $00,x ;$80A43E | CODE_80A440: ; | STA $1A,x ;$80A440 | CODE_80A442: ; | TXA ;$80A442 | CLC ;$80A443 | ADC #$005E ;$80A444 | TAX ;$80A447 | CPX #$16B2 ;$80A448 | BNE CODE_80A429 ;$80A44B | CODE_80A44D: ; | JSL CODE_B5A8DA ;$80A44D | LDA #$0200 ;$80A451 | STA $70 ;$80A454 | STZ $0400 ;$80A456 | STZ $0402 ;$80A459 | STZ $0404 ;$80A45C | STZ $0406 ;$80A45F | STZ $0408 ;$80A462 | STZ $040A ;$80A465 | STZ $040C ;$80A468 | STZ $040E ;$80A46B | STZ $0410 ;$80A46E | STZ $0412 ;$80A471 | STZ $0414 ;$80A474 | STZ $0416 ;$80A477 | STZ $0418 ;$80A47A | STZ $041A ;$80A47D | STZ $041C ;$80A480 | STZ $041E ;$80A483 | LDA #$0044 ;$80A486 | STA $78 ;$80A489 | JSL CODE_B59F40 ;$80A48B | STZ $1730 ;$80A48F | JSL CODE_8088B4 ;$80A492 | JSR CODE_808CAC ;$80A496 | LDA #CODE_80A2CF ;$80A499 | STA $20 ;$80A49C | CODE_80A49E: ; | WAI ;$80A49E | BRA CODE_80A49E ;$80A49F / CODE_80A4A1: LDX #$0D84 ;$80A4A1 \ CODE_80A4A4: ; | LDA $00,x ;$80A4A4 | BEQ CODE_80A4B6 ;$80A4A6 | TXA ;$80A4A8 | CLC ;$80A4A9 | ADC #$005E ;$80A4AA | TAX ;$80A4AD | CPX #$0D84 ;$80A4AE | BNE CODE_80A4A4 ;$80A4B1 | LDA #$0001 ;$80A4B3 | CODE_80A4B6: ; | RTS ;$80A4B6 / CODE_80A4B7: LDA $2A ;$80A4B7 \ CMP #$0340 ;$80A4B9 | BNE CODE_80A4CC ;$80A4BC | LDA #$0675 ;$80A4BE | JSL CODE_B58021 ;$80A4C1 | LDA #$0776 ;$80A4C5 | JSL CODE_B58021 ;$80A4C8 | CODE_80A4CC: ; | LDA $2A ;$80A4CC | SEC ;$80A4CE | SBC #$0120 ;$80A4CF | BMI CODE_80A4E5 ;$80A4D2 | CMP #$02E0 ;$80A4D4 | BCC CODE_80A4DE ;$80A4D7 | BIT #$001F ;$80A4D9 | BRA CODE_80A4E1 ;$80A4DC / CODE_80A4DE: BIT #$000F ;$80A4DE \ CODE_80A4E1: ; | BNE CODE_80A4E5 ;$80A4E1 | INC $06,x ;$80A4E3 | CODE_80A4E5: ; | LDA $2A ;$80A4E5 | SEC ;$80A4E7 | SBC #$03E0 ;$80A4E8 | BMI CODE_80A517 ;$80A4EB | LSR A ;$80A4ED | LSR A ;$80A4EE | CMP #$0048 ;$80A4EF | BCC CODE_80A505 ;$80A4F2 | LDA #$0000 ;$80A4F4 | STA $0D84 ;$80A4F7 | STA $0DE2 ;$80A4FA | STA $0E40 ;$80A4FD | STA $0EFC ;$80A500 | BRA CODE_80A50C ;$80A503 / CODE_80A505: AND #$FFFC ;$80A505 \ CLC ;$80A508 | ADC #$3558 ;$80A509 | CODE_80A50C: ; | STA $1A,x ;$80A50C | LDA $2A ;$80A50E | BIT #$003F ;$80A510 | BNE CODE_80A517 ;$80A513 | DEC $0A,x ;$80A515 | CODE_80A517: ; | RTS ;$80A517 / CODE_80A518: LDA $2A ;$80A518 \ AND #$001C ;$80A51A | CLC ;$80A51D | ADC #$3538 ;$80A51E | STA $1A,x ;$80A521 | RTS ;$80A523 / LDA $1A,x ;$80A524 | BEQ CODE_80A544 ;$80A526 | CMP #$3520 ;$80A528 | BEQ CODE_80A544 ;$80A52B | LDA $2A ;$80A52D | BIT #$0003 ;$80A52F | BNE CODE_80A544 ;$80A532 | LDA $1A,x ;$80A534 | CLC ;$80A536 | ADC #$0004 ;$80A537 | CMP #$1718 ;$80A53A | BNE CODE_80A542 ;$80A53D | LDA #$0000 ;$80A53F | CODE_80A542: ; | STA $1A,x ;$80A542 | CODE_80A544: ; | RTS ;$80A544 / CODE_80A545: LDA $1A,x ;$80A545 \ STA $32 ;$80A547 | LDA $2A ;$80A549 | CMP #$00C0 ;$80A54B | BCC CODE_80A5C2 ;$80A54E | BNE CODE_80A55A ;$80A550 | LDA #$0000 ;$80A552 | STA $0E40 ;$80A555 | LDA $2A ;$80A558 | CODE_80A55A: ; | BIT #$0003 ;$80A55A | BNE CODE_80A574 ;$80A55D | LDA $1A,x ;$80A55F | BNE CODE_80A566 ;$80A561 | LDA #$3520 ;$80A563 | CODE_80A566: ; | CLC ;$80A566 | ADC #$0004 ;$80A567 | CMP #$3538 ;$80A56A | BNE CODE_80A572 ;$80A56D | LDA #$3524 ;$80A56F | CODE_80A572: ; | STA $1A,x ;$80A572 | CODE_80A574: ; | LDA $2A ;$80A574 | BIT #$000F ;$80A576 | BNE CODE_80A57F ;$80A579 | INC $0A,x ;$80A57B | INC $68,x ;$80A57D | CODE_80A57F: ; | JSR CODE_80B13E ;$80A57F | AND #$000F ;$80A582 | CLC ;$80A585 | ADC $0A,x ;$80A586 | CMP #$0058 ;$80A588 | BCC CODE_80A5A6 ;$80A58B | STZ $1A,x ;$80A58D | LDA $32 ;$80A58F | CMP #$0000 ;$80A591 | BEQ CODE_80A5C2 ;$80A594 | LDA #$0700 ;$80A596 | JSL CODE_B58021 ;$80A599 | LDA #$0400 ;$80A59D | JSL CODE_B58021 ;$80A5A0 | BRA CODE_80A5C2 ;$80A5A4 / CODE_80A5A6: LDA $0A,x ;$80A5A6 \ CMP #$0032 ;$80A5A8 | BCC CODE_80A5C2 ;$80A5AB | LDA $32 ;$80A5AD | CMP #$0000 ;$80A5AF | BNE CODE_80A5C2 ;$80A5B2 | LDA #$0773 ;$80A5B4 | JSL CODE_B58021 ;$80A5B7 | LDA #$0474 ;$80A5BB | JSL CODE_B58021 ;$80A5BE | CODE_80A5C2: ; | RTS ;$80A5C2 / LDY #$0000 ;$80A5C3 | LDA $24,x ;$80A5C6 | STA $32 ;$80A5C8 | LDA $24,x ;$80A5CA | BPL CODE_80A5D1 ;$80A5CC | LDY #$FFFF ;$80A5CE | CODE_80A5D1: ; | STY $54 ;$80A5D1 | ASL A ;$80A5D3 | ROL $54 ;$80A5D4 | ASL A ;$80A5D6 | ROL $54 ;$80A5D7 | ASL A ;$80A5D9 | ROL $54 ;$80A5DA | ASL A ;$80A5DC | ROL $54 ;$80A5DD | ASL A ;$80A5DF | ROL $54 ;$80A5E0 | ASL A ;$80A5E2 | ROL $54 ;$80A5E3 | CLC ;$80A5E5 | ADC $08,x ;$80A5E6 | STA $08,x ;$80A5E8 | LDA $0A,x ;$80A5EA | ADC $54 ;$80A5EC | STA $0A,x ;$80A5EE | RTS ;$80A5F0 / CODE_80A5F1: JSL disable_screen ;$80A5F1 \ PHK ;$80A5F5 | PLB ;$80A5F6 | JSR clear_VRAM ;$80A5F7 | JSL init_registers_wrapper ;$80A5FA | JSL CODE_808E6A ;$80A5FE | JSL CODE_8088AB ;$80A602 | LDA #$0018 ;$80A606 | JSL CODE_B5800C ;$80A609 | LDA $0613 ;$80A60D | BEQ CODE_80A65D ;$80A610 | LDA $0611 ;$80A612 | ASL A ;$80A615 | TAX ;$80A616 | LDA.l DATA_80ABE8,x ;$80A617 | STA $32 ;$80A61B | LDA #$00B0 ;$80A61D | STA $34 ;$80A620 | PEA $807E ;$80A622 | PLB ;$80A625 | LDY #$02A6 ;$80A626 | BRA CODE_80A653 ;$80A629 / LDA $0611 ;$80A62B | ASL A ;$80A62E | TAX ;$80A62F | LDA.l DATA_80ABE8,x ;$80A630 | CLC ;$80A634 | ADC #$0006 ;$80A635 | STA $32 ;$80A638 | LDA #$00B0 ;$80A63A | STA $34 ;$80A63D | LDA $060F ;$80A63F | BEQ CODE_80A64C ;$80A642 | LDA $32 ;$80A644 | CLC ;$80A646 | ADC #$014E ;$80A647 | STA $32 ;$80A64A | CODE_80A64C: ; | PEA $807E ;$80A64C | PLB ;$80A64F | LDY #$014C ;$80A650 | CODE_80A653: ; | LDA $56CA,y ;$80A653 | STA [$32],y ;$80A656 | DEY ;$80A658 | DEY ;$80A659 | BPL CODE_80A653 ;$80A65A | PLB ;$80A65C | CODE_80A65D: ; | LDA #$0001 ;$80A65D | STA $2105 ;$80A660 | LDA #$0213 ;$80A663 | STA $212C ;$80A666 | LDA #$0015 ;$80A669 | STA $210B ;$80A66C | LDA #$8020 ;$80A66F | STA $2126 ;$80A672 | SEP #$20 ;$80A675 | LDA #$30 ;$80A677 | STA $2125 ;$80A679 | LDA #$E8 ;$80A67C | STA $2132 ;$80A67E | REP #$20 ;$80A681 | LDA #$4122 ;$80A683 | STA $2130 ;$80A686 | LDA #$7C74 ;$80A689 | STA $2107 ;$80A68C | STZ $210D ;$80A68F | STZ $210D ;$80A692 | SEP #$20 ;$80A695 | LDA #$FF ;$80A697 | STA $210E ;$80A699 | STA $210E ;$80A69C | STA $2110 ;$80A69F | STA $2110 ;$80A6A2 | STZ $210F ;$80A6A5 | STZ $210F ;$80A6A8 | REP #$20 ;$80A6AB | LDA #$0028 ;$80A6AD | STA $7E8012 ;$80A6B0 | LDA #$0000 ;$80A6B4 | STA $7E8013 ;$80A6B7 | LDA #$0028 ;$80A6BB | STA $7E8015 ;$80A6BE | LDA #$8102 ;$80A6C2 | STA $7E8016 ;$80A6C5 | LDA #$0028 ;$80A6C9 | STA $7E8018 ;$80A6CC | LDA #$8102 ;$80A6D0 | STA $7E8019 ;$80A6D3 | LDA #$0028 ;$80A6D7 | STA $7E801B ;$80A6DA | LDA #$8102 ;$80A6DE | STA $7E801C ;$80A6E1 | LDA #$0028 ;$80A6E5 | STA $7E801E ;$80A6E8 | LDA #$8102 ;$80A6EC | STA $7E801F ;$80A6EF | LDA #$0001 ;$80A6F3 | STA $7E8021 ;$80A6F6 | LDA #$8102 ;$80A6FA | STA $7E8022 ;$80A6FD | LDA #$0000 ;$80A701 | STA $7E8024 ;$80A704 | SEP #$20 ;$80A708 | LDX #$2601 ;$80A70A | STX $4320 ;$80A70D | LDX #$8012 ;$80A710 | STX $4322 ;$80A713 | LDA #$7E ;$80A716 | STA $4324 ;$80A718 | STZ $4327 ;$80A71B | REP #$20 ;$80A71E | LDX #DATA_ED5E3F ;$80A720 | LDY.w #DATA_ED5E3F>>16 ;$80A723 | LDA #$0000 ;$80A726 | JSL decompress_data ;$80A729 | LDA #$5000 ;$80A72D | STA $2116 ;$80A730 | LDX #$007F ;$80A733 | LDA #$0000 ;$80A736 | LDY #$6000 ;$80A739 | JSL DMA_to_VRAM ;$80A73C | LDX #DATA_ED7507 ;$80A740 | LDY.w #DATA_ED7507>>16 ;$80A743 | LDA #$7428 ;$80A746 | JSR CODE_80AF83 ;$80A749 | LDX #DATA_ED7429 ;$80A74C | LDY.w #DATA_ED7429>>16 ;$80A74F | LDA #$74C1 ;$80A752 | JSR CODE_80AF83 ;$80A755 | LDX #DATA_ED7433 ;$80A758 | LDY.w #DATA_ED7433>>16 ;$80A75B | LDA #$7561 ;$80A75E | JSR CODE_80AF83 ;$80A761 | LDX #DATA_ED743D ;$80A764 | LDY.w #DATA_ED743D>>16 ;$80A767 | LDA #$7601 ;$80A76A | JSR CODE_80AF83 ;$80A76D | LDA $0613 ;$80A770 | BEQ CODE_80A783 ;$80A773 | LDX #DATA_ED7607 ;$80A775 | LDY.w #DATA_ED7607>>16 ;$80A778 | LDA #$7428 ;$80A77B | JSR CODE_80AF83 ;$80A77E | BRA CODE_80A795 ;$80A781 / CODE_80A783: LDX #DATA_ED7569 ;$80A783 \ LDY.w #DATA_ED7569>>16 ;$80A786 | LDA #$76C3 ;$80A789 | JSR CODE_80AF83 ;$80A78C | JSR CODE_80AC3C ;$80A78F | JSR CODE_80AC50 ;$80A792 | CODE_80A795: ; | LDX #DATA_EC83A0 ;$80A795 | LDY.w #DATA_EC83A0>>16 ;$80A798 | LDA #$0000 ;$80A79B | JSL decompress_data ;$80A79E | LDA #$1000 ;$80A7A2 | STA $2116 ;$80A7A5 | LDX #$007F ;$80A7A8 | LDA #$0000 ;$80A7AB | LDY #$8000 ;$80A7AE | JSL DMA_to_VRAM ;$80A7B1 | LDX #DATA_EC7CF0 ;$80A7B5 | LDY.w #DATA_EC7CF0>>16 ;$80A7B8 | LDA #$0000 ;$80A7BB | JSL decompress_data ;$80A7BE | LDA #$7C00 ;$80A7C2 | STA $2116 ;$80A7C5 | LDX #$007F ;$80A7C8 | LDA #$0000 ;$80A7CB | LDY #$0800 ;$80A7CE | JSL DMA_to_VRAM ;$80A7D1 | JSR CODE_80AC63 ;$80A7D5 | LDY #$0000 ;$80A7D8 | LDX #$0040 ;$80A7DB | LDA #DATA_FD3C6E ;$80A7DE | JSL DMA_palette ;$80A7E1 | STZ $2116 ;$80A7E5 | LDX.w #DATA_FB0180>>16 ;$80A7E8 | LDA #DATA_FB0180 ;$80A7EB | LDY #$0080 ;$80A7EE | JSL DMA_to_VRAM ;$80A7F1 | LDX.w #DATA_FB0400>>16 ;$80A7F5 | LDA #DATA_FB0400 ;$80A7F8 | LDY #$0080 ;$80A7FB | JSL DMA_to_VRAM ;$80A7FE | STZ $0400 ;$80A802 | STZ $0402 ;$80A805 | STZ $0404 ;$80A808 | LDA #$0300 ;$80A80B | JSR CODE_808C32 ;$80A80E | SEP #$20 ;$80A811 | LDA $4211 ;$80A813 | LDA #$80 ;$80A816 | STA $2103 ;$80A818 | LDA #$01 ;$80A81B | STA $420D ;$80A81D | REP #$20 ;$80A820 | JSR CODE_808CAC ;$80A822 | LDA #CODE_80A86C ;$80A825 | JMP CODE_80B0EE ;$80A828 / CODE_80A82B: LDA $36 ;$80A82B \ STA $0200,x ;$80A82D | LDA $34 ;$80A830 | STA $0202,x ;$80A832 | LDA $36 ;$80A835 | CLC ;$80A837 | ADC #$0008 ;$80A838 | STA $0204,x ;$80A83B | LDA $34 ;$80A83E | INC A ;$80A840 | STA $0206,x ;$80A841 | LDA $36 ;$80A844 | CLC ;$80A846 | ADC #$0800 ;$80A847 | STA $0208,x ;$80A84A | LDA $34 ;$80A84D | INC A ;$80A84F | INC A ;$80A850 | STA $020A,x ;$80A851 | LDA $36 ;$80A854 | CLC ;$80A856 | ADC #$0808 ;$80A857 | STA $020C,x ;$80A85A | LDA $34 ;$80A85D | INC A ;$80A85F | INC A ;$80A860 | INC A ;$80A861 | STA $020E,x ;$80A862 | RTS ;$80A865 / DATA_80A866: db $A2, $74, $42, $75, $E2, $75 CODE_80A86C: LDX #$01FF ;$80A86C \ TXS ;$80A86F | STZ $2102 ;$80A870 | LDA #$0401 ;$80A873 | STA $420B ;$80A876 | LDA $0613 ;$80A879 | BIT #$00E4 ;$80A87C | BNE CODE_80A8F4 ;$80A87F | LDA $2A ;$80A881 | BIT #$0003 ;$80A883 | BNE CODE_80A8B7 ;$80A886 | AND #$001C ;$80A888 | ASL A ;$80A88B | ASL A ;$80A88C | ASL A ;$80A88D | ASL A ;$80A88E | ASL A ;$80A88F | CLC ;$80A890 | ADC #$0000 ;$80A891 | STA $4312 ;$80A894 | STA $4318 ;$80A897 | STZ $2116 ;$80A89A | LDA #$0080 ;$80A89D | STA $4315 ;$80A8A0 | LDA #$1801 ;$80A8A3 | STA $4310 ;$80A8A6 | SEP #$20 ;$80A8A9 | LDA #$FB ;$80A8AB | STA $4314 ;$80A8AD | LDA #$02 ;$80A8B0 | STA $420B ;$80A8B2 | REP #$20 ;$80A8B5 | CODE_80A8B7: ; | LDA $2A ;$80A8B7 | CLC ;$80A8B9 | ADC #$0002 ;$80A8BA | BIT #$0003 ;$80A8BD | BNE CODE_80A8F4 ;$80A8C0 | AND #$001C ;$80A8C2 | ASL A ;$80A8C5 | ASL A ;$80A8C6 | ASL A ;$80A8C7 | ASL A ;$80A8C8 | ASL A ;$80A8C9 | CLC ;$80A8CA | ADC #$0400 ;$80A8CB | STA $4312 ;$80A8CE | STA $4318 ;$80A8D1 | LDA #$0040 ;$80A8D4 | STA $2116 ;$80A8D7 | LDA #$0080 ;$80A8DA | STA $4315 ;$80A8DD | LDA #$1801 ;$80A8E0 | STA $4310 ;$80A8E3 | SEP #$20 ;$80A8E6 | LDA #$FB ;$80A8E8 | STA $4314 ;$80A8EA | LDA #$02 ;$80A8ED | STA $420B ;$80A8EF | REP #$20 ;$80A8F2 | CODE_80A8F4: ; | LDA $0613 ;$80A8F4 | BIT #$0080 ;$80A8F7 | BEQ CODE_80A905 ;$80A8FA | JSR CODE_80AC3C ;$80A8FC | LDA #$0080 ;$80A8FF | TRB $0613 ;$80A902 | CODE_80A905: ; | LDA $0613 ;$80A905 | BIT #$0100 ;$80A908 | BEQ CODE_80A916 ;$80A90B | JSR CODE_80AC50 ;$80A90D | LDA #$0100 ;$80A910 | TRB $0613 ;$80A913 | CODE_80A916: ; | LDA $0613 ;$80A916 | BIT #$0004 ;$80A919 | BEQ CODE_80A926 ;$80A91C | LDA #$0006 ;$80A91E | TRB $0613 ;$80A921 | BRA CODE_80A934 ;$80A924 / CODE_80A926: LDA $0613 ;$80A926 \ BIT #$0040 ;$80A929 | BEQ CODE_80A94E ;$80A92C | LDA #$0078 ;$80A92E | TRB $0613 ;$80A931 | CODE_80A934: ; | LDA $0611 ;$80A934 | ASL A ;$80A937 | TAX ;$80A938 | LDA.l DATA_80ABE8,x ;$80A939 | STA $54 ;$80A93D | LDA #$00B0 ;$80A93F | STA $56 ;$80A942 | LDA.l DATA_80A866,x ;$80A944 | LDX $0611 ;$80A948 | JSR CODE_80ACB6 ;$80A94B | CODE_80A94E: ; | LDA $0613 ;$80A94E | BIT #$0020 ;$80A951 | BEQ CODE_80A96E ;$80A954 | LDA $0611 ;$80A956 | ASL A ;$80A959 | TAX ;$80A95A | LDA.l DATA_80A866,x ;$80A95B | LDX #DATA_ED7717 ;$80A95F | LDY.w #DATA_ED7717>>16 ;$80A962 | JSR CODE_80AF83 ;$80A965 | LDA #$0040 ;$80A968 | TSB $0613 ;$80A96B | CODE_80A96E: ; | SEP #$20 ;$80A96E | LDA $0512 ;$80A970 | STA $2100 ;$80A973 | REP #$20 ;$80A976 | LDA #CODE_80F3E6 ;$80A978 | STA $20 ;$80A97B | JSR CODE_808C3D ;$80A97D | LDA #$FF00 ;$80A980 | STA $7E8016 ;$80A983 | STA $7E8019 ;$80A987 | STA $7E801C ;$80A98B | STA $7E801F ;$80A98F | STA $7E8022 ;$80A993 | LDA $0512 ;$80A997 | BMI CODE_80A9DE ;$80A99A | LDA $0613 ;$80A99C | BIT #$0001 ;$80A99F | BNE CODE_80A9DE ;$80A9A2 | LDX $0611 ;$80A9A4 | LDA $0511 ;$80A9A7 | LSR A ;$80A9AA | BCC CODE_80A9B3 ;$80A9AB | LDA.l DATA_80AC35,x ;$80A9AD | BRA CODE_80A9CC ;$80A9B1 / CODE_80A9B3: LSR A ;$80A9B3 \ BCC CODE_80A9BC ;$80A9B4 | LDA.l DATA_80AC2E,x ;$80A9B6 | BRA CODE_80A9CC ;$80A9BA / CODE_80A9BC: LSR A ;$80A9BC \ BCC CODE_80A9C5 ;$80A9BD | LDA.l DATA_80AC27,x ;$80A9BF | BRA CODE_80A9CC ;$80A9C3 / CODE_80A9C5: LSR A ;$80A9C5 \ BCC CODE_80A9DE ;$80A9C6 | LDA.l DATA_80AC20,x ;$80A9C8 | CODE_80A9CC: ; | AND #$00FF ;$80A9CC | CMP $0611 ;$80A9CF | BEQ CODE_80A9DE ;$80A9D2 | STA $0611 ;$80A9D4 | LDA #$0633 ;$80A9D7 | JSL CODE_B58021 ;$80A9DA | CODE_80A9DE: ; | LDA $0613 ;$80A9DE | BIT #$000A ;$80A9E1 | BEQ CODE_80A9ED ;$80A9E4 | LDA $2A ;$80A9E6 | BIT #$0004 ;$80A9E8 | BEQ CODE_80AA35 ;$80A9EB | CODE_80A9ED: ; | LDA $0611 ;$80A9ED | CMP #$0004 ;$80A9F0 | BNE CODE_80A9FD ;$80A9F3 | LDA #$8000 ;$80A9F5 | LDX #$000D ;$80A9F8 | BRA CODE_80AA31 ;$80A9FB / CODE_80A9FD: LDA $0611 ;$80A9FD \ CMP #$0006 ;$80AA00 | BNE CODE_80AA0D ;$80AA03 | LDA #$FF80 ;$80AA05 | LDX #$000D ;$80AA08 | BRA CODE_80AA31 ;$80AA0B / CODE_80AA0D: CMP #$0005 ;$80AA0D \ BNE CODE_80AA1A ;$80AA10 | LDA #$8000 ;$80AA12 | LDX #$000A ;$80AA15 | BRA CODE_80AA31 ;$80AA18 / CODE_80AA1A: CMP #$0003 ;$80AA1A \ BNE CODE_80AA27 ;$80AA1D | LDA #$FF80 ;$80AA1F | LDX #$000A ;$80AA22 | BRA CODE_80AA31 ;$80AA25 / CODE_80AA27: STA $32 ;$80AA27 \ ASL A ;$80AA29 | SEC ;$80AA2A | ADC $32 ;$80AA2B | TAX ;$80AA2D | LDA #$0000 ;$80AA2E | CODE_80AA31: ; | STA $7E8015,x ;$80AA31 | CODE_80AA35: ; | LDA $0613 ;$80AA35 | BIT #$0008 ;$80AA38 | BEQ CODE_80AA63 ;$80AA3B | LDA $2A ;$80AA3D | BIT #$0008 ;$80AA3F | BEQ CODE_80AA63 ;$80AA42 | LDA #$FF80 ;$80AA44 | STA $7E801F ;$80AA47 | LDA $0613 ;$80AA4B | BIT #$0010 ;$80AA4E | BEQ CODE_80AA63 ;$80AA51 | LDA $0615 ;$80AA53 | ASL A ;$80AA56 | SEC ;$80AA57 | ADC $0615 ;$80AA58 | TAX ;$80AA5B | LDA #$0000 ;$80AA5C | STA $7E8015,x ;$80AA5F | CODE_80AA63: ; | LDA $0613 ;$80AA63 | BIT #$0002 ;$80AA66 | BEQ CODE_80AA79 ;$80AA69 | LDA $2A ;$80AA6B | BIT #$0008 ;$80AA6D | BEQ CODE_80AA79 ;$80AA70 | LDA #$8000 ;$80AA72 | STA $7E801F ;$80AA75 | CODE_80AA79: ; | LDA $0510 ;$80AA79 | BIT #$D0C0 ;$80AA7C | BEQ CODE_80AA89 ;$80AA7F | LDA $0512 ;$80AA81 | CMP #$000F ;$80AA84 | BEQ CODE_80AA8C ;$80AA87 | CODE_80AA89: ; | JMP CODE_80AB58 ;$80AA89 / CODE_80AA8C: LDA $0611 ;$80AA8C \ CMP #$0005 ;$80AA8F | BNE CODE_80AA97 ;$80AA92 | JMP CODE_80AB3B ;$80AA94 / CODE_80AA97: CMP #$0003 ;$80AA97 \ BEQ CODE_80AB0D ;$80AA9A | CMP #$0004 ;$80AA9C | BEQ CODE_80AAB8 ;$80AA9F | CMP #$0006 ;$80AAA1 | BEQ CODE_80AAD1 ;$80AAA4 | LDA $0613 ;$80AAA6 | BIT #$0008 ;$80AAA9 | BEQ CODE_80AAFC ;$80AAAC | BIT #$0010 ;$80AAAE | BEQ CODE_80AAE7 ;$80AAB1 | JSR CODE_80ABA0 ;$80AAB3 | BRA CODE_80AA89 ;$80AAB6 / CODE_80AAB8: LDA #$0634 ;$80AAB8 \ JSL CODE_B58021 ;$80AABB | LDA $0617 ;$80AABF | EOR #$0001 ;$80AAC2 | STA $0617 ;$80AAC5 | LDA #$0080 ;$80AAC8 | STA $0613 ;$80AACB | JMP CODE_80AB58 ;$80AACE / CODE_80AAD1: LDA #$0634 ;$80AAD1 \ JSL CODE_B58021 ;$80AAD4 | LDA $1E ;$80AAD8 | EOR #$0001 ;$80AADA | STA $1E ;$80AADD | LDA #$0100 ;$80AADF | STA $0613 ;$80AAE2 | BRA CODE_80AB58 ;$80AAE5 / CODE_80AAE7: LDA #$0010 ;$80AAE7 \ TSB $0613 ;$80AAEA | LDA #$0634 ;$80AAED | JSL CODE_B58021 ;$80AAF0 | LDA $0611 ;$80AAF4 | STA $0615 ;$80AAF7 | BRA CODE_80AB58 ;$80AAFA / CODE_80AAFC: BIT #$0002 ;$80AAFC \ BEQ CODE_80AB2C ;$80AAFF | LDA #$0634 ;$80AB01 | JSL CODE_B58021 ;$80AB04 | JSR CODE_80AB7B ;$80AB08 | BRA CODE_80AB58 ;$80AB0B / CODE_80AB0D: LDA #$0634 ;$80AB0D \ JSL CODE_B58021 ;$80AB10 | LDA $0613 ;$80AB14 | BIT #$0008 ;$80AB17 | BEQ CODE_80AB24 ;$80AB1A | LDA #$0078 ;$80AB1C | TRB $0613 ;$80AB1F | BRA CODE_80AB58 ;$80AB22 / CODE_80AB24: LDA #$0008 ;$80AB24 \ STA $0613 ;$80AB27 | BRA CODE_80AB58 ;$80AB2A / CODE_80AB2C: LDA #$0634 ;$80AB2C \ JSL CODE_B58021 ;$80AB2F | LDA #$820F ;$80AB33 | STA $0512 ;$80AB36 | BRA CODE_80AB58 ;$80AB39 / CODE_80AB3B: LDA #$0634 ;$80AB3B \ JSL CODE_B58021 ;$80AB3E | LDA $0613 ;$80AB42 | BIT #$0002 ;$80AB45 | BEQ CODE_80AB52 ;$80AB48 | LDA #$0006 ;$80AB4A | TRB $0613 ;$80AB4D | BRA CODE_80AB58 ;$80AB50 / CODE_80AB52: LDA #$0002 ;$80AB52 \ STA $0613 ;$80AB55 | CODE_80AB58: ; | JSR CODE_80B061 ;$80AB58 | INC $2A ;$80AB5B | LDA $0512 ;$80AB5D | CMP #$8201 ;$80AB60 | BNE CODE_80AB70 ;$80AB63 | LDA $0613 ;$80AB65 | BNE CODE_80AB6D ;$80AB68 | JMP CODE_80ABEE ;$80AB6A / CODE_80AB6D: JMP CODE_8090BB ;$80AB6D / CODE_80AB70: JSR CODE_808CAC ;$80AB70 \ LDA #CODE_80A86C ;$80AB73 | STA $20 ;$80AB76 | CODE_80AB78: ; | WAI ;$80AB78 | BRA CODE_80AB78 ;$80AB79 / CODE_80AB7B: LDA $0611 ;$80AB7B \ ASL A ;$80AB7E | TAX ;$80AB7F | LDA.l DATA_80ABE8,x ;$80AB80 | STA $32 ;$80AB84 | LDA #$00B0 ;$80AB86 | STA $34 ;$80AB89 | LDY #$0000 ;$80AB8B | LDA [$32],y ;$80AB8E | INC A ;$80AB90 | STA [$32],y ;$80AB91 | LDA #$0004 ;$80AB93 | TSB $0613 ;$80AB96 | LDA $0611 ;$80AB99 | JSR CODE_80ACA5 ;$80AB9C | RTS ;$80AB9F / CODE_80ABA0: LDA $0611 ;$80ABA0 \ JSL CODE_BBC53A ;$80ABA3 | BCS CODE_80ABE7 ;$80ABA7 | LDA #$0634 ;$80ABA9 | JSL CODE_B58021 ;$80ABAC | LDA $0611 ;$80ABB0 | ASL A ;$80ABB3 | TAX ;$80ABB4 | LDA.l DATA_80ABE8,x ;$80ABB5 | STA $32 ;$80ABB9 | LDA #$00B0 ;$80ABBB | STA $34 ;$80ABBE | LDA $0615 ;$80ABC0 | ASL A ;$80ABC3 | TAX ;$80ABC4 | LDA.l DATA_80ABE8,x ;$80ABC5 | STA $36 ;$80ABC9 | LDA #$00B0 ;$80ABCB | STA $38 ;$80ABCE | LDY #$02A6 ;$80ABD0 | CODE_80ABD3: ; | LDA [$36],y ;$80ABD3 | STA [$32],y ;$80ABD5 | DEY ;$80ABD7 | DEY ;$80ABD8 | BPL CODE_80ABD3 ;$80ABD9 | LDA $0611 ;$80ABDB | JSR CODE_80ACA5 ;$80ABDE | LDA #$0020 ;$80ABE1 | TSB $0613 ;$80ABE4 | CODE_80ABE7: ; | RTS ;$80ABE7 / DATA_80ABE8: db $08, $60, $B0, $62, $58, $65 CODE_80ABEE: LDA $0611 ;$80ABEE \ JSL CODE_BBC53A ;$80ABF1 | BCC CODE_80AC1C ;$80ABF5 | LDA $0611 ;$80ABF7 | ASL A ;$80ABFA | TAX ;$80ABFB | LDA.l DATA_80ABE8,x ;$80ABFC | STA $32 ;$80AC00 | LDA #$00B0 ;$80AC02 | STA $34 ;$80AC05 | PEA $807E ;$80AC07 | PLB ;$80AC0A | LDY #$02A8 ;$80AC0B | CODE_80AC0E: ; | LDA [$32],y ;$80AC0E | STA $56CA,y ;$80AC10 | DEY ;$80AC13 | DEY ;$80AC14 | BPL CODE_80AC0E ;$80AC15 | PLB ;$80AC17 | JML CODE_808F04 ;$80AC18 / CODE_80AC1C: JML CODE_8097CD ;$80AC1C / DATA_80AC20: db $00, $00, $01, $02, $05, $02, $03 DATA_80AC27: db $01, $02, $03, $06, $04, $04, $06 DATA_80AC2E: db $00, $01, $02, $03, $06, $03, $06 DATA_80AC35: db $00, $01, $02, $05, $04, $05, $04 CODE_80AC3C: LDA $0617 ;$80AC3C \ ASL A ;$80AC3F | TAX ;$80AC40 | LDA.l DATA_ED7447,x ;$80AC41 | TAX ;$80AC45 | LDY #$00ED ;$80AC46 | LDA #$7731 ;$80AC49 | JSR CODE_80AF83 ;$80AC4C | RTS ;$80AC4F / CODE_80AC50: LDA $1E ;$80AC50 \ ASL A ;$80AC52 | TAX ;$80AC53 | LDA.l DATA_ED7893,x ;$80AC54 | TAX ;$80AC58 | LDY #$00ED ;$80AC59 | LDA #$7723 ;$80AC5C | JSR CODE_80AF83 ;$80AC5F | RTS ;$80AC62 / CODE_80AC63: LDA #$00B0 ;$80AC63 \ STA $56 ;$80AC66 | LDA #$0000 ;$80AC68 | JSR CODE_80ACA5 ;$80AC6B | LDA #$6008 ;$80AC6E | STA $54 ;$80AC71 | LDA #$74A2 ;$80AC73 | LDX #$0000 ;$80AC76 | JSR CODE_80ACB6 ;$80AC79 | LDA #$0001 ;$80AC7C | JSR CODE_80ACA5 ;$80AC7F | LDA #$62B0 ;$80AC82 | STA $54 ;$80AC85 | LDA #$7542 ;$80AC87 | LDX #$0001 ;$80AC8A | JSR CODE_80ACB6 ;$80AC8D | LDA #$0002 ;$80AC90 | JSR CODE_80ACA5 ;$80AC93 | LDA #$6558 ;$80AC96 | STA $54 ;$80AC99 | LDA #$75E2 ;$80AC9B | LDX #$0002 ;$80AC9E | JSR CODE_80ACB6 ;$80ACA1 | RTS ;$80ACA4 / CODE_80ACA5: PHX ;$80ACA5 \ PHY ;$80ACA6 | JSL CODE_BBC53A ;$80ACA7 | LDA #$0000 ;$80ACAB | ADC #$0000 ;$80ACAE | STA $50 ;$80ACB1 | PLY ;$80ACB3 | PLX ;$80ACB4 | RTS ;$80ACB5 / CODE_80ACB6: STA $32 ;$80ACB6 \ STX $3C ;$80ACB8 | TXA ;$80ACBA | LDA $50 ;$80ACBB | BNE CODE_80AD00 ;$80ACBD | LDA #$3208 ;$80ACBF | STA $34 ;$80ACC2 | LDA #$3880 ;$80ACC4 | LDX $3C ;$80ACC7 | CODE_80ACC9: ; | BEQ CODE_80ACD2 ;$80ACC9 | CLC ;$80ACCB | ADC #$2800 ;$80ACCC | DEX ;$80ACCF | BRA CODE_80ACC9 ;$80ACD0 / CODE_80ACD2: STA $36 ;$80ACD2 \ LDA $3C ;$80ACD4 | ASL A ;$80ACD6 | ASL A ;$80ACD7 | ASL A ;$80ACD8 | ASL A ;$80ACD9 | TAX ;$80ACDA | JSR CODE_80A82B ;$80ACDB | TXA ;$80ACDE | CLC ;$80ACDF | ADC #$0030 ;$80ACE0 | TAX ;$80ACE3 | LDA $36 ;$80ACE4 | CLC ;$80ACE6 | ADC #$0028 ;$80ACE7 | STA $36 ;$80ACEA | LDA #$3008 ;$80ACEC | STA $34 ;$80ACEF | JSR CODE_80A82B ;$80ACF1 | LDA $32 ;$80ACF4 | LDX #DATA_ED7717 ;$80ACF6 | LDY.w #DATA_ED7717>>16 ;$80ACF9 | JSR CODE_80AF83 ;$80ACFC | RTS ;$80ACFF / CODE_80AD00: LDA #$3204 ;$80AD00 \ STA $34 ;$80AD03 | LDA #$3880 ;$80AD05 | LDX $3C ;$80AD08 | CODE_80AD0A: ; | BEQ CODE_80AD13 ;$80AD0A | CLC ;$80AD0C | ADC #$2800 ;$80AD0D | DEX ;$80AD10 | BRA CODE_80AD0A ;$80AD11 / CODE_80AD13: STA $36 ;$80AD13 \ LDA $3C ;$80AD15 | ASL A ;$80AD17 | ASL A ;$80AD18 | ASL A ;$80AD19 | ASL A ;$80AD1A | TAX ;$80AD1B | JSR CODE_80A82B ;$80AD1C | TXA ;$80AD1F | CLC ;$80AD20 | ADC #$0030 ;$80AD21 | TAX ;$80AD24 | LDA $36 ;$80AD25 | CLC ;$80AD27 | ADC #$0028 ;$80AD28 | STA $36 ;$80AD2B | LDA #$3000 ;$80AD2D | STA $34 ;$80AD30 | JSR CODE_80A82B ;$80AD32 | LDY #$0005 ;$80AD35 | LDA [$54],y ;$80AD38 | AND #$00FF ;$80AD3A | ASL A ;$80AD3D | TAX ;$80AD3E | LDA.l DATA_ED7639,x ;$80AD3F | TAX ;$80AD43 | LDY #$00ED ;$80AD44 | LDA $32 ;$80AD47 | JSR CODE_80AF83 ;$80AD49 | LDA $32 ;$80AD4C | SEC ;$80AD4E | SBC #$0058 ;$80AD4F | STA $32 ;$80AD52 | LDY #$0005 ;$80AD54 | LDA [$54],y ;$80AD57 | AND #$00FF ;$80AD59 | CMP #$0002 ;$80AD5C | BNE CODE_80AD88 ;$80AD5F | LDA $54 ;$80AD61 | CLC ;$80AD63 | ADC #$0006 ;$80AD64 | STA $54 ;$80AD67 | LDA $32 ;$80AD69 | SEC ;$80AD6B | SBC #$0020 ;$80AD6C | STA $32 ;$80AD6F | JSR CODE_80AD94 ;$80AD71 | LDA $32 ;$80AD74 | SEC ;$80AD76 | SBC #$0013 ;$80AD77 | STA $32 ;$80AD7A | LDA $54 ;$80AD7C | CLC ;$80AD7E | ADC #$014E ;$80AD7F | STA $54 ;$80AD82 | JSR CODE_80AD94 ;$80AD84 | RTS ;$80AD87 / CODE_80AD88: LDA $54 ;$80AD88 \ CLC ;$80AD8A | ADC #$0006 ;$80AD8B | STA $54 ;$80AD8E | JSR CODE_80AD94 ;$80AD90 | RTS ;$80AD93 / CODE_80AD94: LDA $32 ;$80AD94 \ PHA ;$80AD96 | LDY #$0000 ;$80AD97 | LDA [$54],y ;$80AD9A | STA $32 ;$80AD9C | LDY #$0002 ;$80AD9E | LDA [$54],y ;$80ADA1 | STA $34 ;$80ADA3 | CMP #$0149 ;$80ADA5 | BEQ CODE_80ADAE ;$80ADA8 | BCC CODE_80ADBF ;$80ADAA | BRA CODE_80ADB5 ;$80ADAC / CODE_80ADAE: LDA $32 ;$80ADAE \ CMP #$88F0 ;$80ADB0 | BCC CODE_80ADBF ;$80ADB3 | CODE_80ADB5: ; | LDA #$0149 ;$80ADB5 | STA $34 ;$80ADB8 | LDA #$88F0 ;$80ADBA | STA $32 ;$80ADBD | CODE_80ADBF: ; | LDA $32 ;$80ADBF | STA $3E ;$80ADC1 | LDA $34 ;$80ADC3 | STA $40 ;$80ADC5 | LDA #$003C ;$80ADC7 | STA $36 ;$80ADCA | JSL CODE_B3F42D ;$80ADCC | LDA $38 ;$80ADD0 | STA $32 ;$80ADD2 | LDA $3A ;$80ADD4 | STA $34 ;$80ADD6 | LDA #$003C ;$80ADD8 | STA $36 ;$80ADDB | JSL CODE_B3F42D ;$80ADDD | LDA $38 ;$80ADE1 | STA $32 ;$80ADE3 | LDA $3A ;$80ADE5 | STA $34 ;$80ADE7 | LDA #$003C ;$80ADE9 | STA $36 ;$80ADEC | JSL CODE_B3F42D ;$80ADEE | PLA ;$80ADF2 | STA $32 ;$80ADF3 | LDA $38 ;$80ADF5 | ASL A ;$80ADF7 | TAX ;$80ADF8 | LDA.l DATA_B3DE2C,x ;$80ADF9 | AND #$00FF ;$80ADFD | JSR CODE_80AF53 ;$80AE00 | LDA $38 ;$80AE03 | SEC ;$80AE05 | ROL A ;$80AE06 | TAX ;$80AE07 | LDA.l DATA_B3DE2C,x ;$80AE08 | AND #$00FF ;$80AE0C | JSR CODE_80AF53 ;$80AE0F | LDA #$000A ;$80AE12 | JSR CODE_80AF53 ;$80AE15 | LDA $32 ;$80AE18 | PHA ;$80AE1A | LDA $38 ;$80AE1B | SEP #$20 ;$80AE1D | STA $211C ;$80AE1F | LDA #$78 ;$80AE22 | STA $211B ;$80AE24 | LDA #$69 ;$80AE27 | STA $211B ;$80AE29 | REP #$20 ;$80AE2C | LDA $2134 ;$80AE2E | STA $32 ;$80AE31 | LDA $2136 ;$80AE33 | AND #$00FF ;$80AE36 | ASL $32 ;$80AE39 | ROL A ;$80AE3B | ASL $32 ;$80AE3C | ROL A ;$80AE3E | ASL $32 ;$80AE3F | ROL A ;$80AE41 | STA $34 ;$80AE42 | LDA $3E ;$80AE44 | SEC ;$80AE46 | SBC $32 ;$80AE47 | STA $32 ;$80AE49 | LDA $40 ;$80AE4B | SBC $34 ;$80AE4D | STA $34 ;$80AE4F | LDA #$003C ;$80AE51 | STA $36 ;$80AE54 | JSL CODE_B3F42D ;$80AE56 | LDA $38 ;$80AE5A | STA $32 ;$80AE5C | LDA $3A ;$80AE5E | STA $34 ;$80AE60 | LDA #$003C ;$80AE62 | STA $36 ;$80AE65 | JSL CODE_B3F42D ;$80AE67 | PLA ;$80AE6B | STA $32 ;$80AE6C | LDA $38 ;$80AE6E | ASL A ;$80AE70 | TAX ;$80AE71 | LDA.l DATA_B3DE2C,x ;$80AE72 | JSR CODE_80AF53 ;$80AE76 | LDA $38 ;$80AE79 | SEC ;$80AE7B | ROL A ;$80AE7C | TAX ;$80AE7D | LDA.l DATA_B3DE2C,x ;$80AE7E | AND #$00FF ;$80AE82 | JSR CODE_80AF53 ;$80AE85 | INC $32 ;$80AE88 | INC $32 ;$80AE8A | INC $32 ;$80AE8C | LDY #$0005 ;$80AE8E | LDA [$54],y ;$80AE91 | AND #$00FF ;$80AE93 | ASL A ;$80AE96 | TAX ;$80AE97 | LDA.l DATA_B3DE2C,x ;$80AE98 | JSR CODE_80AF53 ;$80AE9C | LDY #$0005 ;$80AE9F | LDA [$54],y ;$80AEA2 | AND #$00FF ;$80AEA4 | SEC ;$80AEA7 | ROL A ;$80AEA8 | TAX ;$80AEA9 | LDA.l DATA_B3DE2C,x ;$80AEAA | JSR CODE_80AF53 ;$80AEAE | INC $32 ;$80AEB1 | INC $32 ;$80AEB3 | INC $32 ;$80AEB5 | LDY #$0006 ;$80AEB7 | LDA [$54],y ;$80AEBA | AND #$00FF ;$80AEBC | ASL A ;$80AEBF | TAX ;$80AEC0 | LDA.l DATA_B3DE2C,x ;$80AEC1 | JSR CODE_80AF53 ;$80AEC5 | LDY #$0006 ;$80AEC8 | LDA [$54],y ;$80AECB | AND #$00FF ;$80AECD | SEC ;$80AED0 | ROL A ;$80AED1 | TAX ;$80AED2 | LDA.l DATA_B3DE2C,x ;$80AED3 | JSR CODE_80AF53 ;$80AED7 | INC $32 ;$80AEDA | LDY #$0004 ;$80AEDC | LDA [$54],y ;$80AEDF | AND #$00FF ;$80AEE1 | CMP #$0064 ;$80AEE4 | BCC CODE_80AF19 ;$80AEE7 | LDA #$0001 ;$80AEE9 | JSR CODE_80AF53 ;$80AEEC | LDY #$0004 ;$80AEEF | LDA [$54],y ;$80AEF2 | AND #$00FF ;$80AEF4 | SEC ;$80AEF7 | SBC #$0064 ;$80AEF8 | ASL A ;$80AEFB | TAX ;$80AEFC | LDA.l DATA_B3DE2C,x ;$80AEFD | JSR CODE_80AF53 ;$80AF01 | LDY #$0004 ;$80AF04 | LDA [$54],y ;$80AF07 | AND #$00FF ;$80AF09 | SEC ;$80AF0C | SBC #$0064 ;$80AF0D | SEC ;$80AF10 | ROL A ;$80AF11 | TAX ;$80AF12 | LDA.l DATA_B3DE2C,x ;$80AF13 | BRA CODE_80AF44 ;$80AF17 / CODE_80AF19: LDA #$000C ;$80AF19 \ JSR CODE_80AF53 ;$80AF1C | LDY #$0004 ;$80AF1F | LDA [$54],y ;$80AF22 | AND #$00FF ;$80AF24 | ASL A ;$80AF27 | TAX ;$80AF28 | LDA.l DATA_B3DE2C,x ;$80AF29 | BNE CODE_80AF32 ;$80AF2D | LDA #$000C ;$80AF2F | CODE_80AF32: ; | JSR CODE_80AF53 ;$80AF32 | LDY #$0004 ;$80AF35 | LDA [$54],y ;$80AF38 | AND #$00FF ;$80AF3A | SEC ;$80AF3D | ROL A ;$80AF3E | TAX ;$80AF3F | LDA.l DATA_B3DE2C,x ;$80AF40 | CODE_80AF44: ; | JSR CODE_80AF53 ;$80AF44 | LDX #DATA_ED7889 ;$80AF47 | LDY.w #DATA_ED7889>>16 ;$80AF4A | LDA $32 ;$80AF4D | JSR CODE_80AF83 ;$80AF4F | RTS ;$80AF52 / CODE_80AF53: AND #$00FF ;$80AF53 \ ASL A ;$80AF56 | TAX ;$80AF57 | LDA.l DATA_ED783B,x ;$80AF58 | STA $34 ;$80AF5C | LDA #$00ED ;$80AF5E | STA $36 ;$80AF61 | LDY #$0000 ;$80AF63 | LDA $32 ;$80AF66 | STA $2116 ;$80AF68 | LDA [$34],y ;$80AF6B | STA $2118 ;$80AF6D | LDA $32 ;$80AF70 | CLC ;$80AF72 | ADC #$0020 ;$80AF73 | STA $2116 ;$80AF76 | INY ;$80AF79 | INY ;$80AF7A | LDA [$34],y ;$80AF7B | STA $2118 ;$80AF7D | INC $32 ;$80AF80 | RTS ;$80AF82 / CODE_80AF83: STA $32 ;$80AF83 \ STX $34 ;$80AF85 | STY $36 ;$80AF87 | LDY #$0000 ;$80AF89 | LDA [$34],y ;$80AF8C | AND #$00FF ;$80AF8E | STA $38 ;$80AF91 | INY ;$80AF93 | LDA [$34],y ;$80AF94 | AND #$00FF ;$80AF96 | STA $3A ;$80AF99 | INY ;$80AF9B | LDA $32 ;$80AF9C | CODE_80AF9E: ; | STA $2116 ;$80AF9E | LDX $38 ;$80AFA1 | CODE_80AFA3: ; | LDA [$34],y ;$80AFA3 | STA $2118 ;$80AFA5 | INY ;$80AFA8 | INY ;$80AFA9 | DEX ;$80AFAA | BNE CODE_80AFA3 ;$80AFAB | LDA $32 ;$80AFAD | CLC ;$80AFAF | ADC #$0020 ;$80AFB0 | STA $32 ;$80AFB3 | DEC $3A ;$80AFB5 | BNE CODE_80AF9E ;$80AFB7 | RTS ;$80AFB9 / upload_mode_7_tilemap: ; \ STA $34 ;$80AFBA |\ Set pointer to mode 7 tilemap data STX $36 ;$80AFBC |/ STZ $39 ;$80AFBE | Clear the SEP #$20 ;$80AFC0 | STZ $2115 ;$80AFC2 | Set VRAM increment after $2118 writes REP #$20 ;$80AFC5 | LDY #$0000 ;$80AFC7 | Clear the index that will be used for mode 7 tilemap data LDA [$34],y ;$80AFCA |\ Load the column and row lengths STA $38 ;$80AFCC |/ INY ;$80AFCE |\ Advanced passed the column and row lengths INY ;$80AFCF |/ .next_row ; | LDA $32 ;$80AFD0 |\ Set VRAM address STA $2116 ;$80AFD2 |/ LDA $38 ;$80AFD5 |\ Load the number of columns per row AND #$00FF ;$80AFD7 | | TAX ;$80AFDA |/ .next_column ; | SEP #$20 ;$80AFDB | LDA [$34],y ;$80AFDD |\ Copy one byte of mode 7 tilemap data to VRAM STA $2118 ;$80AFDF |/ REP #$20 ;$80AFE2 | INY ;$80AFE4 | Advance index to mode 7 tilemap data DEX ;$80AFE5 |\ Decrement the column counter BNE .next_column ;$80AFE6 |/ Branch until all columns are uploaded LDA $32 ;$80AFE8 |\ Advance VRAM address to the next row of tiles CLC ;$80AFEA | | ADC #$0080 ;$80AFEB | | STA $32 ;$80AFEE |/ DEC $39 ;$80AFF0 |\ Decrement row count BNE .next_row ;$80AFF2 |/ Branch until all rows are uploaded SEP #$20 ;$80AFF4 | LDA #$80 ;$80AFF6 |\ Set VRAM increment after $2119 writes STA $2115 ;$80AFF8 |/ REP #$20 ;$80AFFB | RTS ;$80AFFD / CODE_80AFFE: STZ $4C ;$80AFFE \ LDA $0502 ;$80B000 | AND #$0007 ;$80B003 | BEQ CODE_80B01D ;$80B006 | SEP #$20 ;$80B008 | LDY #$0010 ;$80B00A | CODE_80B00D: ; | LDA $4016 ;$80B00D | DEY ;$80B010 | BNE CODE_80B00D ;$80B011 | REP #$20 ;$80B013 | STZ $0502 ;$80B015 | STZ $0506 ;$80B018 | BRA CODE_80B02F ;$80B01B / CODE_80B01D: SEP #$20 ;$80B01D \ LDA $4016 ;$80B01F | REP #$20 ;$80B022 | BIT #$0001 ;$80B024 | BNE CODE_80B02F ;$80B027 | STZ $0502 ;$80B029 | STZ $0506 ;$80B02C | CODE_80B02F: ; | LDA $0504 ;$80B02F | AND #$0007 ;$80B032 | BEQ CODE_80B04C ;$80B035 | SEP #$20 ;$80B037 | LDY #$0010 ;$80B039 | CODE_80B03C: ; | LDA $4017 ;$80B03C | DEY ;$80B03F | BNE CODE_80B03C ;$80B040 | REP #$20 ;$80B042 | STZ $0504 ;$80B044 | STZ $0508 ;$80B047 | BRA CODE_80B05E ;$80B04A / CODE_80B04C: SEP #$20 ;$80B04C \ LDA $4017 ;$80B04E | REP #$20 ;$80B051 | BIT #$0001 ;$80B053 | BNE CODE_80B060 ;$80B056 | STZ $0504 ;$80B058 | STZ $0508 ;$80B05B | CODE_80B05E: ; | INC $4C ;$80B05E | CODE_80B060: ; | RTS ;$80B060 / CODE_80B061: SEP #$20 ;$80B061 \ LDA #$01 ;$80B063 | CODE_80B065: ; | BIT $4212 ;$80B065 | BNE CODE_80B065 ;$80B068 | REP #$20 ;$80B06A | LDA $4218 ;$80B06C | EOR $0502 ;$80B06F | AND $4218 ;$80B072 | STA $0506 ;$80B075 | LDA $4218 ;$80B078 | STA $0502 ;$80B07B | LDA $421A ;$80B07E | EOR $0504 ;$80B081 | AND $421A ;$80B084 | STA $0508 ;$80B087 | LDA $421A ;$80B08A | STA $0504 ;$80B08D | JSR CODE_80AFFE ;$80B090 | LDA $060D ;$80B093 | CMP #$0002 ;$80B096 | BNE CODE_80B0B1 ;$80B099 | LDA $060F ;$80B09B | ASL A ;$80B09E | TAX ;$80B09F | LDA $0502,x ;$80B0A0 | STA $050E ;$80B0A3 | LDA $0506,x ;$80B0A6 | STA $0510 ;$80B0A9 | JSR CODE_80B0DB ;$80B0AC | BRA CODE_80B0DA ;$80B0AF / CODE_80B0B1: CMP #$0001 ;$80B0B1 \ BNE CODE_80B0CE ;$80B0B4 | LDA $08A2 ;$80B0B6 | AND #$0002 ;$80B0B9 | TAX ;$80B0BC | LDA $0502,x ;$80B0BD | STA $050E ;$80B0C0 | LDA $0506,x ;$80B0C3 | STA $0510 ;$80B0C6 | JSR CODE_80B0DB ;$80B0C9 | BRA CODE_80B0DA ;$80B0CC / CODE_80B0CE: LDA $0502 ;$80B0CE \ STA $050E ;$80B0D1 | LDA $0506 ;$80B0D4 | STA $0510 ;$80B0D7 | CODE_80B0DA: ; | RTS ;$80B0DA / CODE_80B0DB: LDA $0502 ;$80B0DB \ ORA $0504 ;$80B0DE | STA $0502 ;$80B0E1 | LDA $0506 ;$80B0E4 | ORA $0508 ;$80B0E7 | STA $0506 ;$80B0EA | RTS ;$80B0ED / CODE_80B0EE: STA $20 ;$80B0EE \ SEP #$20 ;$80B0F0 | LDA $4210 ;$80B0F2 | CODE_80B0F5: ; | LDA $4210 ;$80B0F5 | AND #$80 ;$80B0F8 | BNE CODE_80B0F5 ;$80B0FA | SEP #$20 ;$80B0FC | LDA #$B1 ;$80B0FE | STA $4200 ;$80B100 | STZ $4016 ;$80B103 | CODE_80B106: ; | WAI ;$80B106 | BRA CODE_80B106 ;$80B107 / clear_VRAM_block: STA $2116 ;$80B109 \ Store address to VRAM block to clear LDA #.VRAM_zero_fill ;$80B10C |\ Set DMA source word (uses low byte of size as fixed data) STA $4302 ;$80B10F | | STA $4308 ;$80B112 |/ %offset(.VRAM_zero_fill, 1) ; | Generate a label for fixed VRAM data LDA #$0800 ;$80B115 |\ Set DMA size to $0800 STA $4305 ;$80B118 |/ LDA #$1809 ;$80B11B |\ Set DMA destination to $2118, two register write once, fixed STA $4300 ;$80B11E |/ SEP #$20 ;$80B121 | STZ $4304 ;$80B123 | Set DMA source bank to 00. LDA #$01 ;$80B126 |\ Enable channel 1 DMA STA $420B ;$80B128 |/ REP #$20 ;$80B12B | RTS ;$80B12D / VRAM block is clear, return DATA_80B12E: db $00, $17, $1B, $1F, $00, $0C, $11, $17 db $00, $07, $0C, $11, $00, $02, $03, $07 CODE_80B13E: SEP #$20 ;$80B13E \ LDA $2F ;$80B140 | PHA ;$80B142 | ASL A ;$80B143 | LDA $30 ;$80B144 | ROL $30 ;$80B146 | ROL $30 ;$80B148 | EOR $31 ;$80B14A | STA $2F ;$80B14C | PLA ;$80B14E | STA $31 ;$80B14F | EOR $30 ;$80B151 | PHA ;$80B153 | LDA $2E ;$80B154 | STA $30 ;$80B156 | PLA ;$80B158 | STA $2E ;$80B159 | REP #$20 ;$80B15B | RTS ;$80B15D / update_mode_7: SEP #$30 ;$80B15E \ JSR .scale_and_rotate ;$80B160 | Apply scale and rotation transformations LDA $86 ;$80B163 |\ Write mode 7 matrix A parameter STA $211B ;$80B165 | | LDA $87 ;$80B168 | | STA $211B ;$80B16A |/ LDA $82 ;$80B16D |\ Write mode 7 matrix B parameter STA $211C ;$80B16F | | LDA $83 ;$80B172 | | STA $211C ;$80B174 |/ LDA $80 ;$80B177 |\ Write mode 7 matrix C parameter STA $211D ;$80B179 | | LDA $81 ;$80B17C | | STA $211D ;$80B17E |/ LDA $7E ;$80B181 |\ Write mode 7 matrix D parameter STA $211E ;$80B183 | | LDA $7F ;$80B186 | | STA $211E ;$80B188 |/ REP #$30 ;$80B18B | RTL ;$80B18D / .scale_and_rotate ; \ LDY $7C ;$80B18E |\ Load horizontal scale LDX $7D ;$80B190 |/ LDA $84 ;$80B192 | Load rotation amount JSR .multiply_cos ;$80B194 | Multiply scale by the cos of the rotation amount STY $86 ;$80B197 |\ Store mode 7 parameter A STX $87 ;$80B199 |/ LDY $7C ;$80B19B |\ Load horizontal scale LDX $7D ;$80B19D |/ LDA $84 ;$80B19F | Load rotation amount JSR .multiply_sin ;$80B1A1 | Multiply scale by the sin of the rotation amount STY $82 ;$80B1A4 |\ Store mode 7 parameter B STX $83 ;$80B1A6 |/ LDY $7A ;$80B1A8 |\ Load vertical scale LDX $7B ;$80B1AA |/ LDA $84 ;$80B1AC | Load rotation amount JSR .multiply_sin ;$80B1AE | Multiply scale by the sin of the rotation amount TYA ;$80B1B1 |\ Flip the sign of the parameter C and store EOR #$FF ;$80B1B2 | |\ Xor the low and high byte with $FF to flip the sign STA $80 ;$80B1B4 | | | Store the parameter low byte TXA ;$80B1B6 | | | EOR #$FF ;$80B1B7 | | | Store the parameter high byte STA $81 ;$80B1B9 | |/ INC $80 ;$80B1BB | |\ Increment to finish sign flip BNE .skip_negative_carry ;$80B1BD | | | Branch if the low byte wasn't overflowed INC $81 ;$80B1BF | |/ .skip_negative_carry ; |/ LDY $7A ;$80B1C1 |\ Load vertical scale LDX $7B ;$80B1C3 |/ LDA $84 ;$80B1C5 | Load rotation amount JSR .multiply_cos ;$80B1C7 | Multiply scale by the cos of the rotation amount STY $7E ;$80B1CA |\ Store mode 7 parameter D STX $7F ;$80B1CC |/ RTS ;$80B1CE / .multiply_sin ; \ STY $211B ;$80B1CF |\ Store scale as muliplication operand STX $211B ;$80B1D2 |/ JSR .get_sin ;$80B1D5 | Lookup sin from rotation amount BCS ..optimize_90_degrees ;$80B1D8 | If carry is set, rotation by 90 degrees (1), skip multiply STA $211C ;$80B1DA | Store sin of the rotation amount as muliplication operand LDA $2134 ;$80B1DD |\ Bit shift the long returned left by 1. ASL A ;$80B1E0 | | This shift improves accuracy when scale isn't very large LDA $2135 ;$80B1E1 | | ROL A ;$80B1E4 | | TAY ;$80B1E5 | | Move the low byte to Y LDA $2136 ;$80B1E6 | | ROL A ;$80B1E9 | | TAX ;$80B1EA | | Move the high byte to X ..optimize_90_degrees ; |/ RTS ;$80B1EB / return scaled sin .multiply_cos ; \ STY $211B ;$80B1EC |\ Store scale as muliplication operand STX $211B ;$80B1EF |/ JSR .get_cos ;$80B1F2 | Lookup cos from rotation amount BCS ..optimize_90_degress ;$80B1F5 | If carry is set, rotation by 90 degrees (1), skip multiply STA $211C ;$80B1F7 | Store cos of the rotation amount as muliplication operand LDA $2134 ;$80B1FA |\ Bit shift the long returned left by 1. ASL A ;$80B1FD | | This shift improves accuracy when scale isn't very large LDA $2135 ;$80B1FE | | ROL A ;$80B201 | | TAY ;$80B202 | | Move the low byte to Y LDA $2136 ;$80B203 | | ROL A ;$80B206 | | TAX ;$80B207 | | Move the high byte to X ..optimize_90_degress ; |/ RTS ;$80B208 / return scaled cos .get_cos ; \ CLC ;$80B209 |\ Offset rotation amount to index cos instead of sin ADC #$40 ;$80B20A |/ (Phase shift by 90 degrees) .get_sin ; | CMP #$40 ;$80B20C |\ If our rotation amount is #$40 (90 degrees) BEQ ..optimize_90_degress ;$80B20E |/ Branch and optimize for quicker multiply TAX ;$80B210 | Turn the rotation into an index LDA.l DATA_80B217,x ;$80B211 | Preform sin/cos lookup CLC ;$80B215 | Disable 90 degree optimization ..optimize_90_degress ; | RTS ;$80B216 / Return with cos/sin DATA_80B217: db $00, $03, $06, $09, $0C, $0F, $12, $15 db $18, $1C, $1F, $22, $25, $28, $2B, $2E db $30, $33, $36, $39, $3C, $3F, $41, $44 db $47, $49, $4C, $4E, $51, $53, $55, $58 db $5A, $5C, $5E, $60, $62, $64, $66, $68 db $6A, $6C, $6D, $6F, $70, $72, $73, $75 db $76, $77, $78, $79, $7A, $7B, $7C, $7C db $7D, $7E, $7E, $7F, $7F, $7F, $7F, $7F db $7F, $7F, $7F, $7F, $7F, $7F, $7E, $7E db $7D, $7C, $7C, $7B, $7A, $79, $78, $77 db $76, $75, $73, $72, $70, $6F, $6D, $6C db $6A, $68, $66, $64, $62, $60, $5E, $5C db $5A, $58, $55, $53, $51, $4E, $4C, $49 db $47, $44, $41, $3F, $3C, $39, $36, $33 db $30, $2E, $2B, $28, $25, $22, $1F, $1C db $18, $15, $12, $0F, $0C, $09, $06, $03 db $00, $FC, $F9, $F6, $F3, $F0, $ED, $EA db $E7, $E3, $E0, $DD, $DA, $D7, $D4, $D1 db $CF, $CC, $C9, $C6, $C3, $C0, $BE, $BB db $B8, $B6, $B3, $B1, $AE, $AC, $AA, $A7 db $A5, $A3, $A1, $9F, $9D, $9B, $99, $97 db $95, $93, $92, $90, $8F, $8D, $8C, $8A db $89, $88, $87, $86, $85, $84, $83, $83 db $82, $81, $81, $80, $80, $80, $80, $80 db $80, $80, $80, $80, $80, $80, $81, $81 db $82, $83, $83, $84, $85, $86, $87, $88 db $89, $8A, $8C, $8D, $8F, $90, $92, $93 db $95, $97, $99, $9B, $9D, $9F, $A1, $A3 db $A5, $A7, $AA, $AC, $AE, $B1, $B3, $B6 db $B8, $BB, $BE, $C0, $C3, $C6, $C9, $CC db $CF, $D1, $D4, $D7, $DA, $DD, $E0, $E3 db $E7, $EA, $ED, $F0, $F3, $F6, $F9, $FC DATA_80B317: db $00 DATA_80B318: db $00, $01, $01, $01, $04, $03, $09, $05 db $0E, $07, $13, $0C, $19, $0E, $1C, $12 db $1F, $14, $1F, $16, $1F, $18, $1F, $1A db $1F, $1C, $1F, $1E, $1F, $1F, $1F, $00 db $00, $01, $01, $01, $04, $03, $09, $05 db $0E, $07, $13, $0D, $19, $14, $1F, $15 db $1F, $17, $1F, $18, $1F, $1A, $1F, $1B db $1F, $1D, $1F, $1E, $1F, $1F, $1F, $00 db $00, $01, $01, $01, $04, $03, $09, $05 db $0E, $07, $13, $09, $16, $0B, $19, $0C db $1A, $0D, $1B, $0E, $1B, $0F, $1C, $10 db $1D, $11, $1E, $12, $1F, $13, $1F DATA_80B377: db $00 DATA_80B378: db $00 DATA_80B379: db $00, $00, $00, $02, $03, $02, $01, $09 db $06, $02, $0B, $08, $03, $0E, $09, $03 db $12, $0C, $04, $17, $0F, $05, $1C, $12 db $06, $1D, $14, $09, $1D, $15, $0B, $1E db $17, $0E, $1F, $18, $11, $1F, $1B, $16 db $1F, $1D, $1B, $1F, $1F, $1F, $00, $00 db $00, $03, $02, $01, $0B, $08, $03, $12 db $0C, $04, $19, $11, $06, $1F, $16, $08 db $1F, $18, $09, $1F, $1B, $0B, $1F, $1B db $0B, $1F, $1D, $15, $1F, $1F, $1F, $00 db $00, $03, $00, $00, $04, $00, $00, $05 db $00, $00, $06, $00, $01, $07 CODE_80B3D7: JSL disable_screen ;$80B3D7 \ PHK ;$80B3DB | PLB ;$80B3DC | STZ $099B ;$80B3DD | STZ $060B ;$80B3E0 | JSR clear_VRAM ;$80B3E3 | JSL init_registers_wrapper ;$80B3E6 | JSL CODE_8088D2 ;$80B3EA | JSL CODE_BB91F7 ;$80B3EE | LDA #$0002 ;$80B3F2 | JSL CODE_B5800C ;$80B3F5 | STZ $2A ;$80B3F9 | JSR CODE_80B560 ;$80B3FB | LDA #$55AA ;$80B3FE | STA $2E ;$80B401 | LDA #$FF00 ;$80B403 | STA $30 ;$80B406 | LDX #$0DE2 ;$80B408 | LDY #$0000 ;$80B40B | CODE_80B40E: ; | LDA #$0001 ;$80B40E | STA $00,x ;$80B411 | LDA #$0180 ;$80B413 | STA $06,x ;$80B416 | LDA #$FF88 ;$80B418 | STA $0A,x ;$80B41B | LDA #$2000 ;$80B41D | STA $12,x ;$80B420 | TYA ;$80B422 | ASL A ;$80B423 | ASL A ;$80B424 | ASL A ;$80B425 | CLC ;$80B426 | ADC #$0100 ;$80B427 | STA $1A,x ;$80B42A | INY ;$80B42C | TXA ;$80B42D | CLC ;$80B42E | ADC #$005E ;$80B42F | TAX ;$80B432 | CMP #$0F5A ;$80B433 | BNE CODE_80B40E ;$80B436 | SEP #$20 ;$80B438 | LDA $4211 ;$80B43A | LDA #$80 ;$80B43D | STA $2103 ;$80B43F | LDA #$01 ;$80B442 | STA $420D ;$80B444 | REP #$20 ;$80B447 | LDA #$0400 ;$80B449 | JSR CODE_808C32 ;$80B44C | JSR CODE_808CAC ;$80B44F | LDA #$0001 ;$80B452 | STA $420B ;$80B455 | JSR CODE_808CAC ;$80B458 | LDA #CODE_80B461 ;$80B45B | JMP CODE_80B0EE ;$80B45E / CODE_80B461: LDX #$01FF ;$80B461 \ TXS ;$80B464 | STZ $2102 ;$80B465 | SEP #$20 ;$80B468 | LDA #$01 ;$80B46A | STA $420B ;$80B46C | LDA $0512 ;$80B46F | STA $2100 ;$80B472 | REP #$20 ;$80B475 | JSR CODE_80B061 ;$80B477 | INC $2A ;$80B47A | LDA $2A ;$80B47C | AND #$0003 ;$80B47E | BNE CODE_80B4C6 ;$80B481 | LDX #$0DE2 ;$80B483 | CODE_80B486: ; | LDA $1A,x ;$80B486 | CLC ;$80B488 | ADC #$0004 ;$80B489 | CMP #$0120 ;$80B48C | BNE CODE_80B4B9 ;$80B48F | JSR CODE_80B13E ;$80B491 | AND #$003F ;$80B494 | STA $32 ;$80B497 | LSR A ;$80B499 | LSR A ;$80B49A | CLC ;$80B49B | ADC $32 ;$80B49C | CLC ;$80B49E | ADC #$0050 ;$80B49F | STA $06,x ;$80B4A2 | JSR CODE_80B13E ;$80B4A4 | AND #$001F ;$80B4A7 | STA $32 ;$80B4AA | LSR A ;$80B4AC | CLC ;$80B4AD | ADC $32 ;$80B4AE | CLC ;$80B4B0 | ADC #$0090 ;$80B4B1 | STA $0A,x ;$80B4B4 | LDA #$0100 ;$80B4B6 | CODE_80B4B9: ; | STA $1A,x ;$80B4B9 | TXA ;$80B4BB | CLC ;$80B4BC | ADC #$005E ;$80B4BD | TAX ;$80B4C0 | CMP #$16B2 ;$80B4C1 | BNE CODE_80B486 ;$80B4C4 | CODE_80B4C6: ; | JSL CODE_B5A8DA ;$80B4C6 | LDA #$0200 ;$80B4CA | STA $70 ;$80B4CD | LDA #$0400 ;$80B4CF | STA $56 ;$80B4D2 | STZ $0400 ;$80B4D4 | STZ $0402 ;$80B4D7 | STZ $0404 ;$80B4DA | STZ $0406 ;$80B4DD | STZ $0408 ;$80B4E0 | STZ $040A ;$80B4E3 | STZ $040C ;$80B4E6 | STZ $040E ;$80B4E9 | STZ $0410 ;$80B4EC | STZ $0412 ;$80B4EF | STZ $0414 ;$80B4F2 | STZ $0416 ;$80B4F5 | STZ $0418 ;$80B4F8 | STZ $041A ;$80B4FB | STZ $041C ;$80B4FE | STZ $041E ;$80B501 | LDA #$001C ;$80B504 | STA $78 ;$80B507 | JSL CODE_B59F40 ;$80B509 | STZ $1730 ;$80B50D | JSR CODE_8088BA ;$80B510 | JSR CODE_808CAC ;$80B513 | LDA $0512 ;$80B516 | CMP #$000F ;$80B519 | BNE CODE_80B53F ;$80B51C | LDA $0502 ;$80B51E | AND #$D080 ;$80B521 | BNE CODE_80B52F ;$80B524 | LDA $2A ;$80B526 | CMP #$0960 ;$80B528 | BNE CODE_80B53F ;$80B52B | BRA CODE_80B532 ;$80B52D / CODE_80B52F: INC $099B ;$80B52F \ CODE_80B532: ; | LDA #$840F ;$80B532 | JSR CODE_808C32 ;$80B535 | LDA #$0634 ;$80B538 | JSL CODE_B58021 ;$80B53B | CODE_80B53F: ; | LDA $0512 ;$80B53F | CMP #$8401 ;$80B542 | BEQ CODE_80B54D ;$80B545 | JSR CODE_808C3D ;$80B547 | CODE_80B54A: ; | WAI ;$80B54A | BRA CODE_80B54A ;$80B54B / CODE_80B54D: LDA $099B ;$80B54D \ BEQ CODE_80B559 ;$80B550 | STZ $0613 ;$80B552 | JML CODE_80A5F1 ;$80B555 / CODE_80B559: LDA #CODE_8086F6 ;$80B559 \ JML CODE_808C9E ;$80B55C / CODE_80B560: LDA #$0001 ;$80B560 \ STA $2105 ;$80B563 | LDA #$1001 ;$80B566 | STA $212C ;$80B569 | LDA #$0024 ;$80B56C | STA $210B ;$80B56F | LDA #$0102 ;$80B572 | STA $2130 ;$80B575 | LDA #$4C1C ;$80B578 | STA $2107 ;$80B57B | SEP #$20 ;$80B57E | STZ $210D ;$80B580 | STZ $210D ;$80B583 | STZ $210F ;$80B586 | STZ $210F ;$80B589 | LDA #$FF ;$80B58C | STA $210E ;$80B58E | STA $210E ;$80B591 | STA $2110 ;$80B594 | STA $2110 ;$80B597 | REP #$20 ;$80B59A | LDX #DATA_ED0997 ;$80B59C | LDY.w #DATA_ED0997>>16 ;$80B59F | LDA #$0000 ;$80B5A2 | JSL decompress_data ;$80B5A5 | LDA #$4000 ;$80B5A9 | STA $2116 ;$80B5AC | LDX #$007F ;$80B5AF | LDA #$0000 ;$80B5B2 | LDY #$6400 ;$80B5B5 | JSL DMA_to_VRAM ;$80B5B8 | LDX #DATA_ED02A1 ;$80B5BC | LDY.w #DATA_ED02A1>>16 ;$80B5BF | LDA #$0000 ;$80B5C2 | JSL decompress_data ;$80B5C5 | LDA #$1C00 ;$80B5C9 | STA $2116 ;$80B5CC | LDX #$007F ;$80B5CF | LDA #$0000 ;$80B5D2 | LDY #$0700 ;$80B5D5 | JSL DMA_to_VRAM ;$80B5D8 | STZ $2116 ;$80B5DC | LDX.w #DATA_C00C01>>16 ;$80B5DF | LDA #DATA_C00C01 ;$80B5E2 | LDY #$01A0 ;$80B5E5 | JSL DMA_to_VRAM ;$80B5E8 | LDY #$0000 ;$80B5EC | LDX #$0040 ;$80B5EF | LDA #DATA_FD26AE ;$80B5F2 | JSL DMA_palette ;$80B5F5 | RTS ;$80B5F9 / CODE_80B5FA: JSL disable_screen ;$80B5FA \ JSL clear_VRAM ;$80B5FE | JSL init_registers_wrapper ;$80B602 | JSL CODE_BB91F7 ;$80B606 | LDA #$0001 ;$80B60A | STA $2105 ;$80B60D | STA $212C ;$80B610 | LDA #$0000 ;$80B613 | STA $210B ;$80B616 | LDA #$787C ;$80B619 | STA $2107 ;$80B61C | STZ $2116 ;$80B61F | LDX.w #DATA_F80FA6>>16 ;$80B622 | LDA #DATA_F80FA6 ;$80B625 | LDY #$2000 ;$80B628 | JSL DMA_to_VRAM ;$80B62B | LDA #$7C00 ;$80B62F | JSR clear_VRAM_block ;$80B632 | LDA #$7D00 ;$80B635 | STA $2116 ;$80B638 | LDX.w #DATA_F80D66>>16 ;$80B63B | LDA #DATA_F80D66 ;$80B63E | LDY #$0240 ;$80B641 | JSL DMA_to_VRAM ;$80B644 | LDA #DATA_FD27CE ;$80B648 | LDY #$0000 ;$80B64B | LDX #$0004 ;$80B64E | JSL DMA_palette ;$80B651 | LDA #DATA_FD27CE ;$80B655 | LDY #$0070 ;$80B658 | LDX #$0004 ;$80B65B | JSL DMA_palette ;$80B65E | LDA #$0200 ;$80B662 | STA $0512 ;$80B665 | SEP #$20 ;$80B668 | LDA $4211 ;$80B66A | LDA #$80 ;$80B66D | STA $2103 ;$80B66F | LDA #$01 ;$80B672 | STA $420D ;$80B674 | REP #$20 ;$80B677 | STZ $2A ;$80B679 | LDA #CODE_80B681 ;$80B67B | JMP CODE_80B0EE ;$80B67E / CODE_80B681: LDX #$01FF ;$80B681 \ TXS ;$80B684 | STZ $2102 ;$80B685 | SEP #$20 ;$80B688 | STZ $210D ;$80B68A | STZ $210D ;$80B68D | LDA #$FF ;$80B690 | STA $210E ;$80B692 | STZ $210E ;$80B695 | LDA $0512 ;$80B698 | STA $2100 ;$80B69B | REP #$20 ;$80B69E | INC $2A ;$80B6A0 | JSR CODE_80B061 ;$80B6A2 | JSR CODE_808C3D ;$80B6A5 | LDA $2A ;$80B6A8 | CMP #$0070 ;$80B6AA | BNE CODE_80B6B5 ;$80B6AD | LDA #$0082 ;$80B6AF | STA $0513 ;$80B6B2 | CODE_80B6B5: ; | LDA $0512 ;$80B6B5 | BNE CODE_80B6BE ;$80B6B8 | JML CODE_8085EF ;$80B6BA / CODE_80B6BE: WAI ;$80B6BE \ BRA CODE_80B6BE ;$80B6BF / DATA_80B6C1: dw CODE_80B705 dw CODE_80B746 dw CODE_80B779 dw CODE_80B7A6 dw CODE_80B95F dw CODE_80B720 dw CODE_80B977 dw CODE_80B9C6 dw CODE_80BB77 dw CODE_80BBD5 dw CODE_80BC3D dw CODE_80BC6D dw CODE_80BC85 dw CODE_80BDAA dw CODE_80BE9C dw CODE_80BED2 dw CODE_80BF08 dw CODE_80BF82 dw CODE_80BFDE dw CODE_80C05A dw CODE_80C074 dw CODE_80C180 dw CODE_80C26B dw CODE_80C466 dw CODE_80C4A5 dw CODE_80C584 dw CODE_80C5DE dw CODE_80C65B dw CODE_80C750 dw CODE_80C7C6 dw CODE_80C821 dw CODE_80C847 dw CODE_80C8AA dw CODE_80C8FF CODE_80B705: LDA $059B ;$80B705 \ STA $420B ;$80B708 | JSL CODE_B5A919 ;$80B70B | JSR CODE_80F324 ;$80B70F | SEP #$20 ;$80B712 | LDA $0512 ;$80B714 | STA $2100 ;$80B717 | REP #$20 ;$80B71A | JSR CODE_808988 ;$80B71C | RTS ;$80B71F / CODE_80B720: LDA $059B ;$80B720 \ STA $420B ;$80B723 | SEP #$20 ;$80B726 | LDA $0512 ;$80B728 | STA $2100 ;$80B72B | REP #$20 ;$80B72E | RTS ;$80B730 / CODE_80B731: LDA $059B ;$80B731 \ STA $420B ;$80B734 | JSL CODE_B5A919 ;$80B737 | JSL CODE_B5ADD8 ;$80B73B | JSL CODE_B5B00B ;$80B73F | JMP CODE_80F324 ;$80B743 / CODE_80B746: JSR CODE_80B731 ;$80B746 \ LDA $17BA ;$80B749 | LSR A ;$80B74C | SEP #$20 ;$80B74D | STA $2111 ;$80B74F | STZ $2111 ;$80B752 | LDA $17BA ;$80B755 | STA $210F ;$80B758 | LDA $17BB ;$80B75B | STA $210F ;$80B75E | LDA $17C2 ;$80B761 | STA $2110 ;$80B764 | STZ $2110 ;$80B767 | STZ $2112 ;$80B76A | STZ $2112 ;$80B76D | LDA $0512 ;$80B770 | STA $2100 ;$80B773 | REP #$20 ;$80B776 | RTS ;$80B778 / CODE_80B779: LDA $059B ;$80B779 \ STA $420B ;$80B77C | JSR CODE_80B89C ;$80B77F | JSL CODE_B5A919 ;$80B782 | JSL CODE_B5ADD8 ;$80B786 | JSL CODE_B5B00B ;$80B78A | JSR CODE_80F324 ;$80B78E | SEP #$20 ;$80B791 | LDA $0512 ;$80B793 | STA $2100 ;$80B796 | REP #$20 ;$80B799 | RTS ;$80B79B / CODE_80B79C: PHA ;$80B79C \ INX ;$80B79D | INX ;$80B79E | TXA ;$80B79F | AND #$001E ;$80B7A0 | TAX ;$80B7A3 | PLA ;$80B7A4 | RTS ;$80B7A5 / CODE_80B7A6: JSR CODE_80B731 ;$80B7A6 \ JSR CODE_80CCF8 ;$80B7A9 | SEP #$20 ;$80B7AC | LDA $17C0 ;$80B7AE | AND #$01 ;$80B7B1 | EOR #$01 ;$80B7B3 | INC A ;$80B7B5 | STA $7E80F2 ;$80B7B6 | REP #$20 ;$80B7BA | LDA $17C0 ;$80B7BC | EOR #$FFFF ;$80B7BF | AND #$001E ;$80B7C2 | TAX ;$80B7C5 | LDA $2A ;$80B7C6 | EOR #$FFFF ;$80B7C8 | LSR A ;$80B7CB | LSR A ;$80B7CC | CLC ;$80B7CD | ADC $17C0 ;$80B7CE | STA $7E80D2,x ;$80B7D1 | LDY #$0008 ;$80B7D5 | CODE_80B7D8: ; | JSR CODE_80B79C ;$80B7D8 | INC A ;$80B7DB | STA $7E80D2,x ;$80B7DC | DEY ;$80B7E0 | BNE CODE_80B7D8 ;$80B7E1 | LDY #$0007 ;$80B7E3 | CODE_80B7E6: ; | JSR CODE_80B79C ;$80B7E6 | DEC A ;$80B7E9 | STA $7E80D2,x ;$80B7EA | DEY ;$80B7EE | BNE CODE_80B7E6 ;$80B7EF | LDA $17BA ;$80B7F1 | LSR A ;$80B7F4 | LSR A ;$80B7F5 | CLC ;$80B7F6 | ADC $17BA ;$80B7F7 | SEP #$20 ;$80B7FA | STA $210D ;$80B7FC | XBA ;$80B7FF | STA $210D ;$80B800 | LDA $17BA ;$80B803 | STA $210F ;$80B806 | LDA $17BB ;$80B809 | STA $210F ;$80B80C | REP #$20 ;$80B80F | LDA $17C0 ;$80B811 | LSR A ;$80B814 | SEP #$20 ;$80B815 | STA $2112 ;$80B817 | STZ $2112 ;$80B81A | REP #$20 ;$80B81D | LDA $17BA ;$80B81F | LSR A ;$80B822 | SEP #$20 ;$80B823 | STA $2111 ;$80B825 | STZ $2111 ;$80B828 | LDA $17C2 ;$80B82B | STA $2110 ;$80B82E | STZ $2110 ;$80B831 | LDA $0512 ;$80B834 | STA $2100 ;$80B837 | REP #$20 ;$80B83A | RTS ;$80B83C / CODE_80B83D: LDA $2A ;$80B83D \ LSR A ;$80B83F | CLC ;$80B840 | ADC $17BA ;$80B841 | LSR A ;$80B844 | STA $7E80D2 ;$80B845 | STA $7E80DE ;$80B849 | INC A ;$80B84D | STA $7E80D6 ;$80B84E | STA $7E80DA ;$80B852 | LDA $17C0 ;$80B856 | LSR A ;$80B859 | STA $7E80D4 ;$80B85A | STA $7E80D8 ;$80B85E | DEC A ;$80B862 | STA $7E80DC ;$80B863 | STA $7E80E0 ;$80B867 | JMP CODE_80B8BD ;$80B86B / CODE_80B86E: LDA $17BA ;$80B86E \ LSR A ;$80B871 | LSR A ;$80B872 | STA $7E80D2 ;$80B873 | STA $7E80DE ;$80B877 | INC A ;$80B87B | STA $7E80D6 ;$80B87C | STA $7E80DA ;$80B880 | LDA $17C0 ;$80B884 | LSR A ;$80B887 | STA $7E80D4 ;$80B888 | STA $7E80D8 ;$80B88C | DEC A ;$80B890 | STA $7E80DC ;$80B891 | STA $7E80E0 ;$80B895 | JMP CODE_80B8BD ;$80B899 / CODE_80B89C: LDA $2A ;$80B89C \ BIT #$0001 ;$80B89E | BEQ CODE_80B8B1 ;$80B8A1 | LDX #$8552 ;$80B8A3 | STX $4352 ;$80B8A6 | LDX #$8812 ;$80B8A9 | STX $4362 ;$80B8AC | BRA CODE_80B8BD ;$80B8AF / CODE_80B8B1: LDX #$86B2 ;$80B8B1 \ STX $4352 ;$80B8B4 | LDX #$8822 ;$80B8B7 | STX $4362 ;$80B8BA | CODE_80B8BD: ; | LDA $0523 ;$80B8BD | CMP #$000E ;$80B8C0 | BNE CODE_80B8CF ;$80B8C3 | LDA $0915 ;$80B8C5 | BEQ CODE_80B8CF ;$80B8C8 | LDA #$0000 ;$80B8CA | BRA CODE_80B8D2 ;$80B8CD / CODE_80B8CF: LDA $2A ;$80B8CF \ LSR A ;$80B8D1 | CODE_80B8D2: ; | SEC ;$80B8D2 | SBC $0D4E ;$80B8D3 | AND #$000F ;$80B8D6 | CLC ;$80B8D9 | ADC $0D4E ;$80B8DA | SEC ;$80B8DD | SBC $17C0 ;$80B8DE | BPL CODE_80B8E6 ;$80B8E1 | AND #$000F ;$80B8E3 | CODE_80B8E6: ; | LSR A ;$80B8E6 | BNE CODE_80B8EC ;$80B8E7 | LDA #$0008 ;$80B8E9 | CODE_80B8EC: ; | CMP #$007E ;$80B8EC | BCC CODE_80B8F4 ;$80B8EF | LDA #$007E ;$80B8F1 | CODE_80B8F4: ; | SEP #$20 ;$80B8F4 | STA $7E886C ;$80B8F6 | ADC #$00 ;$80B8FA | STA $7E886F ;$80B8FC | REP #$20 ;$80B900 | LDA $0523 ;$80B902 | CMP #$000E ;$80B905 | BNE CODE_80B914 ;$80B908 | LDA $0915 ;$80B90A | BEQ CODE_80B914 ;$80B90D | LDA #$0000 ;$80B90F | BRA CODE_80B916 ;$80B912 / CODE_80B914: LDA $2A ;$80B914 \ CODE_80B916: ; | SEC ;$80B916 | SBC $0D4E ;$80B917 | AND #$001F ;$80B91A | CLC ;$80B91D | ADC $0D4E ;$80B91E | SEC ;$80B921 | SBC $17C0 ;$80B922 | BPL CODE_80B92A ;$80B925 | AND #$001F ;$80B927 | CODE_80B92A: ; | LSR A ;$80B92A | BNE CODE_80B930 ;$80B92B | LDA #$0010 ;$80B92D | CODE_80B930: ; | CMP #$007E ;$80B930 | BCC CODE_80B938 ;$80B933 | LDA #$007E ;$80B935 | CODE_80B938: ; | SEP #$20 ;$80B938 | STA $7E8012 ;$80B93A | ADC #$00 ;$80B93E | STA $7E8015 ;$80B940 | REP #$20 ;$80B944 | LDA $17BA ;$80B946 | STA $B6 ;$80B949 | STA $C2 ;$80B94B | INC A ;$80B94D | STA $BA ;$80B94E | STA $BE ;$80B950 | LDA $17C0 ;$80B952 | STA $B8 ;$80B955 | STA $BC ;$80B957 | DEC A ;$80B959 | STA $C0 ;$80B95A | STA $C4 ;$80B95C | RTS ;$80B95E / CODE_80B95F: LDA $059B ;$80B95F \ STA $420B ;$80B962 | JSL CODE_B5A919 ;$80B965 | STA $210E ;$80B969 | SEP #$20 ;$80B96C | LDA $0512 ;$80B96E | STA $2100 ;$80B971 | REP #$20 ;$80B974 | RTS ;$80B976 / CODE_80B977: LDA $059B ;$80B977 \ STA $420B ;$80B97A | JSL CODE_B5A919 ;$80B97D | JSL CODE_B5AA88 ;$80B981 | JSL CODE_B5AC25 ;$80B985 | JSL CODE_B5ADD8 ;$80B989 | JSL CODE_B5B00B ;$80B98D | JSR CODE_80F324 ;$80B991 | LDA $17BA ;$80B994 | SEP #$20 ;$80B997 | STA $210D ;$80B999 | XBA ;$80B99C | STA $210D ;$80B99D | LDA $B8 ;$80B9A0 | STA $2111 ;$80B9A2 | LDA $B9 ;$80B9A5 | STA $2111 ;$80B9A7 | REP #$20 ;$80B9AA | LDA $17C2 ;$80B9AC | SEP #$20 ;$80B9AF | STA $210E ;$80B9B1 | STZ $210E ;$80B9B4 | STA $2112 ;$80B9B7 | STZ $2112 ;$80B9BA | LDA $0512 ;$80B9BD | STA $2100 ;$80B9C0 | REP #$20 ;$80B9C3 | RTS ;$80B9C5 / CODE_80B9C6: JSR CODE_80B731 ;$80B9C6 \ JSR CODE_80CDAE ;$80B9C9 | JSR CODE_80BA44 ;$80B9CC | JSR CODE_80B9FF ;$80B9CF | JSR CODE_80BAB1 ;$80B9D2 | LDA $17BA ;$80B9D5 | LSR A ;$80B9D8 | LSR A ;$80B9D9 | SEP #$20 ;$80B9DA | STA $2111 ;$80B9DC | STZ $2111 ;$80B9DF | REP #$20 ;$80B9E2 | LDA $17C2 ;$80B9E4 | LDY $D3 ;$80B9E7 | CPY #$0021 ;$80B9E9 | BNE CODE_80B9F2 ;$80B9EC | SEC ;$80B9EE | SBC #$0030 ;$80B9EF | CODE_80B9F2: ; | LSR A ;$80B9F2 | LSR A ;$80B9F3 | SEP #$20 ;$80B9F4 | STA $2112 ;$80B9F6 | STZ $2112 ;$80B9F9 | REP #$20 ;$80B9FC | RTS ;$80B9FE / CODE_80B9FF: LDA $2A ;$80B9FF \ LSR A ;$80BA01 | LSR A ;$80BA02 | LSR A ;$80BA03 | CLC ;$80BA04 | ADC $2A ;$80BA05 | LSR A ;$80BA07 | LSR A ;$80BA08 | LSR A ;$80BA09 | LSR A ;$80BA0A | AND #$0007 ;$80BA0B | BIT #$0004 ;$80BA0E | BEQ CODE_80BA16 ;$80BA11 | EOR #$0007 ;$80BA13 | CODE_80BA16: ; | STA $32 ;$80BA16 | LDA $2A ;$80BA18 | LSR A ;$80BA1A | LSR A ;$80BA1B | LSR A ;$80BA1C | AND #$0007 ;$80BA1D | BIT #$0004 ;$80BA20 | BEQ CODE_80BA28 ;$80BA23 | EOR #$0007 ;$80BA25 | CODE_80BA28: ; | CLC ;$80BA28 | ADC $32 ;$80BA29 | STA $32 ;$80BA2B | ORA #$00C0 ;$80BA2D | SEP #$20 ;$80BA30 | STA $2132 ;$80BA32 | REP #$20 ;$80BA35 | LDA $32 ;$80BA37 | ORA #$0020 ;$80BA39 | SEP #$20 ;$80BA3C | STA $2132 ;$80BA3E | REP #$20 ;$80BA41 | RTS ;$80BA43 / CODE_80BA44: SEP #$30 ;$80BA44 \ LDA #$05 ;$80BA46 | STA $2121 ;$80BA48 | LDA $2A ;$80BA4B | BIT #$03 ;$80BA4D | BNE CODE_80BA8E ;$80BA4F | LSR A ;$80BA51 | AND #$0E ;$80BA52 | TAX ;$80BA54 | LDA.l DATA_80BA91,x ;$80BA55 | STA $2122 ;$80BA59 | LDA.l DATA_80BA92,x ;$80BA5C | STA $2122 ;$80BA60 | TXA ;$80BA63 | CLC ;$80BA64 | ADC #$06 ;$80BA65 | TAX ;$80BA67 | LDA.l DATA_80BA91,x ;$80BA68 | STA $2122 ;$80BA6C | LDA.l DATA_80BA92,x ;$80BA6F | STA $2122 ;$80BA73 | TXA ;$80BA76 | CLC ;$80BA77 | ADC #$06 ;$80BA78 | TAX ;$80BA7A | LDA.l DATA_80BA91,x ;$80BA7B | STA $2122 ;$80BA7F | LDA.l DATA_80BA92,x ;$80BA82 | STA $2122 ;$80BA86 | TXA ;$80BA89 | CLC ;$80BA8A | ADC #$06 ;$80BA8B | TAX ;$80BA8D | CODE_80BA8E: ; | REP #$30 ;$80BA8E | RTS ;$80BA90 / DATA_80BA91: db $DF DATA_80BA92: db $02, $7F, $02, $FF, $01, $9F, $01, $1F db $01, $BF, $00, $7F, $01, $1F, $02, $DF db $02, $7F, $02, $FF, $01, $9F, $01, $1F db $01, $BF, $00, $7F, $01, $1F, $02 CODE_80BAB1: LDA $17BA ;$80BAB1 \ STA $7E8013 ;$80BAB4 | STA $7E8018 ;$80BAB8 | STA $7E802D ;$80BABC | LDA $17C2 ;$80BAC0 | STA $7E8015 ;$80BAC3 | STA $7E801A ;$80BAC7 | STA $7E802F ;$80BACB | LDA $17B8 ;$80BACF | ASL A ;$80BAD2 | LDA $17BA ;$80BAD3 | ROL A ;$80BAD6 | STA $7E801D ;$80BAD7 | LSR A ;$80BADB | LSR A ;$80BADC | STA $7E8023 ;$80BADD | STA $7E8028 ;$80BAE1 | LDA $17C2 ;$80BAE5 | LSR A ;$80BAE8 | SEC ;$80BAE9 | SBC #$0198 ;$80BAEA | STA $7E8025 ;$80BAED | STA $7E802A ;$80BAF1 | LDA $D3 ;$80BAF5 | CMP #$0075 ;$80BAF7 | BEQ CODE_80BB1D ;$80BAFA | CMP #$0021 ;$80BAFC | BEQ CODE_80BB14 ;$80BAFF | CMP #$0016 ;$80BB01 | BEQ CODE_80BB14 ;$80BB04 | CMP #$0007 ;$80BB06 | BNE CODE_80BB26 ;$80BB09 | LDA $17C2 ;$80BB0B | SEC ;$80BB0E | SBC #$0100 ;$80BB0F | BRA CODE_80BB29 ;$80BB12 / CODE_80BB14: LDA $17C2 ;$80BB14 \ SEC ;$80BB17 | SBC #$0080 ;$80BB18 | BRA CODE_80BB29 ;$80BB1B / CODE_80BB1D: LDA $17C2 ;$80BB1D \ SEC ;$80BB20 | SBC #$00C0 ;$80BB21 | BRA CODE_80BB29 ;$80BB24 / CODE_80BB26: LDA $17C2 ;$80BB26 \ CODE_80BB29: ; | LSR A ;$80BB29 | LSR A ;$80BB2A | CLC ;$80BB2B | ADC $17C2 ;$80BB2C | SEC ;$80BB2F | SBC #$0060 ;$80BB30 | STA $7E801F ;$80BB33 | SEC ;$80BB37 | SBC #$0070 ;$80BB38 | AND #$01FF ;$80BB3B | EOR #$01FF ;$80BB3E | CMP #$00FF ;$80BB41 | BCC CODE_80BB49 ;$80BB44 | LDA #$00FF ;$80BB46 | CODE_80BB49: ; | SEP #$20 ;$80BB49 | LSR A ;$80BB4B | STA $7E8012 ;$80BB4C | STA $7E8022 ;$80BB50 | STA $7E8032 ;$80BB54 | STA $7E803C ;$80BB58 | ADC #$00 ;$80BB5C | STA $7E8017 ;$80BB5E | STA $7E8027 ;$80BB62 | STA $7E8035 ;$80BB66 | STA $7E803E ;$80BB6A | LDA $0512 ;$80BB6E | STA $2100 ;$80BB71 | REP #$20 ;$80BB74 | RTS ;$80BB76 / CODE_80BB77: JSR CODE_80B731 ;$80BB77 \ JSR CODE_80CF58 ;$80BB7A | LDA $2A ;$80BB7D | LSR A ;$80BB7F | CLC ;$80BB80 | ADC $17BA ;$80BB81 | LSR A ;$80BB84 | SEP #$20 ;$80BB85 | STA $210F ;$80BB87 | STZ $210F ;$80BB8A | REP #$20 ;$80BB8D | LDA $17C2 ;$80BB8F | LSR A ;$80BB92 | SEP #$20 ;$80BB93 | STA $2110 ;$80BB95 | STZ $2110 ;$80BB98 | REP #$20 ;$80BB9B | LDA $2A ;$80BB9D | CLC ;$80BB9F | ADC $17BA ;$80BBA0 | LSR A ;$80BBA3 | LSR A ;$80BBA4 | CLC ;$80BBA5 | ADC $17BA ;$80BBA6 | SEP #$20 ;$80BBA9 | STA $2111 ;$80BBAB | STZ $2111 ;$80BBAE | LDA $17BA ;$80BBB1 | STA $210D ;$80BBB4 | LDA $17BB ;$80BBB7 | STA $210D ;$80BBBA | LDA $17C2 ;$80BBBD | STA $210E ;$80BBC0 | STZ $210E ;$80BBC3 | STA $2112 ;$80BBC6 | STZ $2112 ;$80BBC9 | LDA $0512 ;$80BBCC | STA $2100 ;$80BBCF | REP #$20 ;$80BBD2 | RTS ;$80BBD4 / CODE_80BBD5: JSR CODE_80B731 ;$80BBD5 \ LDA $0929 ;$80BBD8 | BEQ CODE_80BBF7 ;$80BBDB | TAY ;$80BBDD | LDA $2A ;$80BBDE | AND #$0007 ;$80BBE0 | BNE CODE_80BBF7 ;$80BBE3 | LDA $2A ;$80BBE5 | AND #$0018 ;$80BBE7 | ASL A ;$80BBEA | ASL A ;$80BBEB | CLC ;$80BBEC | ADC #DATA_FD61C2 ;$80BBED | LDX #$0004 ;$80BBF0 | JSL DMA_palette ;$80BBF3 | CODE_80BBF7: ; | SEP #$20 ;$80BBF7 | LDA #$E0 ;$80BBF9 | STA $2132 ;$80BBFB | LDA #$01 ;$80BBFE | TRB $0500 ;$80BC00 | BEQ CODE_80BC0A ;$80BC03 | LDA #$E2 ;$80BC05 | STA $2132 ;$80BC07 | CODE_80BC0A: ; | REP #$20 ;$80BC0A | LDA $17BA ;$80BC0C | LSR A ;$80BC0F | LSR A ;$80BC10 | LSR A ;$80BC11 | SEP #$20 ;$80BC12 | STA $210F ;$80BC14 | STZ $210F ;$80BC17 | LDA $17BA ;$80BC1A | STA $210D ;$80BC1D | LDA $17BB ;$80BC20 | STA $210D ;$80BC23 | REP #$20 ;$80BC26 | LDA $17C2 ;$80BC28 | SEP #$20 ;$80BC2B | STA $210E ;$80BC2D | XBA ;$80BC30 | STA $210E ;$80BC31 | LDA $0512 ;$80BC34 | STA $2100 ;$80BC37 | REP #$20 ;$80BC3A | RTS ;$80BC3C / CODE_80BC3D: LDA $059B ;$80BC3D \ STA $420B ;$80BC40 | JSL CODE_B5A919 ;$80BC43 | JSR CODE_80F324 ;$80BC47 | LDA $17BA ;$80BC4A | SEP #$20 ;$80BC4D | STA $210D ;$80BC4F | XBA ;$80BC52 | STA $210D ;$80BC53 | REP #$20 ;$80BC56 | LDA $17C2 ;$80BC58 | SEP #$20 ;$80BC5B | STA $210E ;$80BC5D | XBA ;$80BC60 | STA $210E ;$80BC61 | LDA $0512 ;$80BC64 | STA $2100 ;$80BC67 | REP #$20 ;$80BC6A | RTS ;$80BC6C / CODE_80BC6D: LDA $059B ;$80BC6D \ STA $420B ;$80BC70 | JSL CODE_B5A919 ;$80BC73 | STA $210E ;$80BC77 | SEP #$20 ;$80BC7A | LDA $0512 ;$80BC7C | STA $2100 ;$80BC7F | REP #$20 ;$80BC82 | RTS ;$80BC84 / CODE_80BC85: JSR CODE_80B731 ;$80BC85 \ LDA $17BA ;$80BC88 | LSR A ;$80BC8B | LSR A ;$80BC8C | SEP #$20 ;$80BC8D | STA $210F ;$80BC8F | STZ $210F ;$80BC92 | LDA $17BA ;$80BC95 | STA $210D ;$80BC98 | LDA $17BB ;$80BC9B | STA $210D ;$80BC9E | LDA $17C2 ;$80BCA1 | STA $210E ;$80BCA4 | LDA $17C3 ;$80BCA7 | STA $210E ;$80BCAA | REP #$20 ;$80BCAD | JSR CODE_80BD08 ;$80BCAF | LDA $17C2 ;$80BCB2 | LSR A ;$80BCB5 | LSR A ;$80BCB6 | SEP #$20 ;$80BCB7 | STA $2110 ;$80BCB9 | STZ $2110 ;$80BCBC | LDA $0512 ;$80BCBF | STA $2100 ;$80BCC2 | REP #$20 ;$80BCC5 | RTS ;$80BCC7 / DATA_80BCC8: db $25 DATA_80BCC9: db $1B, $1D, $27, $16, $39, $F0, $D2, $5D db $21, $7E, $49, $67, $48, $B6, $2B, $C5 db $25, $3F, $67, $32, $77, $27, $63, $3B db $92, $F3, $4A, $FE, $59, $79, $67, $7E db $7C, $AC, $60, $C1, $8E, $9B, $90, $0A db $9E, $1B, $BC, $47, $DE, $42, $F4, $5F db $B7, $6A, $9F, $7D, $B7, $68, $CD, $AC db $C4, $C3, $BE, $47, $DE, $3F, $67 CODE_80BD08: LDA $2A ;$80BD08 \ CLC ;$80BD0A | ADC #$0010 ;$80BD0B | AND #$001F ;$80BD0E | BNE CODE_80BD2F ;$80BD11 | JSR CODE_80B13E ;$80BD13 | AND #$001F ;$80BD16 | ASL A ;$80BD19 | TAX ;$80BD1A | LDA #$00DC ;$80BD1B | SBC.l DATA_80BCC8,x ;$80BD1E | STA $17BC ;$80BD22 | LDA #$00F0 ;$80BD25 | SBC.l DATA_80BCC9,x ;$80BD28 | STA $17C4 ;$80BD2C | CODE_80BD2F: ; | LDA $17BA ;$80BD2F | LSR A ;$80BD32 | LSR A ;$80BD33 | CLC ;$80BD34 | ADC $17BC ;$80BD35 | SEP #$20 ;$80BD38 | STA $2111 ;$80BD3A | STZ $2111 ;$80BD3D | REP #$20 ;$80BD40 | LDA $17C2 ;$80BD42 | LSR A ;$80BD45 | LSR A ;$80BD46 | CLC ;$80BD47 | ADC $17C4 ;$80BD48 | SEP #$20 ;$80BD4B | STA $2112 ;$80BD4D | STZ $2112 ;$80BD50 | LDA #$01 ;$80BD53 | STA $2121 ;$80BD55 | REP #$20 ;$80BD58 | LDA #$8014 ;$80BD5A | STA $4302 ;$80BD5D | STA $4308 ;$80BD60 | LDA #$001E ;$80BD63 | STA $4305 ;$80BD66 | LDA #$2200 ;$80BD69 | STA $4300 ;$80BD6C | SEP #$20 ;$80BD6F | LDA #$7E ;$80BD71 | STA $4304 ;$80BD73 | LDA #$01 ;$80BD76 | STA $420B ;$80BD78 | REP #$20 ;$80BD7B | SEP #$20 ;$80BD7D | LDA #$21 ;$80BD7F | STA $2121 ;$80BD81 | REP #$20 ;$80BD84 | LDA #$8032 ;$80BD86 | STA $4302 ;$80BD89 | STA $4308 ;$80BD8C | LDA #$000C ;$80BD8F | STA $4305 ;$80BD92 | LDA #$2200 ;$80BD95 | STA $4300 ;$80BD98 | SEP #$20 ;$80BD9B | LDA #$7E ;$80BD9D | STA $4304 ;$80BD9F | LDA #$01 ;$80BDA2 | STA $420B ;$80BDA4 | REP #$20 ;$80BDA7 | RTS ;$80BDA9 / CODE_80BDAA: JSR CODE_80B731 ;$80BDAA \ LDA $D3 ;$80BDAD | CMP #$0009 ;$80BDAF | BEQ CODE_80BDB7 ;$80BDB2 | JSR CODE_80CF21 ;$80BDB4 | CODE_80BDB7: ; | LDA $08C2 ;$80BDB7 | AND #$0140 ;$80BDBA | BEQ CODE_80BDC2 ;$80BDBD | BRL CODE_80BE93 ;$80BDBF / CODE_80BDC2: LDA.l $0006DD ;$80BDC2 \ CLC ;$80BDC6 | ADC $0006DB ;$80BDC7 | STA $0006DD ;$80BDCB | SEP #$20 ;$80BDCF | STA $2112 ;$80BDD1 | STZ $2112 ;$80BDD4 | REP #$20 ;$80BDD7 | LDA.l $0006D7 ;$80BDD9 | CLC ;$80BDDD | ADC #$0002 ;$80BDDE | STA $0006D7 ;$80BDE1 | CMP #$01F4 ;$80BDE5 | BCC CODE_80BDFF ;$80BDE8 | SEC ;$80BDEA | SBC #$01F4 ;$80BDEB | STA $0006D7 ;$80BDEE | LDA.l $0006DF ;$80BDF2 | CLC ;$80BDF6 | ADC $0006D5 ;$80BDF7 | STA $0006DF ;$80BDFB | CODE_80BDFF: ; | LDA.l $0006DF ;$80BDFF | STA $0006DB ;$80BE03 | LDA.l $0006D7 ;$80BE07 | CLC ;$80BE0B | ADC $0006D9 ;$80BE0C | STA $0006D9 ;$80BE10 | CMP #$01F4 ;$80BE14 | BCC CODE_80BE2E ;$80BE17 | SEC ;$80BE19 | SBC #$01F4 ;$80BE1A | STA $0006D9 ;$80BE1D | LDA.l $0006DB ;$80BE21 | CLC ;$80BE25 | ADC $0006D5 ;$80BE26 | STA $0006DB ;$80BE2A | CODE_80BE2E: ; | LDA.l $0006D5 ;$80BE2E | BPL CODE_80BE46 ;$80BE32 | LDA.l $0006DF ;$80BE34 | CMP #$FFFF ;$80BE38 | BNE CODE_80BE56 ;$80BE3B | LDA #$0001 ;$80BE3D | STA $0006D5 ;$80BE40 | BRA CODE_80BE56 ;$80BE44 / CODE_80BE46: LDA.l $0006DF ;$80BE46 \ CMP #$0001 ;$80BE4A | BNE CODE_80BE56 ;$80BE4D | LDA #$FFFF ;$80BE4F | STA $0006D5 ;$80BE52 | CODE_80BE56: ; | LDA $2A ;$80BE56 | CLC ;$80BE58 | ADC $17BA ;$80BE59 | SEP #$20 ;$80BE5C | STA $210F ;$80BE5E | STZ $210F ;$80BE61 | LDA #$6F ;$80BE64 | STA $2110 ;$80BE66 | STZ $2110 ;$80BE69 | REP #$20 ;$80BE6C | LDA $2A ;$80BE6E | ASL A ;$80BE70 | ASL A ;$80BE71 | CLC ;$80BE72 | ADC $17BA ;$80BE73 | SEP #$20 ;$80BE76 | STA $2111 ;$80BE78 | STZ $2111 ;$80BE7B | LDA $17BA ;$80BE7E | STA $210D ;$80BE81 | LDA $17BB ;$80BE84 | STA $210D ;$80BE87 | LDA $17C2 ;$80BE8A | STA $210E ;$80BE8D | STZ $210E ;$80BE90 | CODE_80BE93: ; | LDA $0512 ;$80BE93 | STA $2100 ;$80BE96 | REP #$20 ;$80BE99 | RTS ;$80BE9B / CODE_80BE9C: JSR CODE_80B731 ;$80BE9C \ JSR CODE_80CFDC ;$80BE9F | LDA $17BA ;$80BEA2 | LSR A ;$80BEA5 | SEP #$20 ;$80BEA6 | STA $2111 ;$80BEA8 | STZ $2111 ;$80BEAB | LDA $17BA ;$80BEAE | STA $210F ;$80BEB1 | LDA $17BB ;$80BEB4 | STA $210F ;$80BEB7 | LDA $17C2 ;$80BEBA | STA $2110 ;$80BEBD | STZ $2110 ;$80BEC0 | STZ $2112 ;$80BEC3 | STZ $2112 ;$80BEC6 | LDA $0512 ;$80BEC9 | STA $2100 ;$80BECC | REP #$20 ;$80BECF | RTS ;$80BED1 / CODE_80BED2: JSR CODE_80B731 ;$80BED2 \ JSR CODE_80CC36 ;$80BED5 | LDA $17BA ;$80BED8 | LSR A ;$80BEDB | SEP #$20 ;$80BEDC | STA $2111 ;$80BEDE | STZ $2111 ;$80BEE1 | LDA $17BA ;$80BEE4 | STA $210F ;$80BEE7 | LDA $17BB ;$80BEEA | STA $210F ;$80BEED | LDA $17C2 ;$80BEF0 | STA $2110 ;$80BEF3 | STZ $2110 ;$80BEF6 | STZ $2112 ;$80BEF9 | STZ $2112 ;$80BEFC | LDA $0512 ;$80BEFF | STA $2100 ;$80BF02 | REP #$20 ;$80BF05 | RTS ;$80BF07 / CODE_80BF08: JSR CODE_80B731 ;$80BF08 \ LDA $17C0 ;$80BF0B | CLC ;$80BF0E | ADC $19CA ;$80BF0F | CMP #$0080 ;$80BF12 | BCC CODE_80BF1A ;$80BF15 | LDA #$0080 ;$80BF17 | CODE_80BF1A: ; | STA $7E8013 ;$80BF1A | LDA $17C0 ;$80BF1E | CLC ;$80BF21 | ADC #$005E ;$80BF22 | SEC ;$80BF25 | SBC $0AFE ;$80BF26 | BPL CODE_80BF2E ;$80BF29 | LDA #$0000 ;$80BF2B | CODE_80BF2E: ; | STA $7E8019 ;$80BF2E | LDA $17BA ;$80BF32 | LSR A ;$80BF35 | SEP #$20 ;$80BF36 | STA $2111 ;$80BF38 | STZ $2111 ;$80BF3B | REP #$20 ;$80BF3E | LDA $17B8 ;$80BF40 | ASL A ;$80BF43 | LDA $17BA ;$80BF44 | ROL A ;$80BF47 | SEP #$20 ;$80BF48 | STA $210D ;$80BF4A | XBA ;$80BF4D | STA $210D ;$80BF4E | LDA $17BA ;$80BF51 | STA $210F ;$80BF54 | LDA $17BB ;$80BF57 | STA $210F ;$80BF5A | LDA $17C2 ;$80BF5D | STA $2110 ;$80BF60 | STZ $2110 ;$80BF63 | REP #$20 ;$80BF66 | LDA $17C2 ;$80BF68 | SEC ;$80BF6B | SBC #$0120 ;$80BF6C | LSR A ;$80BF6F | LSR A ;$80BF70 | SEP #$20 ;$80BF71 | STA $2112 ;$80BF73 | STZ $2112 ;$80BF76 | LDA $0512 ;$80BF79 | STA $2100 ;$80BF7C | REP #$20 ;$80BF7F | RTS ;$80BF81 / CODE_80BF82: JSR CODE_80B731 ;$80BF82 \ LDA $17BA ;$80BF85 | CLC ;$80BF88 | ADC $2A ;$80BF89 | LSR A ;$80BF8B | LSR A ;$80BF8C | SEP #$20 ;$80BF8D | STA $2111 ;$80BF8F | STZ $2111 ;$80BF92 | LDA $17BA ;$80BF95 | STA $210D ;$80BF98 | LDA $17BB ;$80BF9B | STA $210D ;$80BF9E | REP #$20 ;$80BFA1 | LDA $17BA ;$80BFA3 | LSR A ;$80BFA6 | SEP #$20 ;$80BFA7 | STA $210F ;$80BFA9 | STZ $210F ;$80BFAC | REP #$20 ;$80BFAF | LDA $17C2 ;$80BFB1 | LSR A ;$80BFB4 | LSR A ;$80BFB5 | SEP #$20 ;$80BFB6 | STA $2112 ;$80BFB8 | STZ $2112 ;$80BFBB | LDA $17C2 ;$80BFBE | STA $210E ;$80BFC1 | STZ $210E ;$80BFC4 | REP #$20 ;$80BFC7 | LDA $17C2 ;$80BFC9 | LSR A ;$80BFCC | SEP #$20 ;$80BFCD | STA $2110 ;$80BFCF | STZ $2110 ;$80BFD2 | LDA $0512 ;$80BFD5 | STA $2100 ;$80BFD8 | REP #$20 ;$80BFDB | RTS ;$80BFDD / CODE_80BFDE: LDA $059B ;$80BFDE \ STA $420B ;$80BFE1 | LDA #$FE01 ;$80BFE4 | STA $2126 ;$80BFE7 | LDY #$2640 ;$80BFEA | LDX $0989 ;$80BFED | BNE CODE_80BFFA ;$80BFF0 | LDA #$0001 ;$80BFF2 | STA $2126 ;$80BFF5 | BRA CODE_80C03D ;$80BFF8 / CODE_80BFFA: SEP #$20 ;$80BFFA \ LDA #$13 ;$80BFFC | STA $212D ;$80BFFE | REP #$20 ;$80C001 | LDA $1A,x ;$80C003 | CMP #$1C1C ;$80C005 | BNE CODE_80C015 ;$80C008 | SEP #$20 ;$80C00A | LDA #$00 ;$80C00C | STA $212D ;$80C00E | REP #$20 ;$80C011 | BRA CODE_80C02A ;$80C013 / CODE_80C015: BCC CODE_80C020 ;$80C015 \ LDA $12,x ;$80C017 | BIT #$4000 ;$80C019 | BNE CODE_80C02A ;$80C01C | BRA CODE_80C027 ;$80C01E / CODE_80C020: LDA $12,x ;$80C020 \ BIT #$4000 ;$80C022 | BEQ CODE_80C02A ;$80C025 | CODE_80C027: ; | LDY #$2740 ;$80C027 | CODE_80C02A: ; | STY $4320 ;$80C02A | LDA $2A ;$80C02D | AND #$0001 ;$80C02F | EOR #$0001 ;$80C032 | XBA ;$80C035 | CLC ;$80C036 | ADC #$80F2 ;$80C037 | STA $4322 ;$80C03A | CODE_80C03D: ; | JSR CODE_80B89C ;$80C03D | JSL CODE_B5A919 ;$80C040 | JSL CODE_B5ADD8 ;$80C044 | JSL CODE_B5B00B ;$80C048 | JSR CODE_80F324 ;$80C04C | SEP #$20 ;$80C04F | LDA $0512 ;$80C051 | STA $2100 ;$80C054 | REP #$20 ;$80C057 | RTS ;$80C059 / CODE_80C05A: JSR CODE_80B731 ;$80C05A \ JSR CODE_80CDAE ;$80C05D | SEP #$20 ;$80C060 | LDA $17C2 ;$80C062 | STA $2112 ;$80C065 | STZ $2112 ;$80C068 | REP #$20 ;$80C06B | JSR CODE_80CAFD ;$80C06D | JSR CODE_80BAB1 ;$80C070 | RTS ;$80C073 / CODE_80C074: JSR CODE_80B731 ;$80C074 \ LDA.l $0006A5 ;$80C077 | BIT #$0200 ;$80C07B | BNE CODE_80C083 ;$80C07E | BRL CODE_80C0FB ;$80C080 / CODE_80C083: SEP #$20 ;$80C083 \ LDA #$01 ;$80C085 | STA $2121 ;$80C087 | REP #$20 ;$80C08A | LDA $2A ;$80C08C | LSR A ;$80C08E | LSR A ;$80C08F | AND #$001F ;$80C090 | BIT #$0010 ;$80C093 | BEQ CODE_80C09B ;$80C096 | EOR #$001F ;$80C098 | CODE_80C09B: ; | CLC ;$80C09B | ADC $84 ;$80C09C | STA $84 ;$80C09E | LSR A ;$80C0A0 | AND #$003F ;$80C0A1 | BIT #$0020 ;$80C0A4 | BEQ CODE_80C0AC ;$80C0A7 | EOR #$003F ;$80C0A9 | CODE_80C0AC: ; | STA $32 ;$80C0AC | ASL A ;$80C0AE | ASL A ;$80C0AF | XBA ;$80C0B0 | STA $36 ;$80C0B1 | XBA ;$80C0B3 | ASL A ;$80C0B4 | ASL A ;$80C0B5 | ASL A ;$80C0B6 | STA $34 ;$80C0B7 | LDX #$0000 ;$80C0B9 | CODE_80C0BC: ; | LDA.l DATA_FD2CF0,x ;$80C0BC | AND #$001F ;$80C0C0 | SEC ;$80C0C3 | SBC $32 ;$80C0C4 | JSR CODE_80C17A ;$80C0C6 | STA $38 ;$80C0C9 | LDA.l DATA_FD2CF0,x ;$80C0CB | AND #$03E0 ;$80C0CF | SEC ;$80C0D2 | SBC $34 ;$80C0D3 | JSR CODE_80C17A ;$80C0D5 | TSB $38 ;$80C0D8 | LDA.l DATA_FD2CF0,x ;$80C0DA | AND #$7C00 ;$80C0DE | SEC ;$80C0E1 | SBC $36 ;$80C0E2 | JSR CODE_80C17A ;$80C0E4 | ORA $38 ;$80C0E7 | SEP #$20 ;$80C0E9 | STA $2122 ;$80C0EB | XBA ;$80C0EE | STA $2122 ;$80C0EF | REP #$20 ;$80C0F2 | INX ;$80C0F4 | INX ;$80C0F5 | CPX #$001E ;$80C0F6 | BNE CODE_80C0BC ;$80C0F9 | CODE_80C0FB: ; | LDA #$7010 ;$80C0FB | STA $2116 ;$80C0FE | LDA $2A ;$80C101 | BIT #$0007 ;$80C103 | BNE CODE_80C134 ;$80C106 | LSR A ;$80C108 | LSR A ;$80C109 | AND #$000E ;$80C10A | EOR #$000E ;$80C10D | TAX ;$80C110 | LDA DATA_80CAE5,x ;$80C111 | STA $4312 ;$80C114 | STA $4318 ;$80C117 | LDA #$09A0 ;$80C11A | STA $4315 ;$80C11D | LDA #$1801 ;$80C120 | STA $4310 ;$80C123 | SEP #$20 ;$80C126 | LDA #$F3 ;$80C128 | STA $4314 ;$80C12A | LDA #$02 ;$80C12D | STA $420B ;$80C12F | REP #$20 ;$80C132 | CODE_80C134: ; | INC A ;$80C134 | BIT #$0007 ;$80C135 | BNE CODE_80C141 ;$80C138 | LDA #$0004 ;$80C13A | STA $78 ;$80C13D | BRA CODE_80C146 ;$80C13F / CODE_80C141: LDA $0B00 ;$80C141 \ STA $78 ;$80C144 | CODE_80C146: ; | LDA $17BA ;$80C146 | SEP #$20 ;$80C149 | STA $210D ;$80C14B | XBA ;$80C14E | STA $210D ;$80C14F | XBA ;$80C152 | REP #$20 ;$80C153 | CLC ;$80C155 | ADC #$0080 ;$80C156 | SEP #$20 ;$80C159 | STA $210F ;$80C15B | XBA ;$80C15E | STA $210F ;$80C15F | LDA $17C2 ;$80C162 | STA $210E ;$80C165 | STZ $210E ;$80C168 | STA $2110 ;$80C16B | STZ $2110 ;$80C16E | LDA $0512 ;$80C171 | STA $2100 ;$80C174 | REP #$20 ;$80C177 | RTS ;$80C179 / CODE_80C17A: BPL CODE_80C17F ;$80C17A \ LDA #$0000 ;$80C17C | CODE_80C17F: ; | RTS ;$80C17F / CODE_80C180: LDA $059B ;$80C180 \ STA $420B ;$80C183 | JSR CODE_80B89C ;$80C186 | JSL CODE_B5A919 ;$80C189 | JSL CODE_B5ADD8 ;$80C18D | JSL CODE_B5B00B ;$80C191 | JSR CODE_80F324 ;$80C195 | JSR CODE_80CA1B ;$80C198 | JSR CODE_80C1A9 ;$80C19B | SEP #$20 ;$80C19E | LDA $0512 ;$80C1A0 | STA $2100 ;$80C1A3 | REP #$20 ;$80C1A6 | RTS ;$80C1A8 / CODE_80C1A9: LDA $08C2 ;$80C1A9 \ BIT #$0140 ;$80C1AC | BEQ CODE_80C1B2 ;$80C1AF | RTS ;$80C1B1 / CODE_80C1B2: LDA $2A ;$80C1B2 \ BIT #$0003 ;$80C1B4 | BNE CODE_80C1E5 ;$80C1B7 | LDA $091D ;$80C1B9 | INC A ;$80C1BC | CMP #$0006 ;$80C1BD | BCC CODE_80C1C5 ;$80C1C0 | LDA #$0000 ;$80C1C2 | CODE_80C1C5: ; | STA $091D ;$80C1C5 | LDX #$2010 ;$80C1C8 | STX $2116 ;$80C1CB | ASL A ;$80C1CE | TAX ;$80C1CF | LDA.l DATA_80C25F,x ;$80C1D0 | LDY #$0380 ;$80C1D4 | LDX #$00F5 ;$80C1D7 | JSL DMA_to_VRAM ;$80C1DA | LDA $0B00 ;$80C1DE | STA $78 ;$80C1E1 | BRA CODE_80C1F0 ;$80C1E3 / CODE_80C1E5: INC A ;$80C1E5 \ BIT #$0003 ;$80C1E6 | BNE CODE_80C1F0 ;$80C1E9 | LDA #$0014 ;$80C1EB | STA $78 ;$80C1EE | CODE_80C1F0: ; | LDA $2A ;$80C1F0 | LSR A ;$80C1F2 | LSR A ;$80C1F3 | AND #$0003 ;$80C1F4 | BIT #$0002 ;$80C1F7 | BEQ CODE_80C200 ;$80C1FA | EOR #$0003 ;$80C1FC | INC A ;$80C1FF | CODE_80C200: ; | STA $32 ;$80C200 | ASL A ;$80C202 | ASL A ;$80C203 | XBA ;$80C204 | STA $36 ;$80C205 | XBA ;$80C207 | ASL A ;$80C208 | ASL A ;$80C209 | ASL A ;$80C20A | STA $34 ;$80C20B | SEP #$20 ;$80C20D | LDA #$68 ;$80C20F | STA $2121 ;$80C211 | REP #$20 ;$80C214 | LDX #$0000 ;$80C216 | CODE_80C219: ; | LDA.l DATA_FD2EBE,x ;$80C219 | AND #$001F ;$80C21D | SEC ;$80C220 | SBC $32 ;$80C221 | BPL CODE_80C228 ;$80C223 | LDA #$0000 ;$80C225 | CODE_80C228: ; | STA $38 ;$80C228 | LDA.l DATA_FD2EBE,x ;$80C22A | AND #$03E0 ;$80C22E | SEC ;$80C231 | SBC $34 ;$80C232 | BPL CODE_80C239 ;$80C234 | LDA #$0000 ;$80C236 | CODE_80C239: ; | TSB $38 ;$80C239 | LDA.l DATA_FD2EBE,x ;$80C23B | AND #$7C00 ;$80C23F | SEC ;$80C242 | SBC $36 ;$80C243 | BPL CODE_80C24A ;$80C245 | LDA #$0000 ;$80C247 | CODE_80C24A: ; | ORA $38 ;$80C24A | SEP #$20 ;$80C24C | STA $2122 ;$80C24E | XBA ;$80C251 | STA $2122 ;$80C252 | REP #$20 ;$80C255 | INX ;$80C257 | INX ;$80C258 | CPX #$0010 ;$80C259 | BNE CODE_80C219 ;$80C25C | RTS ;$80C25E / DATA_80C25F: dw DATA_F5484A dw DATA_F54BCA dw DATA_F54F4A dw DATA_F552CA dw DATA_F5564A dw DATA_F559CA CODE_80C26B: JSR CODE_80B731 ;$80C26B \ JSR CODE_80C321 ;$80C26E | LDA #$0100 ;$80C271 | LDX $0D5A ;$80C274 | BEQ CODE_80C288 ;$80C277 | LDY $12,x ;$80C279 | STY $212C ;$80C27B | SEC ;$80C27E | LDA $17BA ;$80C27F | SBC $06,x ;$80C282 | CLC ;$80C284 | ADC #$0080 ;$80C285 | CODE_80C288: ; | SEP #$20 ;$80C288 | STA $210F ;$80C28A | XBA ;$80C28D | STA $210F ;$80C28E | REP #$20 ;$80C291 | SEC ;$80C293 | LDA $17C2 ;$80C294 | SBC $0A,x ;$80C297 | CLC ;$80C299 | ADC #$0040 ;$80C29A | SEP #$20 ;$80C29D | STA $2110 ;$80C29F | STZ $2110 ;$80C2A2 | REP #$20 ;$80C2A5 | CMP #$00A0 ;$80C2A7 | BMI CODE_80C2B4 ;$80C2AA | LDX #$FF60 ;$80C2AC | LDY #$FF60 ;$80C2AF | BRA CODE_80C2D4 ;$80C2B2 / CODE_80C2B4: CMP #$0020 ;$80C2B4 \ BMI CODE_80C2C1 ;$80C2B7 | LDX #$0060 ;$80C2B9 | LDY #$FF60 ;$80C2BC | BRA CODE_80C2D4 ;$80C2BF / CODE_80C2C1: CMP #$FFA0 ;$80C2C1 \ BPL CODE_80C2CE ;$80C2C4 | LDX #$FF60 ;$80C2C6 | LDY #$0060 ;$80C2C9 | BRA CODE_80C2D4 ;$80C2CC / CODE_80C2CE: LDX #$0060 ;$80C2CE \ LDY #$0060 ;$80C2D1 | CODE_80C2D4: ; | TXA ;$80C2D4 | STA $7E8012 ;$80C2D5 | TYA ;$80C2D9 | STA $7E8014 ;$80C2DA | LDA $17BA ;$80C2DE | LSR A ;$80C2E1 | SEP #$20 ;$80C2E2 | STA $2111 ;$80C2E4 | XBA ;$80C2E7 | STA $2111 ;$80C2E8 | LDA $17BA ;$80C2EB | STA $210D ;$80C2EE | LDA $17BB ;$80C2F1 | STA $210D ;$80C2F4 | REP #$20 ;$80C2F7 | LDA $17C2 ;$80C2F9 | SEC ;$80C2FC | SBC #$0100 ;$80C2FD | LSR A ;$80C300 | LSR A ;$80C301 | LSR A ;$80C302 | SEP #$20 ;$80C303 | STA $2112 ;$80C305 | STZ $2112 ;$80C308 | LDA $17C2 ;$80C30B | STA $210E ;$80C30E | STZ $210E ;$80C311 | LDA $0512 ;$80C314 | STA $2100 ;$80C317 | REP #$20 ;$80C31A | RTS ;$80C31C / CODE_80C31D: JSR CODE_80C321 ;$80C31D \ RTL ;$80C320 / CODE_80C321: LDA $2A ;$80C321 \ AND #$0001 ;$80C323 | BEQ CODE_80C329 ;$80C326 | RTS ;$80C328 / CODE_80C329: LDY #$7010 ;$80C329 \ LDA $2A ;$80C32C | LSR A ;$80C32E | AND #$007E ;$80C32F | TAX ;$80C332 | LDA.l DATA_80C38C,x ;$80C333 | LDX #$0300 ;$80C337 | STA $4312 ;$80C33A | STA $4318 ;$80C33D | STY $2116 ;$80C340 | STX $4315 ;$80C343 | LDA #$1801 ;$80C346 | STA $4310 ;$80C349 | SEP #$20 ;$80C34C | LDA #$F4 ;$80C34E | STA $4314 ;$80C350 | LDA #$02 ;$80C353 | STA $420B ;$80C355 | REP #$20 ;$80C358 | LDY #$7190 ;$80C35A | LDA $2A ;$80C35D | LSR A ;$80C35F | AND #$001E ;$80C360 | TAX ;$80C363 | LDA.l DATA_80C446,x ;$80C364 | LDX #$0380 ;$80C368 | STA $4312 ;$80C36B | STA $4318 ;$80C36E | STY $2116 ;$80C371 | STX $4315 ;$80C374 | LDA #$1801 ;$80C377 | STA $4310 ;$80C37A | SEP #$20 ;$80C37D | LDA #$F4 ;$80C37F | STA $4314 ;$80C381 | LDA #$02 ;$80C384 | STA $420B ;$80C386 | REP #$20 ;$80C389 | RTS ;$80C38B / DATA_80C38C: dw DATA_F429D2 dw DATA_F42CD2 dw DATA_F42FD2 dw DATA_F432D2 dw DATA_F435D2 dw DATA_F432D2 dw DATA_F42FD2 dw DATA_F432D2 dw DATA_F435D2 dw DATA_F432D2 dw DATA_F42FD2 dw DATA_F432D2 dw DATA_F435D2 dw DATA_F432D2 dw DATA_F42FD2 dw DATA_F432D2 dw DATA_F435D2 dw DATA_F432D2 dw DATA_F42FD2 dw DATA_F432D2 dw DATA_F435D2 dw DATA_F432D2 dw DATA_F42FD2 dw DATA_F432D2 dw DATA_F435D2 dw DATA_F435D2 dw DATA_F432D2 dw DATA_F42FD2 dw DATA_F42CD2 dw DATA_F429D2 dw DATA_F438D2 dw DATA_F43BD2 dw DATA_F43ED2 dw DATA_F441D2 dw DATA_F43ED2 dw DATA_F43BD2 dw DATA_F438D2 dw DATA_F429D2 dw DATA_F438D2 dw DATA_F43BD2 dw DATA_F43ED2 dw DATA_F441D2 dw DATA_F43ED2 dw DATA_F43BD2 dw DATA_F438D2 dw DATA_F429D2 dw DATA_F438D2 dw DATA_F43BD2 dw DATA_F43ED2 dw DATA_F441D2 dw DATA_F43ED2 dw DATA_F43BD2 dw DATA_F438D2 dw DATA_F429D2 dw DATA_F438D2 dw DATA_F43BD2 dw DATA_F43ED2 dw DATA_F441D2 dw DATA_F43ED2 dw DATA_F43BD2 dw DATA_F438D2 dw DATA_F429D2 dw DATA_F438D2 dw DATA_F43BD2 dw DATA_F43ED2 dw DATA_F441D2 dw DATA_F43ED2 dw DATA_F43BD2 dw DATA_F438D2 dw DATA_F429D2 dw DATA_F438D2 dw DATA_F43BD2 dw DATA_F43ED2 dw DATA_F441D2 dw DATA_F43ED2 dw DATA_F43BD2 dw DATA_F438D2 dw DATA_F429D2 dw DATA_F438D2 dw DATA_F43BD2 dw DATA_F43ED2 dw DATA_F441D2 dw DATA_F43ED2 dw DATA_F43BD2 dw DATA_F438D2 dw DATA_F429D2 dw DATA_F438D2 dw DATA_F43BD2 dw DATA_F43ED2 dw DATA_F441D2 dw DATA_F43ED2 dw DATA_F43BD2 dw DATA_F438D2 DATA_80C446: dw DATA_F41852 dw DATA_F41BD2 dw DATA_F41BD2 dw DATA_F41F52 dw DATA_F41F52 dw DATA_F422D2 dw DATA_F422D2 dw DATA_F42652 dw DATA_F42652 dw DATA_F422D2 dw DATA_F422D2 dw DATA_F41F52 dw DATA_F41F52 dw DATA_F41BD2 dw DATA_F41BD2 dw DATA_F41852 CODE_80C466: LDA $059B ;$80C466 \ STA $420B ;$80C469 | JSR CODE_80B83D ;$80C46C | JSL CODE_B5A919 ;$80C46F | JSL CODE_B5ADD8 ;$80C473 | JSL CODE_B5B00B ;$80C477 | JSR CODE_80F324 ;$80C47B | JSR CODE_80CF21 ;$80C47E | LDA $17C2 ;$80C481 | LSR A ;$80C484 | SEP #$20 ;$80C485 | STA $2110 ;$80C487 | STZ $2110 ;$80C48A | LDA $17BA ;$80C48D | LDA $17BB ;$80C490 | LDA $17C2 ;$80C493 | STA $210E ;$80C496 | STZ $210E ;$80C499 | LDA $0512 ;$80C49C | STA $2100 ;$80C49F | REP #$20 ;$80C4A2 | RTS ;$80C4A4 / CODE_80C4A5: LDA $059B ;$80C4A5 \ STA $420B ;$80C4A8 | JSR CODE_80B89C ;$80C4AB | JSL CODE_B5A919 ;$80C4AE | JSL CODE_B5ADD8 ;$80C4B2 | JSL CODE_B5B00B ;$80C4B6 | JSR CODE_80F324 ;$80C4BA | LDA $08C2 ;$80C4BD | BIT #$0140 ;$80C4C0 | BNE CODE_80C4F8 ;$80C4C3 | LDA $0915 ;$80C4C5 | BEQ CODE_80C4CD ;$80C4C8 | DEC $0915 ;$80C4CA | CODE_80C4CD: ; | LDA $0915 ;$80C4CD | SEC ;$80C4D0 | SBC $0917 ;$80C4D1 | BEQ CODE_80C4F8 ;$80C4D4 | BCS CODE_80C4DD ;$80C4D6 | DEC $0917 ;$80C4D8 | BRA CODE_80C4F8 ;$80C4DB / CODE_80C4DD: LDX #$0004 ;$80C4DD \ CMP #$0004 ;$80C4E0 | BCS CODE_80C4E8 ;$80C4E3 | LDX #$0001 ;$80C4E5 | CODE_80C4E8: ; | TXA ;$80C4E8 | CLC ;$80C4E9 | ADC $0917 ;$80C4EA | CMP #$0040 ;$80C4ED | BNE CODE_80C4F5 ;$80C4F0 | LDA #$00B4 ;$80C4F2 | CODE_80C4F5: ; | STA $0917 ;$80C4F5 | CODE_80C4F8: ; | LDA $0917 ;$80C4F8 | CMP #$003F ;$80C4FB | BCC CODE_80C50B ;$80C4FE | SEC ;$80C500 | SBC #$00B4 ;$80C501 | JSR CODE_80C57E ;$80C504 | CLC ;$80C507 | ADC #$003F ;$80C508 | CODE_80C50B: ; | LSR A ;$80C50B | LSR A ;$80C50C | CMP #$0018 ;$80C50D | BCC CODE_80C515 ;$80C510 | LDA #$0018 ;$80C512 | CODE_80C515: ; | STA $32 ;$80C515 | LDA #$0018 ;$80C517 | SEC ;$80C51A | SBC $32 ;$80C51B | STA $36 ;$80C51D | STA $34 ;$80C51F | LDA #$0005 ;$80C521 | SEC ;$80C524 | SBC $34 ;$80C525 | JSR CODE_80C57E ;$80C527 | XBA ;$80C52A | ASL A ;$80C52B | ASL A ;$80C52C | TSB $36 ;$80C52D | LDA #$0002 ;$80C52F | SEC ;$80C532 | SBC $34 ;$80C533 | JSR CODE_80C57E ;$80C535 | ASL A ;$80C538 | ASL A ;$80C539 | ASL A ;$80C53A | ASL A ;$80C53B | ASL A ;$80C53C | ORA $36 ;$80C53D | STA $0913 ;$80C53F | LDY #$0000 ;$80C542 | LDX #DATA_FD0910 ;$80C545 | LDA $32 ;$80C548 | CMP #$0014 ;$80C54A | BCS CODE_80C55C ;$80C54D | LDX #DATA_FD08F0 ;$80C54F | CMP #$0010 ;$80C552 | BCS CODE_80C55C ;$80C555 | LDX #DATA_FD07F0 ;$80C557 | BRA CODE_80C55C ;$80C55A / CODE_80C55C: TXA ;$80C55C \ LDX #$0004 ;$80C55D | JSL DMA_palette ;$80C560 | SEP #$20 ;$80C564 | STZ $2121 ;$80C566 | LDA $0913 ;$80C569 | STA $2122 ;$80C56C | LDA $0914 ;$80C56F | STA $2122 ;$80C572 | LDA $0512 ;$80C575 | STA $2100 ;$80C578 | REP #$20 ;$80C57B | RTS ;$80C57D / CODE_80C57E: BPL CODE_80C583 ;$80C57E \ LDA #$0000 ;$80C580 | CODE_80C583: ; | RTS ;$80C583 / CODE_80C584: LDA $059B ;$80C584 \ STA $420B ;$80C587 | JSL CODE_B5A919 ;$80C58A | JSL CODE_B5ADD8 ;$80C58E | JSL CODE_B5B00B ;$80C592 | JSR CODE_80F324 ;$80C596 | LDA $17BA ;$80C599 | SEP #$20 ;$80C59C | STA $210D ;$80C59E | XBA ;$80C5A1 | STA $210D ;$80C5A2 | XBA ;$80C5A5 | REP #$20 ;$80C5A6 | CLC ;$80C5A8 | ADC #$0080 ;$80C5A9 | SEP #$20 ;$80C5AC | STA $210F ;$80C5AE | XBA ;$80C5B1 | STA $210F ;$80C5B2 | LDA $17C2 ;$80C5B5 | STA $210E ;$80C5B8 | STZ $210E ;$80C5BB | STA $2110 ;$80C5BE | STZ $2110 ;$80C5C1 | LDA $0512 ;$80C5C4 | STA $2100 ;$80C5C7 | REP #$20 ;$80C5CA | LDA $2A ;$80C5CC | CLC ;$80C5CE | ADC $17BA ;$80C5CF | SEP #$20 ;$80C5D2 | STA $2111 ;$80C5D4 | XBA ;$80C5D7 | STA $2111 ;$80C5D8 | REP #$20 ;$80C5DB | RTS ;$80C5DD / CODE_80C5DE: LDA $059B ;$80C5DE \ STA $420B ;$80C5E1 | JSL CODE_B5A919 ;$80C5E4 | JSL CODE_B5AA88 ;$80C5E8 | JSL CODE_B5AC25 ;$80C5EC | JSL CODE_B5ADD8 ;$80C5F0 | JSL CODE_B5B00B ;$80C5F4 | JSR CODE_80F324 ;$80C5F8 | LDA $0913 ;$80C5FB | BEQ CODE_80C629 ;$80C5FE | LDA #$8C28 ;$80C600 | STA $4302 ;$80C603 | STA $4308 ;$80C606 | LDA #$0100 ;$80C609 | STA $4305 ;$80C60C | LDA #$2200 ;$80C60F | STA $4300 ;$80C612 | SEP #$20 ;$80C615 | LDA #$7E ;$80C617 | STA $4304 ;$80C619 | STZ $2121 ;$80C61C | LDA #$01 ;$80C61F | STA $420B ;$80C621 | REP #$20 ;$80C624 | STZ $0913 ;$80C626 | CODE_80C629: ; | LDA $17BA ;$80C629 | SEP #$20 ;$80C62C | STA $210D ;$80C62E | XBA ;$80C631 | STA $210D ;$80C632 | LDA $B8 ;$80C635 | STA $2111 ;$80C637 | LDA $B9 ;$80C63A | STA $2111 ;$80C63C | REP #$20 ;$80C63F | LDA $17C2 ;$80C641 | SEP #$20 ;$80C644 | STA $210E ;$80C646 | STZ $210E ;$80C649 | STA $2112 ;$80C64C | STZ $2112 ;$80C64F | LDA $0512 ;$80C652 | STA $2100 ;$80C655 | REP #$20 ;$80C658 | RTS ;$80C65A / CODE_80C65B: LDA $059B ;$80C65B \ STA $420B ;$80C65E | JSR CODE_80B86E ;$80C661 | JSL CODE_B5A919 ;$80C664 | JSL CODE_B5ADD8 ;$80C668 | JSL CODE_B5B00B ;$80C66C | JSR CODE_80F324 ;$80C670 | LDA $17BA ;$80C673 | LSR A ;$80C676 | SEP #$20 ;$80C677 | STA $210F ;$80C679 | STZ $210F ;$80C67C | REP #$20 ;$80C67F | LDA $17C2 ;$80C681 | LSR A ;$80C684 | SEP #$20 ;$80C685 | STA $2110 ;$80C687 | STZ $2110 ;$80C68A | REP #$20 ;$80C68D | LDA $08C2 ;$80C68F | BIT #$0140 ;$80C692 | BNE CODE_80C6CA ;$80C695 | LDA $0915 ;$80C697 | BEQ CODE_80C69F ;$80C69A | DEC $0915 ;$80C69C | CODE_80C69F: ; | LDA $0915 ;$80C69F | SEC ;$80C6A2 | SBC $0917 ;$80C6A3 | BEQ CODE_80C6CA ;$80C6A6 | BCS CODE_80C6AF ;$80C6A8 | DEC $0917 ;$80C6AA | BRA CODE_80C6CA ;$80C6AD / CODE_80C6AF: LDX #$0004 ;$80C6AF \ CMP #$0004 ;$80C6B2 | BCS CODE_80C6BA ;$80C6B5 | LDX #$0001 ;$80C6B7 | CODE_80C6BA: ; | TXA ;$80C6BA | CLC ;$80C6BB | ADC $0917 ;$80C6BC | CMP #$0040 ;$80C6BF | BNE CODE_80C6C7 ;$80C6C2 | LDA #$00B4 ;$80C6C4 | CODE_80C6C7: ; | STA $0917 ;$80C6C7 | CODE_80C6CA: ; | LDA $0917 ;$80C6CA | CMP #$003F ;$80C6CD | BCC CODE_80C6DD ;$80C6D0 | SEC ;$80C6D2 | SBC #$00B4 ;$80C6D3 | JSR CODE_80C57E ;$80C6D6 | CLC ;$80C6D9 | ADC #$003F ;$80C6DA | CODE_80C6DD: ; | LSR A ;$80C6DD | LSR A ;$80C6DE | CMP #$001C ;$80C6DF | BCC CODE_80C6E7 ;$80C6E2 | LDA #$001C ;$80C6E4 | CODE_80C6E7: ; | STA $32 ;$80C6E7 | LDA #$0000 ;$80C6E9 | CLC ;$80C6EC | ADC $32 ;$80C6ED | STA $36 ;$80C6EF | STA $34 ;$80C6F1 | LDA #$0000 ;$80C6F3 | CLC ;$80C6F6 | ADC $32 ;$80C6F7 | JSR CODE_80C57E ;$80C6F9 | XBA ;$80C6FC | ASL A ;$80C6FD | ASL A ;$80C6FE | TSB $36 ;$80C6FF | LDA #$0000 ;$80C701 | CLC ;$80C704 | ADC $32 ;$80C705 | JSR CODE_80C57E ;$80C707 | ASL A ;$80C70A | ASL A ;$80C70B | ASL A ;$80C70C | ASL A ;$80C70D | ASL A ;$80C70E | ORA $36 ;$80C70F | STA $0913 ;$80C711 | LDY #$0000 ;$80C714 | LDX #DATA_FD394E ;$80C717 | LDA $32 ;$80C71A | CMP #$0014 ;$80C71C | BCS CODE_80C72E ;$80C71F | LDX #DATA_FD396E ;$80C721 | CMP #$000C ;$80C724 | BCS CODE_80C72E ;$80C727 | LDX #DATA_FD0910 ;$80C729 | BRA CODE_80C72E ;$80C72C / CODE_80C72E: TXA ;$80C72E \ LDX #$0004 ;$80C72F | JSL DMA_palette ;$80C732 | SEP #$20 ;$80C736 | STZ $2121 ;$80C738 | LDA $0913 ;$80C73B | STA $2122 ;$80C73E | LDA $0914 ;$80C741 | STA $2122 ;$80C744 | LDA $0512 ;$80C747 | STA $2100 ;$80C74A | REP #$20 ;$80C74D | RTS ;$80C74F / CODE_80C750: LDA $059B ;$80C750 \ STA $420B ;$80C753 | JSL CODE_B5A919 ;$80C756 | JSL CODE_B5ADD8 ;$80C75A | JSL CODE_B5B00B ;$80C75E | JSR CODE_80F324 ;$80C762 | LDA $17BA ;$80C765 | SEP #$20 ;$80C768 | STA $210D ;$80C76A | XBA ;$80C76D | STA $210D ;$80C76E | LDA $17C2 ;$80C771 | STA $210E ;$80C774 | STZ $210E ;$80C777 | REP #$20 ;$80C77A | LDA $17BA ;$80C77C | LSR A ;$80C77F | SEP #$20 ;$80C780 | STA $210F ;$80C782 | STZ $210F ;$80C785 | REP #$20 ;$80C788 | LDA $17BA ;$80C78A | LSR A ;$80C78D | LSR A ;$80C78E | SEP #$20 ;$80C78F | STA $2111 ;$80C791 | STZ $2111 ;$80C794 | REP #$20 ;$80C797 | LDA $17C0 ;$80C799 | LSR A ;$80C79C | SEC ;$80C79D | SBC #$0040 ;$80C79E | SEP #$20 ;$80C7A1 | STA $2110 ;$80C7A3 | XBA ;$80C7A6 | STA $2110 ;$80C7A7 | REP #$20 ;$80C7AA | LDA $17C0 ;$80C7AC | SEC ;$80C7AF | SBC #$0080 ;$80C7B0 | LSR A ;$80C7B3 | LSR A ;$80C7B4 | SEP #$20 ;$80C7B5 | STA $2112 ;$80C7B7 | STZ $2112 ;$80C7BA | LDA $0512 ;$80C7BD | STA $2100 ;$80C7C0 | REP #$20 ;$80C7C3 | RTS ;$80C7C5 / CODE_80C7C6: LDA $059B ;$80C7C6 \ STA $420B ;$80C7C9 | JSL CODE_B5A919 ;$80C7CC | JSL CODE_B5ADD8 ;$80C7D0 | JSL CODE_B5B00B ;$80C7D4 | JSR CODE_80F324 ;$80C7D8 | JSR CODE_80CA7E ;$80C7DB | LDA $17BA ;$80C7DE | SEP #$20 ;$80C7E1 | STA $210D ;$80C7E3 | XBA ;$80C7E6 | STA $210D ;$80C7E7 | LDA $17C2 ;$80C7EA | STA $210E ;$80C7ED | STZ $210E ;$80C7F0 | REP #$20 ;$80C7F3 | LDA $17BA ;$80C7F5 | LSR A ;$80C7F8 | SEP #$20 ;$80C7F9 | STA $210F ;$80C7FB | STZ $210F ;$80C7FE | REP #$20 ;$80C801 | LDA $17C2 ;$80C803 | LSR A ;$80C806 | SEP #$20 ;$80C807 | STA $2110 ;$80C809 | STZ $2110 ;$80C80C | CLC ;$80C80F | ADC #$04 ;$80C810 | STA $2112 ;$80C812 | STZ $2112 ;$80C815 | LDA $0512 ;$80C818 | STA $2100 ;$80C81B | REP #$20 ;$80C81E | RTS ;$80C820 / CODE_80C821: LDA $059B ;$80C821 \ STA $420B ;$80C824 | JSR CODE_80B89C ;$80C827 | JSL CODE_B5A919 ;$80C82A | JSL CODE_B5ADD8 ;$80C82E | JSL CODE_B5B00B ;$80C832 | JSR CODE_80F324 ;$80C836 | JSR CODE_80C1A9 ;$80C839 | SEP #$20 ;$80C83C | LDA $0512 ;$80C83E | STA $2100 ;$80C841 | REP #$20 ;$80C844 | RTS ;$80C846 / CODE_80C847: LDA $059B ;$80C847 \ STA $420B ;$80C84A | JSL CODE_B5A919 ;$80C84D | JSL CODE_B5ADD8 ;$80C851 | JSL CODE_B5B00B ;$80C855 | JSR CODE_80F324 ;$80C859 | JSR CODE_80CC36 ;$80C85C | LDA $17BA ;$80C85F | CLC ;$80C862 | ADC $2A ;$80C863 | LSR A ;$80C865 | LSR A ;$80C866 | SEP #$20 ;$80C867 | STA $2111 ;$80C869 | STZ $2111 ;$80C86C | LDA $17BA ;$80C86F | STA $210D ;$80C872 | LDA $17BB ;$80C875 | STA $210D ;$80C878 | REP #$20 ;$80C87B | LDA $17BA ;$80C87D | LSR A ;$80C880 | SEP #$20 ;$80C881 | STA $210F ;$80C883 | STZ $210F ;$80C886 | REP #$20 ;$80C889 | LDA $17C2 ;$80C88B | LSR A ;$80C88E | LSR A ;$80C88F | SEP #$20 ;$80C890 | STA $2112 ;$80C892 | STZ $2112 ;$80C895 | LDA $17C2 ;$80C898 | STA $210E ;$80C89B | STZ $210E ;$80C89E | LDA $0512 ;$80C8A1 | STA $2100 ;$80C8A4 | REP #$20 ;$80C8A7 | RTS ;$80C8A9 / CODE_80C8AA: LDA $059B ;$80C8AA \ STA $420B ;$80C8AD | JSL CODE_B5A919 ;$80C8B0 | JSL CODE_B5ADD8 ;$80C8B4 | JSL CODE_B5B00B ;$80C8B8 | JSR CODE_80F324 ;$80C8BC | JSR CODE_80C973 ;$80C8BF | LDA $17BA ;$80C8C2 | LSR A ;$80C8C5 | LSR A ;$80C8C6 | SEP #$20 ;$80C8C7 | STA $210F ;$80C8C9 | STZ $210F ;$80C8CC | LDA $17BA ;$80C8CF | STA $210D ;$80C8D2 | LDA $17BB ;$80C8D5 | STA $210D ;$80C8D8 | LDA $17C2 ;$80C8DB | STA $210E ;$80C8DE | LDA $17C3 ;$80C8E1 | STA $210E ;$80C8E4 | REP #$20 ;$80C8E7 | LDA $17C2 ;$80C8E9 | LSR A ;$80C8EC | LSR A ;$80C8ED | SEP #$20 ;$80C8EE | STA $2110 ;$80C8F0 | STZ $2110 ;$80C8F3 | LDA $0512 ;$80C8F6 | STA $2100 ;$80C8F9 | REP #$20 ;$80C8FC | RTS ;$80C8FE / CODE_80C8FF: LDA $059B ;$80C8FF \ STA $420B ;$80C902 | JSL CODE_B5A919 ;$80C905 | JSL CODE_B5ADD8 ;$80C909 | JSL CODE_B5B00B ;$80C90D | JSR CODE_80F324 ;$80C911 | LDX #$80F2 ;$80C914 | STX $4312 ;$80C917 | LDX #$8012 ;$80C91A | STX $4322 ;$80C91D | LDA $2A ;$80C920 | BIT #$0001 ;$80C922 | BNE CODE_80C933 ;$80C925 | LDX #$810A ;$80C927 | STX $4312 ;$80C92A | LDX #$85D2 ;$80C92D | STX $4322 ;$80C930 | CODE_80C933: ; | LDA $17BA ;$80C933 | LSR A ;$80C936 | SEP #$20 ;$80C937 | STA $2111 ;$80C939 | STZ $2111 ;$80C93C | LDA $17BA ;$80C93F | STA $210F ;$80C942 | LDA $17BB ;$80C945 | STA $210F ;$80C948 | LDA $17C2 ;$80C94B | STA $2110 ;$80C94E | STZ $2110 ;$80C951 | STZ $2112 ;$80C954 | STZ $2112 ;$80C957 | LDA $0512 ;$80C95A | STA $2100 ;$80C95D | REP #$20 ;$80C960 | RTS ;$80C962 / DATA_80C963: dw DATA_F30EBB dw DATA_F30FCB dw DATA_F310DB dw DATA_F311EB dw DATA_F312FB dw DATA_F3140B dw DATA_F3151B dw DATA_F3162B CODE_80C973: LDA $08C2 ;$80C973 \ BIT #$0140 ;$80C976 | BEQ CODE_80C97C ;$80C979 | RTS ;$80C97B / CODE_80C97C: LDA $17C6 ;$80C97C \ CLC ;$80C97F | ADC $19BE ;$80C980 | STA $17C6 ;$80C983 | LDA $2A ;$80C986 | ASL A ;$80C988 | ASL A ;$80C989 | AND #$01FE ;$80C98A | TAX ;$80C98D | LDA.l DATA_B3F4D8,x ;$80C98E | LSR A ;$80C992 | LSR A ;$80C993 | LSR A ;$80C994 | LSR A ;$80C995 | CLC ;$80C996 | ADC $17C7 ;$80C997 | CLC ;$80C99A | ADC $17C0 ;$80C99B | STA $17C4 ;$80C99E | PEA $807E ;$80C9A1 | PLB ;$80C9A4 | LDY #$0000 ;$80C9A5 | LDA $17C4 ;$80C9A8 | AND #$FFF0 ;$80C9AB | ASL A ;$80C9AE | CLC ;$80C9AF | ADC $2A ;$80C9B0 | ASL A ;$80C9B2 | CODE_80C9B3: ; | AND #$01FE ;$80C9B3 | TAX ;$80C9B6 | LDA.l DATA_B3F4D8,x ;$80C9B7 | LSR A ;$80C9BB | LSR A ;$80C9BC | CLC ;$80C9BD | ADC $17BA ;$80C9BE | STA $8013,y ;$80C9C1 | TXA ;$80C9C4 | CLC ;$80C9C5 | ADC #$0040 ;$80C9C6 | INY ;$80C9C9 | INY ;$80C9CA | INY ;$80C9CB | CPY #$002D ;$80C9CC | BNE CODE_80C9B3 ;$80C9CF | PLB ;$80C9D1 | SEP #$20 ;$80C9D2 | LDA $17C4 ;$80C9D4 | STA $2112 ;$80C9D7 | STZ $2112 ;$80C9DA | EOR #$0F ;$80C9DD | AND #$0F ;$80C9DF | INC A ;$80C9E1 | STA $7E8012 ;$80C9E2 | REP #$20 ;$80C9E6 | LDA $2A ;$80C9E8 | BIT #$0001 ;$80C9EA | BEQ CODE_80CA1A ;$80C9ED | AND #$000E ;$80C9EF | TAX ;$80C9F2 | LDA.l DATA_80C963,x ;$80C9F3 | STA $4302 ;$80C9F7 | LDA #$0120 ;$80C9FA | STA $4305 ;$80C9FD | LDA #$1801 ;$80CA00 | STA $4300 ;$80CA03 | LDA #$5008 ;$80CA06 | STA $2116 ;$80CA09 | SEP #$30 ;$80CA0C | LDA #$F3 ;$80CA0E | STA $4304 ;$80CA10 | LDA #$01 ;$80CA13 | STA $420B ;$80CA15 | REP #$30 ;$80CA18 | CODE_80CA1A: ; | RTS ;$80CA1A / CODE_80CA1B: LDA $0D54 ;$80CA1B \ SEC ;$80CA1E | SBC $17C0 ;$80CA1F | CMP #$0038 ;$80CA22 | BCC CODE_80CA2A ;$80CA25 | LDA #$0038 ;$80CA27 | CODE_80CA2A: ; | STA $32 ;$80CA2A | EOR #$00FF ;$80CA2C | SEP #$20 ;$80CA2F | STA $2112 ;$80CA31 | STZ $2112 ;$80CA34 | LDA $32 ;$80CA37 | CLC ;$80CA39 | ADC #$44 ;$80CA3A | STA $7E80E5 ;$80CA3C | STA $7E8834 ;$80CA40 | STA $7E884E ;$80CA44 | REP #$20 ;$80CA48 | LDA $17BA ;$80CA4A | LSR A ;$80CA4D | LSR A ;$80CA4E | LSR A ;$80CA4F | EOR #$FFFF ;$80CA50 | CLC ;$80CA53 | ADC $17BA ;$80CA54 | STA $7E884C ;$80CA57 | STA $7E884F ;$80CA5B | LDA $17BA ;$80CA5F | STA $32 ;$80CA62 | LDA $17B8 ;$80CA64 | LSR $32 ;$80CA67 | ROR A ;$80CA69 | LSR $32 ;$80CA6A | ROR A ;$80CA6C | LSR $32 ;$80CA6D | ROR A ;$80CA6F | CLC ;$80CA70 | ADC $17B8 ;$80CA71 | LDA $32 ;$80CA74 | ADC $17BA ;$80CA76 | STA $7E8852 ;$80CA79 | RTS ;$80CA7D / CODE_80CA7E: LDA $17BA ;$80CA7E \ LSR A ;$80CA81 | LSR A ;$80CA82 | AND #$000E ;$80CA83 | TAX ;$80CA86 | LDA $17BA ;$80CA87 | LSR A ;$80CA8A | CLC ;$80CA8B | ADC #$0004 ;$80CA8C | STA $32 ;$80CA8F | STA $7E8012,x ;$80CA91 | JSR CODE_80CADD ;$80CA95 | LDA $32 ;$80CA98 | INC A ;$80CA9A | STA $7E8012,x ;$80CA9B | JSR CODE_80CADD ;$80CA9F | LDA $32 ;$80CAA2 | INC A ;$80CAA4 | INC A ;$80CAA5 | STA $7E8012,x ;$80CAA6 | JSR CODE_80CADD ;$80CAAA | LDA $32 ;$80CAAD | INC A ;$80CAAF | INC A ;$80CAB0 | STA $7E8012,x ;$80CAB1 | JSR CODE_80CADD ;$80CAB5 | LDA $32 ;$80CAB8 | INC A ;$80CABA | STA $7E8012,x ;$80CABB | JSR CODE_80CADD ;$80CABF | LDA $32 ;$80CAC2 | STA $7E8012,x ;$80CAC4 | JSR CODE_80CADD ;$80CAC8 | LDA $32 ;$80CACB | DEC A ;$80CACD | STA $7E8012,x ;$80CACE | JSR CODE_80CADD ;$80CAD2 | LDA $32 ;$80CAD5 | DEC A ;$80CAD7 | STA $7E8012,x ;$80CAD8 | RTS ;$80CADC / CODE_80CADD: INX ;$80CADD \ INX ;$80CADE | TXA ;$80CADF | AND #$000E ;$80CAE0 | TAX ;$80CAE3 | RTS ;$80CAE4 / DATA_80CAE5: dw DATA_F321E8 dw DATA_F32B88 dw DATA_F33528 dw DATA_F33EC8 dw DATA_F34868 dw DATA_F35208 dw DATA_F35BA8 dw DATA_F36548 CODE_80CAF5: INX ;$80CAF5 \ INX ;$80CAF6 | TXA ;$80CAF7 | AND #$000E ;$80CAF8 | TAX ;$80CAFB | RTS ;$80CAFC / CODE_80CAFD: LDA #$022A ;$80CAFD \ SEC ;$80CB00 | SBC $17C0 ;$80CB01 | BEQ CODE_80CB08 ;$80CB04 | BPL CODE_80CB0B ;$80CB06 | CODE_80CB08: ; | LDA #$0001 ;$80CB08 | CODE_80CB0B: ; | CMP #$007F ;$80CB0B | BCC CODE_80CB13 ;$80CB0E | LDA #$007F ;$80CB10 | CODE_80CB13: ; | SEP #$20 ;$80CB13 | STA $7E8043 ;$80CB15 | REP #$20 ;$80CB19 | LDA $2A ;$80CB1B | AND #$0038 ;$80CB1D | LSR A ;$80CB20 | LSR A ;$80CB21 | TAX ;$80CB22 | LDA $17BA ;$80CB23 | STA $7E8048,x ;$80CB26 | JSR CODE_80CAF5 ;$80CB2A | LDA $17BA ;$80CB2D | INC A ;$80CB30 | STA $7E8048,x ;$80CB31 | JSR CODE_80CAF5 ;$80CB35 | LDA $17BA ;$80CB38 | INC A ;$80CB3B | INC A ;$80CB3C | STA $7E8048,x ;$80CB3D | JSR CODE_80CAF5 ;$80CB41 | LDA $17BA ;$80CB44 | INC A ;$80CB47 | INC A ;$80CB48 | STA $7E8048,x ;$80CB49 | JSR CODE_80CAF5 ;$80CB4D | LDA $17BA ;$80CB50 | INC A ;$80CB53 | STA $7E8048,x ;$80CB54 | JSR CODE_80CAF5 ;$80CB58 | LDA $17BA ;$80CB5B | STA $7E8048,x ;$80CB5E | JSR CODE_80CAF5 ;$80CB62 | LDA $17BA ;$80CB65 | DEC A ;$80CB68 | STA $7E8048,x ;$80CB69 | JSR CODE_80CAF5 ;$80CB6D | LDA $17BA ;$80CB70 | DEC A ;$80CB73 | STA $7E8048,x ;$80CB74 | LDA $84 ;$80CB78 | STA $2126 ;$80CB7A | SEP #$20 ;$80CB7D | LDA #$81 ;$80CB7F | STA $2115 ;$80CB81 | REP #$20 ;$80CB84 | LDX #$0000 ;$80CB86 | CODE_80CB89: ; | LDA $095B,x ;$80CB89 | BEQ CODE_80CBA0 ;$80CB8C | BIT #$4000 ;$80CB8E | BNE CODE_80CB9D ;$80CB91 | LDA $2A ;$80CB93 | AND #$0003 ;$80CB95 | BNE CODE_80CBA0 ;$80CB98 | LDA $095B,x ;$80CB9A | CODE_80CB9D: ; | JSR CODE_80CBB1 ;$80CB9D | CODE_80CBA0: ; | INX ;$80CBA0 | INX ;$80CBA1 | CPX #$0008 ;$80CBA2 | BNE CODE_80CB89 ;$80CBA5 | SEP #$20 ;$80CBA7 | LDA #$80 ;$80CBA9 | STA $2115 ;$80CBAB | REP #$20 ;$80CBAE | RTS ;$80CBB0 / CODE_80CBB1: PHX ;$80CBB1 \ STA $32 ;$80CBB2 | LDA $2A ;$80CBB4 | AND #$000C ;$80CBB6 | TAX ;$80CBB9 | LDA #$0014 ;$80CBBA | STA $38 ;$80CBBD | LDA $32 ;$80CBBF | BPL CODE_80CBCF ;$80CBC1 | LDA #$0024 ;$80CBC3 | STA $38 ;$80CBC6 | TXA ;$80CBC8 | ORA #$0010 ;$80CBC9 | TAX ;$80CBCC | LDA $32 ;$80CBCD | CODE_80CBCF: ; | BIT #$4000 ;$80CBCF | BEQ CODE_80CBD7 ;$80CBD2 | LDX #$0020 ;$80CBD4 | CODE_80CBD7: ; | LDA $32 ;$80CBD7 | AND #$03FF ;$80CBD9 | ORA #$7400 ;$80CBDC | STA $32 ;$80CBDF | STA $2116 ;$80CBE1 | LDA.l DATA_80D3ED,x ;$80CBE4 | STA $4302 ;$80CBE8 | LDA $38 ;$80CBEB | STA $4305 ;$80CBED | LDA #$1801 ;$80CBF0 | STA $4300 ;$80CBF3 | SEP #$30 ;$80CBF6 | LDA.l DATA_80D3EF,x ;$80CBF8 | STA $4304 ;$80CBFC | LDY #$01 ;$80CBFF | STY $420B ;$80CC01 | REP #$20 ;$80CC04 | LDA $32 ;$80CC06 | INC A ;$80CC08 | EOR $32 ;$80CC09 | AND #$001F ;$80CC0B | EOR $32 ;$80CC0E | STA $32 ;$80CC10 | STA $2116 ;$80CC12 | LDA $38 ;$80CC15 | STA $4305 ;$80CC17 | STY $420B ;$80CC1A | LDA $32 ;$80CC1D | INC A ;$80CC1F | EOR $32 ;$80CC20 | AND #$001F ;$80CC22 | EOR $32 ;$80CC25 | STA $2116 ;$80CC27 | LDA $38 ;$80CC2A | STA $4305 ;$80CC2C | STY $420B ;$80CC2F | REP #$10 ;$80CC32 | PLX ;$80CC34 | RTS ;$80CC35 / CODE_80CC36: LDA $08C2 ;$80CC36 \ BIT #$0140 ;$80CC39 | BEQ CODE_80CC3F ;$80CC3C | RTS ;$80CC3E / CODE_80CC3F: LDA $2A ;$80CC3F \ BIT #$0003 ;$80CC41 | BNE CODE_80CC72 ;$80CC44 | LSR A ;$80CC46 | AND #$000E ;$80CC47 | TAX ;$80CC4A | LDA.l DATA_80CCE8,x ;$80CC4B | STA $4302 ;$80CC4F | LDA #$0220 ;$80CC52 | STA $4305 ;$80CC55 | LDA #$1801 ;$80CC58 | STA $4300 ;$80CC5B | LDA #$7010 ;$80CC5E | STA $2116 ;$80CC61 | SEP #$30 ;$80CC64 | LDA #$F5 ;$80CC66 | STA $4304 ;$80CC68 | LDA #$01 ;$80CC6B | STA $420B ;$80CC6D | REP #$30 ;$80CC70 | CODE_80CC72: ; | LDA $17C6 ;$80CC72 | CLC ;$80CC75 | ADC $19BE ;$80CC76 | STA $17C6 ;$80CC79 | LDA $2A ;$80CC7C | ASL A ;$80CC7E | ASL A ;$80CC7F | AND #$01FE ;$80CC80 | TAX ;$80CC83 | LDA.l DATA_B3F4D8,x ;$80CC84 | LSR A ;$80CC88 | LSR A ;$80CC89 | LSR A ;$80CC8A | SEC ;$80CC8B | SBC $2A ;$80CC8C | LSR A ;$80CC8E | CLC ;$80CC8F | ADC $17C0 ;$80CC90 | STA $17C4 ;$80CC93 | PEA $807E ;$80CC96 | PLB ;$80CC99 | LDY #$0000 ;$80CC9A | LDA $17C4 ;$80CC9D | AND #$FFF0 ;$80CCA0 | ASL A ;$80CCA3 | CLC ;$80CCA4 | ADC $2A ;$80CCA5 | ASL A ;$80CCA7 | CODE_80CCA8: ; | AND #$01FE ;$80CCA8 | TAX ;$80CCAB | LDA.l DATA_B3F4D8,x ;$80CCAC | LSR A ;$80CCB0 | LSR A ;$80CCB1 | CLC ;$80CCB2 | ADC $17C7 ;$80CCB3 | CLC ;$80CCB6 | ADC $17BA ;$80CCB7 | STA $8013,y ;$80CCBA | TXA ;$80CCBD | CLC ;$80CCBE | ADC #$0040 ;$80CCBF | INY ;$80CCC2 | INY ;$80CCC3 | INY ;$80CCC4 | CPY #$002D ;$80CCC5 | BNE CODE_80CCA8 ;$80CCC8 | PLB ;$80CCCA | SEP #$20 ;$80CCCB | LDA $17C4 ;$80CCCD | STA $210E ;$80CCD0 | STZ $210E ;$80CCD3 | STA $2110 ;$80CCD6 | STZ $2110 ;$80CCD9 | EOR #$0F ;$80CCDC | AND #$0F ;$80CCDE | INC A ;$80CCE0 | STA $7E8012 ;$80CCE1 | REP #$20 ;$80CCE5 | RTS ;$80CCE7 / DATA_80CCE8: dw DATA_F56C13 dw DATA_F56E33 dw DATA_F57053 dw DATA_F57273 dw DATA_F57493 dw DATA_F576B3 dw DATA_F578D3 dw DATA_F57AF3 CODE_80CCF8: LDA $2A ;$80CCF8 \ AND #$0003 ;$80CCFA | BEQ CODE_80CD28 ;$80CCFD | CMP #$0001 ;$80CCFF | BEQ CODE_80CD15 ;$80CD02 | CMP #$0002 ;$80CD04 | BEQ CODE_80CD0A ;$80CD07 | RTS ;$80CD09 / CODE_80CD0A: LDY #$2100 ;$80CD0A \ LDA $2A ;$80CD0D | CLC ;$80CD0F | ADC #$0020 ;$80CD10 | BRA CODE_80CD1A ;$80CD13 / CODE_80CD15: LDY #$20B0 ;$80CD15 \ LDA $2A ;$80CD18 | CODE_80CD1A: ; | LSR A ;$80CD1A | AND #$003E ;$80CD1B | TAX ;$80CD1E | LDA.l DATA_80CD6E,x ;$80CD1F | LDX #$00A0 ;$80CD23 | BRA CODE_80CD3D ;$80CD26 / CODE_80CD28: LDY #$2010 ;$80CD28 \ LDA $2A ;$80CD2B | LSR A ;$80CD2D | CLC ;$80CD2E | ADC #$0008 ;$80CD2F | AND #$000E ;$80CD32 | TAX ;$80CD35 | LDA.l DATA_80CD5E,x ;$80CD36 | LDX #$0140 ;$80CD3A | CODE_80CD3D: ; | STA $4302 ;$80CD3D | STA $4308 ;$80CD40 | STY $2116 ;$80CD43 | STX $4305 ;$80CD46 | LDA #$1801 ;$80CD49 | STA $4300 ;$80CD4C | SEP #$20 ;$80CD4F | LDA #$F5 ;$80CD51 | STA $4304 ;$80CD53 | LDA #$01 ;$80CD56 | STA $420B ;$80CD58 | REP #$20 ;$80CD5B | RTS ;$80CD5D / DATA_80CD5E: dw DATA_F517C7 dw DATA_F51907 dw DATA_F51A47 dw DATA_F51B87 dw DATA_F51B87 dw DATA_F51A47 dw DATA_F51907 dw DATA_F517C7 DATA_80CD6E: dw DATA_F51CC7 dw DATA_F51D67 dw DATA_F51E07 dw DATA_F51EA7 dw DATA_F51EA7 dw DATA_F51EA7 dw DATA_F51E07 dw DATA_F51D67 dw DATA_F51CC7 dw DATA_F51F47 dw DATA_F51FE7 dw DATA_F51F47 dw DATA_F51CC7 dw DATA_F51F47 dw DATA_F51FE7 dw DATA_F51FE7 dw DATA_F51F47 dw DATA_F51CC7 dw DATA_F51CC7 dw DATA_F51CC7 dw DATA_F51D67 dw DATA_F51E07 dw DATA_F51EA7 dw DATA_F51EA7 dw DATA_F51EA7 dw DATA_F51EA7 dw DATA_F51EA7 dw DATA_F51E07 dw DATA_F51D67 dw DATA_F51CC7 dw DATA_F51CC7 dw DATA_F51CC7 CODE_80CDAE: LDA $2A ;$80CDAE \ AND #$0003 ;$80CDB0 | BNE CODE_80CDC7 ;$80CDB3 | LDA $0957 ;$80CDB5 | CLC ;$80CDB8 | ADC #$0002 ;$80CDB9 | CMP #$001E ;$80CDBC | BNE CODE_80CDC4 ;$80CDBF | LDA #$0000 ;$80CDC1 | CODE_80CDC4: ; | STA $0957 ;$80CDC4 | CODE_80CDC7: ; | LDA $2A ;$80CDC7 | AND #$0003 ;$80CDC9 | BEQ CODE_80CE09 ;$80CDCC | CMP #$0001 ;$80CDCE | BEQ CODE_80CE37 ;$80CDD1 | CMP #$0003 ;$80CDD3 | BEQ CODE_80CDDB ;$80CDD6 | JMP CODE_80CE65 ;$80CDD8 / CODE_80CDDB: LDA #$2010 ;$80CDDB \ STA $2116 ;$80CDDE | LDA $0957 ;$80CDE1 | TAX ;$80CDE4 | LDA DATA_80CED3,x ;$80CDE5 | STA $4302 ;$80CDE8 | STA $4308 ;$80CDEB | LDA #$0180 ;$80CDEE | STA $4305 ;$80CDF1 | LDA #$1801 ;$80CDF4 | STA $4300 ;$80CDF7 | SEP #$20 ;$80CDFA | LDA #$F5 ;$80CDFC | STA $4304 ;$80CDFE | LDA #$01 ;$80CE01 | STA $420B ;$80CE03 | REP #$20 ;$80CE06 | RTS ;$80CE08 / CODE_80CE09: LDA #$2270 ;$80CE09 \ STA $2116 ;$80CE0C | LDA $0957 ;$80CE0F | TAX ;$80CE12 | LDA DATA_80CE97,x ;$80CE13 | STA $4302 ;$80CE16 | STA $4308 ;$80CE19 | LDA #$02C0 ;$80CE1C | STA $4305 ;$80CE1F | LDA #$1801 ;$80CE22 | STA $4300 ;$80CE25 | SEP #$20 ;$80CE28 | LDA #$FB ;$80CE2A | STA $4304 ;$80CE2C | LDA #$01 ;$80CE2F | STA $420B ;$80CE31 | REP #$20 ;$80CE34 | RTS ;$80CE36 / CODE_80CE37: LDA #$20D0 ;$80CE37 \ STA $2116 ;$80CE3A | LDA $0957 ;$80CE3D | TAX ;$80CE40 | LDA DATA_80CEB5,x ;$80CE41 | STA $4302 ;$80CE44 | STA $4308 ;$80CE47 | LDA #$01A0 ;$80CE4A | STA $4305 ;$80CE4D | LDA #$1801 ;$80CE50 | STA $4300 ;$80CE53 | SEP #$20 ;$80CE56 | LDA #$FB ;$80CE58 | STA $4304 ;$80CE5A | LDA #$01 ;$80CE5D | STA $420B ;$80CE5F | REP #$20 ;$80CE62 | RTS ;$80CE64 / CODE_80CE65: LDA #$21A0 ;$80CE65 \ STA $2116 ;$80CE68 | LDA $0957 ;$80CE6B | TAX ;$80CE6E | LDA DATA_80CEB5,x ;$80CE6F | CLC ;$80CE72 | ADC #$1860 ;$80CE73 | STA $4302 ;$80CE76 | STA $4308 ;$80CE79 | LDA #$01A0 ;$80CE7C | STA $4305 ;$80CE7F | LDA #$1801 ;$80CE82 | STA $4300 ;$80CE85 | SEP #$20 ;$80CE88 | LDA #$FB ;$80CE8A | STA $4304 ;$80CE8C | LDA #$01 ;$80CE8F | STA $420B ;$80CE91 | REP #$20 ;$80CE94 | RTS ;$80CE96 / DATA_80CE97: dw DATA_FB0AE0 dw DATA_FB0DA0 dw DATA_FB1060 dw DATA_FB1320 dw DATA_FB15E0 dw DATA_FB18A0 dw DATA_FB1B60 dw DATA_FB1E20 dw DATA_FB20E0 dw DATA_FB23A0 dw DATA_FB2660 dw DATA_FB2920 dw DATA_FB2BE0 dw DATA_FB2EA0 dw DATA_FB3160 DATA_80CEB5: dw DATA_FB3420 dw DATA_FB35C0 dw DATA_FB3760 dw DATA_FB3900 dw DATA_FB3AA0 dw DATA_FB3C40 dw DATA_FB3DE0 dw DATA_FB3F80 dw DATA_FB4120 dw DATA_FB42C0 dw DATA_FB4460 dw DATA_FB4600 dw DATA_FB47A0 dw DATA_FB4940 dw DATA_FB4AE0 DATA_80CED3: dw DATA_F50147 dw DATA_F502C7 dw DATA_F50447 dw DATA_F505C7 dw DATA_F50747 dw DATA_F508C7 dw DATA_F50A47 dw DATA_F50BC7 dw DATA_F50D47 dw DATA_F50EC7 dw DATA_F51047 dw DATA_F511C7 dw DATA_F51347 dw DATA_F514C7 dw DATA_F51647 DATA_80CEF1: dw DATA_F36EE8 dw DATA_F370E8 dw DATA_F372E8 dw DATA_F374E8 dw DATA_F376E8 dw DATA_F378E8 dw DATA_F37AE8 dw DATA_F37CE8 DATA_80CF01: dw DATA_F641C1 dw DATA_F645C1 dw DATA_F649C1 dw DATA_F64DC1 dw DATA_F651C1 dw DATA_F655C1 dw DATA_F659C1 dw DATA_F65DC1 DATA_80CF11: dw DATA_FA5FC1 dw DATA_FA6381 dw DATA_FA6741 dw DATA_FA6B01 dw DATA_FA6EC1 dw DATA_FA7281 dw DATA_FA7641 dw DATA_FA7A01 CODE_80CF21: LDA $2A ;$80CF21 \ BIT #$0007 ;$80CF23 | BNE CODE_80CF57 ;$80CF26 | LSR A ;$80CF28 | LSR A ;$80CF29 | AND #$000E ;$80CF2A | TAX ;$80CF2D | LDA #$2010 ;$80CF2E | STA $2116 ;$80CF31 | LDA DATA_80CF11,x ;$80CF34 | STA $4312 ;$80CF37 | STA $4318 ;$80CF3A | LDA #$03C0 ;$80CF3D | STA $4315 ;$80CF40 | LDA #$1801 ;$80CF43 | STA $4310 ;$80CF46 | SEP #$20 ;$80CF49 | LDA #$FA ;$80CF4B | STA $4314 ;$80CF4D | LDA #$02 ;$80CF50 | STA $420B ;$80CF52 | REP #$20 ;$80CF55 | CODE_80CF57: ; | RTS ;$80CF57 / CODE_80CF58: LDA $D3 ;$80CF58 \ CMP #$0009 ;$80CF5A | BEQ CODE_80CF62 ;$80CF5D | JSR CODE_80CF21 ;$80CF5F | CODE_80CF62: ; | LDA $052B ;$80CF62 | AND #$1000 ;$80CF65 | BNE CODE_80CF9F ;$80CF68 | LDA $2A ;$80CF6A | BIT #$0001 ;$80CF6C | BNE CODE_80CF9F ;$80CF6F | AND #$000E ;$80CF71 | TAX ;$80CF74 | LDA #$4F00 ;$80CF75 | STA $2116 ;$80CF78 | LDA DATA_80CEF1,x ;$80CF7B | STA $4312 ;$80CF7E | STA $4318 ;$80CF81 | LDA #$0200 ;$80CF84 | STA $4315 ;$80CF87 | LDA #$1801 ;$80CF8A | STA $4310 ;$80CF8D | SEP #$20 ;$80CF90 | LDA #$F3 ;$80CF92 | STA $4314 ;$80CF94 | LDA #$02 ;$80CF97 | STA $420B ;$80CF99 | REP #$20 ;$80CF9C | RTS ;$80CF9E / CODE_80CF9F: LDA $0515 ;$80CF9F \ CMP #$0003 ;$80CFA2 | BEQ CODE_80CFDB ;$80CFA5 | LDA $2A ;$80CFA7 | BIT #$0001 ;$80CFA9 | BEQ CODE_80CFDB ;$80CFAC | AND #$000E ;$80CFAE | TAX ;$80CFB1 | LDA #$6000 ;$80CFB2 | STA $2116 ;$80CFB5 | LDA DATA_80CF01,x ;$80CFB8 | STA $4312 ;$80CFBB | STA $4318 ;$80CFBE | LDA #$0400 ;$80CFC1 | STA $4315 ;$80CFC4 | LDA #$1801 ;$80CFC7 | STA $4310 ;$80CFCA | SEP #$20 ;$80CFCD | LDA #$F6 ;$80CFCF | STA $4314 ;$80CFD1 | LDA #$02 ;$80CFD4 | STA $420B ;$80CFD6 | REP #$20 ;$80CFD9 | CODE_80CFDB: ; | RTS ;$80CFDB / CODE_80CFDC: LDA $2A ;$80CFDC \ LSR A ;$80CFDE | LSR A ;$80CFDF | CLC ;$80CFE0 | ADC $17C0 ;$80CFE1 | AND #$0007 ;$80CFE4 | STA $32 ;$80CFE7 | ASL A ;$80CFE9 | CLC ;$80CFEA | ADC $32 ;$80CFEB | CLC ;$80CFED | ADC #$A35F ;$80CFEE | STA $4312 ;$80CFF1 | LDA $17BB ;$80CFF4 | AND #$00FF ;$80CFF7 | DEC A ;$80CFFA | TAX ;$80CFFB | LDA.l DATA_80D0B8,x ;$80CFFC | AND #$00FF ;$80D000 | EOR #$FFFF ;$80D003 | SEC ;$80D006 | ADC $17C0 ;$80D007 | STA $17C4 ;$80D00A | DEC A ;$80D00D | STA $17C6 ;$80D00E | LDA #$01C8 ;$80D011 | SEC ;$80D014 | SBC $17C4 ;$80D015 | BPL CODE_80D01D ;$80D018 | LDA #$0000 ;$80D01A | CODE_80D01D: ; | SEP #$20 ;$80D01D | LSR A ;$80D01F | STA $7E8332 ;$80D020 | ADC #$00 ;$80D024 | STA $7E8335 ;$80D026 | REP #$20 ;$80D02A | AND #$00FF ;$80D02C | LSR A ;$80D02F | STA $34 ;$80D030 | LDA $17BA ;$80D032 | AND #$00FF ;$80D035 | EOR #$00FF ;$80D038 | CLC ;$80D03B | ADC #$0080 ;$80D03C | CLC ;$80D03F | ADC $34 ;$80D040 | SEC ;$80D042 | SBC #$0160 ;$80D043 | BPL CODE_80D04B ;$80D046 | LDA #$0000 ;$80D048 | CODE_80D04B: ; | SEP #$20 ;$80D04B | STA $7E8333 ;$80D04D | STA $7E8336 ;$80D051 | REP #$20 ;$80D055 | LDX #$A40F ;$80D057 | LDA $2A ;$80D05A | BIT #$0001 ;$80D05C | BEQ CODE_80D064 ;$80D05F | LDX #$A408 ;$80D061 | CODE_80D064: ; | STX $4322 ;$80D064 | LDA $17BA ;$80D067 | AND #$00FF ;$80D06A | EOR #$00FF ;$80D06D | CLC ;$80D070 | ADC #$0080 ;$80D071 | SEC ;$80D074 | SBC $34 ;$80D075 | CLC ;$80D077 | ADC #$0030 ;$80D078 | CMP #$00FF ;$80D07B | BCC CODE_80D083 ;$80D07E | LDA #$00FF ;$80D080 | CODE_80D083: ; | SEP #$20 ;$80D083 | STA $7E8334 ;$80D085 | STA $7E8337 ;$80D089 | LDA #$71 ;$80D08D | STA $2121 ;$80D08F | REP #$20 ;$80D092 | LDA #$8C28 ;$80D094 | STA $4302 ;$80D097 | STA $4308 ;$80D09A | LDA #$001E ;$80D09D | STA $4305 ;$80D0A0 | LDA #$2200 ;$80D0A3 | STA $4300 ;$80D0A6 | SEP #$20 ;$80D0A9 | LDA #$7E ;$80D0AB | STA $4304 ;$80D0AD | LDA #$01 ;$80D0B0 | STA $420B ;$80D0B2 | REP #$20 ;$80D0B5 | RTS ;$80D0B7 / DATA_80D0B8: db $90, $68, $68, $90, $80, $80, $80, $80 db $90, $90, $78, $78, $78, $50, $50, $50 db $50, $50, $50, $50, $50, $60, $70, $70 db $60, $60, $60, $60, $60, $B8, $20, $20 db $20, $28, $60, $70, $10, $10, $10, $10 db $70 DATA_80D0E1: db $01, $00, $08, $00, $10, $00, $18, $00 db $20, $04, $5F, $00, $66, $00, $0C, $00 db $74, $00, $00, $00, $02, $00, $09, $00 db $11, $00, $19, $08, $21, $04, $60, $08 db $67, $08, $6D, $04, $75, $04, $7C, $08 db $01, $40, $08, $40, $10, $40, $18, $40 db $20, $44, $5F, $40, $66, $40, $0C, $40 db $74, $40, $00, $00 DATA_80D11D: db $03, $00, $0A, $00, $12, $00, $1A, $04 db $18, $00, $5D, $00, $0C, $00, $6E, $04 db $76, $00, $00, $00, $04, $00, $0B, $00 db $13, $00, $1B, $08, $22, $04, $61, $04 db $68, $04, $6F, $08, $77, $04, $7D, $08 db $03, $40, $0A, $40, $12, $40, $1A, $44 db $18, $40, $5D, $40, $0C, $40, $6E, $44 db $76, $40, $00, $00 DATA_80D159: db $05, $00, $0C, $00, $14, $00, $1C, $04 db $23, $00, $62, $00, $69, $00, $70, $00 db $78, $00, $00, $00, $06, $00, $0D, $00 db $15, $04, $1D, $04, $24, $04, $63, $08 db $6A, $04, $71, $08, $79, $04, $7E, $08 db $05, $40, $0C, $40, $14, $40, $1C, $44 db $23, $40, $62, $40, $69, $40, $70, $40 db $78, $40, $00, $00 DATA_80D195: db $00, $00, $0E, $00, $16, $00, $1E, $00 db $23, $00, $64, $00, $6B, $00, $72, $00 db $7A, $00, $00, $00, $07, $00, $0F, $00 db $17, $04, $1F, $04, $25, $04, $65, $04 db $6C, $08, $73, $04, $7B, $04, $7F, $08 db $00, $00, $0E, $40, $16, $40, $1E, $40 db $23, $40, $64, $40, $6B, $40, $72, $40 db $7A, $40, $00, $00 DATA_80D1D1: db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00, $00, $00, $00, $00 db $00, $00, $00, $00 DATA_80D23D: db $01, $00, $08, $00, $10, $00, $18, $00 db $20, $04, $26, $04, $2E, $04, $36, $04 db $3D, $04, $44, $00, $4C, $04, $53, $00 db $59, $00, $5F, $00, $66, $00, $0C, $00 db $74, $00, $00, $00, $02, $00, $09, $00 db $11, $00, $19, $08, $21, $04, $27, $04 db $2F, $08, $37, $08, $3E, $08, $45, $08 db $4D, $08, $54, $08, $45, $08, $60, $08 db $67, $08, $6D, $04, $75, $04, $7C, $08 db $01, $40, $08, $40, $10, $40, $18, $40 db $20, $44, $26, $44, $2E, $44, $36, $44 db $3D, $44, $44, $40, $4C, $44, $53, $40 db $59, $40, $5F, $40, $66, $40, $0C, $40 db $74, $40, $00, $00 DATA_80D2A9: db $03, $00, $0A, $00, $12, $00, $1A, $04 db $18, $00, $28, $04, $30, $00, $38, $04 db $3F, $00, $46, $04, $4E, $00, $55, $00 db $1E, $00, $5D, $00, $0C, $00, $6E, $04 db $76, $00, $00, $00, $04, $00, $0B, $00 db $13, $00, $1B, $08, $22, $04, $29, $08 db $31, $08, $39, $08, $40, $08, $47, $08 db $4F, $08, $56, $08, $5A, $08, $61, $04 db $68, $04, $6F, $08, $77, $04, $7D, $08 db $03, $40, $0A, $40, $12, $40, $1A, $44 db $18, $40, $28, $44, $30, $40, $38, $44 db $3F, $40, $46, $44, $4E, $40, $55, $40 db $1E, $40, $5D, $40, $0C, $40, $6E, $44 db $76, $40, $00, $00 DATA_80D315: db $05, $00, $0C, $00, $14, $00, $1C, $04 db $23, $00, $2A, $04, $32, $04, $36, $04 db $23, $00, $48, $04, $1E, $00, $48, $04 db $5B, $00, $62, $00, $69, $00, $70, $00 db $78, $00, $00, $00, $06, $00, $0D, $00 db $15, $04, $1D, $04, $24, $04, $2B, $08 db $33, $08, $3A, $08, $41, $08, $49, $08 db $50, $08, $57, $08, $5C, $04, $63, $08 db $6A, $04, $71, $08, $79, $04, $7E, $08 db $05, $40, $0C, $40, $14, $40, $1C, $44 db $23, $40, $2A, $44, $32, $44, $36, $44 db $23, $40, $48, $44, $1E, $40, $48, $44 db $5B, $40, $62, $40, $69, $40, $70, $40 db $78, $40, $00, $00 DATA_80D381: db $00, $00, $0E, $00, $16, $00, $1E, $00 db $23, $00, $2C, $00, $34, $04, $3B, $00 db $42, $04, $4A, $04, $51, $00, $55, $00 db $5D, $00, $64, $00, $6B, $00, $72, $00 db $7A, $00, $00, $00, $07, $00, $0F, $00 db $17, $04, $1F, $04, $25, $04, $2D, $08 db $35, $08, $3C, $08, $43, $08, $4B, $08 db $52, $08, $58, $08, $5E, $08, $65, $04 db $6C, $08, $73, $04, $7B, $04, $7F, $08 db $00, $00, $0E, $40, $16, $40, $1E, $40 db $23, $40, $2C, $40, $34, $44, $3B, $40 db $42, $44, $4A, $44, $51, $40, $55, $40 db $5D, $40, $64, $40, $6B, $40, $72, $40 db $7A, $40, $00, $00 DATA_80D3ED: %offset(DATA_80D3EF, 2) dl DATA_80D0E1 : db $00 dl DATA_80D11D : db $00 dl DATA_80D159 : db $00 dl DATA_80D195 : db $00 dl DATA_80D23D : db $00 dl DATA_80D2A9 : db $00 dl DATA_80D315 : db $00 dl DATA_80D381 : db $00 dl DATA_80D1D1 : db $00 DATA_80D411: dw CODE_80D45A dw CODE_80D462 dw CODE_80D486 dw CODE_80D557 dw CODE_80D58C dw CODE_80D451 dw CODE_80D595 dw CODE_80D5C3 dw CODE_80D5E7 dw CODE_80D61B dw CODE_80D642 dw CODE_80D665 dw CODE_80D66E dw CODE_80D784 dw CODE_80D7AB dw CODE_80D830 dw CODE_80D854 dw CODE_80D886 dw CODE_80D8B7 dw CODE_80D8DE dw CODE_80D902 dw CODE_80DA21 dw CODE_80DA45 dw CODE_80DA76 dw CODE_80DA9A dw CODE_80DACB dw CODE_80DB12 dw CODE_80DB36 dw CODE_80DB6B dw CODE_80DB99 dw CODE_80DBCE dw CODE_80DD3C CODE_80D451: JSR CODE_808988 ;$80D451 \ JSR CODE_808C3D ;$80D454 | JMP CODE_808CA2 ;$80D457 / CODE_80D45A: JMP CODE_808CA2 ;$80D45A / CODE_80D45D: DEC $2A ;$80D45D \ JMP CODE_808CA2 ;$80D45F / CODE_80D462: JSR CODE_808988 ;$80D462 \ BNE CODE_80D483 ;$80D465 | JSL CODE_BBB5C4 ;$80D467 | JSL sprite_handler ;$80D46B | JSL CODE_B5E50D ;$80D46F | JSL CODE_B5B9B0 ;$80D473 | JSR CODE_80F35B ;$80D477 | JSR CODE_8088BA ;$80D47A | JSR CODE_808C3D ;$80D47D | JMP CODE_808CA2 ;$80D480 / CODE_80D483: JMP CODE_80D45D ;$80D483 / CODE_80D486: JSR CODE_80E646 ;$80D486 \ JSR CODE_808988 ;$80D489 | BNE CODE_80D4B4 ;$80D48C | JSR CODE_80D4FA ;$80D48E | JSL CODE_BBB5C4 ;$80D491 | JSL sprite_handler ;$80D495 | JSL CODE_B5E50D ;$80D499 | JSL CODE_B5B54A ;$80D49D | JSR CODE_80F35B ;$80D4A1 | JSL CODE_BEC9C0 ;$80D4A4 | JSR CODE_8088BA ;$80D4A8 | JSR CODE_80D4B7 ;$80D4AB | JSR CODE_808C3D ;$80D4AE | JMP CODE_808CA2 ;$80D4B1 / CODE_80D4B4: JMP CODE_80D45D ;$80D4B4 / CODE_80D4B7: LDX $0593 ;$80D4B7 \ LDA $0A,x ;$80D4BA | CMP $0D4E ;$80D4BC | BMI CODE_80D4DE ;$80D4BF | LDA #$0004 ;$80D4C1 | TSB $08C2 ;$80D4C4 | BNE CODE_80D4F9 ;$80D4C7 | LDX $0593 ;$80D4C9 | STX $64 ;$80D4CC | LDY #$0018 ;$80D4CE | JSL CODE_BB842C ;$80D4D1 | LDA #$0662 ;$80D4D5 | JSL CODE_B58003 ;$80D4D8 | BRA CODE_80D4F9 ;$80D4DC / CODE_80D4DE: LDA #$0004 ;$80D4DE \ TRB $08C2 ;$80D4E1 | BEQ CODE_80D4F9 ;$80D4E4 | LDX $0593 ;$80D4E6 | STX $64 ;$80D4E9 | LDY #$001A ;$80D4EB | JSL CODE_BB842C ;$80D4EE | LDA #$0662 ;$80D4F2 | JSL CODE_B58003 ;$80D4F5 | CODE_80D4F9: ; | RTS ;$80D4F9 / CODE_80D4FA: LDA $08C2 ;$80D4FA \ AND #$0140 ;$80D4FD | BNE CODE_80D556 ;$80D500 | LDA $0D50 ;$80D502 | ORA $0D4A ;$80D505 | BEQ CODE_80D556 ;$80D508 | LDA $0D4A ;$80D50A | CMP #$8000 ;$80D50D | BEQ CODE_80D547 ;$80D510 | LDA #$0D26 ;$80D512 | STA $64 ;$80D515 | LDA #$0007 ;$80D517 | JSL CODE_B8CFD4 ;$80D51A | LDX #$0000 ;$80D51E | LDA $0D4A ;$80D521 | BPL CODE_80D527 ;$80D524 | DEX ;$80D526 | CODE_80D527: ; | CLC ;$80D527 | ADC $0D4D ;$80D528 | STA $0D4D ;$80D52B | SEP #$20 ;$80D52E | TXA ;$80D530 | ADC $0D4F ;$80D531 | STA $0D4F ;$80D534 | REP #$20 ;$80D537 | LDA $0D52 ;$80D539 | SEC ;$80D53C | SBC $0D4E ;$80D53D | BEQ CODE_80D547 ;$80D540 | EOR $0D4A ;$80D542 | BPL CODE_80D556 ;$80D545 | CODE_80D547: ; | LDA $0D52 ;$80D547 | STA $0D4E ;$80D54A | STZ $0D50 ;$80D54D | STZ $0D4A ;$80D550 | STZ $0D4C ;$80D553 | CODE_80D556: ; | RTS ;$80D556 / CODE_80D557: JSR CODE_808988 ;$80D557 \ BNE CODE_80D589 ;$80D55A | JSL CODE_BBB5C4 ;$80D55C | JSL sprite_handler ;$80D560 | JSL CODE_B5E50D ;$80D564 | LDA $0AB4 ;$80D568 | AND #$000F ;$80D56B | CMP #$0005 ;$80D56E | BEQ CODE_80D579 ;$80D571 | JSL CODE_B5B54A ;$80D573 | BRA CODE_80D57D ;$80D577 / CODE_80D579: JSL CODE_B5B317 ;$80D579 \ CODE_80D57D: ; | JSR CODE_80F35B ;$80D57D | JSR CODE_8088BA ;$80D580 | JSR CODE_808C3D ;$80D583 | JMP CODE_808CA2 ;$80D586 / CODE_80D589: JMP CODE_80D45D ;$80D589 / CODE_80D58C: JSR CODE_808988 ;$80D58C \ JSR CODE_808C3D ;$80D58F | JMP CODE_808CA2 ;$80D592 / CODE_80D595: JSR CODE_808988 ;$80D595 \ BNE CODE_80D5C0 ;$80D598 | JSL CODE_BBB5C4 ;$80D59A | JSL sprite_handler ;$80D59E | JSL CODE_B5E50D ;$80D5A2 | JSR CODE_80E52B ;$80D5A6 | JSL CODE_B5B9BB ;$80D5A9 | JSL CODE_B5B9B0 ;$80D5AD | JSR CODE_80F35B ;$80D5B1 | JSR CODE_8088BA ;$80D5B4 | JSR CODE_80E580 ;$80D5B7 | JSR CODE_808C3D ;$80D5BA | JMP CODE_808CA2 ;$80D5BD / CODE_80D5C0: JMP CODE_80D45D ;$80D5C0 / CODE_80D5C3: JSR CODE_808988 ;$80D5C3 \ BNE CODE_80D5E4 ;$80D5C6 | JSL CODE_BBB5C4 ;$80D5C8 | JSL sprite_handler ;$80D5CC | JSL CODE_B5E50D ;$80D5D0 | JSL CODE_B5B9B0 ;$80D5D4 | JSR CODE_80F35B ;$80D5D8 | JSR CODE_8088BA ;$80D5DB | JSR CODE_808C3D ;$80D5DE | JMP CODE_808CA2 ;$80D5E1 / CODE_80D5E4: JMP CODE_80D45D ;$80D5E4 / CODE_80D5E7: JSR CODE_808988 ;$80D5E7 \ BNE CODE_80D618 ;$80D5EA | LDX #$002C ;$80D5EC | LDA $2A ;$80D5EF | INC A ;$80D5F1 | AND #$0007 ;$80D5F2 | BNE CODE_80D5FA ;$80D5F5 | LDX #$001C ;$80D5F7 | CODE_80D5FA: ; | STX $78 ;$80D5FA | JSL CODE_BBB5C4 ;$80D5FC | JSL sprite_handler ;$80D600 | JSL CODE_B5E50D ;$80D604 | JSL CODE_B5B9A5 ;$80D608 | JSR CODE_80F35B ;$80D60C | JSR CODE_8088BA ;$80D60F | JSR CODE_808C3D ;$80D612 | JMP CODE_808CA2 ;$80D615 / CODE_80D618: JMP CODE_80D45D ;$80D618 / CODE_80D61B: JSR CODE_808988 ;$80D61B \ BNE CODE_80D63F ;$80D61E | JSL CODE_BBB5C4 ;$80D620 | JSL sprite_handler ;$80D624 | JSL CODE_B5E50D ;$80D628 | JSR CODE_80E472 ;$80D62C | JSL CODE_B5B9B0 ;$80D62F | JSR CODE_80F35B ;$80D633 | JSR CODE_8088BA ;$80D636 | JSR CODE_808C3D ;$80D639 | JMP CODE_808CA2 ;$80D63C / CODE_80D63F: JMP CODE_80D45D ;$80D63F / CODE_80D642: JSR CODE_808988 ;$80D642 \ BNE CODE_80D662 ;$80D645 | JSL CODE_BBB5C4 ;$80D647 | JSL sprite_handler ;$80D64B | JSL CODE_B5E50D ;$80D64F | JSR CODE_80F35B ;$80D653 | JSR CODE_8088BA ;$80D656 | JSR CODE_80E580 ;$80D659 | JSR CODE_808C3D ;$80D65C | JMP CODE_808CA2 ;$80D65F / CODE_80D662: JMP CODE_80D45D ;$80D662 / CODE_80D665: JSR CODE_808988 ;$80D665 \ JSR CODE_808C3D ;$80D668 | JMP CODE_808CA2 ;$80D66B / CODE_80D66E: JSR CODE_808988 ;$80D66E \ BNE CODE_80D692 ;$80D671 | JSL CODE_BBB5C4 ;$80D673 | JSL sprite_handler ;$80D677 | JSL CODE_B5E50D ;$80D67B | JSR CODE_80D695 ;$80D67F | JSL CODE_B5B9A5 ;$80D682 | JSR CODE_80F35B ;$80D686 | JSR CODE_8088BA ;$80D689 | JSR CODE_808C3D ;$80D68C | JMP CODE_808CA2 ;$80D68F / CODE_80D692: JMP CODE_80D45D ;$80D692 / CODE_80D695: LDA $2A ;$80D695 \ ASL A ;$80D697 | AND #$003F ;$80D698 | BIT #$0020 ;$80D69B | BEQ CODE_80D6A3 ;$80D69E | EOR #$003F ;$80D6A0 | CODE_80D6A3: ; | CMP #$0020 ;$80D6A3 | BCC CODE_80D6AB ;$80D6A6 | LDA #$0020 ;$80D6A8 | CODE_80D6AB: ; | STA $32 ;$80D6AB | ASL A ;$80D6AD | ASL A ;$80D6AE | XBA ;$80D6AF | STA $36 ;$80D6B0 | XBA ;$80D6B2 | ASL A ;$80D6B3 | ASL A ;$80D6B4 | ASL A ;$80D6B5 | STA $34 ;$80D6B6 | LDX #$0000 ;$80D6B8 | CODE_80D6BB: ; | LDA.l DATA_FD2270,x ;$80D6BB | AND #$001F ;$80D6BF | SEC ;$80D6C2 | SBC $32 ;$80D6C3 | SBC $32 ;$80D6C5 | SBC $32 ;$80D6C7 | SBC $32 ;$80D6C9 | BPL CODE_80D6D0 ;$80D6CB | LDA #$0000 ;$80D6CD | CODE_80D6D0: ; | STA $38 ;$80D6D0 | LDA.l DATA_FD2270,x ;$80D6D2 | AND #$03E0 ;$80D6D6 | SEC ;$80D6D9 | SBC $34 ;$80D6DA | SBC $34 ;$80D6DC | SBC $34 ;$80D6DE | SBC $34 ;$80D6E0 | BPL CODE_80D6E7 ;$80D6E2 | LDA #$0000 ;$80D6E4 | CODE_80D6E7: ; | TSB $38 ;$80D6E7 | LDA.l DATA_FD2270,x ;$80D6E9 | AND #$7C00 ;$80D6ED | SEC ;$80D6F0 | SBC $36 ;$80D6F1 | BPL CODE_80D6F8 ;$80D6F3 | LDA #$0000 ;$80D6F5 | CODE_80D6F8: ; | ORA $38 ;$80D6F8 | STA $7E8014,x ;$80D6FA | INX ;$80D6FE | INX ;$80D6FF | CPX #$001E ;$80D700 | BNE CODE_80D6BB ;$80D703 | LDA $2A ;$80D705 | AND #$0020 ;$80D707 | BEQ CODE_80D716 ;$80D70A | JSR CODE_80B13E ;$80D70C | AND #$0001 ;$80D70F | STA $7E8012 ;$80D712 | CODE_80D716: ; | LDA.l $7E8012 ;$80D716 | BEQ CODE_80D71D ;$80D71A | RTS ;$80D71C / CODE_80D71D: LDA $32 ;$80D71D \ JSR CODE_80D77A ;$80D71F | STA $32 ;$80D722 | LDA $34 ;$80D724 | JSR CODE_80D77A ;$80D726 | AND #$03E0 ;$80D729 | STA $34 ;$80D72C | LDA $36 ;$80D72E | JSR CODE_80D77A ;$80D730 | AND #$7C00 ;$80D733 | STA $36 ;$80D736 | LDX #$0000 ;$80D738 | CODE_80D73B: ; | LDA.l DATA_FD22D0,x ;$80D73B | AND #$001F ;$80D73F | SEC ;$80D742 | SBC $32 ;$80D743 | BPL CODE_80D74A ;$80D745 | LDA #$0000 ;$80D747 | CODE_80D74A: ; | STA $38 ;$80D74A | LDA.l DATA_FD22D0,x ;$80D74C | AND #$03E0 ;$80D750 | SEC ;$80D753 | SBC $34 ;$80D754 | BPL CODE_80D75B ;$80D756 | LDA #$0000 ;$80D758 | CODE_80D75B: ; | TSB $38 ;$80D75B | LDA.l DATA_FD22D0,x ;$80D75D | AND #$7C00 ;$80D761 | SEC ;$80D764 | SBC $36 ;$80D765 | BPL CODE_80D76C ;$80D767 | LDA #$0000 ;$80D769 | CODE_80D76C: ; | ORA $38 ;$80D76C | STA $7E8032,x ;$80D76E | INX ;$80D772 | INX ;$80D773 | CPX #$000C ;$80D774 | BNE CODE_80D73B ;$80D777 | RTS ;$80D779 / CODE_80D77A: LSR A ;$80D77A \ LSR A ;$80D77B | LSR A ;$80D77C | STA $38 ;$80D77D | LSR A ;$80D77F | LSR A ;$80D780 | ADC $38 ;$80D781 | RTS ;$80D783 / CODE_80D784: JSR CODE_808988 ;$80D784 \ BNE CODE_80D7A8 ;$80D787 | JSL CODE_BBB5C4 ;$80D789 | JSL sprite_handler ;$80D78D | JSL CODE_B5E50D ;$80D791 | JSL CODE_B5B9B0 ;$80D795 | JSR CODE_80F35B ;$80D799 | JSR CODE_8088BA ;$80D79C | JSR CODE_80F157 ;$80D79F | JSR CODE_808C3D ;$80D7A2 | JMP CODE_808CA2 ;$80D7A5 / CODE_80D7A8: JMP CODE_80D45D ;$80D7A8 / CODE_80D7AB: JSR CODE_808988 ;$80D7AB \ BNE CODE_80D7CF ;$80D7AE | JSL CODE_BBB5C4 ;$80D7B0 | JSR CODE_80D7E6 ;$80D7B4 | JSL sprite_handler ;$80D7B7 | JSL CODE_B5E50D ;$80D7BB | JSL CODE_B5B9B0 ;$80D7BF | JSR CODE_80F35B ;$80D7C3 | JSR CODE_8088BA ;$80D7C6 | JSR CODE_808C3D ;$80D7C9 | JMP CODE_808CA2 ;$80D7CC / CODE_80D7CF: JMP CODE_80D45D ;$80D7CF / DATA_80D7D2: db $10, $00, $00, $04, $00, $01, $00, $01 db $C0, $00 DATA_80D7DC: db $F0, $FF, $00, $FC, $00, $FF, $00, $FF db $40, $FF CODE_80D7E6: PHK ;$80D7E6 \ PLB ;$80D7E7 | LDY #DATA_80D7D2 ;$80D7E8 | LDA $19C0 ;$80D7EB | BNE CODE_80D7F1 ;$80D7EE | RTS ;$80D7F0 / CODE_80D7F1: BPL CODE_80D7F6 ;$80D7F1 \ LDY #DATA_80D7DC ;$80D7F3 | CODE_80D7F6: ; | LDX $0593 ;$80D7F6 | LDA $1E,x ;$80D7F9 | LSR A ;$80D7FB | BCS CODE_80D813 ;$80D7FC | LDA $26,x ;$80D7FE | BEQ CODE_80D80D ;$80D800 | EOR $19C0 ;$80D802 | BMI CODE_80D80D ;$80D805 | LDA $0002,y ;$80D807 | STA $2C,x ;$80D80A | RTS ;$80D80C / CODE_80D80D: LDA $0004,y ;$80D80D \ STA $2C,x ;$80D810 | RTS ;$80D812 / CODE_80D813: LDA $26,x ;$80D813 \ BNE CODE_80D81D ;$80D815 | LDA $0000,y ;$80D817 | STA $2C,x ;$80D81A | RTS ;$80D81C / CODE_80D81D: LDA $19C0 ;$80D81D \ EOR $26,x ;$80D820 | BMI CODE_80D82A ;$80D822 | LDA $0006,y ;$80D824 | STA $2C,x ;$80D827 | RTS ;$80D829 / CODE_80D82A: LDA $0008,y ;$80D82A \ STA $2C,x ;$80D82D | RTS ;$80D82F / CODE_80D830: JSR CODE_808988 ;$80D830 \ BNE CODE_80D851 ;$80D833 | JSL CODE_BBB5C4 ;$80D835 | JSL sprite_handler ;$80D839 | JSL CODE_B5E50D ;$80D83D | JSL CODE_B5B9B0 ;$80D841 | JSR CODE_80F35B ;$80D845 | JSR CODE_8088BA ;$80D848 | JSR CODE_808C3D ;$80D84B | JMP CODE_808CA2 ;$80D84E / CODE_80D851: JMP CODE_80D45D ;$80D851 / CODE_80D854: JSR CODE_808988 ;$80D854 \ BNE CODE_80D883 ;$80D857 | JSL CODE_BBB5C4 ;$80D859 | JSL sprite_handler ;$80D85D | JSL CODE_B5E50D ;$80D861 | LDA $0AB4 ;$80D865 | CMP #$0006 ;$80D868 | BNE CODE_80D873 ;$80D86B | JSL CODE_B5B77D ;$80D86D | BRA CODE_80D877 ;$80D871 / CODE_80D873: JSL CODE_B5B54A ;$80D873 \ CODE_80D877: ; | JSR CODE_80F35B ;$80D877 | JSR CODE_8088BA ;$80D87A | JSR CODE_808C3D ;$80D87D | JMP CODE_808CA2 ;$80D880 / CODE_80D883: JMP CODE_80D45D ;$80D883 / CODE_80D886: JSR CODE_80E64E ;$80D886 \ JSR CODE_808988 ;$80D889 | BNE CODE_80D8B4 ;$80D88C | JSR CODE_80D4FA ;$80D88E | JSL CODE_BBB5C4 ;$80D891 | JSL sprite_handler ;$80D895 | JSL CODE_B5E50D ;$80D899 | JSR CODE_80DF94 ;$80D89D | JSL CODE_B5B54A ;$80D8A0 | JSR CODE_80F35B ;$80D8A4 | JSL CODE_BEC9C0 ;$80D8A7 | JSR CODE_8088BA ;$80D8AB | JSR CODE_808C3D ;$80D8AE | JMP CODE_808CA2 ;$80D8B1 / CODE_80D8B4: JMP CODE_80D45D ;$80D8B4 / CODE_80D8B7: JSR CODE_808988 ;$80D8B7 \ BNE CODE_80D8DB ;$80D8BA | JSL CODE_BBB5C4 ;$80D8BC | JSL sprite_handler ;$80D8C0 | JSL CODE_B5E50D ;$80D8C4 | JSL CODE_B5B9B0 ;$80D8C8 | JSR CODE_80F35B ;$80D8CC | JSR CODE_8088BA ;$80D8CF | JSR CODE_80DE01 ;$80D8D2 | JSR CODE_808C3D ;$80D8D5 | JMP CODE_808CA2 ;$80D8D8 / CODE_80D8DB: JMP CODE_80D45D ;$80D8DB / CODE_80D8DE: JSR CODE_808988 ;$80D8DE \ BNE CODE_80D8DB ;$80D8E1 | JSL CODE_BBB5C4 ;$80D8E3 | JSL sprite_handler ;$80D8E7 | JSL CODE_B5E50D ;$80D8EB | JSL CODE_B5B317 ;$80D8EF | JSR CODE_80F35B ;$80D8F3 | JSR CODE_8088BA ;$80D8F6 | JSR CODE_808C3D ;$80D8F9 | JMP CODE_808CA2 ;$80D8FC / JMP CODE_80D45D ;$80D8FF / CODE_80D902: JSR CODE_80E64E ;$80D902 \ JSR CODE_808988 ;$80D905 | BNE CODE_80D93E ;$80D908 | JSL CODE_BBB5C4 ;$80D90A | JSR CODE_80D941 ;$80D90E | JSL CODE_B5E50D ;$80D911 | JSL sprite_handler ;$80D915 | BIT $08C2 ;$80D919 | BVC CODE_80D92E ;$80D91C | LDX $0597 ;$80D91E | LDA $0D54 ;$80D921 | CLC ;$80D924 | ADC #$00C0 ;$80D925 | CMP $0A,x ;$80D928 | BCS CODE_80D92E ;$80D92A | STA $0A,x ;$80D92C | CODE_80D92E: ; | JSL CODE_B5B317 ;$80D92E | JSR CODE_80F35B ;$80D932 | JSR CODE_8088BA ;$80D935 | JSR CODE_808C3D ;$80D938 | JMP CODE_808CA2 ;$80D93B / CODE_80D93E: JMP CODE_80D45D ;$80D93E / CODE_80D941: LDA $0A36 ;$80D941 \ BIT #$0082 ;$80D944 | BNE CODE_80D9B2 ;$80D947 | LDY $0593 ;$80D949 | LDA $002E,y ;$80D94C | ASL A ;$80D94F | ASL A ;$80D950 | TAX ;$80D951 | LDA.l DATA_B896B7,x ;$80D952 | BIT #$0040 ;$80D956 | BNE CODE_80D9B3 ;$80D959 | LDA #$0001 ;$80D95B | TRB $0D56 ;$80D95E | BNE CODE_80D9C7 ;$80D961 | LDA $08C2 ;$80D963 | BIT #$2000 ;$80D966 | BNE CODE_80D9B8 ;$80D969 | AND #$4000 ;$80D96B | BNE CODE_80D97D ;$80D96E | LDA #$4000 ;$80D970 | BIT $0D56 ;$80D973 | BEQ CODE_80D980 ;$80D976 | TRB $0D56 ;$80D978 | BRA CODE_80D9B8 ;$80D97B / CODE_80D97D: TSB $0D56 ;$80D97D \ CODE_80D980: ; | LDA $0D50 ;$80D980 | ORA $0D4A ;$80D983 | BEQ CODE_80D9B2 ;$80D986 | LDA $0D4A ;$80D988 | BPL CODE_80D992 ;$80D98B | CMP #$9000 ;$80D98D | BCC CODE_80D9D4 ;$80D990 | CODE_80D992: ; | LDA #$0D26 ;$80D992 | STA $64 ;$80D995 | LDA #$0007 ;$80D997 | JSL CODE_B8CFD4 ;$80D99A | LDA $0D4A ;$80D99E | JSR CODE_80D9FB ;$80D9A1 | LDA $0D52 ;$80D9A4 | SEC ;$80D9A7 | SBC $0D54 ;$80D9A8 | BEQ CODE_80D9E8 ;$80D9AB | EOR $0D4A ;$80D9AD | BMI CODE_80D9E8 ;$80D9B0 | CODE_80D9B2: ; | RTS ;$80D9B2 / CODE_80D9B3: LDA #$0040 ;$80D9B3 \ BRA CODE_80D9FB ;$80D9B6 / CODE_80D9B8: LDA $0D4A ;$80D9B8 \ BPL CODE_80D9C2 ;$80D9BB | CMP #$9000 ;$80D9BD | BCC CODE_80D9D4 ;$80D9C0 | CODE_80D9C2: ; | LDA #$803C ;$80D9C2 | BRA CODE_80D9D4 ;$80D9C5 / CODE_80D9C7: LDA $0D4A ;$80D9C7 \ BPL CODE_80D9D1 ;$80D9CA | CMP #$9000 ;$80D9CC | BCC CODE_80D9D4 ;$80D9CF | CODE_80D9D1: ; | LDA #$8098 ;$80D9D1 | CODE_80D9D4: ; | DEC A ;$80D9D4 | BPL CODE_80D9E4 ;$80D9D5 | STA $0D4A ;$80D9D7 | CMP #$8078 ;$80D9DA | BCC CODE_80D9B2 ;$80D9DD | LDA #$0100 ;$80D9DF | BRA CODE_80D9FB ;$80D9E2 / CODE_80D9E4: STZ $0D4A ;$80D9E4 \ RTS ;$80D9E7 / CODE_80D9E8: LDA $0D52 ;$80D9E8 \ STA $0D54 ;$80D9EB | STA $0AFE ;$80D9EE | STZ $0D50 ;$80D9F1 | STZ $0D4A ;$80D9F4 | STZ $0D4C ;$80D9F7 | RTS ;$80D9FA / CODE_80D9FB: SEP #$20 ;$80D9FB \ CLC ;$80D9FD | ADC $0D4D ;$80D9FE | STA $0D4D ;$80DA01 | LDX #$0000 ;$80DA04 | XBA ;$80DA07 | BPL CODE_80DA0B ;$80DA08 | DEX ;$80DA0A | CODE_80DA0B: ; | ADC $0D54 ;$80DA0B | STA $0D54 ;$80DA0E | TXA ;$80DA11 | ADC $0D55 ;$80DA12 | STA $0D55 ;$80DA15 | REP #$20 ;$80DA18 | LDA $0D54 ;$80DA1A | STA $0AFE ;$80DA1D | RTS ;$80DA20 / CODE_80DA21: JSR CODE_808988 ;$80DA21 \ BNE CODE_80DA42 ;$80DA24 | JSL CODE_BBB5C4 ;$80DA26 | JSL sprite_handler ;$80DA2A | JSL CODE_B5E50D ;$80DA2E | JSL CODE_B5B9B0 ;$80DA32 | JSR CODE_80F35B ;$80DA36 | JSR CODE_8088BA ;$80DA39 | JSR CODE_808C3D ;$80DA3C | JMP CODE_808CA2 ;$80DA3F / CODE_80DA42: JMP CODE_80D45D ;$80DA42 / CODE_80DA45: JSR CODE_80E63D ;$80DA45 \ JSR CODE_808988 ;$80DA48 | BNE CODE_80DA73 ;$80DA4B | JSR CODE_80D4FA ;$80DA4D | JSL CODE_BBB5C4 ;$80DA50 | JSL sprite_handler ;$80DA54 | JSL CODE_B5E50D ;$80DA58 | JSL CODE_B5B9A5 ;$80DA5C | JSR CODE_80F35B ;$80DA60 | JSL CODE_BEC9C0 ;$80DA63 | JSR CODE_8088BA ;$80DA67 | JSR CODE_80D4B7 ;$80DA6A | JSR CODE_808C3D ;$80DA6D | JMP CODE_808CA2 ;$80DA70 / CODE_80DA73: JMP CODE_80D45D ;$80DA73 / CODE_80DA76: JSR CODE_808988 ;$80DA76 \ BNE CODE_80DA97 ;$80DA79 | JSL CODE_BBB5C4 ;$80DA7B | JSL sprite_handler ;$80DA7F | JSL CODE_B5E50D ;$80DA83 | JSL CODE_B5B317 ;$80DA87 | JSR CODE_80F35B ;$80DA8B | JSR CODE_8088BA ;$80DA8E | JSR CODE_808C3D ;$80DA91 | JMP CODE_808CA2 ;$80DA94 / CODE_80DA97: JMP CODE_80D45D ;$80DA97 / CODE_80DA9A: JSR CODE_808988 ;$80DA9A \ BNE CODE_80DAC8 ;$80DA9D | JSL CODE_BBB5C4 ;$80DA9F | JSL sprite_handler ;$80DAA3 | JSL CODE_B5E50D ;$80DAA7 | JSR CODE_80E52B ;$80DAAB | JSL CODE_B5B9BB ;$80DAAE | JSL CODE_B5B9B0 ;$80DAB2 | JSR CODE_80F35B ;$80DAB6 | JSR CODE_8088BA ;$80DAB9 | JSR CODE_80E580 ;$80DABC | JSR CODE_80DD67 ;$80DABF | JSR CODE_808C3D ;$80DAC2 | JMP CODE_808CA2 ;$80DAC5 / CODE_80DAC8: JMP CODE_80D45D ;$80DAC8 / CODE_80DACB: JSR CODE_80E63D ;$80DACB \ JSR CODE_808988 ;$80DACE | BNE CODE_80DAC8 ;$80DAD1 | JSR CODE_80D4FA ;$80DAD3 | JSL CODE_BBB5C4 ;$80DAD6 | JSL sprite_handler ;$80DADA | JSL CODE_B5E50D ;$80DADE | LDA $0AB4 ;$80DAE2 | AND #$000F ;$80DAE5 | CMP #$0005 ;$80DAE8 | BEQ CODE_80DAF3 ;$80DAEB | JSL CODE_B5B54A ;$80DAED | BRA CODE_80DAF7 ;$80DAF1 / CODE_80DAF3: JSL CODE_B5B317 ;$80DAF3 \ CODE_80DAF7: ; | JSR CODE_80F35B ;$80DAF7 | JSL CODE_BEC9C0 ;$80DAFA | JSR CODE_8088BA ;$80DAFE | LDA $0915 ;$80DB01 | BNE CODE_80DB09 ;$80DB04 | JSR CODE_80D4B7 ;$80DB06 | CODE_80DB09: ; | JSR CODE_808C3D ;$80DB09 | JMP CODE_808CA2 ;$80DB0C / JMP CODE_80D45D ;$80DB0F / CODE_80DB12: JSR CODE_808988 ;$80DB12 \ BNE CODE_80DB33 ;$80DB15 | JSL CODE_BBB5C4 ;$80DB17 | JSL sprite_handler ;$80DB1B | JSL CODE_B5E50D ;$80DB1F | JSL CODE_B5B9B0 ;$80DB23 | JSR CODE_80F35B ;$80DB27 | JSR CODE_8088BA ;$80DB2A | JSR CODE_808C3D ;$80DB2D | JMP CODE_808CA2 ;$80DB30 / CODE_80DB33: JMP CODE_80D45D ;$80DB33 / CODE_80DB36: JSR CODE_808988 ;$80DB36 \ BNE CODE_80DAC8 ;$80DB39 | JSL CODE_BBB5C4 ;$80DB3B | JSL sprite_handler ;$80DB3F | JSL CODE_B5E50D ;$80DB43 | LDA $0AB4 ;$80DB47 | AND #$000F ;$80DB4A | CMP #$0005 ;$80DB4D | BEQ CODE_80DB58 ;$80DB50 | JSL CODE_B5B54A ;$80DB52 | BRA CODE_80DB5C ;$80DB56 / CODE_80DB58: JSL CODE_B5B317 ;$80DB58 \ CODE_80DB5C: ; | JSR CODE_80F35B ;$80DB5C | JSR CODE_8088BA ;$80DB5F | JSR CODE_808C3D ;$80DB62 | JMP CODE_808CA2 ;$80DB65 / JMP CODE_80D45D ;$80DB68 / CODE_80DB6B: JSR CODE_80E646 ;$80DB6B \ JSR CODE_808988 ;$80DB6E | BNE CODE_80DB96 ;$80DB71 | JSR CODE_80D4FA ;$80DB73 | JSL CODE_BBB5C4 ;$80DB76 | JSL sprite_handler ;$80DB7A | JSL CODE_B5E50D ;$80DB7E | JSL CODE_B5B317 ;$80DB82 | JSR CODE_80F35B ;$80DB86 | JSL CODE_BEC9C0 ;$80DB89 | JSR CODE_8088BA ;$80DB8D | JSR CODE_808C3D ;$80DB90 | JMP CODE_808CA2 ;$80DB93 / CODE_80DB96: JMP CODE_80D45D ;$80DB96 / CODE_80DB99: JSR CODE_808988 ;$80DB99 \ BNE CODE_80DBCB ;$80DB9C | JSL CODE_BBB5C4 ;$80DB9E | JSR CODE_80D7E6 ;$80DBA2 | JSL sprite_handler ;$80DBA5 | JSL CODE_B5E50D ;$80DBA9 | LDA $0AB4 ;$80DBAD | CMP #$0006 ;$80DBB0 | BNE CODE_80DBBB ;$80DBB3 | JSL CODE_B5B77D ;$80DBB5 | BRA CODE_80DBBF ;$80DBB9 / CODE_80DBBB: JSL CODE_B5B54A ;$80DBBB \ CODE_80DBBF: ; | JSR CODE_80F35B ;$80DBBF | JSR CODE_8088BA ;$80DBC2 | JSR CODE_808C3D ;$80DBC5 | JMP CODE_808CA2 ;$80DBC8 / CODE_80DBCB: JMP CODE_80D45D ;$80DBCB / CODE_80DBCE: JSR CODE_808988 ;$80DBCE \ BNE CODE_80DBEF ;$80DBD1 | JSL CODE_BBB5C4 ;$80DBD3 | JSL sprite_handler ;$80DBD7 | JSL CODE_B5E50D ;$80DBDB | JSL CODE_B5B9A5 ;$80DBDF | JSR CODE_80F35B ;$80DBE3 | JSR CODE_8088BA ;$80DBE6 | JSR CODE_808C3D ;$80DBE9 | JMP CODE_808CA2 ;$80DBEC / CODE_80DBEF: JMP CODE_80D45D ;$80DBEF / CODE_80DBF2: LDA $17C0 ;$80DBF2 \ CLC ;$80DBF5 | ADC $2A ;$80DBF6 | LSR A ;$80DBF8 | LSR A ;$80DBF9 | CLC ;$80DBFA | ADC $17C0 ;$80DBFB | STA $32 ;$80DBFE | LDA $2A ;$80DC00 | LSR A ;$80DC02 | SEC ;$80DC03 | SBC $32 ;$80DC04 | STA $54 ;$80DC06 | AND #$0003 ;$80DC08 | INC A ;$80DC0B | SEP #$20 ;$80DC0C | STA $7E8012 ;$80DC0E | STA $7E85D2 ;$80DC12 | REP #$20 ;$80DC16 | LDA $54 ;$80DC18 | LSR A ;$80DC1A | AND #$001E ;$80DC1B | TAX ;$80DC1E | LDA $17BA ;$80DC1F | CLC ;$80DC22 | ADC $2A ;$80DC23 | STA $54 ;$80DC25 | PEA $80B3 ;$80DC27 | PLB ;$80DC2A | LDA $2A ;$80DC2B | BIT #$0001 ;$80DC2D | BEQ CODE_80DC67 ;$80DC30 | LDY #$0000 ;$80DC32 | CODE_80DC35: ; | LDA $F4D8,y ;$80DC35 | CMP #$8000 ;$80DC38 | ROR A ;$80DC3B | CMP #$8000 ;$80DC3C | ROR A ;$80DC3F | CMP #$8000 ;$80DC40 | ROR A ;$80DC43 | CMP #$8000 ;$80DC44 | ROR A ;$80DC47 | CMP #$8000 ;$80DC48 | ROR A ;$80DC4B | CMP #$8000 ;$80DC4C | ROR A ;$80DC4F | CLC ;$80DC50 | ADC $54 ;$80DC51 | STA $7E8812,x ;$80DC53 | JSR CODE_80DD28 ;$80DC57 | TYA ;$80DC5A | CLC ;$80DC5B | ADC #$0020 ;$80DC5C | TAY ;$80DC5F | CMP #$0200 ;$80DC60 | BNE CODE_80DC35 ;$80DC63 | BRA CODE_80DC9A ;$80DC65 / CODE_80DC67: LDY #$0000 ;$80DC67 \ CODE_80DC6A: ; | LDA $F4D8,y ;$80DC6A | CMP #$8000 ;$80DC6D | ROR A ;$80DC70 | CMP #$8000 ;$80DC71 | ROR A ;$80DC74 | CMP #$8000 ;$80DC75 | ROR A ;$80DC78 | CMP #$8000 ;$80DC79 | ROR A ;$80DC7C | CMP #$8000 ;$80DC7D | ROR A ;$80DC80 | CMP #$8000 ;$80DC81 | ROR A ;$80DC84 | CLC ;$80DC85 | ADC $54 ;$80DC86 | STA $7E80D2,x ;$80DC88 | JSR CODE_80DD28 ;$80DC8C | TYA ;$80DC8F | CLC ;$80DC90 | ADC #$0020 ;$80DC91 | TAY ;$80DC94 | CMP #$0200 ;$80DC95 | BNE CODE_80DC6A ;$80DC98 | CODE_80DC9A: ; | LDA $2A ;$80DC9A | LSR A ;$80DC9C | LSR A ;$80DC9D | STA $54 ;$80DC9E | LSR A ;$80DCA0 | CLC ;$80DCA1 | ADC $54 ;$80DCA2 | CLC ;$80DCA4 | ADC $32 ;$80DCA5 | EOR #$FFFF ;$80DCA7 | ASL A ;$80DCAA | AND #$003E ;$80DCAB | TAX ;$80DCAE | LDA $2A ;$80DCAF | BIT #$0001 ;$80DCB1 | BEQ CODE_80DCEF ;$80DCB4 | LDY #$0000 ;$80DCB6 | CODE_80DCB9: ; | LDA $F4D8,y ;$80DCB9 | CMP #$8000 ;$80DCBC | ROR A ;$80DCBF | CMP #$8000 ;$80DCC0 | ROR A ;$80DCC3 | CMP #$8000 ;$80DCC4 | ROR A ;$80DCC7 | CMP #$8000 ;$80DCC8 | ROR A ;$80DCCB | CMP #$8000 ;$80DCCC | ROR A ;$80DCCF | CMP #$8000 ;$80DCD0 | ROR A ;$80DCD3 | CMP #$8000 ;$80DCD4 | ROR A ;$80DCD7 | CLC ;$80DCD8 | ADC $32 ;$80DCD9 | STA $7E8592,x ;$80DCDB | JSR CODE_80DD32 ;$80DCDF | TYA ;$80DCE2 | CLC ;$80DCE3 | ADC #$0010 ;$80DCE4 | TAY ;$80DCE7 | CMP #$0200 ;$80DCE8 | BNE CODE_80DCB9 ;$80DCEB | PLB ;$80DCED | RTS ;$80DCEE / CODE_80DCEF: LDY #$0000 ;$80DCEF \ CODE_80DCF2: ; | LDA $F4D8,y ;$80DCF2 | CMP #$8000 ;$80DCF5 | ROR A ;$80DCF8 | CMP #$8000 ;$80DCF9 | ROR A ;$80DCFC | CMP #$8000 ;$80DCFD | ROR A ;$80DD00 | CMP #$8000 ;$80DD01 | ROR A ;$80DD04 | CMP #$8000 ;$80DD05 | ROR A ;$80DD08 | CMP #$8000 ;$80DD09 | ROR A ;$80DD0C | CMP #$8000 ;$80DD0D | ROR A ;$80DD10 | CLC ;$80DD11 | ADC $32 ;$80DD12 | STA $7E8552,x ;$80DD14 | JSR CODE_80DD32 ;$80DD18 | TYA ;$80DD1B | CLC ;$80DD1C | ADC #$0010 ;$80DD1D | TAY ;$80DD20 | CMP #$0200 ;$80DD21 | BNE CODE_80DCF2 ;$80DD24 | PLB ;$80DD26 | RTS ;$80DD27 / CODE_80DD28: PHA ;$80DD28 \ INX ;$80DD29 | INX ;$80DD2A | TXA ;$80DD2B | AND #$001E ;$80DD2C | TAX ;$80DD2F | PLA ;$80DD30 | RTS ;$80DD31 / CODE_80DD32: PHA ;$80DD32 \ INX ;$80DD33 | INX ;$80DD34 | TXA ;$80DD35 | AND #$003E ;$80DD36 | TAX ;$80DD39 | PLA ;$80DD3A | RTS ;$80DD3B / CODE_80DD3C: JSR CODE_808988 ;$80DD3C \ BNE CODE_80DD60 ;$80DD3F | JSL CODE_BBB5C4 ;$80DD41 | JSL sprite_handler ;$80DD45 | JSL CODE_B5E50D ;$80DD49 | JSR CODE_80DBF2 ;$80DD4D | JSL CODE_B5B9B0 ;$80DD50 | JSR CODE_80F35B ;$80DD54 | JSR CODE_8088BA ;$80DD57 | JSR CODE_808C3D ;$80DD5A | JMP CODE_808CA2 ;$80DD5D / CODE_80DD60: JMP CODE_80D45D ;$80DD60 / CODE_80DD63: JSR CODE_80DD67 ;$80DD63 \ RTL ;$80DD66 / CODE_80DD67: LDA $17BA ;$80DD67 \ AND #$FFFE ;$80DD6A | SEC ;$80DD6D | SBC $0911 ;$80DD6E | BMI CODE_80DD75 ;$80DD71 | BNE CODE_80DD76 ;$80DD73 | CODE_80DD75: ; | RTS ;$80DD75 / CODE_80DD76: LDA $17BA ;$80DD76 \ EOR $0911 ;$80DD79 | BIT #$FF00 ;$80DD7C | BEQ CODE_80DD90 ;$80DD7F | INC $0913 ;$80DD81 | LDA $0911 ;$80DD84 | AND #$FF00 ;$80DD87 | CLC ;$80DD8A | ADC #$0100 ;$80DD8B | BRA CODE_80DD96 ;$80DD8E / CODE_80DD90: LDA $17BA ;$80DD90 \ AND #$FFFE ;$80DD93 | CODE_80DD96: ; | STA $32 ;$80DD96 | AND #$00FE ;$80DD98 | BNE CODE_80DDA0 ;$80DD9B | LDA #$0100 ;$80DD9D | CODE_80DDA0: ; | STA $36 ;$80DDA0 | LDA $0911 ;$80DDA2 | AND #$00FE ;$80DDA5 | STA $38 ;$80DDA8 | TAY ;$80DDAA | ASL A ;$80DDAB | CLC ;$80DDAC | ADC $38 ;$80DDAD | TAX ;$80DDAF | PEA $807E ;$80DDB0 | PLB ;$80DDB3 | CODE_80DDB4: ; | LDA.l $7E8928,x ;$80DDB4 | SEC ;$80DDB8 | SBC.l DATA_FD364E,x ;$80DDB9 | STA $7E8928,x ;$80DDBD | XBA ;$80DDC1 | AND #$001F ;$80DDC2 | STA $34 ;$80DDC5 | LDA.l $7E892A,x ;$80DDC7 | SEC ;$80DDCB | SBC.l DATA_FD3650,x ;$80DDCC | STA $7E892A,x ;$80DDD0 | AND #$03E0 ;$80DDD4 | TSB $34 ;$80DDD7 | LDA.l $7E892C,x ;$80DDD9 | SEC ;$80DDDD | SBC.l DATA_FD3652,x ;$80DDDE | STA $7E892C,x ;$80DDE2 | AND #$7C00 ;$80DDE6 | ORA $34 ;$80DDE9 | STA $8C28,y ;$80DDEB | INY ;$80DDEE | INY ;$80DDEF | TXA ;$80DDF0 | CLC ;$80DDF1 | ADC #$0006 ;$80DDF2 | TAX ;$80DDF5 | CPY $36 ;$80DDF6 | BNE CODE_80DDB4 ;$80DDF8 | PLB ;$80DDFA | LDA $32 ;$80DDFB | STA $0911 ;$80DDFD | RTS ;$80DE00 / CODE_80DE01: LDX #$0006 ;$80DE01 \ CODE_80DE04: ; | LDA $095B,x ;$80DE04 | BIT #$4000 ;$80DE07 | BEQ CODE_80DE12 ;$80DE0A | STZ $095B,x ;$80DE0C | STZ $0963,x ;$80DE0F | CODE_80DE12: ; | DEX ;$80DE12 | DEX ;$80DE13 | BPL CODE_80DE04 ;$80DE14 | LDY #$0006 ;$80DE16 | CODE_80DE19: ; | LDA $0963,y ;$80DE19 | BEQ CODE_80DE39 ;$80DE1C | TAX ;$80DE1E | LDA.l DATA_B3D691,x ;$80DE1F | SEC ;$80DE23 | SBC $17BA ;$80DE24 | CLC ;$80DE27 | ADC #$000C ;$80DE28 | CMP #$0118 ;$80DE2B | BCC CODE_80DE39 ;$80DE2E | LDA #$4000 ;$80DE30 | ORA $095B,y ;$80DE33 | STA $095B,y ;$80DE36 | CODE_80DE39: ; | DEY ;$80DE39 | DEY ;$80DE3A | BPL CODE_80DE19 ;$80DE3B | LDA $17BA ;$80DE3D | SEC ;$80DE40 | SBC #$000A ;$80DE41 | STA $32 ;$80DE44 | LDX $0959 ;$80DE46 | CODE_80DE49: ; | LDA.l DATA_B3D691,x ;$80DE49 | BMI CODE_80DE9F ;$80DE4D | AND #$FFFE ;$80DE4F | CMP $32 ;$80DE52 | BCS CODE_80DE5A ;$80DE54 | CODE_80DE56: ; | INX ;$80DE56 | INX ;$80DE57 | BRA CODE_80DE49 ;$80DE58 / CODE_80DE5A: SEC ;$80DE5A \ SBC $32 ;$80DE5B | CMP #$0114 ;$80DE5D | BCS CODE_80DE9F ;$80DE60 | LDY #$0006 ;$80DE62 | TXA ;$80DE65 | CODE_80DE66: ; | CMP $0963,y ;$80DE66 | BEQ CODE_80DE56 ;$80DE69 | DEY ;$80DE6B | DEY ;$80DE6C | BPL CODE_80DE66 ;$80DE6D | LDY #$0006 ;$80DE6F | CODE_80DE72: ; | LDA $0963,y ;$80DE72 | BEQ CODE_80DE7B ;$80DE75 | DEY ;$80DE77 | DEY ;$80DE78 | BPL CODE_80DE72 ;$80DE79 | CODE_80DE7B: ; | TXA ;$80DE7B | STA $0963,y ;$80DE7C | LDA.l DATA_B3D691,x ;$80DE7F | BIT #$0001 ;$80DE83 | PHP ;$80DE86 | SEC ;$80DE87 | SBC #$0008 ;$80DE88 | LSR A ;$80DE8B | LSR A ;$80DE8C | LSR A ;$80DE8D | AND #$001F ;$80DE8E | CLC ;$80DE91 | ADC #$01C0 ;$80DE92 | PLP ;$80DE95 | BEQ CODE_80DE9C ;$80DE96 | CLC ;$80DE98 | ADC #$7F00 ;$80DE99 | CODE_80DE9C: ; | STA $095B,y ;$80DE9C | CODE_80DE9F: ; | LDY #$0006 ;$80DE9F | CODE_80DEA2: ; | LDA $095B,y ;$80DEA2 | BIT #$4000 ;$80DEA5 | BEQ CODE_80DEC8 ;$80DEA8 | EOR #$4000 ;$80DEAA | STY $32 ;$80DEAD | LDX #$0006 ;$80DEAF | CODE_80DEB2: ; | CPX $32 ;$80DEB2 | BEQ CODE_80DEC4 ;$80DEB4 | CMP $095B,x ;$80DEB6 | BNE CODE_80DEC4 ;$80DEB9 | LDA #$0000 ;$80DEBB | STA $095B,y ;$80DEBE | STA $0963,y ;$80DEC1 | CODE_80DEC4: ; | DEX ;$80DEC4 | DEX ;$80DEC5 | BPL CODE_80DEB2 ;$80DEC6 | CODE_80DEC8: ; | DEY ;$80DEC8 | DEY ;$80DEC9 | BPL CODE_80DEA2 ;$80DECA | LDA #$FF00 ;$80DECC | STA $84 ;$80DECF | LDY #$0006 ;$80DED1 | CODE_80DED4: ; | LDA $0963,y ;$80DED4 | BEQ CODE_80DF2F ;$80DED7 | TAX ;$80DED9 | LDA.l DATA_B3D691,x ;$80DEDA | SEC ;$80DEDE | SBC $17BA ;$80DEDF | SEC ;$80DEE2 | SBC #$000C ;$80DEE3 | BMI CODE_80DF0F ;$80DEE6 | CMP #$00E8 ;$80DEE8 | BCC CODE_80DF2F ;$80DEEB | LDA.l DATA_B3D691,x ;$80DEED | SEC ;$80DEF1 | SBC #$0100 ;$80DEF2 | STA $32 ;$80DEF5 | CODE_80DEF7: ; | DEX ;$80DEF7 | DEX ;$80DEF8 | LDA.l DATA_B3D691,x ;$80DEF9 | BEQ CODE_80DF05 ;$80DEFD | CMP $32 ;$80DEFF | BEQ CODE_80DF2F ;$80DF01 | BRA CODE_80DEF7 ;$80DF03 / CODE_80DF05: SEP #$20 ;$80DF05 \ LDA #$18 ;$80DF07 | STA $84 ;$80DF09 | REP #$20 ;$80DF0B | BRA CODE_80DF2F ;$80DF0D / CODE_80DF0F: LDA.l DATA_B3D691,x ;$80DF0F \ CLC ;$80DF13 | ADC #$0100 ;$80DF14 | STA $32 ;$80DF17 | CODE_80DF19: ; | INX ;$80DF19 | INX ;$80DF1A | LDA.l DATA_B3D691,x ;$80DF1B | BMI CODE_80DF27 ;$80DF1F | CMP $32 ;$80DF21 | BEQ CODE_80DF2F ;$80DF23 | BRA CODE_80DF19 ;$80DF25 / CODE_80DF27: SEP #$20 ;$80DF27 \ LDA #$E8 ;$80DF29 | STA $85 ;$80DF2B | REP #$20 ;$80DF2D | CODE_80DF2F: ; | DEY ;$80DF2F | DEY ;$80DF30 | BPL CODE_80DED4 ;$80DF31 | RTS ;$80DF33 / DATA_80DF34: db $0C, $00 DATA_80DF36: db $F6, $FF, $0C, $00, $F6, $FF, $0C, $00 db $F6, $FF, $0C, $00, $F6, $FF, $0C, $00 db $F6, $FF, $0C, $00, $F6, $FF, $0C, $00 db $F6, $FF, $0C, $00, $F6, $FF, $0C, $00 db $F6, $FF, $0C, $00, $F6, $FF, $0C, $00 db $F6, $FF, $0C, $00, $F6, $FF, $0C, $00 db $F6, $FF, $0C, $00, $F6, $FF, $0C, $00 db $F6, $FF, $0C, $00, $F6, $FF, $0C, $00 db $F6, $FF, $08, $00, $F6, $FF, $04, $00 db $F6, $FF, $00, $00, $F6, $FF, $0C, $00 db $F6, $FF, $FC, $FF, $F6, $FF, $FC, $FF db $F6, $FF, $F8, $FF, $F6, $FF CODE_80DF94: LDY $0989 ;$80DF94 \ BNE CODE_80DFB6 ;$80DF97 | LDA $2A ;$80DF99 | AND #$0001 ;$80DF9B | XBA ;$80DF9E | TAX ;$80DF9F | LDA #$0001 ;$80DFA0 | STA $7E80F2,x ;$80DFA3 | LDA #DATA_80E175 ;$80DFA7 | STA $7E80F3,x ;$80DFAA | LDA #$0000 ;$80DFAE | STA $7E80F5,x ;$80DFB1 | RTS ;$80DFB5 / CODE_80DFB6: STZ $56 ;$80DFB6 \ LDA #DATA_80E175 ;$80DFB8 | STA $3E ;$80DFBB | LDA #DATA_80E1F4 ;$80DFBD | STA $40 ;$80DFC0 | LDA $001A,y ;$80DFC2 | CMP #$1C1C ;$80DFC5 | BNE CODE_80DFE7 ;$80DFC8 | LDA $2A ;$80DFCA | AND #$0001 ;$80DFCC | XBA ;$80DFCF | TAX ;$80DFD0 | LDA #$0001 ;$80DFD1 | STA $7E80F2,x ;$80DFD4 | LDA #DATA_80E1F4 ;$80DFD8 | STA $7E80F3,x ;$80DFDB | LDA #$0000 ;$80DFDF | STA $7E80F5,x ;$80DFE2 | RTS ;$80DFE6 / CODE_80DFE7: SEC ;$80DFE7 \ SBC #$1C14 ;$80DFE8 | CMP #$0010 ;$80DFEB | BCS CODE_80DFFC ;$80DFEE | LDA #DATA_80E273 ;$80DFF0 | STA $3E ;$80DFF3 | LDA #DATA_80E372 ;$80DFF5 | STA $40 ;$80DFF8 | INC $56 ;$80DFFA | CODE_80DFFC: ; | LDA $001A,y ;$80DFFC | SEC ;$80DFFF | SBC #$1BCC ;$80E000 | TAX ;$80E003 | LDA $0012,y ;$80E004 | BIT #$4000 ;$80E007 | BEQ CODE_80E016 ;$80E00A | LDA.l DATA_80DF34,x ;$80E00C | EOR #$FFFF ;$80E010 | INC A ;$80E013 | BRA CODE_80E01A ;$80E014 / CODE_80E016: LDA.l DATA_80DF34,x ;$80E016 \ CODE_80E01A: ; | CLC ;$80E01A | ADC $0006,y ;$80E01B | SEC ;$80E01E | SBC $17BA ;$80E01F | BPL CODE_80E027 ;$80E022 | LDA #$0000 ;$80E024 | CODE_80E027: ; | CMP #$00FE ;$80E027 | BCC CODE_80E02F ;$80E02A | LDA #$00FF ;$80E02C | CODE_80E02F: ; | STA $32 ;$80E02F | LDA $001A,y ;$80E031 | CMP #$1C1C ;$80E034 | BCC CODE_80E043 ;$80E037 | LDA $0012,y ;$80E039 | BIT #$4000 ;$80E03C | BNE CODE_80E05C ;$80E03F | BRA CODE_80E04B ;$80E041 / CODE_80E043: LDA $0012,y ;$80E043 \ BIT #$4000 ;$80E046 | BEQ CODE_80E05C ;$80E049 | CODE_80E04B: ; | LDA $3E ;$80E04B | PHA ;$80E04D | LDA $40 ;$80E04E | STA $3E ;$80E050 | PLA ;$80E052 | STA $40 ;$80E053 | LDA $32 ;$80E055 | EOR #$00FF ;$80E057 | STA $32 ;$80E05A | CODE_80E05C: ; | LDA $000A,y ;$80E05C | SEC ;$80E05F | SBC $17C0 ;$80E060 | CLC ;$80E063 | ADC.l DATA_80DF36,x ;$80E064 | BPL CODE_80E06D ;$80E068 | LDA #$0000 ;$80E06A | CODE_80E06D: ; | CMP #$00FC ;$80E06D | BCC CODE_80E075 ;$80E070 | LDA #$00FC ;$80E072 | CODE_80E075: ; | STA $34 ;$80E075 | LDA $2A ;$80E077 | AND #$0001 ;$80E079 | ASL A ;$80E07C | CLC ;$80E07D | ADC $34 ;$80E07E | STA $34 ;$80E080 | LDA $2A ;$80E082 | AND #$0001 ;$80E084 | XBA ;$80E087 | TAX ;$80E088 | LDA $32 ;$80E089 | SEC ;$80E08B | SBC #$00FF ;$80E08C | LDY $56 ;$80E08F | BNE CODE_80E097 ;$80E091 | CMP #$8000 ;$80E093 | ROR A ;$80E096 | CODE_80E097: ; | CLC ;$80E097 | ADC $34 ;$80E098 | STA $36 ;$80E09A | BEQ CODE_80E0A0 ;$80E09C | BPL CODE_80E0A9 ;$80E09E | CODE_80E0A0: ; | STA $3A ;$80E0A0 | LDA #$0000 ;$80E0A2 | STA $38 ;$80E0A5 | BRA CODE_80E0D7 ;$80E0A7 / CODE_80E0A9: STA $38 ;$80E0A9 \ STZ $3A ;$80E0AB | CMP #$0080 ;$80E0AD | BCC CODE_80E0CA ;$80E0B0 | STA $3C ;$80E0B2 | LDA #$007F ;$80E0B4 | STA $7E80F2,x ;$80E0B7 | LDA $3E ;$80E0BB | STA $7E80F3,x ;$80E0BD | INX ;$80E0C1 | INX ;$80E0C2 | INX ;$80E0C3 | LDA $3C ;$80E0C4 | SEC ;$80E0C6 | SBC #$007F ;$80E0C7 | CODE_80E0CA: ; | STA $7E80F2,x ;$80E0CA | LDA $3E ;$80E0CE | STA $7E80F3,x ;$80E0D0 | INX ;$80E0D4 | INX ;$80E0D5 | INX ;$80E0D6 | CODE_80E0D7: ; | LDA $34 ;$80E0D7 | SEC ;$80E0D9 | SBC $38 ;$80E0DA | BEQ CODE_80E11D ;$80E0DC | STZ $54 ;$80E0DE | LSR A ;$80E0E0 | BEQ CODE_80E100 ;$80E0E1 | PHP ;$80E0E3 | PHA ;$80E0E4 | STA $54 ;$80E0E5 | ORA #$0080 ;$80E0E7 | STA $7E80F2,x ;$80E0EA | LDA $3A ;$80E0EE | EOR #$FFFF ;$80E0F0 | INC A ;$80E0F3 | CLC ;$80E0F4 | ADC $3E ;$80E0F5 | STA $7E80F3,x ;$80E0F7 | INX ;$80E0FB | INX ;$80E0FC | INX ;$80E0FD | PLA ;$80E0FE | PLP ;$80E0FF | CODE_80E100: ; | ADC #$0000 ;$80E100 | ORA #$0080 ;$80E103 | STA $7E80F2,x ;$80E106 | LDA $3A ;$80E10A | EOR #$FFFF ;$80E10C | INC A ;$80E10F | CLC ;$80E110 | ADC $3E ;$80E111 | CLC ;$80E113 | ADC $54 ;$80E114 | STA $7E80F3,x ;$80E116 | INX ;$80E11A | INX ;$80E11B | INX ;$80E11C | CODE_80E11D: ; | LDA $56 ;$80E11D | BNE CODE_80E123 ;$80E11F | LSR $32 ;$80E121 | CODE_80E123: ; | LDA $34 ;$80E123 | SEC ;$80E125 | SBC $36 ;$80E126 | CMP #$00FE ;$80E128 | BCC CODE_80E130 ;$80E12B | LDA #$00FE ;$80E12D | CODE_80E130: ; | LSR A ;$80E130 | PHP ;$80E131 | PHA ;$80E132 | STA $54 ;$80E133 | ORA #$0080 ;$80E135 | STA $7E80F2,x ;$80E138 | LDA $32 ;$80E13C | CLC ;$80E13E | ADC $40 ;$80E13F | STA $7E80F3,x ;$80E141 | INX ;$80E145 | INX ;$80E146 | INX ;$80E147 | PLA ;$80E148 | PLP ;$80E149 | ADC #$0000 ;$80E14A | ORA #$0080 ;$80E14D | STA $7E80F2,x ;$80E150 | LDA $32 ;$80E154 | CLC ;$80E156 | ADC $40 ;$80E157 | CLC ;$80E159 | ADC $54 ;$80E15A | STA $7E80F3,x ;$80E15C | LDA #$0001 ;$80E160 | STA $7E80F5,x ;$80E163 | LDA $3E ;$80E167 | STA $7E80F6,x ;$80E169 | LDA #$0000 ;$80E16D | STA $7E80F8,x ;$80E170 | RTS ;$80E174 / DATA_80E175: db $FF, $FD, $FB, $F9, $F7, $F5, $F3, $F1 db $EF, $ED, $EB, $E9, $E7, $E5, $E3, $E1 db $DF, $DD, $DB, $D9, $D7, $D5, $D3, $D1 db $CF, $CD, $CB, $C9, $C7, $C5, $C3, $C1 db $BF, $BD, $BB, $B9, $B7, $B5, $B3, $B1 db $AF, $AD, $AB, $A9, $A7, $A5, $A3, $A1 db $9F, $9D, $9B, $99, $97, $95, $93, $91 db $8F, $8D, $8B, $89, $87, $85, $83, $81 db $7F, $7D, $7B, $79, $77, $75, $73, $71 db $6F, $6D, $6B, $69, $67, $65, $63, $61 db $5F, $5D, $5B, $59, $57, $55, $53, $51 db $4F, $4D, $4B, $49, $47, $45, $43, $41 db $3F, $3D, $3B, $39, $37, $35, $33, $31 db $2F, $2D, $2B, $29, $27, $25, $23, $21 db $1F, $1D, $1B, $19, $17, $15, $13, $11 db $0F, $0D, $0B, $09, $07, $05, $03 DATA_80E1F4: db $00, $02, $04, $06, $08, $0A, $0C, $0E db $10, $12, $14, $16, $18, $1A, $1C, $1E db $20, $22, $24, $26, $28, $2A, $2C, $2E db $30, $32, $34, $36, $38, $3A, $3C, $3E db $40, $42, $44, $46, $48, $4A, $4C, $4E db $50, $52, $54, $56, $58, $5A, $5C, $5E db $60, $62, $64, $66, $68, $6A, $6C, $6E db $70, $72, $74, $76, $78, $7A, $7C, $7E db $80, $82, $84, $86, $88, $8A, $8C, $8E db $90, $92, $94, $96, $98, $9A, $9C, $9E db $A0, $A2, $A4, $A6, $A8, $AA, $AC, $AE db $B0, $B2, $B4, $B6, $B8, $BA, $BC, $BE db $C0, $C2, $C4, $C6, $C8, $CA, $CC, $CE db $D0, $D2, $D4, $D6, $D8, $DA, $DC, $DE db $E0, $E2, $E4, $E6, $E8, $EA, $EC, $EE db $F0, $F2, $F4, $F6, $F8, $FA, $FC DATA_80E273: db $FF, $FE, $FD, $FC, $FB, $FA, $F9, $F8 db $F7, $F6, $F5, $F4, $F3, $F2, $F1, $F0 db $EF, $EE, $ED, $EC, $EB, $EA, $E9, $E8 db $E7, $E6, $E5, $E4, $E3, $E2, $E1, $E0 db $DF, $DE, $DD, $DC, $DB, $DA, $D9, $D8 db $D7, $D6, $D5, $D4, $D3, $D2, $D1, $D0 db $CF, $CE, $CD, $CC, $CB, $CA, $C9, $C8 db $C7, $C6, $C5, $C4, $C3, $C2, $C1, $C0 db $BF, $BE, $BD, $BC, $BB, $BA, $B9, $B8 db $B7, $B6, $B5, $B4, $B3, $B2, $B1, $B0 db $AF, $AE, $AD, $AC, $AB, $AA, $A9, $A8 db $A7, $A6, $A5, $A4, $A3, $A2, $A1, $A0 db $9F, $9E, $9D, $9C, $9B, $9A, $99, $98 db $97, $96, $95, $94, $93, $92, $91, $90 db $8F, $8E, $8D, $8C, $8B, $8A, $89, $88 db $87, $86, $85, $84, $83, $82, $81, $80 db $7F, $7E, $7D, $7C, $7B, $7A, $79, $78 db $77, $76, $75, $74, $73, $72, $71, $70 db $6F, $6E, $6D, $6C, $6B, $6A, $69, $68 db $67, $66, $65, $64, $63, $62, $61, $60 db $5F, $5E, $5D, $5C, $5B, $5A, $59, $58 db $57, $56, $55, $54, $53, $52, $51, $50 db $4F, $4E, $4D, $4C, $4B, $4A, $49, $48 db $47, $46, $45, $44, $43, $42, $41, $40 db $3F, $3E, $3D, $3C, $3B, $3A, $39, $38 db $37, $36, $35, $34, $33, $32, $31, $30 db $2F, $2E, $2D, $2C, $2B, $2A, $29, $28 db $27, $26, $25, $24, $23, $22, $21, $20 db $1F, $1E, $1D, $1C, $1B, $1A, $19, $18 db $17, $16, $15, $14, $13, $12, $11, $10 db $0F, $0E, $0D, $0C, $0B, $0A, $09, $08 db $07, $06, $05, $04, $03, $02, $01 DATA_80E372: db $00, $01, $02, $03, $04, $05, $06, $07 db $08, $09, $0A, $0B, $0C, $0D, $0E, $0F db $10, $11, $12, $13, $14, $15, $16, $17 db $18, $19, $1A, $1B, $1C, $1D, $1E, $1F db $20, $21, $22, $23, $24, $25, $26, $27 db $28, $29, $2A, $2B, $2C, $2D, $2E, $2F db $30, $31, $32, $33, $34, $35, $36, $37 db $38, $39, $3A, $3B, $3C, $3D, $3E, $3F db $40, $41, $42, $43, $44, $45, $46, $47 db $48, $49, $4A, $4B, $4C, $4D, $4E, $4F db $50, $51, $52, $53, $54, $55, $56, $57 db $58, $59, $5A, $5B, $5C, $5D, $5E, $5F db $60, $61, $62, $63, $64, $65, $66, $67 db $68, $69, $6A, $6B, $6C, $6D, $6E, $6F db $70, $71, $72, $73, $74, $75, $76, $77 db $78, $79, $7A, $7B, $7C, $7D, $7E, $7F db $80, $81, $82, $83, $84, $85, $86, $87 db $88, $89, $8A, $8B, $8C, $8D, $8E, $8F db $90, $91, $92, $93, $94, $95, $96, $97 db $98, $99, $9A, $9B, $9C, $9D, $9E, $9F db $A0, $A1, $A2, $A3, $A4, $A5, $A6, $A7 db $A8, $A9, $AA, $AB, $AC, $AD, $AE, $AF db $B0, $B1, $B2, $B3, $B4, $B5, $B6, $B7 db $B8, $B9, $BA, $BB, $BC, $BD, $BE, $BF db $C0, $C1, $C2, $C3, $C4, $C5, $C6, $C7 db $C8, $C9, $CA, $CB, $CC, $CD, $CE, $CF db $D0, $D1, $D2, $D3, $D4, $D5, $D6, $D7 db $D8, $D9, $DA, $DB, $DC, $DD, $DE, $DF db $E0, $E1, $E2, $E3, $E4, $E5, $E6, $E7 db $E8, $E9, $EA, $EB, $EC, $ED, $EE, $EF db $F0, $F1, $F2, $F3, $F4, $F5, $F6, $F7 db $F8, $F9, $FA, $FB, $FC, $FD, $FE, $FF CODE_80E472: LDA $19BE ;$80E472 \ BEQ CODE_80E47B ;$80E475 | DEC $19BE ;$80E477 | CODE_80E47A: ; | RTS ;$80E47A / CODE_80E47B: BIT $0923 ;$80E47B \ BMI CODE_80E47A ;$80E47E | LDA $2A ;$80E480 | AND #$000F ;$80E482 | BNE CODE_80E47A ;$80E485 | SEP #$20 ;$80E487 | LDA $092E ;$80E489 | CMP $092D ;$80E48C | REP #$20 ;$80E48F | BCS CODE_80E47A ;$80E491 | DEC $19C0 ;$80E493 | BPL CODE_80E4B0 ;$80E496 | JSR CODE_808E53 ;$80E498 | AND #$007F ;$80E49B | CLC ;$80E49E | ADC #$00B4 ;$80E49F | STA $19BE ;$80E4A2 | JSR CODE_808E53 ;$80E4A5 | AND #$0003 ;$80E4A8 | INC A ;$80E4AB | INC A ;$80E4AC | STA $19C0 ;$80E4AD | CODE_80E4B0: ; | LDY #$005E ;$80E4B0 | JSL CODE_BB842C ;$80E4B3 | BCS CODE_80E47A ;$80E4B7 | INC $092E ;$80E4B9 | PHK ;$80E4BC | PLB ;$80E4BD | LDX $68 ;$80E4BE | LDA $092B ;$80E4C0 | STA $42,x ;$80E4C3 | TAY ;$80E4C5 | INC A ;$80E4C6 | AND #$000F ;$80E4C7 | STA $092B ;$80E4CA | LDA DATA_80E512,y ;$80E4CD | AND #$00FF ;$80E4D0 | STA $06,x ;$80E4D3 | JSR CODE_808E53 ;$80E4D5 | AND #$003F ;$80E4D8 | CLC ;$80E4DB | ADC #$0050 ;$80E4DC | STA $44,x ;$80E4DF | CLC ;$80E4E1 | ADC #$0020 ;$80E4E2 | STA $0A,x ;$80E4E5 | LDA #$FF00 ;$80E4E7 | STA $24,x ;$80E4EA | LDA $12,x ;$80E4EC | AND #$0E00 ;$80E4EE | XBA ;$80E4F1 | ASL A ;$80E4F2 | ASL A ;$80E4F3 | ASL A ;$80E4F4 | CLC ;$80E4F5 | ADC #$0080 ;$80E4F6 | STA $0929 ;$80E4F9 | JSR CODE_808E53 ;$80E4FC | LSR A ;$80E4FF | BCS CODE_80E50A ;$80E500 | LDA #$01BD ;$80E502 | JSL CODE_B9D09B ;$80E505 | RTS ;$80E509 / CODE_80E50A: LDA #$01BE ;$80E50A \ JSL CODE_B9D09B ;$80E50D | RTS ;$80E511 / DATA_80E512: db $50, $E0, $A0, $20, $70, $C0, $90, $10 db $40, $F0, $B0, $60, $30, $80, $C0, $A0 CODE_80E522: JSR CODE_80E52B ;$80E522 \ LDA $17BC ;$80E525 | STA $B8 ;$80E528 | RTL ;$80E52A / CODE_80E52B: LDA $17BA ;$80E52B \ LSR A ;$80E52E | LSR A ;$80E52F | CLC ;$80E530 | ADC $17BA ;$80E531 | TAY ;$80E534 | SEC ;$80E535 | SBC $17BC ;$80E536 | BCS CODE_80E550 ;$80E539 | CMP #$FFF8 ;$80E53B | BCS CODE_80E543 ;$80E53E | LDA #$FFF8 ;$80E540 | CODE_80E543: ; | CLC ;$80E543 | ADC $B8 ;$80E544 | CMP #$FF00 ;$80E546 | BCC CODE_80E55A ;$80E549 | LDA #$0000 ;$80E54B | BRA CODE_80E55A ;$80E54E / CODE_80E550: CMP #$0008 ;$80E550 \ BCC CODE_80E558 ;$80E553 | LDA #$0007 ;$80E555 | CODE_80E558: ; | ADC $B8 ;$80E558 | CODE_80E55A: ; | STA $B8 ;$80E55A | STA $B6 ;$80E55C | STY $17BC ;$80E55E | LDA $B7 ;$80E561 | AND #$00FF ;$80E563 | STA $4204 ;$80E566 | SEP #$20 ;$80E569 | LDA #$05 ;$80E56B | STA $4206 ;$80E56D | NOP ;$80E570 | NOP ;$80E571 | NOP ;$80E572 | NOP ;$80E573 | NOP ;$80E574 | NOP ;$80E575 | NOP ;$80E576 | NOP ;$80E577 | LDA $4216 ;$80E578 | STA $B7 ;$80E57B | REP #$20 ;$80E57D | RTS ;$80E57F / CODE_80E580: LDA $2A ;$80E580 \ LSR A ;$80E582 | STA $7E8013 ;$80E583 | LSR A ;$80E587 | STA $7E8016 ;$80E588 | LSR A ;$80E58C | LSR A ;$80E58D | STA $7E8019 ;$80E58E | LDA $17BA ;$80E592 | CLC ;$80E595 | ADC $2A ;$80E596 | STA $36 ;$80E598 | LSR A ;$80E59A | STA $32 ;$80E59B | LSR A ;$80E59D | CLC ;$80E59E | ADC $32 ;$80E59F | CLC ;$80E5A1 | ADC $36 ;$80E5A2 | SEC ;$80E5A4 | SBC #$2000 ;$80E5A5 | EOR #$FFFF ;$80E5A8 | STA $32 ;$80E5AB | LDA $35 ;$80E5AD | AND #$FF00 ;$80E5AF | LDX #$0100 ;$80E5B2 | CODE_80E5B5: ; | STA $7E802D,x ;$80E5B5 | ADC $32 ;$80E5B9 | STA $7E802B,x ;$80E5BB | ADC $32 ;$80E5BF | STA $7E8029,x ;$80E5C1 | ADC $32 ;$80E5C5 | STA $7E8027,x ;$80E5C7 | ADC $32 ;$80E5CB | STA $7E8025,x ;$80E5CD | ADC $32 ;$80E5D1 | STA $7E8023,x ;$80E5D3 | ADC $32 ;$80E5D7 | STA $7E8021,x ;$80E5D9 | ADC $32 ;$80E5DD | STA $7E801F,x ;$80E5DF | ADC $32 ;$80E5E3 | TAY ;$80E5E5 | TXA ;$80E5E6 | SEC ;$80E5E7 | SBC #$0010 ;$80E5E8 | TAX ;$80E5EB | TYA ;$80E5EC | CPX #$0000 ;$80E5ED | BPL CODE_80E5B5 ;$80E5F0 | PEA $807E ;$80E5F2 | PLB ;$80E5F5 | LDA.l $00002A ;$80E5F6 | LSR A ;$80E5FA | AND #$000E ;$80E5FB | CLC ;$80E5FE | ADC #$0090 ;$80E5FF | CODE_80E602: ; | TAX ;$80E602 | INC $807E,x ;$80E603 | INC $8080,x ;$80E606 | INC $8082,x ;$80E609 | INC $8082,x ;$80E60C | INC $8084,x ;$80E60F | INC $8084,x ;$80E612 | INC $8086,x ;$80E615 | INC $8088,x ;$80E618 | TXA ;$80E61B | SEC ;$80E61C | SBC #$0010 ;$80E61D | BPL CODE_80E602 ;$80E620 | TXA ;$80E622 | CLC ;$80E623 | ADC #$0050 ;$80E624 | CODE_80E627: ; | TAX ;$80E627 | INC $801E,x ;$80E628 | INC $8020,x ;$80E62B | INC $8022,x ;$80E62E | INC $8024,x ;$80E631 | TXA ;$80E634 | SEC ;$80E635 | SBC #$0010 ;$80E636 | BPL CODE_80E627 ;$80E639 | PLB ;$80E63B | RTS ;$80E63C / CODE_80E63D: PEA $807E ;$80E63D \ PLB ;$80E640 | JSR CODE_80ECE5 ;$80E641 | PLB ;$80E644 | RTS ;$80E645 / CODE_80E646: PEA $807E ;$80E646 \ PLB ;$80E649 | JSR CODE_80ECE5 ;$80E64A | PLB ;$80E64D | CODE_80E64E: ; | PEA $807E ;$80E64E | PLB ;$80E651 | LDA $17BA ;$80E652 | LSR A ;$80E655 | STA $004204 ;$80E656 | SEP #$20 ;$80E65A | LDA #$B2 ;$80E65C | STA $004206 ;$80E65E | REP #$20 ;$80E662 | NOP ;$80E664 | NOP ;$80E665 | NOP ;$80E666 | NOP ;$80E667 | NOP ;$80E668 | LDA.l $004216 ;$80E669 | STA $34 ;$80E66D | XBA ;$80E66F | AND #$FF00 ;$80E670 | LSR A ;$80E673 | LSR A ;$80E674 | CLC ;$80E675 | ADC $33 ;$80E676 | XBA ;$80E678 | AND #$00FF ;$80E679 | SEC ;$80E67C | SBC #$0074 ;$80E67D | EOR #$FFFF ;$80E680 | STA $32 ;$80E683 | LDA $33 ;$80E685 | AND #$FF00 ;$80E687 | LDX #$0060 ;$80E68A | CODE_80E68D: ; | STA $8070,x ;$80E68D | ADC $32 ;$80E690 | STA $806F,x ;$80E692 | ADC $32 ;$80E695 | STA $806E,x ;$80E697 | ADC $32 ;$80E69A | STA $806D,x ;$80E69C | ADC $32 ;$80E69F | STA $806C,x ;$80E6A1 | ADC $32 ;$80E6A4 | STA $806B,x ;$80E6A6 | ADC $32 ;$80E6A9 | STA $806A,x ;$80E6AB | ADC $32 ;$80E6AE | STA $8069,x ;$80E6B0 | ADC $32 ;$80E6B3 | STA $8068,x ;$80E6B5 | ADC $32 ;$80E6B8 | STA $8067,x ;$80E6BA | ADC $32 ;$80E6BD | STA $8066,x ;$80E6BF | ADC $32 ;$80E6C2 | STA $8065,x ;$80E6C4 | ADC $32 ;$80E6C7 | TAY ;$80E6C9 | TXA ;$80E6CA | SEC ;$80E6CB | SBC #$000C ;$80E6CC | TAX ;$80E6CF | TYA ;$80E6D0 | CPX #$0000 ;$80E6D1 | BNE CODE_80E68D ;$80E6D4 | LDY #$005E ;$80E6D6 | LDX #$8072 ;$80E6D9 | CODE_80E6DC: ; | LDA $0000,x ;$80E6DC | XBA ;$80E6DF | STA $8012,y ;$80E6E0 | LDA $0002,x ;$80E6E3 | XBA ;$80E6E6 | STA $8010,y ;$80E6E7 | LDA $0004,x ;$80E6EA | XBA ;$80E6ED | STA $800E,y ;$80E6EE | LDA $0006,x ;$80E6F1 | XBA ;$80E6F4 | STA $800C,y ;$80E6F5 | LDA $0008,x ;$80E6F8 | XBA ;$80E6FB | STA $800A,y ;$80E6FC | LDA $000A,x ;$80E6FF | XBA ;$80E702 | STA $8008,y ;$80E703 | LDA $000C,x ;$80E706 | XBA ;$80E709 | STA $8006,y ;$80E70A | LDA $000E,x ;$80E70D | XBA ;$80E710 | STA $8004,y ;$80E711 | LDA $0010,x ;$80E714 | XBA ;$80E717 | STA $8002,y ;$80E718 | LDA $0012,x ;$80E71B | XBA ;$80E71E | STA $8000,y ;$80E71F | LDA $0014,x ;$80E722 | XBA ;$80E725 | STA $7FFE,y ;$80E726 | LDA $0016,x ;$80E729 | XBA ;$80E72C | STA $7FFC,y ;$80E72D | LDA $0018,x ;$80E730 | XBA ;$80E733 | STA $7FFA,y ;$80E734 | LDA $001A,x ;$80E737 | XBA ;$80E73A | STA $7FF8,y ;$80E73B | LDA $001C,x ;$80E73E | XBA ;$80E741 | STA $7FF6,y ;$80E742 | LDA $001E,x ;$80E745 | XBA ;$80E748 | STA $7FF4,y ;$80E749 | TXA ;$80E74C | CLC ;$80E74D | ADC #$0020 ;$80E74E | TAX ;$80E751 | TYA ;$80E752 | SEC ;$80E753 | SBC #$0020 ;$80E754 | TAY ;$80E757 | BPL CODE_80E6DC ;$80E758 | LDA $17B8 ;$80E75A | STA $36 ;$80E75D | LDA $17BA ;$80E75F | LSR A ;$80E762 | ROR $36 ;$80E763 | LSR A ;$80E765 | ROR $36 ;$80E766 | STA $004204 ;$80E768 | SEP #$20 ;$80E76C | LDA #$B2 ;$80E76E | STA $004206 ;$80E770 | REP #$20 ;$80E774 | NOP ;$80E776 | NOP ;$80E777 | NOP ;$80E778 | NOP ;$80E779 | NOP ;$80E77A | SEP #$20 ;$80E77B | LDA.l $004216 ;$80E77D | XBA ;$80E781 | LDA $37 ;$80E782 | REP #$20 ;$80E784 | STA $34 ;$80E786 | LSR A ;$80E788 | LSR A ;$80E789 | LSR A ;$80E78A | LSR A ;$80E78B | STA $32 ;$80E78C | LSR A ;$80E78E | LSR A ;$80E78F | CLC ;$80E790 | ADC $32 ;$80E791 | CLC ;$80E793 | ADC $34 ;$80E794 | XBA ;$80E796 | AND #$00FF ;$80E797 | CLC ;$80E79A | ADC #$0004 ;$80E79B | STA $3E ;$80E79E | STA $40 ;$80E7A0 | LDA $17C0 ;$80E7A2 | CLC ;$80E7A5 | ADC #$0080 ;$80E7A6 | LSR A ;$80E7A9 | STA $004204 ;$80E7AA | SEP #$20 ;$80E7AE | LDA #$D0 ;$80E7B0 | STA $004206 ;$80E7B2 | REP #$20 ;$80E7B6 | NOP ;$80E7B8 | NOP ;$80E7B9 | NOP ;$80E7BA | NOP ;$80E7BB | NOP ;$80E7BC | LDA.l $004216 ;$80E7BD | SEC ;$80E7C1 | SBC #$0075 ;$80E7C2 | STA $74 ;$80E7C5 | LDA.l $004214 ;$80E7C7 | AND #$0001 ;$80E7CB | ASL A ;$80E7CE | TAX ;$80E7CF | LDA $3E,x ;$80E7D0 | CLC ;$80E7D2 | ADC #$0030 ;$80E7D3 | STA $3E,x ;$80E7D6 | STZ $B4 ;$80E7D8 | STZ $3C ;$80E7DA | LDX #$0000 ;$80E7DC | TXY ;$80E7DF | LDA $2A ;$80E7E0 | AND #$0001 ;$80E7E2 | BEQ CODE_80E7ED ;$80E7E5 | LDX #$0160 ;$80E7E7 | LDY #$0010 ;$80E7EA | CODE_80E7ED: ; | STY $3C ;$80E7ED | LDA $74 ;$80E7EF | BPL CODE_80E86F ;$80E7F1 | EOR #$FFFF ;$80E7F3 | INC A ;$80E7F6 | CMP #$0021 ;$80E7F7 | BCC CODE_80E846 ;$80E7FA | LDY $3C ;$80E7FC | SBC #$0020 ;$80E7FE | STA $8552,x ;$80E801 | STA $B4 ;$80E804 | SEP #$20 ;$80E806 | STA $8812,y ;$80E808 | LDA #$79 ;$80E80B | STA $8813,y ;$80E80D | REP #$20 ;$80E810 | INY ;$80E812 | INY ;$80E813 | STY $3C ;$80E814 | LDA $40 ;$80E816 | STA $8553,x ;$80E818 | LDA $74 ;$80E81B | EOR #$FFFF ;$80E81D | INC A ;$80E820 | SEP #$20 ;$80E821 | STA $004202 ;$80E823 | LDA #$8B ;$80E827 | STA $004203 ;$80E829 | NOP ;$80E82D | NOP ;$80E82E | LDA #$3E ;$80E82F | SEC ;$80E831 | SBC $004217 ;$80E832 | REP #$20 ;$80E836 | AND #$00FF ;$80E838 | STA $8555,x ;$80E83B | INX ;$80E83E | INX ;$80E83F | INX ;$80E840 | INX ;$80E841 | INX ;$80E842 | LDA #$0020 ;$80E843 | CODE_80E846: ; | STA $8552,x ;$80E846 | CLC ;$80E849 | ADC $B4 ;$80E84A | STA $B4 ;$80E84C | LDA $8012 ;$80E84E | AND #$00FF ;$80E851 | STA $32 ;$80E854 | LSR A ;$80E856 | LSR A ;$80E857 | LSR A ;$80E858 | LSR A ;$80E859 | LSR A ;$80E85A | CLC ;$80E85B | ADC $32 ;$80E85C | STA $8553,x ;$80E85E | LDA $74 ;$80E861 | CLC ;$80E863 | ADC #$00DF ;$80E864 | STA $8555,x ;$80E867 | INX ;$80E86A | INX ;$80E86B | INX ;$80E86C | INX ;$80E86D | INX ;$80E86E | CODE_80E86F: ; | LDA $B4 ;$80E86F | STA $3A ;$80E871 | SEP #$20 ;$80E873 | LDA $74 ;$80E875 | BMI CODE_80E88C ;$80E877 | STA $004202 ;$80E879 | LDA #$76 ;$80E87D | STA $004203 ;$80E87F | LDA #$32 ;$80E883 | CLC ;$80E885 | ADC $004217 ;$80E886 | BRA CODE_80E8A0 ;$80E88A / CODE_80E88C: EOR #$FF ;$80E88C \ INC A ;$80E88E | STA $004202 ;$80E88F | LDA #$76 ;$80E893 | STA $004203 ;$80E895 | LDA #$31 ;$80E899 | SEC ;$80E89B | SBC $004217 ;$80E89C | CODE_80E8A0: ; | REP #$20 ;$80E8A0 | AND #$00FF ;$80E8A2 | BIT #$0080 ;$80E8A5 | BEQ CODE_80E8AD ;$80E8A8 | ORA #$FF00 ;$80E8AA | CODE_80E8AD: ; | STA $7A ;$80E8AD | DEC A ;$80E8AF | CMP #$0080 ;$80E8B0 | BCC CODE_80E90C ;$80E8B3 | SEC ;$80E8B5 | ADC #$0060 ;$80E8B6 | STA $8552,x ;$80E8B9 | CLC ;$80E8BC | ADC $B4 ;$80E8BD | LDA $3E ;$80E8BF | STA $8553,x ;$80E8C1 | LDA $B4 ;$80E8C4 | CLC ;$80E8C6 | ADC $7A ;$80E8C7 | EOR #$FFFF ;$80E8C9 | STA $8555,x ;$80E8CC | INX ;$80E8CF | INX ;$80E8D0 | INX ;$80E8D1 | INX ;$80E8D2 | INX ;$80E8D3 | SEP #$20 ;$80E8D4 | LDA $74 ;$80E8D6 | SEC ;$80E8D8 | SBC #$E0 ;$80E8D9 | BMI CODE_80E8DF ;$80E8DB | LDA #$00 ;$80E8DD | CODE_80E8DF: ; | CLC ;$80E8DF | ADC $B4 ;$80E8E0 | LDY $3C ;$80E8E2 | STA $8812,y ;$80E8E4 | LDA #$71 ;$80E8E7 | STA $8813,y ;$80E8E9 | LDA $7A ;$80E8EC | CLC ;$80E8EE | ADC #$60 ;$80E8EF | STA $8814,y ;$80E8F1 | CLC ;$80E8F4 | ADC $B4 ;$80E8F5 | LDA #$79 ;$80E8F7 | STA $8815,y ;$80E8F9 | REP #$20 ;$80E8FC | LDA $854D,x ;$80E8FE | AND #$00FF ;$80E901 | CLC ;$80E904 | ADC $B4 ;$80E905 | STA $B4 ;$80E907 | JMP CODE_80EA20 ;$80E909 / CODE_80E90C: LDA $74 ;$80E90C \ BPL CODE_80E913 ;$80E90E | LDA #$0000 ;$80E910 | CODE_80E913: ; | EOR #$FFFF ;$80E913 | INC A ;$80E916 | CLC ;$80E917 | ADC $7A ;$80E918 | STA $38 ;$80E91A | ORA #$0080 ;$80E91C | STA $8552,x ;$80E91F | INX ;$80E922 | AND #$007F ;$80E923 | CLC ;$80E926 | ADC $B4 ;$80E927 | STA $B4 ;$80E929 | LDA #$005F ;$80E92B | SEC ;$80E92E | SBC $7A ;$80E92F | BPL CODE_80E954 ;$80E931 | EOR #$FFFF ;$80E933 | INC A ;$80E936 | XBA ;$80E937 | STA $4204 ;$80E938 | SEP #$20 ;$80E93B | LDA $7A ;$80E93D | STA $004206 ;$80E93F | REP #$20 ;$80E943 | NOP ;$80E945 | NOP ;$80E946 | NOP ;$80E947 | NOP ;$80E948 | NOP ;$80E949 | LDA.l $004214 ;$80E94A | EOR #$FFFF ;$80E94E | INC A ;$80E951 | BRA CODE_80E96C ;$80E952 / CODE_80E954: XBA ;$80E954 \ STA $004204 ;$80E955 | SEP #$20 ;$80E959 | LDA $7A ;$80E95B | STA $004206 ;$80E95D | REP #$20 ;$80E961 | NOP ;$80E963 | NOP ;$80E964 | NOP ;$80E965 | NOP ;$80E966 | NOP ;$80E967 | LDA.l $004214 ;$80E968 | CODE_80E96C: ; | STA $32 ;$80E96C | LDA $74 ;$80E96E | BMI CODE_80E989 ;$80E970 | SEP #$20 ;$80E972 | LDA $74 ;$80E974 | STA $004202 ;$80E976 | LDA $32 ;$80E97A | STA $004203 ;$80E97C | REP #$20 ;$80E980 | LDA $74 ;$80E982 | SEC ;$80E984 | ADC $004217 ;$80E985 | CODE_80E989: ; | TAY ;$80E989 | JSR CODE_80EBB2 ;$80E98A | LDA #$004F ;$80E98D | SEC ;$80E990 | SBC $7A ;$80E991 | BPL CODE_80E9DC ;$80E993 | SEC ;$80E995 | ADC #$0060 ;$80E996 | STA $8552,x ;$80E999 | LDA $3E ;$80E99C | STA $8553,x ;$80E99E | LDA $B4 ;$80E9A1 | EOR #$FFFF ;$80E9A3 | STA $8555,x ;$80E9A6 | INX ;$80E9A9 | INX ;$80E9AA | INX ;$80E9AB | INX ;$80E9AC | INX ;$80E9AD | SEP #$20 ;$80E9AE | LDA $B4 ;$80E9B0 | LDY $3C ;$80E9B2 | STA $8812,y ;$80E9B4 | LDA #$71 ;$80E9B7 | STA $8813,y ;$80E9B9 | LDA $854D,x ;$80E9BC | STA $8814,y ;$80E9BF | LDA #$79 ;$80E9C2 | STA $8815,y ;$80E9C4 | REP #$20 ;$80E9C7 | LDA $854D,x ;$80E9C9 | CLC ;$80E9CC | ADC $B4 ;$80E9CD | STA $B4 ;$80E9CF | LDA #$0050 ;$80E9D1 | SEC ;$80E9D4 | SBC $7A ;$80E9D5 | STA $7A ;$80E9D7 | JMP CODE_80EAA1 ;$80E9D9 / CODE_80E9DC: LDA #$0060 ;$80E9DC \ STA $8552,x ;$80E9DF | LDA $3E ;$80E9E2 | STA $8553,x ;$80E9E4 | LDA $B4 ;$80E9E7 | EOR #$FFFF ;$80E9E9 | STA $8555,x ;$80E9EC | INX ;$80E9EF | INX ;$80E9F0 | INX ;$80E9F1 | INX ;$80E9F2 | INX ;$80E9F3 | SEP #$20 ;$80E9F4 | LDA $74 ;$80E9F6 | SEC ;$80E9F8 | SBC #$E0 ;$80E9F9 | BMI CODE_80E9FF ;$80E9FB | LDA #$00 ;$80E9FD | CODE_80E9FF: ; | CLC ;$80E9FF | ADC $B4 ;$80EA00 | LDY $3C ;$80EA02 | STA $8812,y ;$80EA04 | LDA #$71 ;$80EA07 | STA $8813,y ;$80EA09 | LDA #$60 ;$80EA0C | STA $8814,y ;$80EA0E | LDA #$79 ;$80EA11 | STA $8815,y ;$80EA13 | REP #$20 ;$80EA16 | LDA #$0060 ;$80EA18 | CLC ;$80EA1B | ADC $B4 ;$80EA1C | STA $B4 ;$80EA1E | CODE_80EA20: ; | LDA #$0050 ;$80EA20 | SEC ;$80EA23 | SBC $7A ;$80EA24 | STA $7A ;$80EA26 | STA $38 ;$80EA28 | ORA #$0080 ;$80EA2A | STA $8552,x ;$80EA2D | INX ;$80EA30 | LDA #$0060 ;$80EA31 | SEC ;$80EA34 | SBC $7A ;$80EA35 | BPL CODE_80EA5B ;$80EA37 | EOR #$FFFF ;$80EA39 | INC A ;$80EA3C | XBA ;$80EA3D | STA $004204 ;$80EA3E | SEP #$20 ;$80EA42 | LDA $7A ;$80EA44 | STA $004206 ;$80EA46 | REP #$20 ;$80EA4A | NOP ;$80EA4C | NOP ;$80EA4D | NOP ;$80EA4E | NOP ;$80EA4F | NOP ;$80EA50 | LDA.l $004214 ;$80EA51 | EOR #$FFFF ;$80EA55 | INC A ;$80EA58 | BRA CODE_80EA73 ;$80EA59 / CODE_80EA5B: XBA ;$80EA5B \ STA $004204 ;$80EA5C | SEP #$20 ;$80EA60 | LDA $7A ;$80EA62 | STA $004206 ;$80EA64 | REP #$20 ;$80EA68 | NOP ;$80EA6A | NOP ;$80EA6B | NOP ;$80EA6C | NOP ;$80EA6D | NOP ;$80EA6E | LDA.l $004214 ;$80EA6F | CODE_80EA73: ; | STA $32 ;$80EA73 | LDA $B4 ;$80EA75 | STA $3A ;$80EA77 | LDA $B4 ;$80EA79 | EOR #$FFFF ;$80EA7B | SEC ;$80EA7E | ADC #$0060 ;$80EA7F | TAY ;$80EA82 | LDA $B4 ;$80EA83 | CLC ;$80EA85 | ADC $38 ;$80EA86 | CMP #$00E0 ;$80EA88 | BCC CODE_80EA97 ;$80EA8B | LDA #$00E0 ;$80EA8D | SEC ;$80EA90 | SBC $B4 ;$80EA91 | BMI CODE_80EAA1 ;$80EA93 | STA $38 ;$80EA95 | CODE_80EA97: ; | LDA $B4 ;$80EA97 | CLC ;$80EA99 | ADC $38 ;$80EA9A | STA $B4 ;$80EA9C | JSR CODE_80EBB2 ;$80EA9E | CODE_80EAA1: ; | LDA #$0020 ;$80EAA1 | STA $8552,x ;$80EAA4 | CLC ;$80EAA7 | ADC $B4 ;$80EAA8 | STA $B4 ;$80EAAA | LDA $8012 ;$80EAAC | AND #$00FF ;$80EAAF | STA $32 ;$80EAB2 | LSR A ;$80EAB4 | LSR A ;$80EAB5 | LSR A ;$80EAB6 | LSR A ;$80EAB7 | LSR A ;$80EAB8 | CLC ;$80EAB9 | ADC $32 ;$80EABA | STA $8553,x ;$80EABC | LDA $74 ;$80EABF | CLC ;$80EAC1 | ADC #$000F ;$80EAC2 | STA $8555,x ;$80EAC5 | LDA $7A ;$80EAC8 | BMI CODE_80EACF ;$80EACA | LDA #$0000 ;$80EACC | CODE_80EACF: ; | EOR #$00FF ;$80EACF | INC A ;$80EAD2 | CLC ;$80EAD3 | ADC #$0050 ;$80EAD4 | STA $8557,x ;$80EAD7 | LDA $40 ;$80EADA | STA $8558,x ;$80EADC | LDA $7A ;$80EADF | SEC ;$80EAE1 | SBC $B4 ;$80EAE2 | CLC ;$80EAE4 | ADC #$000F ;$80EAE5 | STA $855A,x ;$80EAE8 | SEP #$20 ;$80EAEB | LDA $7A ;$80EAED | BPL CODE_80EAF3 ;$80EAEF | LDA #$00 ;$80EAF1 | CODE_80EAF3: ; | CLC ;$80EAF3 | ADC #$20 ;$80EAF4 | LDY $3C ;$80EAF6 | STA $8816,y ;$80EAF8 | LDA #$71 ;$80EAFB | STA $8817,y ;$80EAFD | LDA $7A ;$80EB00 | BMI CODE_80EB06 ;$80EB02 | LDA #$00 ;$80EB04 | CODE_80EB06: ; | EOR #$FF ;$80EB06 | INC A ;$80EB08 | CLC ;$80EB09 | ADC #$50 ;$80EB0A | STA $8818,y ;$80EB0C | LDA #$79 ;$80EB0F | STA $8819,y ;$80EB11 | LDA #$01 ;$80EB14 | STA $881A,y ;$80EB16 | LDA #$71 ;$80EB19 | STA $881B,y ;$80EB1B | LDA #$00 ;$80EB1E | STA $881C,y ;$80EB20 | REP #$20 ;$80EB23 | LDA $8818,y ;$80EB25 | CLC ;$80EB28 | ADC $B4 ;$80EB29 | AND #$00FF ;$80EB2B | STA $B4 ;$80EB2E | LDA $B4 ;$80EB30 | CMP #$00E0 ;$80EB32 | BCS CODE_80EB42 ;$80EB35 | LDA $74 ;$80EB37 | SEC ;$80EB39 | SBC #$0040 ;$80EB3A | CMP #$001C ;$80EB3D | BCC CODE_80EB45 ;$80EB40 | CODE_80EB42: ; | JMP CODE_80EBB0 ;$80EB42 / CODE_80EB45: LDA $B4 ;$80EB45 \ AND #$00FF ;$80EB47 | STA $B4 ;$80EB4A | TXA ;$80EB4C | CLC ;$80EB4D | ADC #$000A ;$80EB4E | TAX ;$80EB51 | LDA #$005F ;$80EB52 | CLC ;$80EB55 | ADC $7A ;$80EB56 | STA $7A ;$80EB58 | STA $38 ;$80EB5A | ORA #$0080 ;$80EB5C | STA $8552,x ;$80EB5F | INX ;$80EB62 | LDA #$0060 ;$80EB63 | SEC ;$80EB66 | SBC $7A ;$80EB67 | XBA ;$80EB69 | STA $004204 ;$80EB6A | SEP #$20 ;$80EB6E | LDA $7A ;$80EB70 | STA $004206 ;$80EB72 | REP #$20 ;$80EB76 | NOP ;$80EB78 | NOP ;$80EB79 | NOP ;$80EB7A | NOP ;$80EB7B | NOP ;$80EB7C | LDA.l $004214 ;$80EB7D | STA $32 ;$80EB81 | LDA $B4 ;$80EB83 | STA $3A ;$80EB85 | LDA $B4 ;$80EB87 | EOR #$FFFF ;$80EB89 | SEC ;$80EB8C | ADC #$0060 ;$80EB8D | TAY ;$80EB90 | LDA $B4 ;$80EB91 | CLC ;$80EB93 | ADC $38 ;$80EB94 | CMP #$00E0 ;$80EB96 | BCC CODE_80EBA3 ;$80EB99 | LDA #$00E0 ;$80EB9B | SEC ;$80EB9E | SBC $B4 ;$80EB9F | STA $38 ;$80EBA1 | CODE_80EBA3: ; | LDA $B4 ;$80EBA3 | AND #$00FF ;$80EBA5 | CLC ;$80EBA8 | ADC $38 ;$80EBA9 | STA $B4 ;$80EBAB | JSR CODE_80EBB2 ;$80EBAD | CODE_80EBB0: ; | PLB ;$80EBB0 | RTS ;$80EBB1 / CODE_80EBB2: TSC ;$80EBB2 \ STA $36 ;$80EBB3 | TYA ;$80EBB5 | XBA ;$80EBB6 | TCS ;$80EBB7 | LDA $38 ;$80EBB8 | CMP #$0008 ;$80EBBA | BCS CODE_80EBC2 ;$80EBBD | JMP CODE_80ECBD ;$80EBBF / CODE_80EBC2: TSC ;$80EBC2 \ XBA ;$80EBC3 | AND #$00FF ;$80EBC4 | STA $8554,x ;$80EBC7 | ADC $3A ;$80EBCA | AND #$00FF ;$80EBCC | TAY ;$80EBCF | LDA $8012,y ;$80EBD0 | AND #$00FF ;$80EBD3 | STA $8552,x ;$80EBD6 | INC $3A ;$80EBD9 | TSC ;$80EBDB | ADC $32 ;$80EBDC | TCS ;$80EBDE | XBA ;$80EBDF | AND #$00FF ;$80EBE0 | STA $8558,x ;$80EBE3 | ADC $3A ;$80EBE6 | AND #$00FF ;$80EBE8 | TAY ;$80EBEB | LDA $8012,y ;$80EBEC | AND #$00FF ;$80EBEF | STA $8556,x ;$80EBF2 | INC $3A ;$80EBF5 | TSC ;$80EBF7 | ADC $32 ;$80EBF8 | TCS ;$80EBFA | XBA ;$80EBFB | AND #$00FF ;$80EBFC | STA $855C,x ;$80EBFF | ADC $3A ;$80EC02 | AND #$00FF ;$80EC04 | TAY ;$80EC07 | LDA $8012,y ;$80EC08 | AND #$00FF ;$80EC0B | STA $855A,x ;$80EC0E | INC $3A ;$80EC11 | TSC ;$80EC13 | ADC $32 ;$80EC14 | TCS ;$80EC16 | XBA ;$80EC17 | AND #$00FF ;$80EC18 | STA $8560,x ;$80EC1B | ADC $3A ;$80EC1E | AND #$00FF ;$80EC20 | TAY ;$80EC23 | LDA $8012,y ;$80EC24 | AND #$00FF ;$80EC27 | STA $855E,x ;$80EC2A | INC $3A ;$80EC2D | TSC ;$80EC2F | ADC $32 ;$80EC30 | TCS ;$80EC32 | XBA ;$80EC33 | AND #$00FF ;$80EC34 | STA $8564,x ;$80EC37 | ADC $3A ;$80EC3A | AND #$00FF ;$80EC3C | TAY ;$80EC3F | LDA $8012,y ;$80EC40 | AND #$00FF ;$80EC43 | STA $8562,x ;$80EC46 | INC $3A ;$80EC49 | TSC ;$80EC4B | ADC $32 ;$80EC4C | TCS ;$80EC4E | XBA ;$80EC4F | AND #$00FF ;$80EC50 | STA $8568,x ;$80EC53 | ADC $3A ;$80EC56 | AND #$00FF ;$80EC58 | TAY ;$80EC5B | LDA $8012,y ;$80EC5C | AND #$00FF ;$80EC5F | STA $8566,x ;$80EC62 | INC $3A ;$80EC65 | TSC ;$80EC67 | ADC $32 ;$80EC68 | TCS ;$80EC6A | XBA ;$80EC6B | AND #$00FF ;$80EC6C | STA $856C,x ;$80EC6F | ADC $3A ;$80EC72 | AND #$00FF ;$80EC74 | TAY ;$80EC77 | LDA $8012,y ;$80EC78 | AND #$00FF ;$80EC7B | STA $856A,x ;$80EC7E | INC $3A ;$80EC81 | TSC ;$80EC83 | ADC $32 ;$80EC84 | TCS ;$80EC86 | XBA ;$80EC87 | AND #$00FF ;$80EC88 | STA $8570,x ;$80EC8B | ADC $3A ;$80EC8E | AND #$00FF ;$80EC90 | TAY ;$80EC93 | LDA $8012,y ;$80EC94 | AND #$00FF ;$80EC97 | STA $856E,x ;$80EC9A | INC $3A ;$80EC9D | TSC ;$80EC9F | ADC $32 ;$80ECA0 | TCS ;$80ECA2 | TXA ;$80ECA3 | CLC ;$80ECA4 | ADC #$0020 ;$80ECA5 | TAX ;$80ECA8 | TSC ;$80ECA9 | LDA $38 ;$80ECAA | SEC ;$80ECAC | SBC #$0008 ;$80ECAD | STA $38 ;$80ECB0 | BEQ CODE_80ECE1 ;$80ECB2 | CMP #$0008 ;$80ECB4 | BCC CODE_80ECBC ;$80ECB7 | JMP CODE_80EBC2 ;$80ECB9 / CODE_80ECBC: TSC ;$80ECBC \ CODE_80ECBD: ; | XBA ;$80ECBD | AND #$00FF ;$80ECBE | STA $8554,x ;$80ECC1 | ADC $3A ;$80ECC4 | AND #$00FF ;$80ECC6 | TAY ;$80ECC9 | LDA $8012,y ;$80ECCA | AND #$00FF ;$80ECCD | STA $8552,x ;$80ECD0 | INC $3A ;$80ECD3 | TSC ;$80ECD5 | ADC $32 ;$80ECD6 | TCS ;$80ECD8 | INX ;$80ECD9 | INX ;$80ECDA | INX ;$80ECDB | INX ;$80ECDC | DEC $38 ;$80ECDD | BNE CODE_80ECBD ;$80ECDF | CODE_80ECE1: ; | LDA $36 ;$80ECE1 | TCS ;$80ECE3 | RTS ;$80ECE4 / CODE_80ECE5: LDA $0D4E ;$80ECE5 \ SEC ;$80ECE8 | SBC $17C0 ;$80ECE9 | CLC ;$80ECEC | STA $32 ;$80ECED | SEC ;$80ECEF | SBC #$0078 ;$80ECF0 | STA $34 ;$80ECF3 | CMP #$8000 ;$80ECF5 | ROR A ;$80ECF8 | CMP #$8000 ;$80ECF9 | ROR A ;$80ECFC | CLC ;$80ECFD | ADC $34 ;$80ECFE | CLC ;$80ED00 | ADC #$0078 ;$80ED01 | STA $34 ;$80ED04 | LDA $32 ;$80ED06 | SEC ;$80ED08 | SBC #$0078 ;$80ED09 | CMP #$8000 ;$80ED0C | ROR A ;$80ED0F | CMP #$8000 ;$80ED10 | ROR A ;$80ED13 | CLC ;$80ED14 | ADC #$0078 ;$80ED15 | STA $36 ;$80ED18 | CMP #$0078 ;$80ED1A | BEQ CODE_80ED24 ;$80ED1D | BMI CODE_80ED99 ;$80ED1F | JMP CODE_80EF39 ;$80ED21 / CODE_80ED24: SEP #$20 ;$80ED24 \ LDA $34 ;$80ED26 | STA $80E2 ;$80ED28 | STA $8832 ;$80ED2B | ORA #$80 ;$80ED2E | STA $884B ;$80ED30 | LDA #$13 ;$80ED33 | STA $80E3 ;$80ED35 | LDA #$04 ;$80ED38 | STA $80E4 ;$80ED3A | STA $80E5 ;$80ED3D | STA $80E6 ;$80ED40 | STA $8835 ;$80ED43 | STA $884E ;$80ED46 | LDA #$00 ;$80ED49 | STA $80E7 ;$80ED4B | STA $80E8 ;$80ED4E | STA $883B ;$80ED51 | STA $8854 ;$80ED54 | LDA #$60 ;$80ED57 | STA $8833 ;$80ED59 | LDA #$5C ;$80ED5C | SEC ;$80ED5E | SBC $34 ;$80ED5F | STA $8836 ;$80ED61 | LDA #$01 ;$80ED64 | STA $8838 ;$80ED66 | LDA #$80 ;$80ED69 | STA $8839 ;$80ED6B | STA $8852 ;$80ED6E | INC A ;$80ED71 | STA $8851 ;$80ED72 | REP #$20 ;$80ED75 | LDA #$80F2 ;$80ED77 | STA $884C ;$80ED7A | LDA #$80F3 ;$80ED7D | STA $884F ;$80ED80 | LDA $2A ;$80ED83 | CLC ;$80ED85 | ADC $17BA ;$80ED86 | LSR A ;$80ED89 | LSR A ;$80ED8A | CLC ;$80ED8B | ADC $17BA ;$80ED8C | AND #$00FF ;$80ED8F | XBA ;$80ED92 | STA $80F3 ;$80ED93 | JMP CODE_80EEBC ;$80ED96 / CODE_80ED99: LDA $32 ;$80ED99 \ BPL CODE_80EDA3 ;$80ED9B | STZ $32 ;$80ED9D | STZ $34 ;$80ED9F | STZ $36 ;$80EDA1 | CODE_80EDA3: ; | SEP #$20 ;$80EDA3 | LDA $34 ;$80EDA5 | BEQ CODE_80EDAE ;$80EDA7 | BMI CODE_80EDAE ;$80EDA9 | JMP CODE_80EE18 ;$80EDAB / CODE_80EDAE: LDA #$00 ;$80EDAE \ STA $8864 ;$80EDB0 | LDA $32 ;$80EDB3 | STA $80E2 ;$80EDB5 | LDA #$04 ;$80EDB8 | STA $80E3 ;$80EDBA | STA $80E4 ;$80EDBD | LDA #$00 ;$80EDC0 | STA $80E5 ;$80EDC2 | STA $80E6 ;$80EDC5 | REP #$20 ;$80EDC8 | LDA $32 ;$80EDCA | CLC ;$80EDCC | ADC #$0004 ;$80EDCD | STA $8832 ;$80EDD0 | LDA #$0020 ;$80EDD3 | SEC ;$80EDD6 | SBC $34 ;$80EDD7 | STA $8833 ;$80EDD9 | LDA #$0001 ;$80EDDC | STA $8835 ;$80EDDF | LDA #$0080 ;$80EDE2 | STA $8836 ;$80EDE5 | LDA #$0000 ;$80EDE8 | STA $8838 ;$80EDEB | LDA $32 ;$80EDEE | CLC ;$80EDF0 | ADC #$0084 ;$80EDF1 | STA $884B ;$80EDF4 | LDA $34 ;$80EDF7 | EOR #$FFFF ;$80EDF9 | INC A ;$80EDFC | ASL A ;$80EDFD | CLC ;$80EDFE | ADC #$80FB ;$80EDFF | STA $884C ;$80EE02 | LDA #$0081 ;$80EE05 | STA $884E ;$80EE08 | DEC A ;$80EE0B | STA $884F ;$80EE0C | LDA #$0000 ;$80EE0F | STA $8851 ;$80EE12 | JMP CODE_80EEBC ;$80EE15 / CODE_80EE18: ORA #$80 ;$80EE18 \ STA $8864 ;$80EE1A | LDA #$13 ;$80EE1D | STA $80E3 ;$80EE1F | LDA #$04 ;$80EE22 | STA $80E5 ;$80EE24 | STA $80E6 ;$80EE27 | LDA #$00 ;$80EE2A | STA $80E7 ;$80EE2C | STA $80E8 ;$80EE2F | LDA $34 ;$80EE32 | STA $80E2 ;$80EE34 | LDA $32 ;$80EE37 | SEC ;$80EE39 | SBC $34 ;$80EE3A | STA $80E4 ;$80EE3C | REP #$20 ;$80EE3F | LDA $34 ;$80EE41 | STA $8832 ;$80EE43 | LDA #$0060 ;$80EE46 | STA $8833 ;$80EE49 | LDA #$0004 ;$80EE4C | STA $8835 ;$80EE4F | LDA #$005C ;$80EE52 | SEC ;$80EE55 | SBC $34 ;$80EE56 | STA $8836 ;$80EE58 | LDA $32 ;$80EE5B | SEC ;$80EE5D | SBC $34 ;$80EE5E | STA $8838 ;$80EE60 | LDA #$0020 ;$80EE63 | SEC ;$80EE66 | SBC $34 ;$80EE67 | STA $8839 ;$80EE69 | LDA #$0001 ;$80EE6C | STA $883B ;$80EE6F | LDA #$0080 ;$80EE72 | STA $883C ;$80EE75 | LDA #$0000 ;$80EE78 | STA $883E ;$80EE7B | LDA $34 ;$80EE7E | ORA #$0080 ;$80EE80 | STA $884B ;$80EE83 | LDA #$0080 ;$80EE86 | LDA #$80F2 ;$80EE89 | STA $884C ;$80EE8C | LDA #$0084 ;$80EE8F | STA $884E ;$80EE92 | LDA #$80F3 ;$80EE95 | STA $884F ;$80EE98 | LDA $32 ;$80EE9B | SEC ;$80EE9D | SBC $34 ;$80EE9E | ORA #$0080 ;$80EEA0 | STA $8851 ;$80EEA3 | LDA #$8103 ;$80EEA6 | STA $8852 ;$80EEA9 | LDA #$0081 ;$80EEAC | STA $8854 ;$80EEAF | DEC A ;$80EEB2 | STA $8855 ;$80EEB3 | LDA #$0000 ;$80EEB6 | STA $8857 ;$80EEB9 | CODE_80EEBC: ; | LDA $2A ;$80EEBC | CLC ;$80EEBE | ADC $17BA ;$80EEBF | LSR A ;$80EEC2 | LSR A ;$80EEC3 | CLC ;$80EEC4 | ADC $17BA ;$80EEC5 | STA $34 ;$80EEC8 | LDA $34 ;$80EECA | LSR A ;$80EECC | LSR A ;$80EECD | STA $36 ;$80EECE | LDA $34 ;$80EED0 | EOR #$FFFF ;$80EED2 | ASL A ;$80EED5 | SEC ;$80EED6 | SBC $36 ;$80EED7 | STA $32 ;$80EED9 | LDA $34 ;$80EEDB | AND #$00FF ;$80EEDD | XBA ;$80EEE0 | TAY ;$80EEE1 | LDX #$0000 ;$80EEE2 | CODE_80EEE5: ; | TYA ;$80EEE5 | STA $80F2,x ;$80EEE6 | ADC $32 ;$80EEE9 | STA $80F4,x ;$80EEEB | ADC $32 ;$80EEEE | STA $80F6,x ;$80EEF0 | ADC $32 ;$80EEF3 | STA $80F8,x ;$80EEF5 | ADC $32 ;$80EEF8 | STA $80FA,x ;$80EEFA | ADC $32 ;$80EEFD | STA $80FC,x ;$80EEFF | ADC $32 ;$80EF02 | STA $80FE,x ;$80EF04 | ADC $32 ;$80EF07 | STA $8100,x ;$80EF09 | ADC $32 ;$80EF0C | TAY ;$80EF0E | TXA ;$80EF0F | CLC ;$80EF10 | ADC #$0010 ;$80EF11 | TAX ;$80EF14 | CPX #$0050 ;$80EF15 | BCC CODE_80EEE5 ;$80EF18 | LDA $2A ;$80EF1A | LSR A ;$80EF1C | AND #$000E ;$80EF1D | CLC ;$80EF20 | ADC #$0070 ;$80EF21 | CODE_80EF24: ; | TAX ;$80EF24 | INC $80F3,x ;$80EF25 | INC $80F5,x ;$80EF28 | INC $80F7,x ;$80EF2B | INC $80F9,x ;$80EF2E | TXA ;$80EF31 | SEC ;$80EF32 | SBC #$0010 ;$80EF33 | BPL CODE_80EF24 ;$80EF36 | RTS ;$80EF38 / CODE_80EF39: LDA $36 ;$80EF39 \ CMP #$00E0 ;$80EF3B | BCC CODE_80EF49 ;$80EF3E | LDA #$0180 ;$80EF40 | STA $32 ;$80EF43 | STA $34 ;$80EF45 | STA $36 ;$80EF47 | CODE_80EF49: ; | SEP #$20 ;$80EF49 | LDA #$F8 ;$80EF4B | STA $8864 ;$80EF4D | LDA #$76 ;$80EF50 | STA $80E2 ;$80EF52 | LDA #$17 ;$80EF55 | STA $80E3 ;$80EF57 | STA $80E5 ;$80EF5A | LDA #$08 ;$80EF5D | STA $80E4 ;$80EF5F | LDA #$30 ;$80EF62 | STA $80E6 ;$80EF64 | LDA #$15 ;$80EF67 | STA $80E7 ;$80EF69 | LDA #$01 ;$80EF6C | STA $80E8 ;$80EF6E | LDA #$04 ;$80EF71 | STA $80E9 ;$80EF73 | LDA #$00 ;$80EF76 | STA $80EA ;$80EF78 | REP #$20 ;$80EF7B | LDA $32 ;$80EF7D | SEC ;$80EF7F | SBC #$0076 ;$80EF80 | LSR A ;$80EF83 | CMP #$0080 ;$80EF84 | BCC CODE_80EF8C ;$80EF87 | LDA #$007F ;$80EF89 | CODE_80EF8C: ; | SEP #$20 ;$80EF8C | STA $80E4 ;$80EF8E | STA $80E6 ;$80EF91 | REP #$20 ;$80EF94 | LDA #$0070 ;$80EF96 | STA $8832 ;$80EF99 | LDA #$0060 ;$80EF9C | STA $8833 ;$80EF9F | LDA $36 ;$80EFA2 | SEC ;$80EFA4 | SBC #$0070 ;$80EFA5 | STA $8835 ;$80EFA8 | LDA #$0000 ;$80EFAB | STA $8836 ;$80EFAE | LDA $34 ;$80EFB1 | SEC ;$80EFB3 | SBC $36 ;$80EFB4 | STA $38 ;$80EFB6 | LSR A ;$80EFB8 | PHP ;$80EFB9 | PHA ;$80EFBA | LSR A ;$80EFBB | STA $8838 ;$80EFBC | ADC #$0000 ;$80EFBF | STA $883B ;$80EFC2 | PLA ;$80EFC5 | PLP ;$80EFC6 | ADC #$0000 ;$80EFC7 | LSR A ;$80EFCA | STA $883E ;$80EFCB | ADC #$0000 ;$80EFCE | STA $8841 ;$80EFD1 | LDA $36 ;$80EFD4 | EOR #$FFFF ;$80EFD6 | STA $8839 ;$80EFD9 | LDA $36 ;$80EFDC | ASL A ;$80EFDE | CLC ;$80EFDF | ADC $36 ;$80EFE0 | CLC ;$80EFE2 | ADC $34 ;$80EFE3 | LSR A ;$80EFE5 | LSR A ;$80EFE6 | EOR #$FFFF ;$80EFE7 | INC A ;$80EFEA | STA $883C ;$80EFEB | LDA $34 ;$80EFEE | CLC ;$80EFF0 | ADC $36 ;$80EFF1 | LSR A ;$80EFF3 | SEC ;$80EFF4 | SBC #$0020 ;$80EFF5 | EOR #$FFFF ;$80EFF8 | INC A ;$80EFFB | STA $883F ;$80EFFC | LDA $34 ;$80EFFF | ASL A ;$80F001 | CLC ;$80F002 | ADC $34 ;$80F003 | CLC ;$80F005 | ADC $36 ;$80F006 | LSR A ;$80F008 | LSR A ;$80F009 | EOR #$FFFF ;$80F00A | INC A ;$80F00D | CLC ;$80F00E | ADC #$0048 ;$80F00F | STA $8842 ;$80F012 | LDA #$0001 ;$80F015 | STA $8844 ;$80F018 | LDA $34 ;$80F01B | EOR #$FFFF ;$80F01D | INC A ;$80F020 | CLC ;$80F021 | ADC #$005C ;$80F022 | STA $8845 ;$80F025 | LDA #$0000 ;$80F028 | STA $8847 ;$80F02B | LDA $36 ;$80F02E | SEC ;$80F030 | SBC #$00F0 ;$80F031 | STA $884B ;$80F034 | LDA #$0080 ;$80F037 | STA $884C ;$80F03A | LDA #$00F0 ;$80F03D | STA $884E ;$80F040 | LDA #$80F2 ;$80F043 | STA $884F ;$80F046 | LDA $34 ;$80F049 | SEC ;$80F04B | SBC $36 ;$80F04C | STA $38 ;$80F04E | ORA #$0200 ;$80F050 | LSR A ;$80F053 | PHP ;$80F054 | PHA ;$80F055 | LSR A ;$80F056 | STA $8851 ;$80F057 | ADC #$0000 ;$80F05A | STA $8854 ;$80F05D | PLA ;$80F060 | PLP ;$80F061 | ADC #$0000 ;$80F062 | LSR A ;$80F065 | STA $8857 ;$80F066 | ADC #$0000 ;$80F069 | STA $885A ;$80F06C | LDA #$80F2 ;$80F06F | STA $8852 ;$80F072 | LDA #$8132 ;$80F075 | STA $8855 ;$80F078 | LDA #$8172 ;$80F07B | STA $8858 ;$80F07E | LDA #$8192 ;$80F081 | STA $885B ;$80F084 | LDA #$0081 ;$80F087 | STA $885D ;$80F08A | LDA #$81B2 ;$80F08D | STA $885E ;$80F090 | LDA #$0000 ;$80F093 | STA $8860 ;$80F096 | LDA $0523 ;$80F099 | CMP #$000E ;$80F09C | BNE CODE_80F0AB ;$80F09F | LDA $0915 ;$80F0A1 | BEQ CODE_80F0AB ;$80F0A4 | LDA #$0000 ;$80F0A6 | BRA CODE_80F0AD ;$80F0A9 / CODE_80F0AB: LDA $2A ;$80F0AB \ CODE_80F0AD: ; | CLC ;$80F0AD | ADC $17BA ;$80F0AE | LSR A ;$80F0B1 | LSR A ;$80F0B2 | CLC ;$80F0B3 | ADC $17BA ;$80F0B4 | STA $34 ;$80F0B7 | LDA $34 ;$80F0B9 | LSR A ;$80F0BB | LSR A ;$80F0BC | STA $36 ;$80F0BD | LDA $34 ;$80F0BF | EOR #$FFFF ;$80F0C1 | ASL A ;$80F0C4 | SEC ;$80F0C5 | SBC $36 ;$80F0C6 | STA $32 ;$80F0C8 | LDA $34 ;$80F0CA | AND #$00FF ;$80F0CC | XBA ;$80F0CF | TAY ;$80F0D0 | LDX #$00C0 ;$80F0D1 | CODE_80F0D4: ; | TYA ;$80F0D4 | STA $810D,x ;$80F0D5 | ADC $32 ;$80F0D8 | STA $810B,x ;$80F0DA | ADC $32 ;$80F0DD | STA $8109,x ;$80F0DF | ADC $32 ;$80F0E2 | STA $8107,x ;$80F0E4 | ADC $32 ;$80F0E7 | STA $8105,x ;$80F0E9 | ADC $32 ;$80F0EC | STA $8103,x ;$80F0EE | ADC $32 ;$80F0F1 | STA $8101,x ;$80F0F3 | ADC $32 ;$80F0F6 | STA $80FF,x ;$80F0F8 | ADC $32 ;$80F0FB | TAY ;$80F0FD | TXA ;$80F0FE | SEC ;$80F0FF | SBC #$0010 ;$80F100 | TAX ;$80F103 | BPL CODE_80F0D4 ;$80F104 | LDA $0523 ;$80F106 | CMP #$000E ;$80F109 | BNE CODE_80F113 ;$80F10C | LDA $0915 ;$80F10E | BNE CODE_80F156 ;$80F111 | CODE_80F113: ; | LDA $2A ;$80F113 | LSR A ;$80F115 | AND #$000E ;$80F116 | CLC ;$80F119 | ADC #$0040 ;$80F11A | CODE_80F11D: ; | TAX ;$80F11D | INC $817E,x ;$80F11E | INC $8180,x ;$80F121 | INC $8182,x ;$80F124 | INC $8182,x ;$80F127 | INC $8184,x ;$80F12A | INC $8184,x ;$80F12D | INC $8186,x ;$80F130 | INC $8188,x ;$80F133 | TXA ;$80F136 | SEC ;$80F137 | SBC #$0010 ;$80F138 | BPL CODE_80F11D ;$80F13B | TXA ;$80F13D | CLC ;$80F13E | ADC #$0070 ;$80F13F | CODE_80F142: ; | TAX ;$80F142 | INC $80FE,x ;$80F143 | INC $8100,x ;$80F146 | INC $8102,x ;$80F149 | INC $8104,x ;$80F14C | TXA ;$80F14F | SEC ;$80F150 | SBC #$0010 ;$80F151 | BPL CODE_80F142 ;$80F154 | CODE_80F156: ; | RTS ;$80F156 / CODE_80F157: LDY #$0002 ;$80F157 \ LDX #$000A ;$80F15A | LDA #$0000 ;$80F15D | JSR CODE_80F264 ;$80F160 | LDY #$000C ;$80F163 | LDX #$0000 ;$80F166 | LDA #$0002 ;$80F169 | JSR CODE_80F264 ;$80F16C | LDY #$0016 ;$80F16F | LDX #$0014 ;$80F172 | LDA #$0004 ;$80F175 | JSR CODE_80F264 ;$80F178 | LDA $17BA ;$80F17B | AND #$00FF ;$80F17E | STA $54 ;$80F181 | LDA $54 ;$80F183 | XBA ;$80F185 | LSR A ;$80F186 | STA $32 ;$80F187 | LSR A ;$80F189 | LSR A ;$80F18A | LSR A ;$80F18B | CLC ;$80F18C | ADC $32 ;$80F18D | XBA ;$80F18F | CLC ;$80F190 | ADC #$01C0 ;$80F191 | STA $56 ;$80F194 | PHP ;$80F196 | LDA $2A ;$80F197 | BIT #$0001 ;$80F199 | BNE CODE_80F1F1 ;$80F19C | PLP ;$80F19E | LDA $54 ;$80F19F | STA $32 ;$80F1A1 | LSR A ;$80F1A3 | LSR A ;$80F1A4 | STA $34 ;$80F1A5 | LSR A ;$80F1A7 | LSR A ;$80F1A8 | CLC ;$80F1A9 | ADC $32 ;$80F1AA | ADC $34 ;$80F1AC | LSR A ;$80F1AE | SEC ;$80F1AF | SBC #$0060 ;$80F1B0 | AND #$FFFE ;$80F1B3 | BPL CODE_80F1D6 ;$80F1B6 | EOR #$FFFF ;$80F1B8 | INC A ;$80F1BB | STA $34 ;$80F1BC | LDX #$0000 ;$80F1BE | LDA $56 ;$80F1C1 | XBA ;$80F1C3 | CODE_80F1C4: ; | STA $7E8012,x ;$80F1C4 | SBC $34 ;$80F1C8 | SBC #$FFFF ;$80F1CA | INX ;$80F1CD | INX ;$80F1CE | CPX #$0190 ;$80F1CF | BNE CODE_80F1C4 ;$80F1D2 | BRA CODE_80F1F0 ;$80F1D4 / CODE_80F1D6: STA $34 ;$80F1D6 \ LDX #$0000 ;$80F1D8 | LDA $56 ;$80F1DB | XBA ;$80F1DD | CLC ;$80F1DE | CODE_80F1DF: ; | STA $7E8012,x ;$80F1DF | CLC ;$80F1E3 | ADC $34 ;$80F1E4 | ADC #$0000 ;$80F1E6 | INX ;$80F1E9 | INX ;$80F1EA | CPX #$0190 ;$80F1EB | BNE CODE_80F1DF ;$80F1EE | CODE_80F1F0: ; | RTS ;$80F1F0 / CODE_80F1F1: PLP ;$80F1F1 \ LDA $54 ;$80F1F2 | STA $32 ;$80F1F4 | LSR A ;$80F1F6 | LSR A ;$80F1F7 | STA $34 ;$80F1F8 | LSR A ;$80F1FA | LSR A ;$80F1FB | CLC ;$80F1FC | ADC $32 ;$80F1FD | ADC $34 ;$80F1FF | LSR A ;$80F201 | SEC ;$80F202 | SBC #$0060 ;$80F203 | AND #$FFFE ;$80F206 | BPL CODE_80F229 ;$80F209 | EOR #$FFFF ;$80F20B | INC A ;$80F20E | STA $34 ;$80F20F | LDX #$0000 ;$80F211 | LDA $56 ;$80F214 | XBA ;$80F216 | CODE_80F217: ; | STA $7E81A2,x ;$80F217 | SBC $34 ;$80F21B | SBC #$FFFF ;$80F21D | INX ;$80F220 | INX ;$80F221 | CPX #$0190 ;$80F222 | BNE CODE_80F217 ;$80F225 | BRA CODE_80F243 ;$80F227 / CODE_80F229: STA $34 ;$80F229 \ LDX #$0000 ;$80F22B | LDA $56 ;$80F22E | XBA ;$80F230 | CLC ;$80F231 | CODE_80F232: ; | STA $7E81A2,x ;$80F232 | CLC ;$80F236 | ADC $34 ;$80F237 | ADC #$0000 ;$80F239 | INX ;$80F23C | INX ;$80F23D | CPX #$0190 ;$80F23E | BNE CODE_80F232 ;$80F241 | CODE_80F243: ; | RTS ;$80F243 / DATA_80F244: db $48, $FF, $98, $FF, $C4, $FF, $00, $00 db $C4, $FF, $68, $FF, $48, $FF, $00, $00 db $00, $01, $C4, $FF, $48, $FF, $00, $00 db $C4, $FF, $48, $FF, $88, $FF, $00, $00 CODE_80F264: STX $38 ;$80F264 \ STA $34 ;$80F266 | LDA $17BB ;$80F268 | AND #$0003 ;$80F26B | ASL A ;$80F26E | ASL A ;$80F26F | ASL A ;$80F270 | CLC ;$80F271 | ADC $34 ;$80F272 | TAX ;$80F274 | LDA $17BA ;$80F275 | AND #$00FF ;$80F278 | CLC ;$80F27B | ADC.l DATA_80F244,x ;$80F27C | BIT #$8000 ;$80F280 | BEQ CODE_80F288 ;$80F283 | EOR #$FFFF ;$80F285 | CODE_80F288: ; | LSR A ;$80F288 | SEC ;$80F289 | SBC #$0010 ;$80F28A | BPL CODE_80F292 ;$80F28D | LDA #$0000 ;$80F28F | CODE_80F292: ; | CMP #$0019 ;$80F292 | BCC CODE_80F29A ;$80F295 | LDA #$0019 ;$80F297 | CODE_80F29A: ; | CLC ;$80F29A | ADC #$0002 ;$80F29B | STA $32 ;$80F29E | ASL A ;$80F2A0 | ASL A ;$80F2A1 | XBA ;$80F2A2 | STA $36 ;$80F2A3 | XBA ;$80F2A5 | ASL A ;$80F2A6 | ASL A ;$80F2A7 | ASL A ;$80F2A8 | STA $34 ;$80F2A9 | LDX $38 ;$80F2AB | PHB ;$80F2AD | SEP #$20 ;$80F2AE | LDA #$80 ;$80F2B0 | PHA ;$80F2B2 | REP #$20 ;$80F2B3 | PLB ;$80F2B5 | JSR CODE_80F2C7 ;$80F2B6 | JSR CODE_80F2C7 ;$80F2B9 | JSR CODE_80F2C7 ;$80F2BC | JSR CODE_80F2C7 ;$80F2BF | JSR CODE_80F2C7 ;$80F2C2 | PLB ;$80F2C5 | RTS ;$80F2C6 / CODE_80F2C7: LDA DATA_80F300,y ;$80F2C7 \ AND #$001F ;$80F2CA | SEC ;$80F2CD | SBC $32 ;$80F2CE | BPL CODE_80F2D5 ;$80F2D0 | LDA #$0000 ;$80F2D2 | CODE_80F2D5: ; | STA $38 ;$80F2D5 | LDA DATA_80F300,y ;$80F2D7 | AND #$03E0 ;$80F2DA | SEC ;$80F2DD | SBC $34 ;$80F2DE | BPL CODE_80F2E5 ;$80F2E0 | LDA #$0000 ;$80F2E2 | CODE_80F2E5: ; | TSB $38 ;$80F2E5 | LDA DATA_80F300,y ;$80F2E7 | AND #$7C00 ;$80F2EA | SEC ;$80F2ED | SBC $36 ;$80F2EE | BPL CODE_80F2F5 ;$80F2F0 | LDA #$0000 ;$80F2F2 | CODE_80F2F5: ; | ORA $38 ;$80F2F5 | STA $7E8C28,x ;$80F2F7 | INY ;$80F2FB | INY ;$80F2FC | INX ;$80F2FD | INX ;$80F2FE | RTS ;$80F2FF / DATA_80F300: db $00, $00, $62, $08, $A4, $10, $07, $19 db $8B, $25, $2E, $32, $62, $08, $A4, $10 db $07, $19, $8B, $25, $2E, $32, $62, $08 db $A4, $10, $07, $19, $8B, $25, $2E, $32 CODE_80F320: JSR CODE_80F324 ;$80F320 \ RTL ;$80F323 / CODE_80F324: LDA $EF ;$80F324 \ CMP $F1 ;$80F326 | BEQ CODE_80F35A ;$80F328 | ASL A ;$80F32A | ASL A ;$80F32B | TAX ;$80F32C | LDA $EF ;$80F32D | INC A ;$80F32F | AND #$000F ;$80F330 | STA $EF ;$80F333 | LDA #$2200 ;$80F335 | STA $4300 ;$80F338 | LDA #$001E ;$80F33B | STA $4305 ;$80F33E | LDA $0B24,x ;$80F341 | STA $4302 ;$80F344 | LDA $0B26,x ;$80F347 | SEP #$20 ;$80F34A | STA $4304 ;$80F34C | XBA ;$80F34F | STA $2121 ;$80F350 | LDA #$01 ;$80F353 | STA $420B ;$80F355 | REP #$20 ;$80F358 | CODE_80F35A: ; | RTS ;$80F35A / CODE_80F35B: PHK ;$80F35B \ PLB ;$80F35C | JSL CODE_B5A8DA ;$80F35D | LDA #$0200 ;$80F361 | STA $70 ;$80F364 | LDA #$0400 ;$80F366 | STA $56 ;$80F369 | STZ $0400 ;$80F36B | STZ $0402 ;$80F36E | STZ $0404 ;$80F371 | STZ $0406 ;$80F374 | STZ $0408 ;$80F377 | STZ $040A ;$80F37A | STZ $040C ;$80F37D | STZ $040E ;$80F380 | STZ $0410 ;$80F383 | STZ $0412 ;$80F386 | STZ $0414 ;$80F389 | STZ $0416 ;$80F38C | STZ $0418 ;$80F38F | STZ $041A ;$80F392 | STZ $041C ;$80F395 | STZ $041E ;$80F398 | JSL CODE_BEC695 ;$80F39B | JSL CODE_B59F40 ;$80F39F | JSL CODE_B5F0FD ;$80F3A3 | LDA $0638 ;$80F3A7 | BEQ CODE_80F3B0 ;$80F3AA | JSL CODE_B59C52 ;$80F3AC | CODE_80F3B0: ; | STZ $1730 ;$80F3B0 | RTS ;$80F3B3 / CODE_80F3B4: LDA #$0001 ;$80F3B4 | STA $420B ;$80F3B7 | JMP CODE_80F3F2 ;$80F3BA / NMI_start: JML CODE_80F3C1 ;$80F3BD / CODE_80F3C1: REP #$30 ;$80F3C1 \ PHD ;$80F3C3 | PHA ;$80F3C4 | PHX ;$80F3C5 | PHY ;$80F3C6 | LDA #$0000 ;$80F3C7 | TCD ;$80F3CA | CLD ;$80F3CB | SEP #$20 ;$80F3CC | LDA.l $004210 ;$80F3CE | LDA #$8F ;$80F3D2 | STA $002100 ;$80F3D4 | REP #$20 ;$80F3D8 | LDA.l $00002C ;$80F3DA | INC A ;$80F3DE | STA $00002C ;$80F3DF | JMP ($0020) ;$80F3E3 / CODE_80F3E6: SEP #$20 ;$80F3E6 \ LDA.l $000512 ;$80F3E8 | STA $002100 ;$80F3EC | REP #$20 ;$80F3F0 | CODE_80F3F2: ; | REP #$30 ;$80F3F2 | PLY ;$80F3F4 | PLX ;$80F3F5 | PLA ;$80F3F6 | PLD ;$80F3F7 | RTI ;$80F3F8 / IRQ_start: SEI ;$80F3F9 \ RTI ;$80F3FA / CODE_80F3FB: JSL disable_screen ;$80F3FB \ PHK ;$80F3FF | PLB ;$80F400 | JSL clear_VRAM_wrapper ;$80F401 | JSL init_registers_wrapper ;$80F405 | JSL CODE_808E6A ;$80F409 | JSL CODE_8088AB ;$80F40D | JSL CODE_BB91F7 ;$80F411 | LDA #$001E ;$80F415 | JSL CODE_B5800C ;$80F418 | STZ $1730 ;$80F41C | LDA #$000E ;$80F41F | JSL set_PPU_registers_wrapper ;$80F422 | LDA #$003A ;$80F426 | JSL handle_VRAM_payload_wrapper ;$80F429 | LDY #$0000 ;$80F42D | LDA #DATA_FD13F0 ;$80F430 | LDX #$0020 ;$80F433 | JSL DMA_palette ;$80F436 | LDA #$0100 ;$80F43A | JSL CODE_808C2E ;$80F43D | LDA #$0100 ;$80F441 | STA $17BA ;$80F444 | STA $17C0 ;$80F447 | LDA #$00B0 ;$80F44A | STA $17B8 ;$80F44D | LDA #$0001 ;$80F450 | STA $84 ;$80F453 | LDA #DATA_80F57C ;$80F455 | STA $7A ;$80F458 | LDA.w #DATA_80F57C>>16 ;$80F45A | STA $7C ;$80F45D | LDA #$1654 ;$80F45F | STA $000654 ;$80F462 | STA $000656 ;$80F466 | STA $00072B ;$80F46A | LDY #$00F0 ;$80F46E | LDX #$0004 ;$80F471 | LDA #$00AA ;$80F474 | JSL DMA_global_palette ;$80F477 | LDA #$0001 ;$80F47B | STA $059B ;$80F47E | RTL ;$80F481 / CODE_80F482: LDA $059B ;$80F482 \ STA $420B ;$80F485 | JSL CODE_B5A919 ;$80F488 | JSR CODE_80F324 ;$80F48C | JSL CODE_80C31D ;$80F48F | LDA $17B8 ;$80F493 | SEP #$20 ;$80F496 | STZ $2101 ;$80F498 | STA $210F ;$80F49B | XBA ;$80F49E | STA $210F ;$80F49F | LDA #$C0 ;$80F4A2 | STA $2110 ;$80F4A4 | STA $2110 ;$80F4A7 | LDA $0512 ;$80F4AA | STA $2100 ;$80F4AD | REP #$20 ;$80F4B0 | JSR CODE_808988 ;$80F4B2 | LDA $7E ;$80F4B5 | CMP #$001D ;$80F4B7 | BNE CODE_80F4BF ;$80F4BA | DEC $17B8 ;$80F4BC | CODE_80F4BF: ; | LDA $84 ;$80F4BF | CMP #$0010 ;$80F4C1 | BCS CODE_80F4CE ;$80F4C4 | LDA $80 ;$80F4C6 | CLC ;$80F4C8 | ADC #$0200 ;$80F4C9 | BRA CODE_80F4D6 ;$80F4CC / CODE_80F4CE: LDA $80 ;$80F4CE \ BEQ CODE_80F4D8 ;$80F4D0 | SEC ;$80F4D2 | SBC #$0200 ;$80F4D3 | CODE_80F4D6: ; | STA $80 ;$80F4D6 | CODE_80F4D8: ; | DEC $84 ;$80F4D8 | BNE CODE_80F551 ;$80F4DA | LDA #$2000 ;$80F4DC | STA $80 ;$80F4DF | CODE_80F4E1: ; | LDA [$7A] ;$80F4E1 | BPL CODE_80F4EB ;$80F4E3 | LDA #$820F ;$80F4E5 | STA $0512 ;$80F4E8 | CODE_80F4EB: ; | STA $84 ;$80F4EB | INC $7A ;$80F4ED | INC $7A ;$80F4EF | LDA [$7A] ;$80F4F1 | BEQ CODE_80F541 ;$80F4F3 | TAY ;$80F4F5 | CMP #$01CE ;$80F4F6 | BEQ CODE_80F53B ;$80F4F9 | CMP #$01DA ;$80F4FB | BEQ CODE_80F53B ;$80F4FE | CMP #$020E ;$80F500 | BEQ CODE_80F50C ;$80F503 | CMP #$020C ;$80F505 | BNE CODE_80F533 ;$80F508 | BRA CODE_80F51A ;$80F50A / CODE_80F50C: PHY ;$80F50C \ LDA #$0000 ;$80F50D | JSL CODE_808837 ;$80F510 | JSL CODE_B8808E ;$80F514 | BRA CODE_80F526 ;$80F518 / CODE_80F51A: PHY ;$80F51A \ LDA #$0001 ;$80F51B | JSL CODE_808837 ;$80F51E | JSL CODE_B8808E ;$80F522 | CODE_80F526: ; | LDY $0595 ;$80F526 | LDA $0006,y ;$80F529 | ORA #$0004 ;$80F52C | STA $0006,y ;$80F52F | PLY ;$80F532 | CODE_80F533: ; | JSL CODE_BB842C ;$80F533 | LDA $68 ;$80F537 | BRA CODE_80F541 ;$80F539 / CODE_80F53B: JSL CODE_BB8443 ;$80F53B \ LDA $68 ;$80F53F | CODE_80F541: ; | INC $7A ;$80F541 | INC $7A ;$80F543 | LDA [$7A] ;$80F545 | STA $7E ;$80F547 | INC $7A ;$80F549 | INC $7A ;$80F54B | LDA $84 ;$80F54D | BEQ CODE_80F4E1 ;$80F54F | CODE_80F551: ; | LDA $0512 ;$80F551 | CMP #$8201 ;$80F554 | BNE CODE_80F567 ;$80F557 | LDA #CODE_BAB633 ;$80F559 | STA $00067D ;$80F55C | LDA #CODE_808CC9 ;$80F560 | JML CODE_808C80 ;$80F563 / CODE_80F567: JSL sprite_handler ;$80F567 \ JSL CODE_B5A8DA ;$80F56B | JSR CODE_80F946 ;$80F56F | JSR CODE_8088BA ;$80F572 | JSR CODE_808C3D ;$80F575 | JML CODE_808CA2 ;$80F578 / DATA_80F57C: db $30, $00, $00, $00, $00, $00, $A0, $00 db $00, $00, $01, $00, $A0, $00, $00, $00 db $02, $00, $40, $01, $A4, $01, $03, $00 db $40, $01, $A6, $01, $04, $00, $40, $01 db $A8, $01, $05, $00, $40, $01, $A2, $01 db $06, $00, $40, $01, $AA, $01, $07, $00 db $40, $01, $AC, $01, $08, $00, $40, $01 db $AE, $01, $09, $00, $40, $01, $B0, $01 db $0A, $00, $A0, $00, $00, $00, $0B, $00 db $40, $01, $B2, $01, $0C, $00, $40, $01 db $B4, $01, $0D, $00, $40, $01, $B6, $01 db $0E, $00, $40, $01, $B8, $01, $0F, $00 db $40, $01, $BA, $01, $10, $00, $A0, $00 db $00, $00, $11, $00, $40, $01, $BC, $01 db $12, $00, $00, $00, $BE, $01, $13, $00 db $40, $01, $C4, $01, $13, $00, $40, $01 db $C0, $01, $14, $00, $40, $01, $C2, $01 db $15, $00, $00, $00, $C6, $01, $16, $00 db $40, $01, $10, $02, $16, $00, $40, $01 db $C8, $01, $17, $00, $40, $01, $CA, $01 db $18, $00, $40, $01, $CC, $01, $19, $00 db $40, $01, $CE, $01, $1A, $00, $40, $01 db $D0, $01, $1B, $00, $00, $00, $D2, $01 db $1C, $00, $40, $01, $D6, $01, $1C, $00 db $80, $01, $00, $00, $1D, $00, $00, $00 db $D4, $01, $1E, $00, $40, $01, $D8, $01 db $1E, $00, $A0, $00, $00, $00, $1F, $00 db $00, $00, $DC, $01, $20, $00, $40, $01 db $DA, $01, $20, $00, $40, $01, $DE, $01 db $21, $00, $00, $00, $E0, $01, $22, $00 db $40, $01, $E2, $01, $22, $00, $40, $01 db $E4, $01, $23, $00, $00, $00, $E6, $01 db $24, $00, $00, $00, $E8, $01, $24, $00 db $40, $01, $EA, $01, $24, $00, $A0, $00 db $00, $00, $25, $00, $40, $01, $EC, $01 db $26, $00, $40, $01, $EE, $01, $27, $00 db $40, $01, $F0, $01, $28, $00, $40, $01 db $F2, $01, $29, $00, $40, $01, $F4, $01 db $2A, $00, $40, $01, $F6, $01, $2B, $00 db $40, $01, $F8, $01, $2C, $00, $A0, $00 db $00, $00, $2D, $00, $40, $01, $FA, $01 db $2E, $00, $00, $00, $FC, $01, $2F, $00 db $40, $01, $FE, $01, $2F, $00, $00, $00 db $00, $02, $30, $00, $40, $01, $02, $02 db $30, $00, $40, $01, $04, $02, $31, $00 db $00, $00, $06, $02, $32, $00, $00, $00 db $0A, $02, $32, $00, $40, $01, $08, $02 db $32, $00, $40, $01, $0C, $02, $33, $00 db $40, $01, $0E, $02, $34, $00, $40, $00 db $00, $00, $00, $00, $FF, $FF, $00, $00 DATA_80F70C: dw !null_pointer dw DATA_80F776 dw DATA_80F789 dw DATA_80F79A dw DATA_80F79F dw DATA_80F7AB dw DATA_80F7B1 dw DATA_80F7C0 dw DATA_80F7C8 dw DATA_80F7D3 dw DATA_80F7DA dw DATA_80F7E2 dw DATA_80F7F4 dw DATA_80F7FC dw DATA_80F802 dw DATA_80F809 dw DATA_80F811 dw DATA_80F819 dw DATA_80F82C dw DATA_80F832 dw DATA_80F83A dw DATA_80F842 dw DATA_80F84A dw DATA_80F852 dw DATA_80F858 dw DATA_80F860 dw DATA_80F866 dw DATA_80F86D dw DATA_80F875 dw DATA_80F87B dw DATA_80F882 dw DATA_80F889 dw DATA_80F89A dw DATA_80F89F dw DATA_80F8A7 dw DATA_80F8AE dw DATA_80F8B8 dw DATA_80F8C7 dw DATA_80F8D6 dw DATA_80F8DC dw DATA_80F8E5 dw DATA_80F8EC dw DATA_80F8F5 dw DATA_80F8FD dw DATA_80F905 dw DATA_80F90D dw DATA_80F917 dw DATA_80F91E dw DATA_80F924 dw DATA_80F92C dw DATA_80F933 dw DATA_80F93A dw DATA_80F940 DATA_80F776: db "CAST OF CHARACTERS", $00 DATA_80F789: db "LAZY LANDLUBBERS", $00 DATA_80F79A: db "NEEK", $00 DATA_80F79F: db "CLICK-CLACK", $00 DATA_80F7AB: db "SPINY", $00 DATA_80F7B1: db "CAT O' 9 TAILS", $00 DATA_80F7C0: db "FLITTER", $00 DATA_80F7C8: db "MINI-NECKY", $00 DATA_80F7D3: db "ZINGER", $00 DATA_80F7DA: db "SCREECH", $00 DATA_80F7E2: db "SUBMERGED SEADOGS", $00 DATA_80F7F4: db "FLOTSAM", $00 DATA_80F7FC: db "SHURI", $00 DATA_80F802: db "PUFTUP", $00 DATA_80F809: db "LOCKJAW", $00 DATA_80F811: db "SNAPJAW", $00 DATA_80F819: db "KREMLING KUTHROATS", $00 DATA_80F82C: db "KLOMP", $00 DATA_80F832: db "KLINGER", $00 DATA_80F83A: db "KABOING", $00 DATA_80F842: db "KLAMPON", $00 DATA_80F84A: db "KLOBBER", $00 DATA_80F852: db "KROOK", $00 DATA_80F858: db "KUTLASS", $00 DATA_80F860: db "KLOAK", $00 DATA_80F866: db "KANNON", $00 DATA_80F86D: db "KRUNCHA", $00 DATA_80F875: db "KLANK", $00 DATA_80F87B: db "KACKLE", $00 DATA_80F882: db "KLUBBA", $00 DATA_80F889: db "BARNACLED BOSSES", $00 DATA_80F89A: db "KROW", $00 DATA_80F89F: db "KLEEVER", $00 DATA_80F8A7: db "KUDGEL", $00 DATA_80F8AE: db "KING ZING", $00 DATA_80F8B8: db "KAPTAIN K.ROOL", $00 DATA_80F8C7: db "ANIMAL BUDDIES", $00 DATA_80F8D6: db "RAMBI", $00 DATA_80F8DC: db "ENGUARDE", $00 DATA_80F8E5: db "RATTLY", $00 DATA_80F8EC: db "SQUITTER", $00 DATA_80F8F5: db "CLAPPER", $00 DATA_80F8FD: db "SQUAWKS", $00 DATA_80F905: db "GLIMMER", $00 DATA_80F90D: db "KONG KLAN", $00 DATA_80F917: db "SWANKY", $00 DATA_80F91E: db "FUNKY", $00 DATA_80F924: db "WRINKLY", $00 DATA_80F92C: db "CRANKY", $00 DATA_80F933: db "DONKEY", $00 DATA_80F93A: db "DIXIE", $00 DATA_80F940: db "DIDDY", $00 CODE_80F946: PHB ;$80F946 \ PHK ;$80F947 | PLB ;$80F948 | LDY #$0000 ;$80F949 | LDA $7E ;$80F94C | BEQ CODE_80F9C7 ;$80F94E | ASL A ;$80F950 | TAX ;$80F951 | LDA.l DATA_80F70C,x ;$80F952 | STA $3A ;$80F956 | LDA #$0080 ;$80F958 | STA $3C ;$80F95B | LDY #$0000 ;$80F95D | CODE_80F960: ; | LDA [$3A],y ;$80F960 | AND #$00FF ;$80F962 | BEQ CODE_80F96A ;$80F965 | INY ;$80F967 | BRA CODE_80F960 ;$80F968 / CODE_80F96A: TYA ;$80F96A \ LDY #$0000 ;$80F96B | ASL A ;$80F96E | ASL A ;$80F96F | EOR #$00FF ;$80F970 | CLC ;$80F973 | ADC #$C080 ;$80F974 | CLC ;$80F977 | ADC $80 ;$80F978 | STA $32 ;$80F97A | CODE_80F97C: ; | LDA [$3A] ;$80F97C | AND #$00FF ;$80F97E | BEQ CODE_80F9C7 ;$80F981 | CMP #$0020 ;$80F983 | BEQ CODE_80F9BB ;$80F986 | SEC ;$80F988 | SBC #$0021 ;$80F989 | TAX ;$80F98C | LDA.l DATA_B4C4B3,x ;$80F98D | AND #$00FF ;$80F991 | ASL A ;$80F994 | CLC ;$80F995 | ADC #$3E02 ;$80F996 | STA $34 ;$80F999 | LDA $32 ;$80F99B | STA $0200,y ;$80F99D | LDA $34 ;$80F9A0 | STA $0202,y ;$80F9A2 | LDA $32 ;$80F9A5 | CLC ;$80F9A7 | ADC #$0800 ;$80F9A8 | STA $0204,y ;$80F9AB | INC $34 ;$80F9AE | LDA $34 ;$80F9B0 | STA $0206,y ;$80F9B2 | TYA ;$80F9B5 | CLC ;$80F9B6 | ADC #$0008 ;$80F9B7 | TAY ;$80F9BA | CODE_80F9BB: ; | INC $3A ;$80F9BB | LDA $32 ;$80F9BD | CLC ;$80F9BF | ADC #$0008 ;$80F9C0 | STA $32 ;$80F9C3 | BRA CODE_80F97C ;$80F9C5 / CODE_80F9C7: TYA ;$80F9C7 \ CLC ;$80F9C8 | ADC #$0200 ;$80F9C9 | STA $70 ;$80F9CC | LDA #$0400 ;$80F9CE | STA $56 ;$80F9D1 | STZ $0400 ;$80F9D3 | STZ $0402 ;$80F9D6 | STZ $0404 ;$80F9D9 | STZ $0406 ;$80F9DC | STZ $0408 ;$80F9DF | STZ $040A ;$80F9E2 | STZ $040C ;$80F9E5 | STZ $040E ;$80F9E8 | STZ $0410 ;$80F9EB | STZ $0412 ;$80F9EE | STZ $0414 ;$80F9F1 | STZ $0416 ;$80F9F4 | STZ $0418 ;$80F9F7 | STZ $041A ;$80F9FA | STZ $041C ;$80F9FD | STZ $041E ;$80FA00 | LDA #$0054 ;$80FA03 | STA $78 ;$80FA06 | JSL CODE_B59F40 ;$80FA08 | STZ $1730 ;$80FA0C | PLB ;$80FA0F | RTS ;$80FA10 / CODE_80FA11: LDX $64 ;$80FA11 \ LDA $06,x ;$80FA13 | INC A ;$80FA15 | STA $06,x ;$80FA16 | LDA $1A,x ;$80FA18 | CMP #$14C4 ;$80FA1A | BEQ CODE_80FA39 ;$80FA1D | JSL CODE_B9D100 ;$80FA1F | LDA $2A ;$80FA23 | LDA $36,x ;$80FA25 | CMP #$0196 ;$80FA27 | BEQ CODE_80FA36 ;$80FA2A | CMP #$0230 ;$80FA2C | BEQ CODE_80FA36 ;$80FA2F | CMP #$019A ;$80FA31 | BNE CODE_80FA39 ;$80FA34 | CODE_80FA36: ; | INC $19AA ;$80FA36 | CODE_80FA39: ; | JSL CODE_BBBB8D ;$80FA39 | JML [$05A9] ;$80FA3D / CODE_80FA40: PHB ;$80FA40 \ PHK ;$80FA41 | PLB ;$80FA42 | LDX $64 ;$80FA43 | LDA $06,x ;$80FA45 | INC A ;$80FA47 | STA $06,x ;$80FA48 | LDA $42,x ;$80FA4A | BNE CODE_80FA70 ;$80FA4C | INC $42,x ;$80FA4E | LDY $44,x ;$80FA50 | PEA $80BA ;$80FA52 | PLB ;$80FA55 | LDA $0000,y ;$80FA56 | PLB ;$80FA59 | CMP #$0063 ;$80FA5A | BNE CODE_80FA68 ;$80FA5D | LDA $0002,y ;$80FA5F | STA $44,x ;$80FA62 | TAY ;$80FA64 | LDA $0000,y ;$80FA65 | CODE_80FA68: ; | INY ;$80FA68 | INY ;$80FA69 | STY $44,x ;$80FA6A | JSL CODE_B9D0C6 ;$80FA6C | CODE_80FA70: ; | JSL CODE_B9D100 ;$80FA70 | JSL CODE_BBBB8D ;$80FA74 | PLB ;$80FA78 | JML [$05A9] ;$80FA79 / CODE_80FA7C: JSL disable_screen ;$80FA7C \ PHK ;$80FA80 | PLB ;$80FA81 | JSL clear_VRAM_wrapper ;$80FA82 | JSL init_registers_wrapper ;$80FA86 | LDA #$001F ;$80FA8A | JSL handle_VRAM_payload_wrapper ;$80FA8D | LDA #$001F ;$80FA91 | JSL set_PPU_registers_wrapper ;$80FA94 | LDA #$0014 ;$80FA98 | JSL CODE_B5800C ;$80FA9B | LDA #$0100 ;$80FA9F | JSR CODE_808C32 ;$80FAA2 | LDA #DATA_FD258E ;$80FAA5 | LDY #$0000 ;$80FAA8 | LDX #$0020 ;$80FAAB | JSL DMA_palette ;$80FAAE | STZ $2A ;$80FAB2 | LDA #$0001 ;$80FAB4 | STA $059B ;$80FAB7 | LDA #CODE_80FAC0 ;$80FABA | JMP CODE_808C9E ;$80FABD / CODE_80FAC0: LDA $059B ;$80FAC0 \ STA $420B ;$80FAC3 | LDA $2A ;$80FAC6 | SEC ;$80FAC8 | SBC #$0300 ;$80FAC9 | LSR A ;$80FACC | LSR A ;$80FACD | CMP #$001F ;$80FACE | BCS CODE_80FADC ;$80FAD1 | SEP #$20 ;$80FAD3 | ORA #$C0 ;$80FAD5 | STA $2132 ;$80FAD7 | REP #$20 ;$80FADA | CODE_80FADC: ; | LDA #$0200 ;$80FADC | SEC ;$80FADF | SBC $2A ;$80FAE0 | CMP #$0200 ;$80FAE2 | BCS CODE_80FB3D ;$80FAE5 | CLC ;$80FAE7 | ADC #$0010 ;$80FAE8 | STA $32 ;$80FAEB | LDA $2A ;$80FAED | ASL A ;$80FAEF | CLC ;$80FAF0 | ADC #$0040 ;$80FAF1 | AND #$00FF ;$80FAF4 | ASL A ;$80FAF7 | TAX ;$80FAF8 | LDA.l DATA_B3F4D8,x ;$80FAF9 | CMP #$8000 ;$80FAFD | ROR A ;$80FB00 | CMP #$8000 ;$80FB01 | ROR A ;$80FB04 | CMP #$8000 ;$80FB05 | ROR A ;$80FB08 | CLC ;$80FB09 | ADC $32 ;$80FB0A | CMP #$8000 ;$80FB0C | LSR A ;$80FB0F | SEP #$20 ;$80FB10 | STA $210E ;$80FB12 | XBA ;$80FB15 | STA $210E ;$80FB16 | REP #$20 ;$80FB19 | LDA $2A ;$80FB1B | AND #$00FF ;$80FB1D | ASL A ;$80FB20 | TAX ;$80FB21 | LDA.l DATA_B3F4D8,x ;$80FB22 | CMP #$8000 ;$80FB26 | ROR A ;$80FB29 | CMP #$8000 ;$80FB2A | ROR A ;$80FB2D | CMP #$8000 ;$80FB2E | ROR A ;$80FB31 | SEP #$20 ;$80FB32 | STA $210D ;$80FB34 | XBA ;$80FB37 | STA $210D ;$80FB38 | REP #$20 ;$80FB3B | CODE_80FB3D: ; | LDA $2A ;$80FB3D | SEC ;$80FB3F | SBC #$0100 ;$80FB40 | CMP #$0100 ;$80FB43 | BCS CODE_80FB62 ;$80FB46 | SEP #$20 ;$80FB48 | STA $2110 ;$80FB4A | STZ $2110 ;$80FB4D | REP #$20 ;$80FB50 | EOR #$00FF ;$80FB52 | LSR A ;$80FB55 | LSR A ;$80FB56 | LSR A ;$80FB57 | ORA #$00E0 ;$80FB58 | SEP #$20 ;$80FB5B | STA $2132 ;$80FB5D | REP #$20 ;$80FB60 | CODE_80FB62: ; | JSR CODE_808988 ;$80FB62 | SEP #$20 ;$80FB65 | LDA $0512 ;$80FB67 | STA $2100 ;$80FB6A | REP #$20 ;$80FB6D | LDA $2A ;$80FB6F | CMP #$00F0 ;$80FB71 | BCC CODE_80FB93 ;$80FB74 | LDA $0513 ;$80FB76 | AND #$00FF ;$80FB79 | BNE CODE_80FB93 ;$80FB7C | LDA $050E ;$80FB7E | AND #$D080 ;$80FB81 | BNE CODE_80FB8D ;$80FB84 | LDA $2A ;$80FB86 | CMP #$0480 ;$80FB88 | BNE CODE_80FB93 ;$80FB8B | CODE_80FB8D: ; | LDA #$820F ;$80FB8D | JSR CODE_808C32 ;$80FB90 | CODE_80FB93: ; | JSR CODE_808C3D ;$80FB93 | LDA $0512 ;$80FB96 | BEQ CODE_80FB9E ;$80FB99 | JMP CODE_808CA2 ;$80FB9B / CODE_80FB9E: JML CODE_BBBEA0 ;$80FB9E / DATA_80FBA2: db $1A, $C4, $41, $C2, $71, $7D, $71, $7E db $A2, $0D, $18, $9F, $BB, $66, $7D, $B2 db $D2, $5B, $8B, $77, $1A, $CB, $4C, $B5 db $A3, $E0, $18, $5A, $0A, $71, $C3, $71 db $54, $71, $C4, $B1, $05, $34, $F4, $0B db $19, $0F, $1A, $E4, $F4, $01, $A2, $FD db $B3, $9F, $D4, $41, $9C, $B4, $18, $DF db $F1, $1D, $B2, $0A, $91, $55, $B4, $17 db $11, $2B, $44, $1C, $57, $17, $F7, $1C db $6A, $0B, $11, $3C, $B1, $15, $BB, $40 db $C9, $13, $27, $18, $FB, $20, $4F, $10 db $3B, $6B, $77, $B3, $0E, $91, $02, $B6 db $5A, $9B, $53, $BF, $B0, $3F, $1B, $85 db $57, $B2, $80, $94, $2B, $20, $13, $BA db $81, $11, $BE, $A2, $1D, $1A, $1B, $00 db $C9, $10, $DB, $49, $FD, $F2, $1B, $14 db $01, $83, $71, $5B, $B1, $20, $DB, $65 db $5F, $11, $3B, $51, $71, $44, $1C, $77 db $18, $07, $18, $1B, $49, $0D, $B0, $22 db $1B, $4E, $3B, $B3, $2B, $71, $82, $A1 db $7C, $B4, $28, $DB, $11, $77, $12, $CB db $03, $71, $16, $9A, $24, $51, $B2, $B8 db $64, $BB, $55, $57, $B3, $10, $71, $19 db $B4, $47, $1A, $0D, $DB, $A8, $11, $11 db $FA, $41, $B1, $14, $B2, $30, $D1, $48 db $71, $77, $B1, $57, $F4, $0B, $5F, $51 db $A0, $7D, $A2, $49, $15, $67, $15, $77 db $1C, $8B, $11, $71, $40, $B3, $10, $91 db $85, $B5, $2E, $14, $81, $91, $B3, $8C db $9B, $6B, $77, $10, $2B, $21, $77, $12 db $DB, $26, $33, $18, $6B, $67, $47, $B1 db $38, $51, $14, $B3, $55, $7A, $64, $F1 db $07, $71, $23, $B6, $6D, $31, $C9, $B8 db $81, $11, $10, $B4, $7C, $51, $97, $F4 db $71, $15, $A4, $8D, $10, $64, $01, $9D db $A1, $5C, $B4, $03, $3B, $16, $67, $15 db $8C, $21, $1A, $21, $15, $71, $73, $B4 db $64, $1F, $F1, $1D, $B2, $00, $F1, $14 db $4C, $B3, $61, $31, $CA, $B4, $AE, $91 db $2C, $4A, $19, $97, $1C, $B7, $1C, $CA db $04, $B1, $0D, $B2, $01, $7B, $10, $13 db $11, $9A, $45, $1B, $17, $13, $10, $3B db $62, $FD, $F1, $15, $3B, $4F, $E3, $A1 db $80, $A0, $4D, $C4, $11, $44, $10, $6C db $41, $14, $E1, $3C, $42, $B5, $47, $1C db $21, $15, $2A, $4D, $71, $32, $B6, $55 db $7A, $19, $81, $3C, $B1, $8E, $D4, $C1 db $9D, $B4, $4F, $FA, $0D, $54, $E1, $9C db $B6, $64, $9C, $31, $21, $01, $8F, $C6 db $12, $60, $B1, $05, $F1, $82, $B6, $2F db $DB, $11, $EB, $11, $9A, $10, $A4, $F4 db $6B, $7C, $0F, $12, $8F, $AB, $42, $25 db $11, $EA, $2B, $DB, $00, $17, $40, $19 db $9B, $21, $93, $B0, $8E, $D4, $F4, $F4 db $6A, $5E, $C1, $21, $B2, $14, $B1, $59 db $71, $5A, $B4, $88, $7B, $21, $6F, $40 db $A3, $1A, $A0, $DD, $C2, $13, $6A, $11 db $FB, $17, $79, $4F, $42, $B3, $6F, $5B db $01, $DB, $42, $18, $9B, $21, $EF, $18 db $8A, $2E, $3B, $00, $17, $40, $B3, $00 db $91, $02, $64, $CB, $07, $CD, $B5, $35 db $94, $EA, $7E, $A8, $C8, $14, $00, $A0 db $4D, $B4, $6A, $51, $8E, $CC, $13, $6A db $11, $0A, $18, $04, $F4, $2B, $36, $F5 db $B0, $1D, $B4, $21, $91, $A2, $89, $B0 db $0F, $94, $AB, $1E, $BB, $10, $34, $C1 db $89, $B8, $35, $91, $CD, $71, $CE, $4A db $C5, $11, $56, $11, $AC, $A1, $40, $0F db $31, $88, $C8, $13, $FC, $11, $FC, $A1 db $36, $A1, $28, $FA, $4F, $B2, $37, $D1 db $CF, $71, $1F, $40, $18, $D6, $44, $B5 db $BA, $31, $AE, $71, $9B, $B4, $71, $B1 db $AC, $B4, $3A, $B1, $B3, $48, $19, $27 db $18, $5A, $24, $F1, $15, $B8, $29, $9A db $03, $14, $0B, $3F, $FB, $18, $8B, $33 db $0D, $CA, $14, $00, $B3, $26, $91, $B4 db $CF, $15, $38, $B3, $2E, $D4, $FB, $60 db $5B, $B1, $4F, $91, $03, $44, $B7, $BA db $31, $A2, $B6, $4A, $71, $A4, $A2, $47 db $11, $EB, $14, $2F, $40, $A1, $B4, $1A db $0B, $20, $EF, $11, $4B, $47, $FF, $B3 db $29, $9B, $00, $25, $40, $B3, $FF, $B1 db $1E, $B2, $0C, $B1, $15, $CA, $13, $A4 db $B3, $26, $91, $CF, $6C, $E1, $53, $81 db $BF, $F8, $F4, $B1, $00, $74, $6B, $25 db $5D, $B4, $37, $D1, $03, $B2, $76, $71 db $02, $42, $19, $2B, $84, $55, $1A, $4B db $64, $A7, $B1, $DC, $B1, $3F, $B3, $42 db $F4, $01, $A2, $B4, $69, $DB, $16, $A9 db $B0, $0C, $5B, $69, $43, $A0, $CB, $40 db $19, $1B, $24, $FB, $10, $3B, $45, $E7 db $F1, $15, $3B, $49, $6F, $18, $FB, $43 db $53, $12, $67, $11, $FC, $C1, $4F, $AB db $33, $63, $C2, $13, $1E, $40, $B3, $C9 db $31, $39, $B1, $23, $9B, $40, $29, $B3 db $F7, $91, $2C, $42, $B7, $F3, $D1, $A6 db $B4, $E1, $1B, $11, $31, $19, $FF, $7B db $53, $6D, $40, $B5, $60, $FA, $37, $61 db $14, $C4, $15, $D4, $B2, $8A, $F4, $2B db $0B, $5D, $B4, $5E, $71, $8F, $B1, $33 db $FB, $45, $69, $13, $CB, $63, $53, $11 db $0C, $C1, $4F, $AA, $12, $01, $2D, $B3 db $E1, $94, $0B, $45, $2D, $B8, $A4, $3C db $31, $70, $21, $03, $42, $B1, $70, $11 db $99, $B4, $69, $DB, $0C, $9B, $B4, $43 db $B1, $9D, $C4, $12, $5E, $A0, $31, $42 db $C3, $12, $86, $A1, $54, $FE, $18, $D7 db $1D, $07, $15, $D4, $8B, $2B, $5D, $C6 db $14, $86, $A0, $01, $48, $B4, $55, $74 db $6B, $95, $67, $A2, $05, $40, $19, $D7 db $12, $EC, $61, $60, $8B, $2B, $69, $B4 db $C6, $F1, $71, $42, $B1, $F3, $D1, $D1 db $B4, $69, $D1, $9C, $FC, $B3, $83, $54 db $41, $99, $B1, $63, $14, $0B, $51, $01 db $A2, $4D, $B4, $0E, $BB, $03, $BD, $44 db $A2, $C7, $B6, $5C, $B1, $C8, $F5, $4A db $B1, $05, $91, $19, $48, $18, $37, $17 db $4B, $20, $CB, $10, $7F, $87, $1A, $64 db $F4, $01, $91, $B4, $C6, $F1, $4D, $42 db $19, $FA, $37, $04, $F4, $0B, $20, $D5 db $40, $18, $9A, $2D, $BB, $11, $13, $18 db $5F, $4B, $42, $39, $FF, $11, $D4, $8C db $51, $8C, $81, $14, $A1, $00, $48, $B3 db $05, $91, $07, $48, $C7, $18, $52, $FF db $11, $D4, $F4, $21, $86, $B2, $04, $31 db $13, $42, $B0, $0D, $1A, $27, $9F, $21 db $B1, $46, $B0, $32, $FB, $4C, $0D, $B0 db $25, $14, $0B, $11, $A1, $18, $6B, $21 db $13, $11, $EF, $B7, $56, $3F, $2C, $01 db $05, $E3, $67, $AB, $09, $37 DATA_80FFB0: db $30, $31 DATA_80FFB2: db $41, $44, $4E, $45 DATA_80FFB6: db $00, $00, $00, $00, $00, $00, $00 DATA_80FFBD: db $00 DATA_80FFBE: db $00 DATA_80FFBF: db $00 DATA_80FFC0: db "DIDDY'S KONG QUEST " DATA_80FFD5: db $31 DATA_80FFD6: db $02 DATA_80FFD7: db $0C DATA_80FFD8: db $01 DATA_80FFD9: db $01 DATA_80FFDA: db $33 DATA_80FFDB: db $01 DATA_80FFDC: db $E3, $67 DATA_80FFDE: db $1C, $98 DATA_80FFE0: db $44, $49, $44, $44 DATA_80FFE4: db $59, $20 DATA_80FFE6: db $03, $70 DATA_80FFE8: db $00, $00 DATA_80FFEA: dw NMI_start DATA_80FFEC: db $00, $00 DATA_80FFEE: dw IRQ_start DATA_80FFF0: db $44, $49, $44, $44 DATA_80FFF4: db $59, $20 DATA_80FFF6: db $4B, $4F DATA_80FFF8: db $4E, $47 DATA_80FFFA: db $00, $F8 DATA_80FFFC: dw RESET_start DATA_80FFFE: db $00, $70